# Copying mechanism

In the study of scale-free networks, a copying mechanism is a process by which such a network can form and grow, by means of repeated steps in which nodes are duplicated with mutations from existing nodes. Several variations have been studied. In the general copying model, a growing network starts as a small initial graph and, at each time step, a new vertex is added with a given number k of new outgoing edges. As a result of a stochastic selection, the neighbors of the new vertex are either chosen randomly among the existing vertices, or one existing vertex is randomly selected and k of its neighbors are "copied" as heads of the new edges.

## Motivation

Copying mechanisms for modeling growth of the World Wide Web are motivated by the following intuition:
* Some web page authors will note an interesting but novel commonality between certain pages, and will link to pages exhibiting this commonality; pages created with this motivation are modeled by a random choice among existing pages.
* Most authors, on the other hand, will be interested in certain already-represented topics, and will collect together links to pages about these topics. Pages created in this way can be modeled by node copying.
Those are the growth and preferential attachment properties of the networks.

## Description

For the simple case, nodes are never deleted. At each step we create a new node with a single edge emanating from it. Let u be a page chosen uniformly at random from the pages in existence before this step.
(I) With probability $p$, the only parameter of the model, the new edge points to u.
(II) With probability $1-p$, the new edge points to the destination of u's (sole) out-link; the new node attains its edge by copying.
The second process increases the probability of high-degree nodes' receiving new incoming edges. In fact, since u is selected randomly, the probability that a webpage with degree $k$ will receive a new hyperlink is proportional with $(1-p)k$, indicating that the copying mechanism effectively amounts to a linear preferential attachment. Kumar et al. prove that the expectation of the incoming degree distribution is $P(k_{in})=k^{-(2-p)/(1-p)}$, thus $P(k)$ follows a power-law with an exponent which varies between 2 (for $p\rightarrow 0$) and $\infty$ (for $p\rightarrow 1$).
Above is the linear growth copying model. Since the web is currently growing exponentially, there is the exponential growth copying model. At each step a new epoch of vertices arrives whose size is a constant fraction of the current graph. Each of these vertices may link only to vertices from previous epochs.
The evolving models above are by no means complete. They can be extended in several ways. First of all, the tails in the models are either static, chosen uniformly from the new vertices, or chosen from the existing vertices proportional to their out-degrees. This process could be made more sophisticated to account for the observed deviations of the out-degree distribution from the power-law distribution. Similarly, the models can be extended to include death processes, which cause vertices and edges to disappear as time evolves. A number of other extensions are possible, but we seek to determine the properties of this simple model, in order to understand which extensions are necessary to capture the complexity of the web.

## Undirected models
### Protein interaction networks

Vazquez proposed a growing graph based on duplication modeling protein interactions. At every time step a prototype is chosen randomly. With probability q edges of the prototype are copied. With probability p an edge to the prototype is created.

### Proteome networks

Sole proposed a growing graph initialized with a 5-ring substrate. At every time step a new node is added and a prototype is chosen at random. The prototype's edges are copied with a probability δ. Furthermore, random nodes are connected to the newly introduced node with probability α= β/N, where δ and β are given parameters in (0,1) and N is the number of total nodes at the considered time step. (see fig. 1).

## Directed models
### Biological networks

Middendorf-Ziv (MZ) proposed a growing directed graph modeling biological network dynamics. A prototype is chosen at random and duplicated. The prototype or progenitor node has edges pruned with probability β and edges added with probability α<<β. Based loosely on the undirected protein network model of Sole et al.

### WWW networks and citation networks

Vazquez proposed a growth model based on a recursive 'copying' mechanism, continuing to 2nd nearest neighbors, 3rd nearest neighbors etc. The authors call it a 'random walk' mechanism.).

### Growing network with copying (GNC)

Krapivsky and Redner proposed a new growing network model, which grows by adding nodes one at a time. A newly introduced node randomly selects a target node and links to it, as well as to all ancestor nodes of the target node (Fig. 2). If the target node is the initial root node, no additional links are generated by the copying mechanism. If the newly introduced node were to always choose the root node as the target, a star graph would be generated. On the other hand, if the target node is always the most recent one in the network, all previous nodes are ancestors of the target and the copying mechanism would give a complete graph. Correspondingly, the total number of links $L_{N}$ in a network of N nodes can range from N−1 (star graph) to N(N−1)/2 (complete graph). Notice also that the number of outgoing links from each new node (the out-degree) can range between 1 and the current number of nodes.