Spanc
I am modeling a system for real world application and  certain combinations of the parent nodes are not possible for given child nodes, but the system populates the probability tables for those combinations regardless. I used Special functions such as 'if' and 'switch' cases to define the child node in terms of the parent node. This is resulting in state values for child nodes which are outside the acceptable bound, plus there are noises (values within acceptable bound but coming from unacceptable parent combinations ) within the acceptable range as well.
I have been working on solving this issue for some time now with no positive results. I am designing the system based on causal graph and equations. Does anyone have a solution to such a problem?
Can it be a problem of how I am designing the model?
Quote 0 0
sgfrazie
Can you model the unacceptable states as "NA" and then use a constraint node in your model that doesn't allow that state to be considered?  In that way you could keep the model design and block states with "NA" from being considered via the constraint node.
Quote 1 0
Spanc
@sgfrazie , Thank you for your suggestion. So I tried using the constraint nodes, but the parent nodes are a mix of continuous and discrete variables. I am still getting noise in the child node. I tried the constraint node on small example of clouds,rain, sprinkler, and wet ground and it worked. In this example all the values for the four nodes were discrete (True or False conditions). I am yet to try modeling unacceptable states as NA, but it is tricky because as independent nodes all the states within the parent nodes are acceptable. But some of the combination of these values in the child node's equation tab is what is not acceptable in this case. Do you see a possible way of doing that?
Quote 0 0
Mark

Hi,

Add a filtered state to your child node, then define your equation.
For example you have a "continuous" parent A and a discrete parent B and a child C:
We suppose that C is not possible (filtered state *) when A is less than 0 or B is not equals to "OK",
you can define the equation (a part of the equation for the impossible combinations) in C as:

`if(?A?<0 | ?B?!="OK";"*";[...result of the valid combinations...])`

where * is the filtered state of C.

Quote 2 0
sgfrazie
Mark, that's a good idea.  That answers some questions I've had about filtered states.  You should put the "NA" condition on the child state and link that to a constraint node.  That just add an extra node whereas the filtered state combines all of that into one node.
Quote 0 0