Bayesian Network tools in Java (BNJ)

How to Contribute to the BNJ Development Effort

To contribute any of the following, please contact the authors (replace "(AT)" with the appropriate symbol) or subscribe to the developer group and post.

Case Studies

We are always interested in applications of BNJ both in research and in education.

Research and Development Applications

Please feel free to let us know about any R&D projects for which you have used, or are using, BNJ. Illustrations and screenshots are especially welcome and will be cited on this site if you wish.

Educational Use

We would like to hear about course adoptions of BNJ. If you are an instructor and have adopted BNJ for use in a course, please e-mail us with a link to the course and let us know what assignments or projects BNJ was used for. If your are a student and took a course that used BNJ, please feel free to comment on the usability of any GUI, wizard, or API features you used. We also welcome feature requests for educational applications.

If you decide to use BNJ to produce tutorials, or are considering course adoption of BNJ as lessonware or for programming projects, please let us know.

Source Code

Kevin Murphy states several cogent arguments in defense of open source research software in explaining why he founded the BNT development group and has released BNT under the GNU Public License. Likewise, we are always interested in improving our ability, and that of the scientific community in general, to reproduce results, systematically evaluate and compare [La00, La02] algorithms, and generalize these algorithms them to all appropriate representations. This is one of the chief reasons we have chosen to distribute BNJ as free software. We believe that having more open-source developers is not only a good way to identify and correct errors in design and implementations, but can also lead to better planning for more flexible, extensible, and scalable software. This planning, in turn, can mitigate the second system effect documented by Brooks [Br95], commonly referred to as software bloat.

For these reasons, we request that if you develop any new software tools for learning and reasoning using graphical models [Mu01] using BNJ, that you contribute the sources to BNJ by uploading them to our developer group. Although we have limited resources for supporting debugging and testing, our team will be happy to work with you (to some degree) in testing your modules and integrating them into the reuse library.


If you would be willing to translate this web page - or the developer documentation of the most recent stable release of BNJ - into another language, please notify us. We would especially appreciate it if you could update your translation when major releases occur (about once or at most twice a year).


One of our goals is maximum portability, in order to reach a wider user base; this is one of our primary reasons for writing BNJ in Java. If you have compiled BNJ on any of the following platforms, we are actively seeking your binary executables (and installers):

We are not yet aware of any BNJ users who use the following platforms, but would be thrilled to learn of ports:

The latest version of BNJ Utilities is packaged as a compiled binary, with an executable installer, for:

Feature Requests

Similarly, please feel free to contact the development team if you have a feature request. We cannot promise to fulfill all requests for features, but we will consider all of them and add those that may benefit the research community to our task list.

Error Reports

Finally, although BNJ is distributed with no warranty, we appreciate all reports of incorrect program behavior or output and will make efforts to correct reported errors.

Back to the BNJ main page

Page created: Fri 20 Dec 2002
Last updated: Sun 23 Nov 2003
William H. Hsu
BNJ Development Team