图和网络-线性代数课时12(MIT Linear Algebra , Gilbert Strang)

        这是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:

        U=\begin{bmatrix} -1 &1 &0 &0 \\ 0& -1 & 1 &0 \\ 0& 0 &-1 &1 \\ 0& 0 & 0 &0 \\ 0& 0 & 0 &0 \\ 0 & 0 & 0 & 0 \end{bmatrix}

        关联矩阵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个基本子空间的在特殊物理系统下的实际意义。x=\begin{bmatrix} x_1 &x_2 &x_3 &x_4 \end{bmatrix}^T表示节点1-4上的电压,y=\begin{bmatrix} y_1 &y_2 &y_3 &y_4 &y_5 &y_6 \end{bmatrix}^T表示各条边上的电流。

零空间

        零空间包含Ax=0的全部解,那么在上面的物理学系统中Ax=0代表什么实际的物理意义呢,Ax代表各个节点之间的电位差,Ax=0表明4个节点的点位相等。这就是关联矩阵零空间的物理意义。、,4个结点的电位都是常数c,并且零空间的维度是1。

行空间

        行空间没有特殊的物理意义,但我们要提到关联矩阵行空间的一个特点:A的行空间每个行向量相加为0,这对A行空间的所有向量都适用,并且A的零空间一定是过元素全为1的向量的一条直线。

列空间

        在列空间中我们将揭示基尔霍夫电压定律:在闭合回路中,个节点之间的电势差之和为0.我们知道Ax代表各节点之间的电势差。那么我们如何知道给定各个节点之间得电势差的确定的向量b是否是物理系统的解呢,当然我们可以直接求解Ax=b得出结果。但这样我们并不能洞察它背后的物理意义,我们沿着第一幅图中的一个环边(1,3,-2)对电势差求和:

                                        (x_2-x_1)+(x_3-x_2)-(x_3-x_1)=0

        其中x_2-x_1=b_1x_3-x_2=b_3x_3-x_1=b_2,这就是著名的基尔霍夫电压定律:

                                        b_1+b_3-b_2=0

       通过测试途中的每一个环是否满足基尔霍夫电压定律,我们就可以确定一个特定的b是否在关联矩阵的列空间中。

左零空间

        左零空间包含了A^Ty=0的全部解,它背后的物理意义是基尔霍夫电流定律(KCL):流入节点的电流等于流出节点的电流之和。

                                                            A^Ty=\begin{bmatrix} -1 &-1 &0 &-1 &0 &0 \\ 1& 0 & -1 & 0 & -1 &0 \\ 0& 1 & 1 & 0 &0 &-1 \\ 0& 0 &0 &1 &1 &1 \end{bmatrix}\begin{bmatrix} y_1\\ y_2\\ y_3\\ y_4\\ y_5\\ y_6 \end{bmatrix}=\begin{bmatrix} 0\\ 0\\ 0\\ 0 \end{bmatrix}

        例如A^Ty中A的第一行与y相乘:-y_1-y_2-y_4=0表明流入和流出节点1的电流之和为0.关于左零空间还有一点需要说明,就是它的一组基可以通过图中的所有小的环(环内不包含环)找到,单位电流沿着环流动,环上的每一个节点流入的电流等于流出的电流,比如图1中有3个小环:

                                                           

       边(1、5、4),(3、6、5)、(6,2,4)构成一个3个小环,3个小环上满足A^Ty=0的解分别是(1 0 0 -1 0 0)、(0 0 1 1 -1)、(0 -1 0 1 0 -1),它们构成了A左零空间的一组基。

        这里面隐藏着一个著名的公式:欧拉公式。我们在给出左零空间的一组基的时候已经用到了,N(A^T)维数m-r,前面说过关联矩阵的秩r=n-1,所以N(A^T)的维数就是m-n+1,从我们寻找N(A^T)的一组基德过程中知道,小环的个数和N(A^T)的维数相等。那么欧拉公式是怎样定义的呢:

        欧拉公式:#nodes -#edges+# small loops=1

        带入#nodes=n,#edges=m,#small loops=m-n+1即可证明欧拉公式。

网络和A^TCA

        在真实的物理网络中边上的电流y和两个数字可以建立起联系,1个就是节点之间的电势差,另外一个就是节点之间边上的“电导率”c,在示例的物理系统中就是电导率=1/电阻。将边上的电导率构成一个电导率矩阵(对角矩阵)C,那么y=CAx,那么A^Ty就可以写成A^TCAx=0,这就是解决网络流量问题的核心公式了。A^TCAx=0并没有考虑外部外部激励,如果如下图我们在节点1和节点4之间添加激励f,方程就变为求解A^TCAx=f.

                                                           

        最后举例说明如何通过A^TCA求解这个系统,假设电导率C=I ,f=S,那么A^TCAx=f:

        \begin{bmatrix} -1 &-1 &0 &-1 &0 &0 \\ 1& 0 &-1 &0 &-1 &0 \\ 0&1 &1 &0 &0 &-1 \\ 0& 0 &0 &1 &1 &1 \end{bmatrix}\begin{bmatrix} -1&1 &0 &0 \\ -1& 0 &1 &0 \\ 0& -1 & 1 &0 \\ -1& 0 &0 &1 \\ 0 &-1 &0 &1 \\ 0 &0 &-1 &1 \\ \end{bmatrix}\begin{bmatrix} x_1\\ x_2\\ x_3\\ x_4 \end{bmatrix}=\begin{bmatrix} 3 &-1 &-1 &-1 \\ -1& 3 &-1 &-1 \\ -1& -1& 3 & -1\\ -1& -1& -1& 3 \end{bmatrix}\begin{bmatrix} x_1\\ x_2\\ x_3\\ x_4 \end{bmatrix}

       =\begin{bmatrix} S\\ 0\\ 0\\ 0 \end{bmatrix}

        求解上面的方程:

        \begin{bmatrix} x_1\\ x_2\\ x_3\\ x_4 \end{bmatrix}=\begin{bmatrix} S/2\\ S/4\\ S/4\\ 0 \end{bmatrix},其中x_4=0表明节点4接地,各条边上的电流y=CAx

        \begin{bmatrix} y_1\\ y_2\\ y_3\\ y_4\\ y_5\\ y_6 \end{bmatrix}=-\begin{bmatrix} -1 &1 &0 &0 \\ -1&0 &1 &0 \\ 0& -1 & 1 &0 \\ -1& 0 &0 &1 \\ 0& -1 &0 & 1\\ 0& 0 &-1 &1 \end{bmatrix}\begin{bmatrix} S/2\\ S/4\\ S/4\\ 0 \end{bmatrix}=\begin{bmatrix} S/4\\ S/4\\ 0\\ S/2\\ S/4\\ S/4 \end{bmatrix},注意上面的“-”号,它是根据实际物理系统的的规律加上的。

        本章讲解的内容在书本上存在于8.2章节,而教授放到4个基本子空间之后讲解,我想他的用意是要通过实际应用让我们更加深入的理解4个基本子空间的具体意义和它们的重要性吧。

        本课的内容对应《INTRODUCTION TO LINEAR ALGEBRA》8.2章节。

 

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值