generate_BB: Simulating networks from the Bianconi-Barabasi model

View source: R/generate_BB.R

generate_BBR Documentation

Simulating networks from the Bianconi-Barabasi model

Description

This function generates networks from the Bianconi-Barabási model. It is a ‘preferential attachment with fitness’ model. In this model, the preferential attachment function is linear, i.e. A_k = k, and node fitnesses are sampled from some probability distribution.

Usage

generate_BB(N              = 1000   , 
            num_seed       = 2      , 
            multiple_node  = 1      , 
            m              = 1      ,
            mode_f         = "gamma", 
            s              = 10     )

Arguments

The parameters can be divided into two groups.

The first group specifies basic properties of the network:

N

Integer. Total number of nodes in the network (including the nodes in the seed graph). Default value is 1000.

num_seed

Integer. The number of nodes of the seed graph (the initial state of the network). The seed graph is a cycle. Default value is 2.

multiple_node

Positive integer. The number of new nodes at each time-step. Default value is 1.

m

Positive integer. The number of edges of each new node. Default value is 1.

The final group of parameters specifies the distribution from which node fitnesses are generated:

mode_f

String. Possible values:"gamma", "log_normal" or "power_law". This parameter indicates the true distribution for node fitness. "gamma" = gamma distribution, "log_normal" = log-normal distribution. "power_law" = power-law (pareto) distribution. Default value is "gamma".

s

Non-negative numeric. The inverse variance parameter. The mean of the distribution is kept at 1 and the variance is 1/s (since node fitnesses are only meaningful up to scale). This is achieved by setting shape and rate parameters of the Gamma distribution to s; setting mean and standard deviation in log-scale of the log-normal distribution to -1/2*log (1/s + 1) and (log (1/s + 1))^{0.5}; and setting shape and scale parameters of the pareto distribution to (s+1)^{0.5} + 1 and (s+1)^{0.5}/((s+1)^{0.5} + 1). If s is 0, all node fitnesses \eta are fixed at 1 (i.e., Barabási-Albert model). The default value is 10.

Value

The output is a PAFit_net object, which is a List contains the following four fields:

graph

a three-column matrix, where each row contains information of one edge, in the form of (from_id, to_id, time_stamp). from_id is the id of the source, to_id is the id of the destination.

type

a string indicates whether the network is "directed" or "undirected".

PA

a numeric vector contains the true PA function.

fitness

fitness values of nodes in the network. The name of each value is the ID of the node.

Author(s)

Thong Pham thongphamthe@gmail.com

References

1. Bianconni, G. & Barabási, A. (2001). Competition and multiscaling in evolving networks. Europhys. Lett., 54, 436 (\Sexpr[results=rd]{tools:::Rd_expr_doi("10.1209/epl/i2001-00260-6")}).

See Also

For subsequent estimation procedures, see get_statistics.

For other functions to generate networks, see generate_net, generate_BA, generate_ER and generate_fit_only.

Examples

  library("PAFit")
  # generate a network from the BB model with alpha = 1, N = 100, m = 1
  # The inverse variance of the Gamma distribution of node fitnesses is s = 10
  net <- generate_BB(N = 100,m = 1,mode = 1, s = 10)
  str(net)
  plot(net)

PAFit documentation built on June 22, 2024, 11:06 a.m.