| Index | Topics |
| graph generation utilities {bnlearn} | R Documentation |
Generate empty or random graphs
Description
Generate empty or random graphs from a given set of nodes.
Usage
empty.graph(nodes, num = 1) random.graph(nodes, num = 1, method = "ordered", ..., debug = FALSE)
Arguments
nodes |
a vector of character strings, the labels of the nodes. |
num |
an integer, the number of graphs to be generated. |
method |
a character string, the label of a score. Possible values are ordered (full
ordering based generation), ic-dag (Ide's and Cozman's Generating Multi-connected
DAGs algorithm), melancon (Melancon's and Philippe's Uniform Random Acyclic
Digraphs algorithm) and empty (generates empty graphs). |
... |
additional tuning parameters (see below). |
debug |
a boolean value. If TRUE a lot of debugging output is printed; otherwise the function is
completely silent. Ignored in some generation methods. |
Details
Available graph generation algorithms are:
- full ordering based generation (
ordered): generates graphs whose node ordering is given by the order of the labels in thenodesparameter. The same algorithm is used in therandomDAGfunction in package pcalg. - Ide's and Cozman's Generating Multi-connected DAGs algorithm (
ic-dag): generates graphs with a uniform probability distribution over the set of multiconnected graphs. - empty graphs (
empty): generates graphs without any arc.
Additional parameters for the random.graph function are:
prob: the probability of each arc to be present in a graph generated by theorderedalgorithm. The default value is2 / (length(nodes) - 1), which results in a sparse graph (the number of arcs should be of the same order as the number of nodes).burn.in: the number of iterations for theic-dagandmelanconalgorithms to converge to a stationary (and uniform) probability distribution. The default value is6 * length(nodes)^2.max.degree: the maximum degree for any node in a graph generated by theic-dagandmelanconalgorithms. The default value isInf.max.in.degree: the maximum in-degree for any node in a graph generated by theic-dagandmelanconalgorithms. The default value isInf.max.out.degree: the maximum out-degree for any node in a graph generated by theic-dagandmelanconalgorithms. The default value isInf.
Value
Both empty.graph and random.graph return an object of class bn (if
num is equal to 1) or a list of objects of class bn (otherwise).
Author(s)
Marco Scutari
References
Ide JS, Cozman FG (2002). "Random Generation of Bayesian Networks". In "SBIA '02: Proceedings of the 16th Brazilian Symposium on Artificial Intelligence", pp. 366-375. Springer-Verlag.
Melancon G, Dutour I, Bousquet-Melou M (2000). "Random Generation of Dags for Graph Drawing". Technical Report INS-R0005, Centre for Mathematics and Computer Sciences, Amsterdam.
Melancon G, Philippe F (2004). "Generating Connected Acyclic Digraphs Uniformly at Random". Information Processing Letters, 90(4), 209-213.
Examples
empty.graph(LETTERS[1:8]) # # Randomly generated Bayesian network # # model: # [A][B][C][D][E][F][G][H] # nodes: 8 # arcs: 0 # undirected arcs: 0 # directed arcs: 0 # average markov blanket size: 0.00 # average neighbourhood size: 0.00 # average branching factor: 0.00 # # generation algorithm: Empty # random.graph(LETTERS[1:8]) # <insert the description of a random graph here> plot(random.graph(LETTERS[1:8], method = "ic-dag", max.in.degree = 2)) plot(random.graph(LETTERS[1:8])) plot(random.graph(LETTERS[1:8], prob = 0.2))
| Index | Topics |
