谱图理论

现在我们想用线性代数的方法来研究组合数学问题。

邻接矩阵的特征值

对于任意的无向图\(G=(V,E)\)(假设不带边权),它可以用邻接矩阵\(A_G\)来表示。\(A_G\)是一个对称矩阵,因此它一定有\(n\)个实数特征值。我们把它们记为\(\lambda_1 \geq \lambda_2 \geq \cdots \geq \lambda_n\)

比如,我们来解完全图\(K_n\)的特征值。此时的邻接矩阵除了对角线以外是全1的。我们当然可以采取解特征方程\(|A_G-\lambda I|=0\)的方法来暴力解出特征值,但在这里我们有更简单的方法。我们立即观察到\(A_G x=\lambda x\)\(x\)全1时是成立的,因为乘以全1的向量相当于给矩阵的每行求和,而此时矩阵每行的和都为\(n-1\)。因此我们发现了特征向量\((1,1,\cdots,1)\)和特征值\(n-1\)。如果存在其它的特征向量,那么它必须垂直于\((1,1,\cdots,1)\),因为不同的特征子空间是正交的。这样的向量必须满足\(x_1+\cdots+x_n=0\),代入\(A_Gx\)得到的向量正好是\((-x_1,-x_2,\cdots,-x_n)\)。因此我们又发现\(-1\)是特征值,并且这个矩阵只有\(n-1\)\(-1\)这两个特征值,不可能再有别的特征值了。

范数:\(\lambda_1\)与图的度数

\(K_n\)恰好是一个每个点度数都相等的图,也就是\(d\)-regular graph。我们在上学期的线性代数课上其实已经证明过\(d-\)regular graph的最大特征值\(\lambda_1\)就一定等于\(d\)。当时我们用的方法直接深入到了底层的运算当中,用放缩和夹逼的方法证明了我们的结论。现在我们从更高的角度来给出一种更简单的证明方法,为了使用这种方法,我们首先要引入范数的概念。

向量的\(p\)范数定义为\(\|x\|_p=\left(\sum\limits_{i=1}^{n}|x_i|^p\right)^\frac{1}{p}\),当\(p=0\)时,特别地定义为非零位的个数。 当\(p=1\)时,这就是向量间的曼哈顿距离。当\(p=2\)时,它就是我们最熟悉的Euclid距离。当\(p=+\infty\)时,我们利用放缩和夹逼定理(我们将会看到这就是为什么“巧合地”我们在上学期的线性代数课的证明中也用到了放缩和夹逼)可以证明它就等于最大的\(|x_i|\),即\(\|x\|_\infty=\max\limits_{1\leq i\leq n}|x_i|\)。所谓“范数”就是给出对象的一种长度的度量,p-范数是我们所熟悉的“Euclid距离(2-范数)”的一般情形。

现在我们希望能给矩阵也定义一个“范数”。怎么理解矩阵的“长度”呢?我们知道矩阵对应着一个线性映射, 因此我们把矩阵的范数定义为这个线性映射最多可以把某个向量拉长多少倍,而对向量长度的度量可以采用上面定义的向量的范数。因此矩阵的p-范数就定义为\(\|A\|_p=\max\limits_{x}\dfrac{\|Ax\|_p}{\|x\|_p}\)。由于\(x\)的数乘不会影响放大的倍数,所以我们完全只需要取单位向量就能定义矩阵的范数了,所以它可以更简单地写为\(\|A\|_p=\max\limits_{\|\omega\|_p=1}\|A\omega\|_p\)。基于这样的定义我们也直接地得到了一个不等式\(\forall x\)\(\|A\|_p \geq \dfrac{\|Ax\|_p}{\|x\|_p}\),也就是\(\|Ax\|_p \leq \|A\|_p\|x\|_p\)

对于矩阵的无穷范数,可以直接计算得到一个简单的结果:由于\(\|A\|_\infty=\max\limits_{\|\omega\|_\infty=1}\|A\omega\|_\infty\),其中\(\|A\omega\|_\infty\)就是指向量\(A\omega\)中绝对值最大的那一个座标,也就是\(A\)中特定某一行与\(\omega\)的内积的绝对值。而\(\|\omega\|_\infty=1\)要求的就是最大那一维座标的绝对值为1,也就是每一维座标的绝对值都不能超过1,因此\(A\omega\)的最大座标一定不能超过\(A\)中某一行元素的绝对值之和,而显然我们是可以取到这样一个\(\omega\)使得\(A\omega\)恰好就是这行元素的绝对值之和的。因此我们证明了\(\|A\|_\infty\)就是\(A\)的绝对值之和最大的那一行元素的绝对值之和,即\(\|A\|_\infty=\delta=\max\limits_{i}\sum\limits_{j=1}^{n}|A_{ij}|\)

