Controlling values of variables

<< Click to Display Table of Contents >>

Navigation:  Using QGeNIe > Bayesian networks >

Controlling values of variables

In causal probabilistic models, there is an additional class of inference problems: Predicting the effects of external intervention. In the context of Bayesian networks, computing the effects of observations amounts to belief updating after setting evidence for the observed network variables. The effect of intervention, on the other hand, is a change in the network structure, related to external manipulation of the system modeled by the network, followed by setting the values of the manipulated nodes and updating beliefs.

We will explain control values with the help of the following example (the model, Project.qdsl,  is included among the example models) describing a set of variables that may influence profits of an airplane manufacturer.

project

Imagine that we are conducting this analysis at the very initial stage of negotiations with the client and would like to know the impact of negotiating in the contract that no penalties can be imposed on the manufacturer. This is a typical question involving controling the values of variables. No matter what happens, we impose zero penalties on the system, which means that we impose the probability of zero on penalties. To predict the effect of this manipulation, we right-click on the node Penalties and choose Control Value.

control_value

The result of this operation is that all arcs ending at the controlled node are dimmed. This denotes that fact that none of the usual causes of this variable are operational - the value of this variable is manipulated and determined outside of the model.

control_value_result

The node Penalties is marked by the manipulation icon (control_value_icon), which means that the variable is controlled from outside of the model.

The next thing to be done is making sure that the probability of penalties is zero. We can achieve this by observing the value of Penalties to be False. This can be done in the reverse order, i.e., first observing the value of Penalties to be False and then controlling the variable Penalties.

It is important to realize that while controlling a variable is a change in the structure of the model, this change is temporary and that controlling a variable leads to a query similar to observing a variable, although its consequences are different. Since the state of a controlled node does not depend on the value of its parents, there is a temporary change in the network structure. QGeNIe shows this by dimming the arc connecting the parent nodes to the controlled node.

Notice that the intervention only changes the posterior probabilities of the descendants of the controlled node. The control value operation is not available for those nodes that have observed or manipulated descendants. Controlling the value of a descendant of an observed node would lead to a theoretical problem, which one could summarize briefly as a desire to modify the past.