随机图理论基础。
# 符号约定
在这篇文章中,我们约定以花体 \mathscr
表示集族,以空心大写字体 \mathbb
表示概率范畴下的量,如概率 P, 期望 E, 方差 D 等。对于一般的图,我们以正常的大写字母 G 表示。
# 随机图模型基础
# 定义
定义 1 以Gn,m 表示含有n 个顶点,m 条边的所有图组成的集合。对每个G∈Gn,m,定义概率P(G)=(m(2n))−1。这样,我们将通过n 个顶点按此概率生成的图称为一个标准随机图 (uniform random graph),记作Gn,m=([n],En,m)。
定义 2
此外,我们引入一个概率p∈[0,1] 作为在图中加入一条边的概率。于是得到图G∈Gn,m 的概率为P(G)=pm(1−p)(2n)−m。我们将按此概率生成的图称为一个二项随机图 (binomial random graph),记作Gn,p=([n],En,p)。
随机图的这两个模型之间存在明显的相关关系。比如,如果确定Gn,p 的边数为m,则边数为m 的各图的出现是等可能的,概率均为(m(2n))−1。这根据条件概率显然可以得到。
对于数目较大的n,我们认为在边出现的概率为p 的前提下,边数m 的最可能值为m=(2n)p≈2n2p。或者说p≈n22m,此时两种图将会产生相似的性质。下面,我们将进一步量化相似性质这一概念。
引理 1 我们定义图的性质P是Gn 的一个子集,设概率p=m/(2n),其中m=m(n)→∞,且(2n)−m→∞。则对于充分大的n,我们有
2πm1P(Gn,m∈P)≤P(Gn,p∈P)≤2π1(2n)P(Gn,m∈P).
证明
P(Gn,p∈P)=k=0∑(2n)P(Gn,p∈P∣∣En,p∣=k)P(∣En,p∣=k)=k=0∑(2n)P(Gn,k∈P)P(∣En,p∣=k)≥P(Gn,m∈P)P(∣En,p∣=m).
根据斯特林公式k!≈2πk(ek)k 估计P(∣En,p∣=m),并简记(2n)≜N,有
P(∣En,p∣=m)=(mN)pm(1−p)N−m≈2πm(N−m)2πNNNpm(1−p)N−m≈2πm(N−m)N≥2πm1.
代入原式即可证明。
同样地,我们也可以向上放缩,得到P(Gn,p∈P)=∑k=0(2n)P(Gn,p∈P∣∣En,p∣=k)P(∣En,p∣=k)=∑k=0(2n)P(Gn,k∈P)P(∣En,p∣=k)≤(2n)P(Gn,m∈P)P(∣En,p∣=m).
同样根据斯特林公式估计,有
P(∣En,p∣=m)=(mN)pm(1−p)N−m≈2πm(N−m)2πNNNpm(1−p)N−m≈2πm(N−m)N≤2π1.
此时代入上式,可得
2πP(Gn,p∈P)≤(2n)P(Gn,m∈P).
即原式成立。
但是,我们发现上面的估计是不准确的,且可以构造出几乎取到等号的例子。于是我们考虑对性质P加以限制,得到更好的估计。
定义 2 如果G∈P蕴含G+e∈P,那么我们称性质P是单调递增的 (monotone increasing)。例如,图的连通性和哈密顿性 (即是否为哈密顿图) 是单调递增的,但是否为欧拉图不是单调递增的。如果空图Kˉn∈/P且完全图Kn∈P,那么我们称性质P是不平凡的。类似地,如果G∈P蕴含G−e∈P,那么我们称性质P是单调递减的 (monotone decreasing)。例如,图的平面性 (是否为平面图) 是一个单调递减的。
显然,若性质P是单调递增的,那么Pˉ是单调递减的。于是,在通常情况下,只需要考虑单调递增的性质。
对于单调递增的性质P,我们容易得到若p<p′,m<m′,则P(Gn,p∈P)≤P(Gn,p′∈P),P(Gn,m∈P)≤P(Gn,m′∈P)。(构建对应关系则易于证明)
在此基础上,我们可以类似引理 1 给出一个对Gn,m 和Gn,p 的估计。但由于性质P是单调的,因此估计会更加准确。
引理 2 对单调递增的性质P,若N=(2n),p=Nm,对满足Np→∞ 且N(1−p)/(Np)21→∞ 的充分大的N 及某概率p,有
P(Gn,m∈P)≤3P(Gn,p∈P).
以上是我们所说的Gn,p 与Gn,m 的关系。于是,我们研究随机图时,可以以其中一个作为突破点进行研究。
对于Gn,p1 与Gn,p2,我们规定它们的并为Gn,p=Gn,p1∪Gn,p2,其中1−p=1−p1−p2+p1p2。其中,Gn,p1 与Gn,p2 独立,其各自生成边后去掉重复的边,就得到了图Gn,p。这时我们可以说Gn,p1⊆Gn,p。
类似地,对Gn,m1 和Gn,m2,我们类似地称Gn,m1+m2 是Gn,m1 与Gn,m2 的并。
# 度序列
我们知道,顶点的度是简单图的一个基本量。对于属于同一图G∈G(n,p) 的两个相异顶点x,y∈V,在n 较大时,我们一般认为两点的度dG(x) 与dG(y) 是独立的随机变量
度序列 (degree sequence)
# 排序问题
熟知的是,对n 个元素组成的全序关系,基于比较的排序复杂度为O(nlogn) 次。但基于比较的排序存在一个缺点,就是后面的排序对象需要根据前面的答案进行确定。
在排序算法中,我们将宽度 (width) 定义为在任何一轮问题中进行的最大探测数,将深度 (depth) 定义为算法所需要的最大轮数。于是,在不限制宽度和深度的前提下,排序算法的比较次数下限为log2n! 级别。