由此可见,对于任意一个邻接矩阵,它的无穷范数就是图的最大度数,因为邻接矩阵的每一行的元素绝对值之和就是这个点的度数,其最大值就是图的最大度数。那么对于邻接矩阵\(A_G\),假设它的\(\lambda\)对应特征向量\(x_0\),那么\(A_Gx_0=\lambda x_0\)。两边同时取无穷范数,得\(\|A_Gx_0\|_\infty=\|\lambda x\|_\infty\)。根据我们不等式放缩,左边\(\leq \|A_G\|_\infty\|x_0\|_\infty\),而右边就等于\(|\lambda| \cdot \|x_0\|_\infty\),同时约去\(\|x_0\|_{\infty}\),我们就得到了一个有趣的结论:\(|\lambda| \leq \|A_G\|_{\infty}\)。最大的特征值一定不超过图的最大度数!

那么我们就直接可以证明\(d\)-regular情形下的结论了。此时有\(|\lambda| \leq d\),而显然对于向量\(x=(1,1,\cdots,1)\)来说一定满足\(A_Gx=dx\),因此最大的特征值就等于\(d\),即\(\lambda_1 =d\)

变分刻画:\(\lambda_2\)与图的连通性

根据对称矩阵一定有实数特征值,我们知道它一定可以对角化,因此一定可以写成谱分解的形式\(A = \sum\limits_{i=1}^{n}\lambda_iv_iv_i^\top\),其中\(v_1,\cdots,v_n\)可以恰好形成\(\R^n\)的一组标准正交基。有了这样的分解让我们的计算变得很方便。

我们可以把特征值的计算转化为最优化问题,这样刻画特征值的方法称为“变分刻画”。下面这个定理告诉我们\(\lambda_1 = \max\limits_{x \neq 0}\dfrac{\lang Ax,x\rang}{\lang x,x\rang}\),由于我们会反复用到这个结构,我们专门用一个符号\(R_A(x)\)来表示\(\dfrac{\lang Ax,x\rang}{\lang x,x\rang}\)(称为Rayleigh Quotient)。我们在线性代数课上已经尝试过,把向量\(x\)按照我们的标准正交基分解\(x=c_1v_1 +\cdots+c_nv_n\),那么很容易写出\(\lang x,x\rang=\left(\sum\limits_{i=1}^{n}c_iv_i\right)\left(\sum\limits_{i=1}^{n}c_iv_i\right)=\sum\limits_{i=1}^{n}c_i^2v_i^2=\sum\limits_{i=1}^{n}c_i^2\)。把\(A\)做谱分解,乘上做了正交分解的\(x\),得到\(Ax=\left(\sum\limits_{i=1}^{n}\lambda_iv_iv_i^\top\right)\left(\sum\limits_{i=1}^{n}c_iv_i\right)=\sum\limits_{i=1}^{n}\lambda_ic_iv_i\),因此\(\lang Ax,x\rang=\left(\sum\limits_{i=1}^{n}\lambda_ic_iv_i\right)\left(\sum\limits_{i=1}^{n}c_iv_i\right)=\sum\limits_{i=1}^{n}\lambda_i c_i^2\)。所以\(\dfrac{\lang Ax,x\rang}{\lang x,x\rang}=\dfrac{\sum\limits_{i=1}^{n}\lambda_i c_i^2}{\sum\limits_{i=1}^{n}c_i^2}\),我们要找出它的最大值。我们发现分母是个常数,如果把它写成\(\sum\limits_{i=1}^{n}\left(\dfrac{c_i^2}{\sum\limits_{i=1}^{n}c_i^2}\right)\lambda_i\)的形式,我们发现它刚好构成了\(\lambda_i\)的一个分布(因为系数之和加起来是个常数1)。对于这样一个可以任意选择系数的分布,为了让它尽量大当然是把所有的系数都分配给\(\lambda_1\)。这意味着\(c_2,c_3,\cdots,c_n\)全都取0,所以我们证明了\(\max\limits_{x \neq 0}\dfrac{\lang Ax,x\rang}{\lang x,x\rang}=\lambda_1\),当\(x=c_1v_1\)时取到最大值。

那么如何表示\(\lambda_2\)呢?依然考虑\(\sum\limits_{i=1}^{n}\left(\dfrac{c_i^2}{\sum\limits_{i=1}^{n}c_i^2}\right)\lambda_i\)这个式子,如果我们限制\(x\)必须垂直于\(v_1\),那么也就是\((c_1v_1+\cdots+c_nv_n)v_1=0\),那么就相当于直接限制了\(c_1\)必须等于0。在这种情况下考虑\(R_A(x)\)的最大值,其结果就是把所有系数都分配给\(\lambda_2\)了,因此得出结论\(\lambda_2 = \max\limits_{x \perp v_1}R_A(x)\)。依此类推,\(\lambda_3=\max\limits_{x \perp v_1,v_2} R_A(x)\)。一般地,\(\lambda_k=\max\limits_{x \perp v_1,\cdots,v_{k-1}}R_A(x)\)。也就是求任何一个特征值都可以转化为在一定限制条件下求\(R_A(x)\)的最大值的问题。

