线性代数拾遗(四):线性方程组的应用 |
您所在的位置:网站首页 › 线性代数的小说有哪些 › 线性代数拾遗(四):线性方程组的应用 |
由于这段时间科研任务较重,加上 hexo 升级后总出现一些奇怪的问题,所以有一段时间没更新这个系列了,今天忙里偷闲补上一篇。 前面几章,我们回顾了一遍线性方程组和矩阵的一些概念。线性代数的最原始问题是解线性方程组,为了解决这个问题,我们引入了向量和矩阵,继而对矩阵的一些特性也进行了一番分析,然后又发现矩阵不但可以表示数据,也可以表示变换。然而,这些概念是如何应用于现实生活呢,实际生活中有哪些线性方程组的例子?这一章我们来介绍一些线性代数的实际应用。 总体上来说,牵涉到多个变量的相互约束,而且这些约束是「线性」的问题时,就有可能通过建立线性方程组从而得到解。 一、经济学例子这是来自《线性代数及其应用》中的一个例子,很好地展示了线性代数在经济学中的应用: 比如一个国家包括煤炭、电力、钢铁三个部门,各部门都产出一定的资源,同时也消耗一定的资源(为方便讨论,本例中只考虑煤炭、电力、钢铁这三种资源,并且假设所有产出的资源都会被消耗)。比如,煤炭部门生产的每 100 份煤炭中,60 份被电力部门消耗,40 份被钢铁部门消耗;电力部门每生产 100 份煤炭,40 份被煤炭部门消耗,10 份被自己消耗,还有 50 份被钢铁部门消耗;钢铁部门每生产 100 份钢铁,60 份被煤炭部门消耗,20 份被电力部门消耗,还有 20 份被自己消耗。那么,如何给这三种资源定价,使得各部门的收支达到平衡? 首先,上面所述的各部门产出与消耗情况可以用一个表格来表示: 煤炭产出电力产出钢铁产出煤炭部门的消耗00.40.6电力部门的消耗0.60.10.2钢铁部门的消耗0.40.50.2表中每一行表示某部们消耗各资源的情况,各列表示某资源被各部门消耗的情况。例如,煤炭部门每生产 1 单位的煤炭,就有 0.6 单位被电力部门消耗,0.4 单位被钢铁部门消耗;同时,煤炭部门也会消耗 0.4 单位的电力和 0.6 单位的钢铁来保证生产。 当然我们可以考虑用向量来表示这个表格。将表格中的各行向量化,得到: Oc=[0,0.4,0.6]Oe=[0.6,0.1,0.2]Os=[0.4,0.5,0.2]\begin{aligned} O_c &= [0, 0.4, 0.6] \\ O_e &= [0.6, 0.1, 0.2] \\ O_s &= [0.4, 0.5, 0.2] \end{aligned}OcOeOs=[0,0.4,0.6]=[0.6,0.1,0.2]=[0.4,0.5,0.2]其中,OcO_cOc, OeO_eOe, OsO_sOs 分别表示煤炭、电力、钢铁各个部门消耗三种资源的量。 各种资源的单位价格也可以用符号定义。例如用 pcp_cpc, pep_epe, psp_sps 分别来表示煤炭、电力、钢铁三种资源的价格,那么煤炭部门的总支出就是 0⋅pc+0.4pe+0.6ps=Oc⋅[pcpeps]0 \cdot p_c+0.4 p_e+0.6 p_s = O_c \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix}0⋅pc+0.4pe+0.6ps=Oc⋅pcpeps. 同理,电力部门和钢铁部门的总支出是 Oe⋅[pcpeps],Os⋅[pcpeps]O_e \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix}, O_s \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix}Oe⋅pcpeps,Os⋅pcpeps. 也就是说,煤炭部门每生产出 1 单位价值为 pcp_cpc 的煤炭,它就需要消耗价值为 Oc⋅[pcpeps]O_c \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix}Oc⋅pcpeps 的资源。要使煤炭部门收支平衡,就需要: Oc⋅[pcpeps]=pcO_c \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix} = p_cOc⋅pcpeps=pc同理,要使三个部门都达到收支平衡,需要: Oc⋅[pcpeps]=[0,0.4,0.6]⋅[pcpeps]=pcOe⋅[pcpeps]=[0.6,0.1,0.2]⋅[pcpeps]=peOs⋅[pcpeps]=[0.4,0.5,0.2]⋅[pcpeps]=ps\begin{aligned} O_c \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix} &= [0 , 0.4, 0.6] \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix} &= p_c \\ O_e \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix} &= [0.6, 0.1, 0.2] \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix} &= p_e \\ O_s \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix} &= [0.4, 0.5, 0.2] \cdot \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix} &= p_s \end{aligned}Oc⋅pcpepsOe⋅pcpepsOs⋅pcpeps=[0,0.4,0.6]⋅pcpeps=[0.6,0.1,0.2]⋅pcpeps=[0.4,0.5,0.2]⋅pcpeps=pc=pe=ps借助矩阵的封装,我们可以把这三个式子合并为一个式子: A⋅[pcpeps]=[pcpeps](A−I)⋅[pcpeps]=[000](1)\begin{array}{rccl} \mathbf{A} &\cdot &\begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix} &= \begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix} \\ \left( \mathbf{A} - \mathbf{I} \right) &\cdot &\begin{bmatrix}p_c\\ p_e\\ p_s\end{bmatrix} &= \begin{bmatrix}0\\ 0\\ 0\end{bmatrix} \tag{1} \\ \end{array}A(A−I)⋅⋅pcpepspcpeps=pcpeps=000(1)其中,3 x 3 矩阵 A\mathbf{A}A 就是上面的那个表格。 式子 (1) 是我们熟悉的齐次线性方程组的形式。按照套路,我们化简增广矩阵: [−10.40.600.6−0.90.200.40.5−0.80]∼[1−0.4−0.6001−0.8500000]∼[10−0.94001−0.8500000]\begin{bmatrix} -1 & 0.4 & 0.6 & 0 \\ 0.6 & -0.9 & 0.2 & 0 \\ 0.4 & 0.5 & -0.8 & 0 \end{bmatrix} \sim \begin{bmatrix} 1 & -0.4 & -0.6 & 0 \\ 0 & 1 & -0.85 & 0 \\ 0 & 0 & 0 & 0 \end{bmatrix} \sim \begin{bmatrix} 1 & 0 & -0.94 & 0 \\ 0 & 1 & -0.85 & 0 \\ 0 & 0 & 0 & 0 \end{bmatrix}−10.60.40.4−0.90.50.60.2−0.8000∼100−0.410−0.6−0.850000∼100010−0.94−0.850000由此得到通解:pc=0.94psp_c = 0.94 p_spc=0.94ps, pe=0.85psp_e = 0.85 p_spe=0.85ps,psp_sps 为自由变量。 所以,各部门达到收支平衡时的平衡价格向量为: p=ps[0.940.851]\mathbf{p} = p_s \begin{bmatrix} 0.94 \\ 0.85 \\ 1 \end{bmatrix}p=ps0.940.851也就是说,如果钢铁价格为100元,那么煤炭和电的价格分别为94元和和85元时,整个经济系统可以达到平衡。 二、总结从上面的例子,我们可以发现: 当一个系统中各个部分之间存在线性约束时(例如化学方程式的配平,各元素之间相互存在约束关系),就有可能借助线性方程组来建模。 当一个问题描述的是一张简单的表格时,我们可以将其向量化为一系列向量,或是一个矩阵,进而进行「批量」计算。这里,我们再次发现了矩阵「封装」计算的特点。借助向量化和矩阵化,我们可以将传统的数学问题转化为线性代数问题(如本文的例子就转化为了齐次线性方程组)。 参考文献 线性代数及其应用:第3版/(美)莱(Lay, D.C.)著;沈复兴等译. ——北京:人民邮电出版社,2007.7 版权声明:本文中所有文字、图片版权均属本人所有,如需转载请注明来源。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |