The wikipage of Bayesian Network says

"Formally, Bayesian networks are directed acyclic graphs whose nodes represent random variables in the Bayesian sense"

But in the model I need to build, cyclic structure of constraint is necessary. For example, A influences B, B influences C, C influences A.

What should I use then(instead of Bayesian Network)?

ps. I saw "Markov Network", but it says that the variables should have the "Markov property"(Memorylessness), which is not necessarily true in my intended application, in the sense that some variable is influenced by the history of others as well as its own.

Thank You!



3 Answers 3


You might be interested in this paper on discovering cyclic causal models: http://arxiv.org/abs/1206.3273

While cycles can be introduced into directed graphical models, it makes it significantly more complicated to compute the probability of some configuration. For the graphical model $X\rightarrow Y$, if we know the marginal probability of $X$ and the conditional probability of $Y$ given $X$, then the joint probability of $X=x$ and $Y=y$ is just $Pr(X=x,Y=y) = Pr(X=x)Pr(Y=y|X=x)$, and in general any probability can be computed by a combination of multiplication and marginalization. If by contrast we have a cyclic graphical model $X \leftrightarrow Y$, then this is best viewed as a Markov chain $\ldots X\rightarrow Y \rightarrow X \rightarrow Y \ldots$ where, even if we know the transition probabilities $p(x|y)$ and $p(y|x)$, we still have to solve for the stationary state of a Markov chain to compute various probabilities. For cyclic models with larger graphs the situation becomes even more complicated.

I realize this doesn't solve your problem exactly though. Spelling out the problem you're trying to solve in more detail might help. For instance, if the influences between A, B and C are symmetric (A influences B the same way B influences A) then an undirected graphical model would make more sense. If there is a temporal aspect to the influence of one variable on another, a Markov chain would make more sense (and in some sense a cyclic causal model can be seen as a kind of Markov chain, where we are trying to reason about properties of the stationary distribution).


When you have causal relationships with variables influenced by their past and the past of other variables and there are cyclic characteristics, the problem has to be taken into a dynamic simulation structure using the most typical simulations methods depending on the problem you have to solve: - System Dynamics - Agent Based Models - Discrete Event Models

When you are able to choose the right method depending on the problem you have, you can embedded the dynamic bayesian network into the model. if you search for "agent based"+"dynamic bayesian networks" you will get some papers that may lead you to the thing you need


There are various other types of (probabilistic) graphical models. These are not necessary "extensions" of Bayesian Networks, but can be used to represent cyclical dependencies.

The two most prominent examples include Markov Random Fields (https://en.wikipedia.org/wiki/Markov_random_field) and Factor Graphs (https://en.wikipedia.org/wiki/Factor_graph).


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .