---- > [!definition] Definition. ([[the model of Barabasi and Albert for growing undirected graphs]]) > The **model of Barabasi and Albert** for growing an undirected [[network]] with a [[power law]] [[degree distribution]] works as follows: > 1. Nodes are created one-by-one. Each new node connects to exactly $c \in \mathbb{N}$ previously created nodes. > 2. Each existing node $i$ receives a connection from the new node with probability proportional to that node's current [[degree]], $k_{i}$, plus a constant $a \in \mathbb{N}$ to get things started. The smallest [[degree]] in the [[network]] is $k=c$. > [!basicproperties] Properties. > The model generates a [[power law]] [[degree distribution]] because it is equivalent to a special case of [[Price's DAG growing model]] [[in-degree distribution of Price's model is a power law|which yields a power law in-degree distribution]] when we let $a=c$. See [[degree distribution of the model of Barabasi and Albert]] > To see this, suppose we give each edge in our [[network]] a direction, running from the node from which the edge was added to the previously existing node to which it connects. We have converted our [[network]] into a [[network|directed network]] in which each node $i$ has out-degree $c$ and in-degree $q_{i}$ for some $q_{i}$. Then the total degree of the node, in an undirected sense, is $k_{i}=q_{i} + c$. But given that the [[probability]] of an edge attaching to a node is proportional to $k_{i}$, it is proportional to $q_{i}$ as well — which is just [[Price's DAG growing model|Price's model]] when we choose $a=c$. > [!basicexample] > - (Newman 13.5) [[Barabasi-Albert variant]] > - ---- #### ---- #### References > [!backlink] > ```dataview > TABLE rows.file.link as "Further Reading" > FROM [[]] > FLATTEN file.tags as Tag > WHERE Tag = "#definition" OR Tag = "#theorem" OR Tag = "#MOC" OR Tag = "#proposition" OR Tag = "#axiom" > GROUP BY Tag > ``` > [!frontlink] > ```dataview > TABLE rows.file.link as "Further Reading" > FROM outgoing([[]]) > FLATTEN file.tags as Tag > WHERE Tag = "#definition" OR Tag = "#theorem" OR Tag = "#MOC" OR Tag = "#proposition" OR Tag = "#axiom" > GROUP BY Tag > ```