BNet.News
In This Issue: January/February 2007 
•   BNet Products Used in Artificial Intelligence Research
•   BNet.EngineKit User Tip: Learning
•   View Back Issues of BNet.News
•   BNet.Builder User Tip: Inference Engines
•   Publicize Your Belief Network Success Story
BNet Products Used in Artificial Intelligence Research
FORT WAYNE, IN -- Dr. Ken Modesitt of Indiana University-Purdue University Fort Wayne (IPFW) and Don Snyder of Northrop Grumman used BNet products in an Artificial Intelligence graduate class they taught during the Fall 2006 semester. Students used BNet.Builder, a Bayesian belief network modeling tool, and BNet.EngineKit, a developer toolkit for embedding belief networks into software applications, to control robotic tanks in the Robocode system. Robocode provides a platform for software tanks to compete in battles until there is one champion. The students' goal was to use Bayesian networks to perform autonomous decision making in the robots.

Don Snyder explained, “BNet products were a key component of the research. The students used BNet.Builder to construct the Bayesian networks, which used environmental and operating conditions to help the robots choose the best strategies to use against their opponents.”

Mr. Snyder continued, “They then used BNet.EngineKit to help the robots make these decisions in real-time during a battle. The results of the class were promising, and we plan to teach a follow-on course to continue the research.”

Both BNet.Builder and BNet.EngineKit are part of Charles River Analytics' family of Bayesian Network products.

To read more about BNet products or to download a free trial version, click here.

Robocode logo
BNet.Builder User Tip: Inference Engines
BNet.Builder 1.4 introduced an easy way for you to switch between several inference engines. Open the Network Properties window and select the Engine tab. The selected inference engine will be used in all open Bayesian networks.

The Bytecode generator engine is the preferred inference engine for everyday use. It updates beliefs the fastest, but can run into memory problems on large BNs. If you do run into memory problems with large BNs, try the Junction tree engine -- it is good for very large networks, but can be slower at updating beliefs.

To learn more about BNet.Builder 1.4, click here.

Inference Engines
BNet.EngineKit User Tip: Learning
BNet.EngineKit supports learning Conditional Probability Tables from data. To learn CPTs from fully observed data you can use the FullyObservableLearningAlgorithm class. In fully observed data, you have data for all nodes in the network. To learn CPTs from partially observed data you can use the EmEtaLearningAlgorithm class. In partially observed data, you may have missing data or no data for some nodes in the network.

Chapter 5 in the BNet.EngineKit Developers Guide has a section titled "Learning condition probabilities from data" that provides more information on learning CPTs from data. You can also refer to the BNet.EngineKit javadocs for full details on using these learning classes.

To learn more about Engine.Kit, click here.

Bnet.EngineKit
View Back Issues of BNet.News
We have back issues of BNet.News posted on our Web site. If you're a new subscriber or are looking for more articles and tips, come visit our Web site.

To visit the BNet.News archive, click here.

Publicize Your Belief Network Success Story
Want to show off your applications of belief networks to others using them in their research? Send us your success stories. We would like to include at least one in each edition of BNet.News.

To send us your story, please contact lcordeiro@cra.com or zcox@cra.com.

Charles River Analytics, Inc. logo
BNet News is published by Charles River Analytics, the company that brings you BNet.Builder and BNet.EngineKit.  View our Privacy Policy