Preferential attachment lies at the heart of many network models aiming to replicate features of real world networks. To simulate the attachment process, conduct statistical tests, or obtain input data for benchmarks, efficient algorithms are required that are capable of generating large graphs according to these models. Existing graph generators are optimized for the most simple model, where new nodes that arrive in the network are connected to earlier nodes with a probability $P(h) \propto d$ that depends linearly on the degree $d$ of the earlier node $h$. Yet, some networks are better explained by a more general attachment probability $P(h) \propto f(d)$ for some function $f \colon \mathbb N~\to~\mathbb R$. Here, the polynomial case $f(d) = d^\alpha$ where $\alpha \in \mathbb R_{>0}$ is of particular interest. In this paper, we present efficient algorithms that generate graphs according to the more general models. We first design a simple yet optimal sequential algorithm for the polynomial model. We then parallelize the algorithm by identifying batches of independent samples and obtain a near-optimal speedup when adding many nodes. In addition, we present an I/O-efficient algorithm that can even be used for the fully general model. To showcase the efficiency and scalability of our algorithms, we conduct an experimental study and compare their performance to existing solutions.
翻译:许多网络模型的核心是特惠附件,目的是复制真实世界网络的特征。为了模拟附加过程,进行统计测试或获取基准输入数据,需要高效的算法,这些算法能够根据这些模型生成大图表。现有的图形生成器为最简单的模型优化,进入网络的新节点与早期节点连接的概率为$(h)\ propto d$,该节点依赖早期节点的纯度$d$。然而,有些网络用更一般的附加概率$(h)\ propto f(d)来更好地解释。对于某些函数,我们需要高效的算法, $(mathb) N ⁇ to ⁇ \ ⁇ mathbbbr R$。在这里, 将现有的多位点节点连接到dalpha$(d) = d ⁇ alpha$,该节点的概率取决于早期节点$(mathbbb) $。在本文中,我们提出高效的算法根据较一般的模型生成图表。我们首先设计一个简单但最优化的顺序算算法, 也就是我们用来在接近多的轨迹的轨迹模型上, 我们用一个平行的运算法,然后用一个平行的模型来进行一个比较。我们用来进行一个比较。