Skip to contents

Simple random graph model, specifying the edge count either precisely (\(G(n,m)\) model) or on average through a connection probability (\(G(n,p)\) model).

Usage

erdos.renyi.game(
  n,
  p.or.m,
  type = c("gnp", "gnm"),
  directed = FALSE,
  loops = FALSE
)

Arguments

n

The number of vertices in the graph.

p.or.m

Either the probability for drawing an edge between two arbitrary vertices (\(G(n,p)\) graph), or the number of edges in the graph (for \(G(n,m)\) graphs).

type

The type of the random graph to create, either gnp() (\(G(n,p)\) graph) or gnm() (\(G(n,m)\) graph).

directed

Logical, whether the graph will be directed, defaults to FALSE.

loops

Logical, whether to add loop edges, defaults to FALSE.

Value

A graph object.

Details

In \(G(n,m)\) graphs, there are precisely m edges.

In \(G(n,p)\) graphs, all vertex pairs are connected with the same probability p.

random.graph.game() is an alias to this function.

Deprecated

Since igraph version 0.8.0, both erdos.renyi.game() and random.graph.game() are deprecated, and sample_gnp() and sample_gnm() should be used instead. See these for more details.

References

Erdős, P. and Rényi, A., On random graphs, Publicationes Mathematicae 6, 290--297 (1959).

Author

Gabor Csardi csardi.gabor@gmail.com

Examples


g <- erdos.renyi.game(1000, 1 / 1000)
degree_distribution(g)
#> [1] 0.373 0.381 0.183 0.049 0.011 0.002 0.001