Index | Topics |

constraint-based algorithms {bnlearn} | R Documentation |

## Constraint-based structure learning algorithms

### Description

Learn the equivalence class of a directed acyclic graph (DAG) from data using the PC, Grow-Shrink (GS), Incremental Association (IAMB), Fast Incremental Association (Fast-IAMB), Interleaved Incremental Association (Inter-IAMB), Incremental Association with FDR (IAMB-FDR), Max-Min Parents and Children (MMPC), Semi-Interleaved HITON-PC or Hybrid Parents and Children (HPC) constraint-based algorithms.

### Usage

pc.stable(x, cluster = NULL, whitelist = NULL, blacklist = NULL, test = NULL, alpha = 0.05, B = NULL, max.sx = NULL, debug = FALSE, undirected = FALSE) gs(x, cluster = NULL, whitelist = NULL, blacklist = NULL, test = NULL, alpha = 0.05, B = NULL, max.sx = NULL, debug = FALSE, undirected = FALSE) iamb(x, cluster = NULL, whitelist = NULL, blacklist = NULL, test = NULL, alpha = 0.05, B = NULL, max.sx = NULL, debug = FALSE, undirected = FALSE) fast.iamb(x, cluster = NULL, whitelist = NULL, blacklist = NULL, test = NULL, alpha = 0.05, B = NULL, max.sx = NULL, debug = FALSE, undirected = FALSE) inter.iamb(x, cluster = NULL, whitelist = NULL, blacklist = NULL, test = NULL, alpha = 0.05, B = NULL, max.sx = NULL, debug = FALSE, undirected = FALSE) iamb.fdr(x, cluster = NULL, whitelist = NULL, blacklist = NULL, test = NULL, alpha = 0.05, B = NULL, max.sx = NULL, debug = FALSE, undirected = FALSE) mmpc(x, cluster = NULL, whitelist = NULL, blacklist = NULL, test = NULL, alpha = 0.05, B = NULL, max.sx = NULL, debug = FALSE, undirected = TRUE) si.hiton.pc(x, cluster = NULL, whitelist = NULL, blacklist = NULL, test = NULL, alpha = 0.05, B = NULL, max.sx = NULL, debug = FALSE, undirected = TRUE) hpc(x, cluster = NULL, whitelist = NULL, blacklist = NULL, test = NULL, alpha = 0.05, B = NULL, max.sx = NULL, debug = FALSE, undirected = TRUE)

### Arguments

`x` |
a data frame containing the variables in the model. |

`cluster` |
an optional cluster object from package parallel. |

`whitelist` |
a data frame with two columns (optionally labeled "from" and "to"), containing a set of arcs to be included in the graph. |

`blacklist` |
a data frame with two columns (optionally labeled "from" and "to"), containing a set of arcs not to be included in the graph. |

`test` |
a character string, the label of the conditional independence test to be used in the algorithm. If
none is specified, the default test statistic is the |

`alpha` |
a numeric value, the target nominal type I error rate. |

`B` |
a positive integer, the number of permutations considered for each permutation test. It will be
ignored with a warning if the conditional independence test specified by the |

`max.sx` |
a positive integer, the maximum allowed size of the conditioning sets used in conditional independence tests. The default is that there is no limit on size. |

`debug` |
a boolean value. If |

`undirected` |
a boolean value. If |

### Value

An object of class `bn`

. See `bn-class`

for details.

### Note

Note that even when `undirected`

is set to `FALSE`

there is no guarantee that all arcs
in the returned network will be directed; some arc directions are impossible to learn just from data due to
score equivalence.

### Author(s)

Marco Scutari

### References

**for PC:**

Colombo D, Maathuis MH (2014). "Order-Independent Constraint-Based Causal Structure Learning". *Journal
of Machine Learning Research*, **15**:3921–3962.

**for GS:**

Margaritis D (2003). *Learning Bayesian Network Model Structure from Data*. Ph.D. thesis, School of
Computer Science, Carnegie-Mellon University, Pittsburgh, PA.

**for IAMB:**

Tsamardinos I, Aliferis CF, Statnikov A (2003). "Algorithms for Large Scale Markov Blanket Discovery".
*Proceedings of the Sixteenth International Florida Artificial Intelligence Research Society
Conference*, pp. 376–381.

**for Fast-IAMB and Inter-IAMB:**

Yaramakala S, Margaritis D (2005). "Speculative Markov Blanket Discovery for Optimal Feature Selection".
*Proceedings of the Fifth IEEE International Conference on Data Mining*, pp. 809–812.

**for IAMB-FDR:**

Pena JM (2008). "Learning Gaussian Graphical Models of Gene Networks with False Discovery Rate Control".
*Proceedings of the iSixth European Conference on Evolutionary Computation, Machine Learning and Data Mining
in Bioinformatics*, pp. 165–176.

**for MMPC:**

Tsamardinos I, Aliferis CF, Statnikov A (2003). "Time and Sample Efficient Discovery of Markov Blankets and
Direct Causal Relations". *Proceedings of the Ninth ACM SIGKDD International Conference on Knowledge
Discovery and Data Mining*, pp. 673–678.

Tsamardinos I, Brown LE, Aliferis CF (2006). "The Max-Min Hill-Climbing Bayesian Network Structure Learning
Algorithm". *Machine Learning*, **65**(1):31–78.

**for the Semi-Interleaved HITON-PC:**

Aliferis FC, Statnikov A, Tsamardinos I, Subramani M, Koutsoukos XD (2010). "Local Causal and Markov Blanket
Induction for Causal Discovery and Feature Selection for Classification Part I: Algorithms and Empirical
Evaluation". *Journal of Machine Learning Research*, **11**:171–234.

**for HPC:**

Gasse M, Aussem A, Elghazel H (2014). "A Hybrid Algorithm for Bayesian Network Structure Learning with
Application to Multi-Label Learning". *Expert Systems with Applications*,
**41**(15):6755–6772.

### See Also

local discovery algorithms, score-based algorithms, hybrid algorithms.

Index | Topics |