开发者

cyclic bayesian network

i have several elements A,B,C,AB,ABC,.. (see image below) where each element either exists or not. the rule that governs this system is as follows: if AB exists, then A and B must also exist. generally speaking if a tupel exists, all smaller tupels which are subsets of this tupel must also exist. furthermore if a tupel does not exist, all tupels which make up a superset of this tupel do not exist.

http://i.stack.imgur.com/8fNl6.gif

Example: Given ABC exists then A, B, C, AB, AC, BC exist too. Given BC does not exist then ABC,BCD,ABCD开发者_Go百科 do not exist either.

now what i struggle with is, how do i calculate e.g. P(AB|A,B,!ABC) which means the probability that AB exists, given A exists, B exists and ABC does not exist. foreach element i have a basic starting probability p(X) which tells me how likely it is for X to exists given NO constraints. and usually i check the existence of A,B,C,D,ABCD beforehand so the system has boundaries.

my problem is that this is a cyclic network. i would be very grateful for any help as i tried solving this problem for the last couple of weeks without success. i only want to calculate the probability that one element exists, given any situation/constraint. note that elements like AB and !BD are not independent.


if you want to use bayesian network, then first you need to add directions in your chart, which would be from bottoms up.

Then draw the DAG with your p values using MSBNx, which you can get from: http://research.microsoft.com/en-us/um/redmond/groups/adapt/msbnx/ and run Bayesian inference, you should have no problem doing Probability queries on it.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