# evolution_games

##### Graph games based on evolution

This games create graphs through different types of evolutionary mechanisms (not necessarily in a biological sense). The nature of their algorithm is described in detail at the linked igraph documentation.

##### Usage

```
play_citation_age(n, growth = 1, bins = n/7100, p_pref = (1:(bins +
1))^-3, directed = TRUE)
```play_forestfire(n, p_forward, p_backward = p_forward, growth = 1,
directed = TRUE)

play_growing(n, growth = 1, directed = TRUE, citation = FALSE)

play_barabasi_albert(n, power, growth = 1, growth_dist = NULL,
use_out = FALSE, appeal_zero = 1, directed = TRUE,
method = "psumtree")

play_barabasi_albert_aging(n, power, power_age, growth = 1,
growth_dist = NULL, bins = 300, use_out = FALSE, appeal_zero = 1,
appeal_zero_age = 0, directed = TRUE, coefficient = 1,
coefficient_age = 1, window = NULL)

##### Arguments

- n
The number of nodes in the graph.

- growth
The number of edges added at each iteration

- bins
The number of aging bins

- p_pref
The probability that an edge will be made to an age bin.

- directed
Should the resulting graph be directed

- p_forward, p_backward
Forward and backward burning probability

- citation
Should a citation graph be created

- power
The power of the preferential attachment

- growth_dist
The distribution of the number of added edges at each iteration

- use_out
Should outbound edges be used for calculating citation probability

- appeal_zero
The appeal value for unconnected nodes

- method
The algorithm to use for graph creation. Either

`'psumtree'`

,`'psumtree-multiple'`

, or`'bag'`

- power_age
The aging exponent

- appeal_zero_age
The appeal value of nodes without age

- coefficient
The coefficient of the degree dependent part of attrictiveness

- coefficient_age
The coefficient of the age dependent part of attrictiveness

- window
The aging window to take into account when calculating the preferential attraction

##### Value

A tbl_graph object

##### Functions

`play_citation_age`

: Create citation graphs based on a specific age link probability. See`igraph::sample_last_cit()`

`play_forestfire`

: Create graphs by simulating the spead of fire in a forest. See`igraph::sample_forestfire()`

`play_growing`

: Create graphs by adding a fixed number of edges at each iteration. See`igraph::sample_growing()`

`play_barabasi_albert`

: Create graphs based on the Barabasi-Alberts preferential attachment model. See`igraph::sample_pa()`

`play_barabasi_albert_aging`

: Create graphs based on the Barabasi-Alberts preferential attachment model, incoorporating node age preferrence. See`igraph::sample_pa_age()`

.

##### See Also

`play_traits()`

and `play_citation_type()`

for an evolutionary
algorithm based on different node types

Other graph games: `component_games`

,
`sampling_games`

, `type_games`

##### Examples

```
# NOT RUN {
plot(play_forestfire(50, 0.5))
# }
```

*Documentation reproduced from package tidygraph, version 1.1.2, License: MIT + file LICENSE*