这是Strang教授的第十二讲,讲解的内容是关于线性代数的一个重要应用:图和网络,理论结合实践,展示数学在工程实践中的重要地位,学完本节课,你会发现很多物理系统,比如力学系统、电学系统,生物学系统,经济学系统,计算机科学领域里的系统,...,都可以用线性代数建模求解。
有向图和关联矩阵
在上一节课的最后(矩阵空间、秩1矩阵和小世界图-线性代数课时11(MIT Linear Algebra , Gilbert Strang)),提到了小世界图,图是由节点和边构成的系统。有向图是指边是有方向的,在实际的系统中,方向具有实际意义,比如,在电学系统中方向可以是代表电流从节点1流向节点2,在力学系统中可能是代表作用力的方向。下图是一个由4个节点和6条边构成的有向图,6x4大小的矩阵A可以表示这个系统,矩阵A是有向图的关联矩阵。
关联矩阵表明了图中节点和边的关系,它的列代表了节点、它的行代表了边,边上的两个节点取值1和-1,1和-1表明了箭头的方向,边不在的节点取值为0,比如矩阵A的第一行代表了边1与节点的关系:在节点1和2取值为-1和1,在节点3、4取值为0,因为1条边只会连接两个节点,所以关联矩阵每一行只有两个元素非0,所以关联矩阵会是一个稀疏矩阵。我们对上面的关联矩阵A做行变换消元得到矩阵U:
关联矩阵A表示了一个特殊的图:4个节点的全链接图(所有节点两两之间均存在连结),下面给出另外一个特殊的连接图:它是节点之间的最小连接图,图中不存在环,这样的图又叫做树(Tree).
第一幅图是一个全连接图,第二幅图是一个无环图,它们是图的两个极端,假设节点的数目是n,对于全连接图来说,它的边的数目是m=1/2n(n-1),对于无环图,它的边的数目是m=n-1.观察关联矩阵B和矩阵U,发现B和U的非0行一模一样,这揭示了图的一个秘密:消元可以将任意的一副图简化成一颗树。这表明途中的环会使关联矩阵的行向量存在依赖关系,比如第一副图中边1、2、3构成一个环,在矩阵A中可以通过行2-行1得到行3.另外,既然任意一个关联矩阵都可以化为一颗树,表明关联矩阵的秩r=n-1,表明关联矩阵的零空间是n维空间的一条直线,比如上面的关联矩阵A的零空间N(A)=c(1 1 1 1).
下面,我们图赋予实际的物理学意义来介绍A的4个基本子空间的在特殊物理系统下的实际意义。表示节点1-4上的电压,
表示各条边上的电流。
零空间
零空间包含Ax=0的全部解,那么在上面的物理学系统中Ax=0代表什么实际的物理意义呢,Ax代表各个节点之间的电位差,Ax=0表明4个节点的点位相等。这就是关联矩阵零空间的物理意义。、,4个结点的电位都是常数c,并且零空间的维度是1。
行空间
行空间没有特殊的物理意义,但我们要提到关联矩阵行空间的一个特点:A的行空间每个行向量相加为0,这对A行空间的所有向量都适用,并且A的零空间一定是过元素全为1的向量的一条直线。
列空间
在列空间中我们将揭示基尔霍夫电压定律:在闭合回路中,个节点之间的电势差之和为0.我们知道Ax代表各节点之间的电势差。那么我们如何知道给定各个节点之间得电势差的确定的向量b是否是物理系统的解呢,当然我们可以直接求解Ax=b得出结果。但这样我们并不能洞察它背后的物理意义,我们沿着第一幅图中的一个环边(1,3,-2)对电势差求和:
其中、
、
,这就是著名的基尔霍夫电压定律:
通过测试途中的每一个环是否满足基尔霍夫电压定律,我们就可以确定一个特定的b是否在关联矩阵的列空间中。
左零空间
左零空间包含了的全部解,它背后的物理意义是基尔霍夫电流定律(KCL):流入节点的电流等于流出节点的电流之和。
例如中A的第一行与y相乘:
表明流入和流出节点1的电流之和为0.关于左零空间还有一点需要说明,就是它的一组基可以通过图中的所有小的环(环内不包含环)找到,单位电流沿着环流动,环上的每一个节点流入的电流等于流出的电流,比如图1中有3个小环:
边(1、5、4),(3、6、5)、(6,2,4)构成一个3个小环,3个小环上满足=0的解分别是(1 0 0 -1 0 0)、(0 0 1 1 -1)、(0 -1 0 1 0 -1),它们构成了A左零空间的一组基。
这里面隐藏着一个著名的公式:欧拉公式。我们在给出左零空间的一组基的时候已经用到了,维数m-r,前面说过关联矩阵的秩r=n-1,所以
的维数就是m-n+1,从我们寻找
的一组基德过程中知道,小环的个数和
的维数相等。那么欧拉公式是怎样定义的呢:
欧拉公式:#nodes -#edges+# small loops=1
带入#nodes=n,#edges=m,#small loops=m-n+1即可证明欧拉公式。
网络和![A^TCA](https://private.codecogs.com/gif.latex?A%5ETCA)
在真实的物理网络中边上的电流y和两个数字可以建立起联系,1个就是节点之间的电势差,另外一个就是节点之间边上的“电导率”c,在示例的物理系统中就是电导率=1/电阻。将边上的电导率构成一个电导率矩阵(对角矩阵)C,那么,那么
就可以写成
,这就是解决网络流量问题的核心公式了。
并没有考虑外部外部激励,如果如下图我们在节点1和节点4之间添加激励f,方程就变为求解
.
最后举例说明如何通过求解这个系统,假设电导率C=I ,f=S,那么
:
求解上面的方程:
,其中
表明节点4接地,各条边上的电流
:
,注意上面的“-”号,它是根据实际物理系统的的规律加上的。
本章讲解的内容在书本上存在于8.2章节,而教授放到4个基本子空间之后讲解,我想他的用意是要通过实际应用让我们更加深入的理解4个基本子空间的具体意义和它们的重要性吧。
本课的内容对应《INTRODUCTION TO LINEAR ALGEBRA》8.2章节。