Network structure

There are a number of common recurring patterns seen in network structures, patterns that have a profound effect on the way networked systems work:

  • connected components and giant components
  • path lengths and the small-world effect
  • degree distributions, power laws and scale-free networks
  • motifs
  • assortative mixing

Network models

  • a network model is a method to generate artificial networks
  • when implemented in software, a network model can be used in simulations and experiments
  • there are two main network models: the random model and the preferential attachment model

Random model

  • the random model, also known as ErdÅ‘s-Rényi model, is simplest and oldest network model
  • according to this model, a network is generated by:
    1. laying down a number \(n\) of nodes
    2. adding edges between them with independent probability \(p\) for each node pair

Random model

library(igraph)
plot(sample_gnp(n = 100, p = 0.02), 
     vertex.label = NA, vertex.size = 3, vertex.color = "black")

plot(sample_gnp(n = 100, p = 0.01), 
     vertex.label = NA, vertex.size = 3, vertex.color = "black")

Preferential attachment model

An alternative is the preferential attachment model, also known as Barabasi-Albert model:

  1. the \(n\) nodes are added to the network one at a time
  2. each node connects to the existing nodes with a fixed number \(m\) of links. The probability that it will choose a given node is proportional to the degree of the chosen node

As we all experienced in our lives, success breeds success, the rich get richer, popularity is attractive.

“To him that hath, more shall be given; and from him that hath not, the little that he hath shall be taken away.” (Matthew 25:29, The parable of the talents)

Preferential attachment model

library(igraph)
plot(sample_pa(n = 100, m = 1, directed = FALSE), 
     vertex.label = NA, vertex.size = 3, vertex.color = "black")

plot(sample_pa(n = 100, m = 2, directed = FALSE), 
     vertex.label = NA, vertex.size = 3, vertex.color = "black")