我们也可以倒过来,由于当我们用最大值表示\(\lambda_n\)时,\(x\)必须垂直于\(v_1,\cdots,v_{n-1}\)所有这些向量,这意味着\(x\)只能和\(v_n\)共线,也就是我们把系数全都分配给了最后一个\(\lambda\)。这等价于\(\lambda_n=\min\limits_{x \neq 0} R_A(x)\)。倒着推回来,就有\(\lambda_{k}=\min\limits_{x \perp v_{k+1},\cdots,v_n}R_A(x)\)

我们还可以用min-max来写出特征值:\(\lambda_k = \max\limits_{k维子空间V} \min\limits_{x \in V} R_A(x)\)。因为外层我们为了最大化一定会选择\(v_1,\cdots,v_{k}\)张成的子空间,而内层的最小值又会迫使我们把所有的系数都分配给最后一个向量,也就是\(v_k\)

现在回到\(d\)-regular graph中。我们在线性代数课上已经证明过特征值\(d\)在特征方程中的重数就等于图的连通块的个数。因此\(\lambda_2\)是否等于\(d\)刻画的就是图是否是一个连通图。下面我们就用我们的变分刻画来再次验证这件事。\(\lambda_2 = \max\limits_{x \perp v_1}R_A(x)\),而在\(d\)-regular graph中,\(A_G v_1=dv_1\)要求\(v_1\)的方向就是\((1,1,\cdots,1)\)。所以有\(x_1+x_2+\cdots+x_n=0\)\(R_A(x)=\dfrac{\lang Ax,x\rang}{\lang x,x\rang}\),其中分母就是\(\sum\limits_{i=1}^{n}x_i^2\),分子是二次型\(x^\top Ax\),它恒等于\(\sum\limits_{i=1}^{n}\sum\limits_{j=1}^{n}A_{ij}x_ix_j\),在邻接矩阵上\(A_{ij}\)表示的是\((i,j)\)这条边是否存在,因此可以把它写作\(\sum\limits_{(i,j)\} \in E}x_ix_j\)。(注意我们枚举的是有序数对\((i,j)\))这样就有\(R_A(x)=\dfrac{\sum\limits_{(i,j) \in E}x_ix_j}{\sum\limits_{i=1}^{n}x_i^2}\)。我们把\(d\)与它作差,\(d-R_A(x)=\dfrac{\sum\limits_{i=1}^{n}dx_i^2-\sum\limits_{(i,j) \in E}x_ix_j}{\sum\limits_{i=1}^{n}x_i^2}\),由于图是\(d\)-regular的,对于每个固定的\(i\)恰好只有\(d\)\(j\)保证\(\{i,j\} \in E\),因此我们把\(dx_i^2\)拆成\(d\)个分配给每个\(j\),分子就等于\(\sum\limits_{i=1}^{n}\sum\limits_{(i,j)\in E}x_i(x_i-x_j)\)。其中对于每条“单方向的”边\((i,j)\),分别会产生一个\(x_i^2\)和一个\(-x_ix_j\),因此如果把两个方向综合起来每条边恰好产生\(x_i^2+x_j^2-2x_ix_j\)\(=(x_i-x_j)^2\)。综上分子可以写成\(\sum\limits_{\{i,j\} \in E} (x_i-x_j)^2\)。我们注意我们的条件是要使得在\(\sum\limits_{i=1}^{n}x_i=0\)的前提下\(R_A(x)\)取最大值,因此也就是让\(\sum\limits_{\{i,j\} \in E} (x_i-x_j)^2\)取最小值。我们自然希望所有\(x_i\)都取相同的值,这样它就能取到0了,没有值能比它更小了,因为它是非负的。这个式子为0意味着图上的每个连通块内的\(x_i\)都必须取相同的值,这是因为我们会沿着边延拓,上式为0要求每条边两端的点取值都要相等。如果整个图都是连通的,那么所有的\(x_i\)最终都有相同的取值,这样\(x\)就与\(v_1\)平行了,显然不满足我们的要求。因此如果整张图都连通,必然有\(d-R_A(x)>0\),即\(\lambda_2<d\)。而如果整张图不是连通的,那么它取0就变得可能了,此时有\(\lambda_2=d\)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章