Approximate Probabilistic Inference in Java with source code
Introduction
The goal of this project is to implement in Java the rejection sampling and likelihood weighting approximate probabilistic inference approaches. Your software should be able to read a given Bayesian network consisting of binary variables from a text file in the following format:Cloudy, 0.5
Sprinkler, Cloudy, 0.1, 0.5
Rain, Cloudy, 0.8, 0.2
WetGrass, Sprinkler, Rain, 0.99, 0.09, 0.09, 0
Each line is a comma separated list of tokens that correspond to a variable of the Bayesian network. The name of the variable is given in the first token. Subsequent string tokens correspond to the parents of this variable. Subsequent numeric tokens give the probability that the variable of this line is true for all value combinations of its parents. In the above example, which corresponds to the sprinkler network from the book, for variable “Sprinkler”, the parent is the variable “Cloudy”, and the probability of Sprinkler=true is 0.1 if Cloudy=true and 0.5 if Cloudy=false.
Your software should be able to read queries from the console in the following format:
P(Sprinkler|Wetgrass=true,Cloudy=false) Your software should also ask for the number of samples to be produced and the method of approximate inference to use, and then output the probability estimate for the query.
CONTACT DETAILS
For any other questions or other tasks please feel free to contact mevia email: mhassnainjamil@gmail.com
via WhatsApp: +92-324-7042178
via skype: hassnainjamil1
Comments
Post a Comment