本篇导读
本篇是《Linear Algebra and its Applications(第 5 版,David C. Lay 著)》第 1 章的中文精讲笔记。全书的一切都从”线性方程组”出发:1.1–1.2 讲怎么系统地解方程组(消元法与行化简),1.3–1.4 把方程组改写成向量方程和矩阵方程 这两种”新外衣”,1.5 研究解集的几何结构,1.6 展示经济学、化学、交通网络等真实应用,1.7–1.9 引入线性无关与线性变换两个贯穿全书的核心概念,1.10 用饮食搭配、电路网络、人口迁移三个模型收尾。所有例题均保留原书的完整解答步骤,适合初学者逐题演算。
开篇导入:经济学与工程中的线性模型
1949 年夏末,哈佛大学教授 Wassily Leontief(列昂季耶夫)正小心翼翼地把最后一批穿孔卡片送进学校的 Mark II 计算机。卡片里存放着美国经济的统计数据——美国劳工统计局经过两年密集工作整理出的 25 万余条信息。Leontief 把美国经济划分成 500 个”部门”(煤炭业、汽车业、通信业等等),并为每个部门写了一个线性方程,描述该部门的产出如何分配给其他部门。由于当时最强大的计算机之一 Mark II 也无法直接处理 500 个方程、500 个未知数的方程组,他只好把问题压缩成 42 个方程、42 个未知数。
给 Mark II 编程求解这 42 个方程花了几个月时间,而计算机嗡嗡运转、灯光闪烁了 56 个小时才最终给出答案。我们将在 1.6 节与第 2 章讨论这类解的本质。Leontief 后来获得了 1973 年诺贝尔经济学奖,他为经济学的数学建模打开了新纪元的大门。从那以后,许多领域的研究者都借助计算机分析数学模型;由于涉及的数据量巨大,这些模型通常是线性的,即由线性方程组描述。

图 1-1:Leontief 用计算机分析大规模线性经济模型,开创了线性代数应用的先河。
线性代数的重要性与计算能力的提升成正比:每一代新的软硬件都会激发出对更强计算能力的需求。如今,线性代数对许多科学和商业领域的学生而言,比任何其他本科数学课程都更具实用价值。举几个例子:
- 石油勘探:勘探船寻找海底油田时,船上的计算机每天要求解成千上万个线性方程组。方程所需的地震数据来自气枪爆炸产生的水下冲击波——波从地下岩层反射回来,由拖在船后数英里长的电缆上的检波器测量。
- 线性规划:如今许多重要管理决策都基于含数百个变量的线性规划模型。例如航空业用线性规划来安排机组人员班次、监控飞机位置、规划维护和航站运营等支持服务的各种日程。
- 电网:工程师用仿真软件设计包含数百万只晶体管的电路和芯片,这类软件的核心正是线性代数技术与线性方程组。
本章将用线性方程组这个简单而具体的场景,引入线性代数的若干中心概念。1.1 和 1.2 节给出求解方程组的系统方法(这一算法全书都要用);1.3 和 1.4 节说明线性方程组如何等价于向量方程和矩阵方程;后半章研究的跨度(spanning)、线性无关和线性变换,将在全书反复扮演关键角色。
1.1 线性方程组
什么是线性方程? 若变量为 ,线性方程就是能写成如下形式的方程:
其中 与系数 是实数或复数,通常是已知的。 可以是任意正整数:教材例题中 一般在 2 到 5 之间,而现实问题中 可能是 50、5000 甚至更大。
判断的关键是:每个变量只出现一次、次数只是一次、彼此不相乘、也不开方。例如
都是线性方程,因为它们可以整理成 (1) 的形式:
而
都不是线性方程:第一个出现了乘积 ,第二个出现了 。
常见坑
判断线性只看”变量之间怎么组合”,与系数里有没有根号无关。 是线性方程(根号在常数里),但 不是(根号作用在变量上)。同理, 这种变量乘变量、、、 都会破坏线性。
线性方程组(linear system)是由同一组变量 上的一条或多条线性方程组成的集合。例如:
方程组的解(solution)是一组数 ,把它们分别代入 后每条方程都成立。例如 是方程组 (2) 的解,因为代入后两条方程分别化成 与 。
全部解组成的集合叫做方程组的解集(solution set)。若两个线性方程组的解集相同(第一个的每个解都是第二个的解,反之亦然),就称它们等价(equivalent)。
几何直觉:求两个变量、两条方程的解集,等价于求平面上两条直线的交点。典型问题:
这两条方程的图形是直线 和 ,数对 同时满足两条方程当且仅当点 同时落在两条直线上。上面这个方程组的解是唯一一点 ,很容易验证。

图 1-2:两条直线恰好交于一点——方程组有唯一解 。
当然,两条直线不一定交于一点:可能平行,也可能重合(重合时”处处相交”)。下图对应如下两个方程组:

图 1-3:情形 (a)——两条直线平行,方程组无解。

图 1-4:情形 (b)——两条直线重合,方程组有无穷多解。
图 1-2 至图 1-4 展示了线性方程组的一般事实(将在 1.2 节证明):
核心事实:解只有三种可能
一个线性方程组要么 1. 无解,要么 2. 恰有一个解,要么 3. 有无穷多解。不存在”恰好两个解”的情况。有唯一解或无穷多解的方程组称为相容的(consistent);无解的方程组称为不相容的(inconsistent)。
矩阵记号
线性方程组的关键信息可以紧凑地记录在一个矩形数表——矩阵(matrix)——中。给定方程组:
把每个变量的系数按列对齐,得到的矩阵
称为方程组 (3) 的系数矩阵(coefficient matrix);而
称为方程组 (3) 的增广矩阵(augmented matrix)。(第二行第一个位置是 0,因为第二条方程可写成 。)增广矩阵 = 系数矩阵 + 一列右端常数。
矩阵的尺寸(size)说明它有几行几列:上面的增广矩阵有 3 行 4 列,称为 (读作”3 乘 4”)矩阵。一般地, 矩阵是有 行 列的矩形数表(行数永远写在前面)。
解线性方程组
本节和下一节给出求解线性方程组的算法:基本策略是用一个更容易求解的等价方程组(解集相同)替换原方程组。
大致做法:用第一条方程中的 项消去其他方程中的 项;再用第二条方程中的 项消去其他方程中的 项……直到得到一个非常简单的等价方程组。
化简线性方程组使用三种基本操作:用某方程与另一方程的倍数之和替换该方程;交换两条方程;用非零常数乘某条方程的所有项。下面的例 1 会说明为什么这三种操作不改变解集。
例 1 解方程组 (3)。
解 消元过程同时用方程记号和矩阵记号展示,结果并排对照:
保留第一条方程中的 ,消去其他方程中的 :把方程 1 的 5 倍加到方程 3 上(熟练后这类计算通常心算完成):
把计算结果写回第三个方程的位置:
现在把方程 2 乘以 ,使 的系数变成 1(这一步是为了简化后续计算):
用方程 2 中的 消去方程 3 中的 。心算过程:
把结果写回第三行:
再把方程 3 乘以 ,使 的系数为 1:
新的方程组呈三角形(“三角形”这个直观说法在下一节会被精确定义为阶梯形):

图 1-5:原方程组的每条方程都决定三维空间中的一个平面,点 同时位于三个平面上。
接下来要消去方程 1 中的 项,但更高效的做法是先用方程 3 中的 消去方程 2 和方程 1 中的 与 项。两个心算合并展示:
合并这两个操作的结果:
清理完 所在列之后,回到方程 2 中的 ,用它消去上方的 (由于已经处理过 ,这一步不再涉及 的运算)。把方程 2 的 2 倍加到方程 1 上:
计算基本完成:原方程组的唯一解是 。由于运算繁多,最好验算一下——把 代入原方程组左端:
与右端完全吻合,所以 确实是解。
例 1 说明:对线性方程组中方程的操作,对应于对增广矩阵相应行的操作。前述三种基本操作对应增广矩阵上的初等行变换(elementary row operations):
初等行变换
- (倍加,Replacement) 把某一行替换为它与另一行倍数之和;
- (对换,Interchange) 交换两行;
- (倍乘,Scaling) 把某一行的所有元素乘以一个非零常数。
行变换可以作用于任何矩阵,而不只是增广矩阵。若存在一列初等行变换能把矩阵 变成矩阵 ,就称 与 行等价(row equivalent)。
行变换是可逆的:对换可用再一次对换还原;某行乘以非零常数 后,再乘 即还原;对倍加操作(把 倍的行 1 加到行 2 上得到新行 2),再往新行 2 上加 倍的行 1 即可还原。
若两个线性方程组的增广矩阵行等价,则两个方程组的解集相同。这是因为每种行变换都可逆:原方程组的任一解仍是新方程组的解,反过来也成立。
存在性与唯一性问题
要确定某个方程组属于”无解 / 唯一解 / 无穷多解”中的哪种情形,需要回答两个问题:
关于线性方程组的两个基本问题
- 方程组是否相容?即至少存在一个解吗?(存在性)
- 若有解,解是否唯一?(唯一性)
这两个问题在全书中会以各种面目反复出现。本节和下一节将展示如何通过对增广矩阵做行变换来回答它们。
例 2 判断下列方程组是否相容:
解 这正是例 1 的方程组。假设我们已通过行变换得到三角形形式:
此时 已经确定。把 的值代入方程 2 就能算出 ,进而从方程 1 确定 。所以解存在,方程组相容。(而且 由方程 2 唯一确定, 也随之唯一确定,故解唯一。)
例 3 判断下列方程组是否相容:
解 增广矩阵为

图 1-6:三条平面没有公共点,方程组不相容。
为了在第一条方程中引入 ,交换第 1、2 行:
为消去第三条方程中的 项,把第 1 行的 2 倍加到第 3 行:
再用第二条方程中的 消去第三条方程中的 :把第 2 行的 2 倍加到第 3 行:
增广矩阵已呈三角形。要正确解读它,回到方程形式:
方程 是 的简写。这个三角形方程组含有内在矛盾:没有任何 的值能满足 。由于 (8) 与 (5) 解集相同,原方程组不相容(无解)。
常见坑
请特别留意 (7) 中的最后一行 ——左端全为零、右端非零,这是不相容方程组在三角形形式下的典型特征。一旦行化简过程中出现这样的行,可以立即停止计算:方程组无解。
数值提示
现实问题中的线性方程组由计算机求解。对于方阵系数矩阵,程序几乎总是使用本节的消元算法(稍作修改以提高精度)。浮点算术存在舍入误差,但很少引发问题;全书数值注记会提醒你今后工作中可能遇到的问题。
1.1 练习题(先做后看解答)
- 用语言叙述:为继续求解下列方程组,下一个应该执行的初等行变换是什么?((a) 可能不止一种答案。)
- 某线性方程组的增广矩阵经行变换后化为如下形式,判断方程组是否相容:
- 是下列方程组的解吗?
- 取何值时,下列方程组相容?
本节其余习题(利用行变换求解方程组、判断相容性、讨论 - 取值、判断真假命题、热传导稳态温度建模等)见原书 1.1 EXERCISES。其中习题 3 配图如下:求直线 与直线 的交点。

图 1-7:习题 3——两条直线的交点即为方程组的解。
习题 33、34 讨论薄板稳态温度分布:内部节点温度近似等于上下左右四个相邻节点温度的平均值,例如 ,即 。这样可写出四条方程求 。

图 1-8:习题 33–34 的金属梁横截面网格——用”节点温度等于四邻居平均”建立线性方程组。
1.1 练习题解答
-
a. 手算时的最佳选择是交换方程 3 和方程 4。另一种可能是用方程 3 的 倍替换方程 4(即倍乘后消元)。注意:不要用方程 2 中的 去消方程 1 中的 ——应当等到化成三角形形式、前两条方程中的 、 项都消干净之后再回头处理 。
b. 方程组已呈三角形。进一步的化简从第四条方程中的 开始:用 消去它上面的所有 项。所以当前这一步是把方程 4 的 2 倍加到方程 1 上。(之后转到方程 3,先乘 ,再用它消去上方的 项。)
-
对应的方程组为:
第三条方程给出 ,这当然是 的合法取值。消去方程 1、2 中的 项后,可以继续求出唯一的 和 。所以解存在且唯一——与例 3 的情形形成对比。
- 检验一组具体的数是否为解很容易:令 ,代入计算:
前两条方程满足,但第三条要求等于 而算出 ,所以 不是解。代入时强烈建议像上面一样给每个乘积加括号,以防算术错误。

图 1-9:练习题 3 的几何解释——点 在前两个平面的交线上,但不在三个平面的公共交点上。
- 把第二条方程替换为它与第一条方程 3 倍之和,方程组变为:
若 ,方程组无解。因此当且仅当 (即 )时方程组相容。
1.2 行化简与阶梯形
本节把 1.1 节的方法提炼成一套行化简算法,用于分析任意线性方程组。只用算法的前半部分,就能回答 1.1 节提出的存在性与唯一性问题。
算法适用于任何矩阵——不必把它看作增广矩阵。本节先引入两类重要的矩阵,它们涵盖 1.1 节的”三角形”矩阵。在下面的定义中,矩阵的非零行(或非零列)指至少含一个非零元素的行(或列);先导元素(leading entry)指非零行中最左边的非零元素。
定义:阶梯形与简化阶梯形
矩形矩阵若满足以下三条性质,就称为处于阶梯形(echelon form,或行阶梯形):
- 所有非零行都位于全零行之上;
- 一行的先导元素位于其上一行先导元素的右侧列;
- 先导元素所在列的下方元素全为零。
若阶梯形矩阵进一步满足: 4. 每个非零行的先导元素为 1; 5. 每个先导 1 是所在列唯一的非零元素,
则称其处于简化阶梯形(reduced echelon form,或简化行阶梯形)。
性质 2 说明先导元素自上而下逐行右移,形成”阶梯”状。1.1 节的”三角形”矩阵,例如
都处于阶梯形,而且第二个还是简化阶梯形。
例 1 下面的矩阵处于阶梯形,其中 表示先导元素(可取任意非零值), 表示任意元素(可为零):
下面的矩阵处于简化阶梯形:先导元素均为 1,且每个先导 1 的上下都是 0:
任何非零矩阵用不同的行变换序列可以化成不止一个阶梯形;但它化成的简化阶梯形是唯一的。
定理 1(简化阶梯形的唯一性)
每个矩阵都行等价于唯一的一个简化阶梯形矩阵。
若矩阵 行等价于阶梯形矩阵 ,就称 是 的一个阶梯形;若 是简化阶梯形,就称 是 的简化阶梯形。(多数矩阵软件用 RREF 表示简化行阶梯形,有些用 REF 表示行阶梯形。)
主元位置
对矩阵做行变换得到阶梯形之后,继续化成简化阶梯形不会改变先导元素的位置。由于简化阶梯形唯一,给定矩阵的任何阶梯形中先导元素总在相同位置上。
矩阵 的主元位置(pivot position)是 中与 的简化阶梯形里先导 1 相对应的位置;主元列(pivot column)是含主元位置的列。
例 2 把下面的矩阵 行化简为阶梯形,并指出 的主元列:
解 沿用 1.1 节的基本策略。最左非零列的顶端是第一个主元位置,必须在此放一个非零元素(即主元,pivot)。为避免分数运算,交换第 1、4 行:
用第一行的倍数加到下方各行,在主元 1 下方造出零:
第二个主元位置必须尽量靠左,即第二列。把该位置的 2 选为下一个主元。把第 2 行的 倍加到第 3 行、 倍加到第 4 行:
矩阵 (2) 出现了新情况:第 3 列无法产生先导元素!(不能用第 1、2 行来帮忙,否则会破坏已形成的阶梯排列。)但交换第 3、4 行可以在第 4 列产生先导元素:
一般形式( 为主元位置):
矩阵已处于阶梯形,由此可知 的第 1、2、4 列是主元列。
如同例 2 所示,主元是主元位置上的非零数,行变换时用它来造零。例 2 的主元是 1、2、5。注意这些数不一定等于原矩阵 中主元位置上的元素。
行化简算法
下面的算法共四步,产出阶梯形;再做第五步得到简化阶梯形。用例 3 演示。
例 3 用初等行变换把下面的矩阵先化为阶梯形,再化为简化阶梯形:
解
第一步:从最左非零列开始。这是一个主元列,主元位置在顶端。
第二步:在主元列中选一个非零元素作为主元;必要时交换行,把它移到主元位置。交换第 1、3 行(也可以交换第 1、2 行):
第三步:用倍加操作在主元下方的所有位置造零。作为预备步骤,可以先把顶行除以主元 3;但第 1 列里有两个 3,直接把第 1 行的 倍加到第 2 行同样方便:
第四步:盖住(忽略)主元所在的行及其上方的所有行,对其余子矩阵重复第一至三步;直到没有可处理的非零行为止。
盖住第 1 行后,第一步表明第 2 列是下一个主元列;第二步选该列”顶端”元素作主元:
第三步中,可以先把子矩阵顶行除以主元 2(可选步骤),这里直接把顶行的 倍加到下一行,得到:
盖住第二个主元所在的行后,剩下的子矩阵只有一行,第一至三步无事可做,整个矩阵已达到阶梯形。若要简化阶梯形,再执行一步。
第五步:从最右边的主元开始,自下而上、自右向左,在每个主元上方造零;若主元不是 1,就用倍乘把它变成 1。
最右主元在第 3 行。把第 3 行的适当倍数加到第 2、1 行,在其上方造零:
下一个主元在第 2 行。用倍乘把它变成 1(整行除以 2):
把第 2 行的 9 倍加到第 1 行,在第 2 列造零:
最后把第 1 行除以主元 3:
这就是原矩阵的简化阶梯形。
第一至四步合称行化简算法的前向阶段(forward phase);产生唯一简化阶梯形的第五步称为后向阶段(backward phase)。
数值提示
计算机程序在第二步通常选取列中绝对值最大的元素作主元,这一策略称为部分主元法(partial pivoting),可减少舍入误差。另外,前向阶段的计算量远大于后向阶段:对 矩阵,化到阶梯形约需 次浮点运算(flop),而继续化到简化阶梯形至多只需 次。
线性方程组的解
把行化简算法作用于线性方程组的增广矩阵,就能直接给出解集的显式描述。
例如,设某增广矩阵已化为等价的简化阶梯形:
增广矩阵有 4 列,所以有 3 个变量。对应的方程组是:
对应主元列的变量 、 称为基本变量(basic variables);其余变量 称为自由变量(free variable)。
只要方程组相容,就可以把每个基本变量用自由变量表示出来,从而显式地描述解集——因为简化阶梯形把每个基本变量恰好放进一条方程里。在 (4) 中,由第一条方程解出 、第二条解出 (第三条 对变量没有限制):
” 为自由变量”意味着 可以任取值:取定 后,(5) 中的公式就确定了 和 。例如 时解为 ; 时解为 。 的每种取值都给出一个(不同的)解,而方程组的每个解也都由某个 的取值给出。
例 4 求线性方程组的一般解,其增广矩阵已化为:
解 该矩阵处于阶梯形,但求解基本变量之前要先化成简化阶梯形。继续行化简(符号 表示与上一个矩阵行等价):
增广矩阵有 6 列,所以有 5 个变量。对应的方程组为:
主元列是第 1、3、5 列,所以基本变量是 ,剩下的 是自由变量。解出基本变量得一般解:
注意 的值已被 (6) 中第三条方程直接固定。
(5) 和 (7) 这样的描述称为解集的参数描述(parametric description),自由变量充当参数。求解一个方程组,就是找出解集的参数描述,或者断定解集为空。
相容且有自由变量的方程组,其解集可以有多种参数描述(例如把 (4) 中第一条方程加上第二条的 5 倍,就可以改用 当参数)。为了统一,本书约定总是用自由变量作参数来描述解集。方程组不相容时解集为空,此时不存在参数描述。
回代:考虑一个增广矩阵处于阶梯形(但非简化阶梯形)的方程组,例如:
计算机程序会用回代(back-substitution)来解它:先由方程 3 把 用 表示,代入方程 2 解出 ,再代入方程 1 解出 。手算时,矩阵格式的后向阶段与回代运算量相同,但矩阵格式能大幅减少出错,所以手算最好始终用简化阶梯形求解。
存在性与唯一性问题
非简化的阶梯形不适合解方程,却是回答两个基本问题的绝佳工具。
例 5 判断下列方程组解的存在性与唯一性:
解 该方程组的增广矩阵在例 3 中已行化简为:
基本变量是 ,自由变量是 。没有形如 的方程,所以不存在不相容的迹象——解存在。又因为存在自由变量, 的每组取值都给出一组不同的解,所以解不唯一:方程组有无穷多解。
当方程组处于阶梯形且不含形如 ()的方程时,每条非零方程都含一个系数非零的基本变量:要么基本变量全部被确定(无自由变量)——此时有唯一解;要么至少一个基本变量可以用一个或多个自由变量表示——此时有无穷多解。由此得到:
定理 2(存在性与唯一性定理)
线性方程组相容当且仅当增广矩阵的最右列不是主元列——等价地,增广矩阵的某个阶梯形中不存在形如 ( 非零)的行。 若线性方程组相容,则解集:(i) 无自由变量时恰有一个解(唯一解);(ii) 至少有一个自由变量时有无穷多解。
用行化简求解线性方程组的流程:
- 写出方程组的增广矩阵;
- 用行化简算法得到等价的阶梯形增广矩阵,判断是否相容;若无解,停止;否则继续;
- 继续行化简,得到简化阶梯形;
- 写出与之对应的方程组;
- 把每条非零方程改写成”基本变量 = 含自由变量的表达式”。
1.2 练习题(先做后看解答)
- 求线性方程组的一般解,其增广矩阵为:
- 求下列方程组的一般解:
- 设某方程组的 系数矩阵有 4 个主元。方程组是否相容?若相容,有多少个解?
本节其余习题(识别阶梯形/简化阶梯形、行化简并圈出主元、确定 使方程组相容、判断真假命题、欠定与超定方程组、插值多项式等)见原书 1.2 EXERCISES。
1.2 练习题解答
- 先化为简化阶梯形并写出对应方程组:
基本变量是 , 是自由变量。一般解为:

图 1-10:该方程组的解集是两个平面的交线——一条直线上的无穷多个点。
常见坑
一般解必须逐个变量地描述清楚,并明确标出哪个是参数。写成” 都是自由变量”之类的说法是错误的——本题只有 是自由变量。
- 对增广矩阵行化简:
阶梯形显示最右列是主元列,第三行对应方程 ,方程组不相容,无需再做行变换。注意:本题中自由变量的存在与否无关紧要,因为方程组根本无解。
- 系数矩阵有 4 个主元,意味着系数矩阵每行都有主元。行化简后系数矩阵不会出现全零行,因此行化简后的增广矩阵不可能有形如 ( 非零)的行。由定理 2,方程组相容。又因为系数矩阵有 7 列而只有 4 个主元列,所以有 3 个自由变量,从而有无穷多解。
1.3 向量方程
线性方程组的重要性质可以用向量的概念和记号来描述。本节把向量方程与普通方程组联系起来。在本书讨论到第 4 章”向量空间”之前,向量就是一列有序的数——这个简单的想法能让我们尽快抵达有趣而重要的应用。
中的向量
只有一列的矩阵称为列向量(column vector),或简称向量(vector)。两个元素的向量例如:
其中 是任意实数。所有二元向量的集合记作 (读作”R 二”): 代表向量元素取自实数集,指数 2 表示每个向量含两个元素。
中两个向量相等当且仅当对应元素相等。所以 与 不相等—— 中的向量是有序实数对。
给定 中的向量 和 ,它们的和 是把对应元素分别相加得到的向量:
给定向量 和实数 , 的标量倍(scalar multiple) 是把 的每个元素都乘以 得到的向量。例如,若 且 ,则 。数 称为标量(scalar)。
例 1 给定 和 ,求 、 和 。
解
为方便(也省空间),本书有时把列向量 写成 的形式。这时圆括号和逗号把向量 与 行矩阵 (方括号、无逗号)区分开。二者不相等,因为矩阵形状不同,尽管元素相同。
的几何描述
在平面上取直角坐标系。因为平面上每个点都由一个有序数对确定,我们可以把几何点 与列向量 等同起来,于是 可以看作平面上所有点的集合。

图 1-11:把向量看作平面上的点。

图 1-12:把向量画成带箭头的有向线段,更便于观察方向和长度。
像 这样的向量,常借助从原点 到点 的箭头(有向线段)来做几何可视化。此时箭身中间的各个点没有特殊含义。
两个向量的和有很直观的几何表示,可用解析几何验证:
平行四边形加法法则
若 中的 和 用平面上的点表示,则 对应的是以 、、 为三个顶点的平行四边形的第四个顶点。

图 1-13:平行四边形法则—— 是平行四边形的第四个顶点。
例 2 向量 、 与 的关系如下页图所示。

图 1-14:例 2——用平行四边形法则验证 的位置。
下一个例子说明:一个固定非零向量的全部标量倍组成的集合,是穿过原点 的一条直线。
例 3 设 。在图上画出向量 、 和 。
解 见图 1-15 与图 1-16,其中 ,。 的箭头长度是 的两倍且方向相同; 的箭头是 的三分之二长且方向相反。一般地, 的箭头长度是 的 倍(线段 到 的长为 ,我们将在第 6 章深入讨论)。

图 1-15: 的典型倍数:正倍数同向伸缩,负倍数反向伸缩。

图 1-16: 的全部倍数构成过原点的一条直线。

图 1-17: 中的向量 与其倍数 。
与 中的向量
中的向量是有三个元素的 列矩阵,几何上用三维坐标空间中的点表示,必要时也画出从原点出发的箭头。
若 是正整数,(读作”R n”)表示所有由 个实数组成的有序列表( 元组)的集合,通常写成 列矩阵:
所有元素全为零的向量称为零向量,记作 (其元素个数由上下文确定)。
中向量的相等、标量乘法与加法都按元素逐一定义,与 完全一样。这些运算满足以下代数性质(可直接由实数的相应性质验证):
的代数性质
对 中所有 及所有标量 :
(i) (v)
(ii) (vi)
(iii) (vii)
(iv) ,其中 表示 (viii)
为记号简便, 常写成 。图 1-18 展示 即 与 之和。

图 1-18:向量减法 的几何意义。
线性组合
给定 中的向量 和标量 ,由
定义的向量 称为 的一个线性组合(linear combination),权重为 。上面的性质 (ii) 允许我们省去括号。权重可以是任意实数(包括零)。例如向量 的一些线性组合有:
例 4 图 1-19 标出了 与 的若干线性组合(图中过 和 的整数倍处画了平行网格线)。估计生成向量 和 所需的 、 的线性组合。

图 1-19: 与 的线性组合构成的”网格”——平面上许多向量都能落进这张网。
解 由平行四边形法则, 是 与 的和,即:

图 1-20:例 4——先沿 方向走 3 格,再沿 方向走 格,就到达 。
这个表达式可以理解为”从原点出发沿两条直线路径走到 “的路线图:先沿 方向走 3 个单位到 ,再沿 方向(平行于过 和 的直线)走 个单位。向量 虽不在网格线上,但看起来位于两对网格线正中间,是由 和 确定的平行四边形的顶点(见图 1-20),因此一个合理的估计是:
下一个例子把”线性组合”问题与 1.1、1.2 节研究过的存在性问题联系起来。
例 5 设 ,,。判断 能否表示为 与 的线性组合,即是否存在权重 使
若有解,把它求出来。
解 利用标量乘法和向量加法的定义改写向量方程:
即
也就是
(2) 式两端的向量相等当且仅当对应元素相等。也就是说, 使向量方程 (1) 成立当且仅当它们满足方程组:
为解这个方程组,对增广矩阵行化简:
方程组 (3) 的解是 。所以 是 与 的线性组合,权重为 、,即:
注意例 5 中原来的向量 恰好是行化简的增广矩阵的三列:
因此可以直接把向量方程 (1) 中的向量按出现顺序放进矩阵各列,无需经过中间步骤。由此得到一个基本事实:
向量方程与线性方程组的等价性
向量方程 与增广矩阵为 的线性方程组有相同的解集。 特别地, 能由 的线性组合生成,当且仅当上述方程组有解。
线性代数的关键思想之一,是研究由固定向量组 生成的全部线性组合构成的集合。
定义:Span
若 在 中,则 的所有线性组合的集合记作 ,称为由 张成(spanned/generated)的 的子集,即所有形如 ( 为标量)的向量的全体。
问” 是否在 中”,就是在问向量方程
是否有解,等价地问增广矩阵为 的线性方程组是否有解。
注意 包含 的每个标量倍(因为 ),特别地零向量一定在其中。
与 的几何描述
设 是 中的非零向量,则 是 的所有标量倍组成的集合,即 中过 与 的直线上的点集。
若 和 是 中的非零向量且 不是 的倍数,则 是 中包含 、 和 的平面。特别地,它包含过 与 的直线以及过 与 的直线。

图 1-21: 是过原点的一条直线。

图 1-22: 是过原点的一个平面。
例 6 设 ,,。 是 中过原点的一个平面, 在这个平面里吗?
解 即问方程 是否有解。对增广矩阵 行化简:
第三条方程是 ,说明方程组无解。向量方程 无解,所以 不在 中。
线性组合的应用
最后一个例子展示:当”成本”这类量被拆成若干类别时,标量倍和线性组合如何自然出现。基本原理是”数量 单位成本 = 总成本”。
例 7 某公司生产两种产品。每生产 1 美元的产品 B,公司要花费 0.45 美元材料费、0.25 美元人工费和 0.15 美元管理费;每生产 1 美元的产品 C,要花费 0.40 美元材料费、0.30 美元人工费和 0.15 美元管理费。令
与 表示两种产品”每美元产出的成本”。
a. 向量 有什么经济学含义?
b. 设公司要生产 美元的产品 B 和 美元的产品 C,请给出一个描述各项成本(材料、人工、管理)的向量。
解
a. 计算
向量 列出了生产 100 美元产品 B 的各项成本:45 美元材料、25 美元人工、15 美元管理费。
b. 生产 美元产品 B 的成本由向量 给出,生产 美元产品 C 的成本由 给出,因此两种产品的总成本向量是:
1.3 练习题(先做后看解答)
-
证明:对 中任意 和 ,有 。
-
当 取何值时, 属于 ?其中
- 设 是 中的向量,且 和 都在 中。证明 也在 中。
本节其余习题(计算 、用箭头画向量、把向量方程与方程组互写、判断 是否为 的线性组合、确定 使向量落在张成平面内、点质量质心等)见原书 1.3 EXERCISES。其中习题 7、8 需要借助下图,把 与 写成 和 的线性组合,并回答” 中每个向量是否都是 和 的线性组合”。

图 1-23:习题 7、8——借助平行网格线把目标向量”读”成 与 的线性组合。
习题 29 引入质心(重心)概念:若质量 位于点 处,总质量 ,则质心为 。

图 1-24:习题 29——四个点质量的质心计算,本质是求一组向量的加权线性组合。
习题 31 研究均质三角形薄板(质量 3 g,顶点 、、)的平衡点,以及如何再添加 6 g 质量把平衡点移到 。

图 1-25:习题 31——三角形薄板的质心即三个顶点上单位质量的平衡点。
习题 32 要求根据图中 的位置,判断方程 是否有解、解是否唯一。

图 1-26:习题 32——用几何图判断向量方程解的存在性与唯一性。
1.3 练习题解答
- 取 中任意向量 和 ,计算:
第一步和最后一步用的是向量加法的定义,中间一步用的是实数加法的交换律。
- 属于 当且仅当存在标量 使
这个向量方程等价于一个三元线性方程组,对其增广矩阵行化简:
方程组相容当且仅当第四列没有主元,即必须 。所以 属于 当且仅当 。

图 1-27:练习题 2——点 位于一条直线上,该直线仅在 时与 张成的平面相交。
常见坑
牢记:方程组里出现自由变量,并不保证方程组相容。有自由变量只说明”若有解则有无穷多解”,是否存在解仍要看有没有 型的矛盾行。
- 因为 和 在 中,存在标量 与 使
于是
由于 也是标量, 确实属于 。
1.4 矩阵方程
线性代数的一个基本思想:把向量的线性组合看作矩阵与向量的乘积。下面的定义让我们能以全新方式重述 1.3 节的概念。
定义:矩阵–向量积
设 是 矩阵,其列为 , 属于 ,则 与 的乘积 就是以 的对应元素为权重的 各列的线性组合:
注意:只有当 的列数等于 的元素个数时, 才有定义。
例 1
a.
b.
例 2 设 属于 ,把线性组合 写成矩阵乘向量的形式。
解 把 放进矩阵 的各列,把权重 放进向量 ,即:
1.3 节已经展示了如何把线性方程组写成涉及向量线性组合的向量方程。例如方程组
等价于
如例 2 所示,左端的线性组合就是矩阵乘向量,于是 (2) 变成:
(3) 具有 的形式,称为矩阵方程(matrix equation),以区别于 (2) 那样的向量方程。注意 (3) 中的矩阵恰好就是方程组 (1) 的系数矩阵。任何线性方程组(或向量方程)都能写成等价的矩阵方程 ,这一简单事实全书反复使用。
定理 3(三种表述等价)
设 是 矩阵,列为 , 属于 。则矩阵方程 A\mathbf{x}=\mathbf{b} \tag{4} 与向量方程 x_1\mathbf{a}_1 + x_2\mathbf{a}_2 + \cdots + x_n\mathbf{a}_n = \mathbf{b} \tag{5} 有相同的解集,后者又与增广矩阵为 \left[\begin{array}{ccccc} \mathbf{a}_1 & \mathbf{a}_2 & \cdots & \mathbf{a}_n & \mathbf{b} \end{array}\right] \tag{6} 的线性方程组有相同的解集。
定理 3 是洞察线性代数问题的强大工具:同一个线性方程组现在有三种不同但等价的视角——矩阵方程、向量方程、线性方程组。为现实问题建模时,你可以选最自然的视角,需要时再换到另一种。无论哪种形式,求解方法都一样:对增广矩阵 (6) 做行化简。
解的存在性
的定义直接导出一个有用的事实:
存在性判据
方程 有解,当且仅当 是 各列的线性组合。
1.3 节考虑的存在性问题是” 是否在 中”,等价于” 是否相容”。更难的存在性问题是:对一切可能的 , 是否都相容?
例 3 设 ,。方程 对一切可能的 都相容吗?
解 对 的增广矩阵行化简:

图 1-28: 的三列张成 中过原点的一个平面,只有落在这个平面上的 才能使 有解。
第 4 列的第三个元素等于 。有些 的选取会让它非零,所以 并非对所有 都相容。
例 3 化简后的矩阵也给出了” 相容”的 的全体:必须满足
这是 中过原点的一个平面,正是 的三列的所有线性组合构成的集合(见图 1-28)。
例 3 中 之所以不能对所有 相容,是因为 的阶梯形出现了全零行。若 的每一行都有主元位置,增广矩阵的阶梯形就不可能出现 这样的行——此时不必关心增广列的计算。下一条定理中的” 的列张成 “意为: 中每个向量都是 各列的线性组合。一般地, 中的向量组 张成(spans),指 中每个向量都是它们的线性组合,即 。
定理 4(四个等价命题)
设 是 矩阵,则下列命题逻辑等价(对给定的 ,要么全真,要么全假):
a. 对 中每个 ,方程 有解;
b. 中每个 都是 各列的线性组合;
c. 的列张成 ;
d. 的每一行都有主元位置。
定理 4 是本章最有用的定理之一。(a)(b)(c) 的等价来自 的定义和”张成”的含义;(a) 与 (d) 的等价可仿照例 3 后的讨论理解(完整证明在本节末尾)。
常见坑
定理 4 说的是系数矩阵,不是增广矩阵!若增广矩阵 每行都有主元位置,方程 未必相容(最后一行的主元可能落在最右列,即出现 型矛盾行)。
的计算
例 4 计算 ,其中 ,。
解 按定义:
乘积 的第一个元素是”乘积之和”(也叫点积),用 的第一行与 的元素计算:
同理,第二个元素用 的第二行与 对应元素相乘再求和:;第三个元素用第三行。
计算 的行向量规则
若乘积 有定义,则 的第 个元素等于 第 行的元素与 对应元素的乘积之和。
例 5
a.
b.
c.
例 5(c) 中对角线为 1、其余为 0 的矩阵称为单位矩阵(identity matrix),记作 。计算表明对 中每个 都有 。类似地有 单位矩阵 ,对 中每个 都有 。
矩阵–向量积 的性质
定理 5
设 是 矩阵, 属于 , 是标量,则:
a. ;
b. 。
证明 为简单起见取 、,(一般情形证明类似)。设 分别是 的第 个元素。
(a) 用 的元素作权重,把 写成 各列的线性组合:
(b) 同理,用 的元素作权重:
数值提示
优化计算 的算法时,计算序列应尽量访问连续存储的数据。Fortran 按列存储矩阵,算法把 算成各列的线性组合;C 语言按行存储,则应改用行向量规则计算。
定理 4 的证明 (a)(b)(c) 逻辑等价,因此只需证明(对任意 )(a) 与 (d) 同真同假,就能把四个命题串起来。
设 是 的一个阶梯形。给定 ,可以把增广矩阵 行化简为 ():
若 (d) 为真,则 每行都有主元位置,增广列不可能含主元,于是对任意 , 有解,(a) 为真。若 (d) 为假,则 最后一行全为零。取 为最后一个元素是 1 的向量,则 表示不相容的方程组;由于行变换可逆, 可以变回 ,新方程组 也不相容,(a) 为假。
1.4 练习题(先做后看解答)
-
设 ,,。可以验证 是 的解。请利用这一事实,把 表示为 各列的一个具体线性组合。
-
设 ,,。通过计算 和 验证定理 5(a)。
-
构造 矩阵 及向量 ,使 有解而 无解。
本节其余习题(用两种规则计算乘积、矩阵方程与向量方程互写、解 、判断列是否张成 、判断真假命题等)见原书 1.4 EXERCISES。其中习题 13 问: 是否落在 的列张成的 平面内(见下图),即 是否相容。

图 1-29:习题 13——向量 是否位于 的列张成的平面内?这等价于 是否有解。
1.4 练习题解答
- 由定理 3, 等价于向量方程
这正是把 表示成 各列的线性组合:权重依次是 的元素 。
- 先算 ,于是
两者相等,定理 5(a) 成立。
- 本题有无穷多正确答案。构造矩阵时一个常用技巧是直接取现成的简化阶梯形,例如取:
的增广矩阵的简化阶梯形是 ,对应相容的方程组,所以有解;而 的增广矩阵的简化阶梯形是 ,对应不相容的方程组(),所以无解。
1.5 线性方程组的解集
线性方程组的解集是线性代数的重要研究对象,以后会在多种场合出现。本节用向量记号对解集给出显式描述和几何描述。
齐次线性方程组
若方程组能写成 的形式( 是 矩阵, 是 中的零向量),就称它是齐次的(homogeneous)。这样的方程组至少有一个解:( 中的零向量),称为平凡解(trivial solution)。对给定的 ,重要的问题是:是否存在非平凡解(nontrivial solution),即满足 的非零向量 。由 1.2 节的存在性与唯一性定理(定理 2)立即得到:
非平凡解的判据
齐次方程 有非平凡解,当且仅当方程至少有一个自由变量。
例 1 判断下列齐次方程组是否有非平凡解,并描述解集:
解 设 为系数矩阵,把增广矩阵 行化简为阶梯形:
由于 是自由变量, 有非平凡解( 的每个取值都给出一组)。继续化成简化阶梯形来描述解集:
解出基本变量得 ,, 自由。把一般解写成向量形式,并从表达式中提出 :
这表明本题中 的每个解都是 的标量倍;取 就得到平凡解。几何上,解集是 中过原点的一条直线。
注意:非平凡解 可以有某些元素为零,只要不全为零即可。

图 1-30:例 1——齐次方程组的解集是 中过原点的一条直线。
例 2 一条线性方程可以看作非常简单的方程组。描述齐次”方程组”
的全部解。
解 无需矩阵记号。用基本变量 关于自由变量求解,得一般解 ,其中 自由。写成向量形式:
这一计算说明 (1) 的每个解都是向量 和 的线性组合,即解集为 。由于 与 互不为倍数,解集是过原点的一个平面。

图 1-31:例 2——含两个自由变量的齐次方程,其解集是过原点的平面。
例 1、例 2 连同习题说明:齐次方程 的解集总可以显式写成 。若只有零解,解集就是 ;若只有一个自由变量,解集是过原点的直线;若有两个或更多自由变量,可以把它想象成过原点的平面(当然 这类图像并不要求 来自 的解)。
参数向量形式
例 2 中原方程 (1) 是平面的隐式描述;解方程则是求平面的显式描述,即由 、 张成的集合。(2) 称为平面的参数向量方程(parametric vector equation),有时也写成
以强调参数取遍全体实数。例 1 中的方程 ( 自由)或 ()是直线的参数向量方程。凡是用向量把解集显式描述成例 1、例 2 那样的形式,我们就说解写成参数向量形式(parametric vector form)。
非齐次方程组的解
当非齐次线性方程组有很多解时,其一般解可以写成参数向量形式:一个特定向量加上对应齐次方程组的解的任意线性组合。
例 3 描述 的全部解,其中
解 这里的 就是例 1 的系数矩阵。对 做行变换:
于是 ,, 自由。写成向量形式并把一般解拆成两段:
方程 ,或用一般参数 写成:
这就是 的解集的参数向量形式。回忆例 1 中 的解集的参数向量方程是
(用的是同一个 )。所以 的解可以由 的解加上向量 得到; 本身是 的一个特解(对应 (3) 中 )。
几何上,可以把向量加法理解为平移(translation):给 加上 的效果是把 沿平行于”过 与 的直线”的方向移动,称 被平移到 。

图 1-32:把 加上 ,就是把它平移到 。
若直线 上每一点都被向量 平移,结果是一条与 平行的直线。

图 1-33:整条直线被 平移后得到一条平行直线。
设 是过 与 的直线(方程 (4)),把 上每点加 就得到 (3) 描述的平移直线,且 本身就在这条线上。我们称 (3) 是”过 且平行于 的直线”的方程。于是 的解集是一条过 、平行于 解集的直线。

图 1-34: 与 的平行解集(一个自由变量的情形)。
图 1-34 所示的关系可推广到任何相容的 ,只是自由变量较多时解集不再是直线。下面的定理给出精确表述。
定理 6
设方程 对某个给定的 相容, 是它的一个解。则 的解集是所有形如 的向量的集合,其中 是齐次方程 的任意解。
定理 6 说明:只要 有解,其解集就是 的解集经过平移得到的(平移向量为任一特解 )。图 1-35 画出了两个自由变量的情形。即使 ,我们对相容方程组 ()解集的心理图像也应当是:一个点、一条直线或一个不经过原点的平面。

图 1-35:两个自由变量时, 的解集(过 的平面)平行于 的解集(过原点的平面)。
常见坑
定理 6 只适用于 至少有一个非零解 的情形。若 无解,解集为空,谈不上任何平移。
把(相容方程组的)解集写成参数向量形式的算法:
- 把增广矩阵行化简为简化阶梯形;
- 把每个基本变量用方程中出现的自由变量表示;
- 把典型解 写成一个各元素依赖于自由变量(若有)的向量;
- 把 分解为若干数值元素向量的线性组合,用自由变量作参数。
1.5 练习题(先做后看解答)
- 下面两条方程各自决定 中的一个平面。这两个平面相交吗?若相交,描述交线。
-
把 的一般解写成参数向量形式,并说明该解集与例 2 的解集的关系。
-
证明定理 6 的前半部分:设 是 的解(即 ), 是齐次方程 的任意解,。证明 是 的解。
本节其余习题(判断齐次方程组有无非平凡解、把解集写成参数向量形式、求过一点平行于一向量的直线方程、判断真假命题等)见原书 1.5 EXERCISES。其中习题 21、22 需要用到下图:求过 和 两点的直线 的参数方程(提示: 平行于向量 )。

图 1-36:习题 21、22——过 、 两点的直线,方向向量为 。
1.5 练习题解答
- 对增广矩阵行化简:
于是 ,, 自由。参数向量形式的一般解为:
两个平面确实相交:交集是过点 、方向为 的一条直线。
- 增广矩阵 行等价于 ,一般解为 , 自由,即:
非齐次方程 的解集是平移平面 :它过点 ,平行于例 2 中齐次方程的解集(过原点的平面)。
- 利用 1.4 节定理 5:
所以 是 的解。
1.6 线性方程组的应用
你可能以为现实中的线性代数问题只有唯一解或无解。本节要展示的是:多解的线性方程组会自然地出现。这里的应用来自经济学、化学和网络流。
经济学中的齐次方程组
本章开篇提到的”500 个方程 500 个变量”的系统就是著名的 Leontief”投入–产出”(或”生产”)模型,第 2 章将在理论和记号更完备时详细研究。现在看一个更简单的”交换模型”(也归功于 Leontief)。
设想一国经济被划分为许多部门(制造业、通信业、娱乐业、服务业等等)。已知每个部门一年的总产出,也知道这些产出如何分配(“交换”)给经济的其他部门。把某部门产出的总货币价值称为该产出的价格。Leontief 证明了如下结论:
均衡价格的存在性
可以给各部门的总产出指定一组均衡价格,使每个部门的收入恰好抵消它的支出。
下面的例子演示如何求均衡价格。
例 1 设某经济由煤炭(Coal)、电力(Electric)、钢铁(Steel)三个部门组成,各部门的产出分配如下表,表中一列表示该部门总产出分配的去向。



图 1-37 至图 1-39:一个简单经济中三部门间的产出交换关系示意。
表 1:一个简单经济(产出分配表)
| 卖出方→ 买入方↓ | 煤炭 | 电力 | 钢铁 |
|---|---|---|---|
| 煤炭 | .0 | .4 | .6 |
| 电力 | .6 | .1 | .2 |
| 钢铁 | .4 | .5 | .2 |
例如第二列说明:电力部门的总产出中,40% 卖给煤炭,50% 卖给钢铁,剩下的 10% 留给电力自身(这 10% 是电力维持运营的支出)。由于全部产出都要计入,每列的小数之和必须为 1。
记煤炭、电力、钢铁部门年度总产出的价格分别为 。请找出使各部门收支相抵的均衡价格(若存在)。
解 一个部门看列知道自己的产出去了哪里,看行知道自己的投入从哪里来。例如表 1 第一行说明:煤炭要购买(并支付)电力的 40% 产出和钢铁的 60% 产出。由于电力、钢铁总产出的价值分别为 和 ,煤炭必须花费 美元买电力份额、 美元买钢铁份额,故煤炭的总支出为 。要使煤炭的收入 等于支出:
交换表第二行说明电力部门为买煤花 、买电花 、买钢花 ,于是电力的收支要求是:
最后,第三行给出钢铁部门的收支要求:
为求解 (1)(2)(3) 组成的方程组,把未知量都移到左端并合并同类项(例如 (2) 左端把 合并为 ):
接下来行化简(这里把小数四舍五入到两位以简化计算):
一般解为 ,, 自由。该经济的均衡价格向量形如:
取任意(非负)值都给出一组均衡价格。例如取 (即 1 亿美元),则 、:当煤炭产出定价 9400 万美元、电力产出定价 8500 万美元、钢铁产出定价 1 亿美元时,各部门收支恰好平衡。
配平化学方程式
化学方程式描述化学反应消耗和生成各物质的量。例如丙烷气体燃烧时,丙烷()与氧气()化合生成二氧化碳()和水():
要”配平”这个方程,化学家必须找到整数 ,使左端碳(C)、氢(H)、氧(O)原子的总数与右端对应原子的总数相等(因为反应中原子既不消灭也不产生)。
系统配平的方法:为反应中的每种反应物和产物构造一个向量,列出”每分子含各类原子的个数”。方程 (4) 涉及三种原子,所以用 中的向量(分量依次为 C、H、O 的原子数):
配平方程 (4) 要求系数 满足:
把所有项移到左端(第三、四个向量变号):
对增广矩阵行化简得一般解:
化学方程式的系数必须取整数,故取 ,得 ,,。配平后的方程是:
把所有系数加倍也能配平,但化学家通常使用最小整数系数的配平方式。
网络流
科学家、工程师和经济学家研究某种量在网络(network)中的流动时,会自然地遇到线性方程组。例如城市规划者和交通工程师监控城市街道网格的车流;电气工程师计算电路中的电流;经济学家分析产品经批发、零售网络到达消费者的分布。许多网络的方程组包含成百上千个变量和方程。
网络由若干节点(junction/node)以及连接部分或全部节点的分支(branch,线或弧)组成。每个分支标明流向,流量(流率)要么直接给出,要么用变量表示。
网络流的基本假设是:流入网络的总流量等于流出网络的总流量;流入每个节点的总流量等于流出该节点的总流量。例如图 1-40 中,30 个单位从一个分支流入节点, 和 表示从另两个分支流出的流量。由于流量在节点处”守恒”,必有 。每个节点处的流量都这样用一条线性方程描述。网络分析的任务是:在部分信息(如流入和流出网络的总流量)已知时,确定每个分支的流量。

图 1-40:一个节点(junction):流入 = 流出,故 。
例 2 下图给出巴尔的摩市中心若干单行道在典型午后的车流(辆/小时)。求该网络的一般流型。

图 1-41:例 2——巴尔的摩市中心单行道网络,四个路口 A、B、C、D。
解 先写出描述流量的方程,再求方程组的一般解。如上图标记路口(节点)和未知流量。在每个路口令”流入 = 流出”:
| 路口 | 流入 = 流出 |
|---|---|
| A | |
| B | |
| C | |
| D |
另外,流入网络的总流量 等于流出总量 ,化简得 。把这条方程与前四条整理后的方程合并,得到:
对增广矩阵行化简后,方程组化为:
网络的一般流型由下式描述:
网络分支中的负流量表示实际流向与模型所标方向相反。由于本题街道是单行的,所有变量都不能取负值——这给变量的可能取值加上了限制。例如 不能为负,所以 。其他约束见练习题 2。
1.6 练习题(先做后看解答)
-
设某经济有三个部门:农业、矿业、制造业。农业把 5% 的产出卖给矿业、30% 卖给制造业,其余自留;矿业把 20% 的产出卖给农业、70% 卖给制造业,其余自留;制造业把 20% 的产出卖给农业、30% 卖给矿业,其余自留。确定该经济的交换表(列表示各部门产出的分配去向)。
-
对例 2 研究的网络流,确定 和 的可能取值范围。(提示:例 2 已证 ,这对 、 意味着什么?再利用 。)
本节其余习题(两部门均衡价格、其他经济交换表、配平更多化学方程式、求各种网络的一般流型与最值等)见原书 1.6 EXERCISES。其中习题 1 的两部门经济(商品业与服务业互相购买 80%/70% 的产出)配图如下。

图 1-42:习题 1——两部门经济的产出交换。
习题 11–14 给出四个网络(下图依次对应习题 11 的一般网络、习题 12 的高速公路网、习题 13 的网络、习题 14 的英国环形交叉口),要求求一般流型,并在假定流量非负时求某些变量的最值。

图 1-43:习题 11——一般网络流,求 的最大可能值。

图 1-44:习题 12——高速公路网络(流量单位:辆/分钟),并分析关闭 路段后的流型。

图 1-45:习题 13——网络流,求 的最小流量。

图 1-46:习题 14——英国式单行环岛,求 的最小可能值。
1.6 练习题解答
- 把百分比写成小数。由于全部产出都要计入,每列之和必须为 1——这个事实可以帮助填出缺失的”自留”份额:
| 卖出方→ 买入方↓ | 农业 | 矿业 | 制造业 |
|---|---|---|---|
| 农业 | .65 | .20 | .20 |
| 矿业 | .05 | .10 | .30 |
| 制造业 | .30 | .70 | .50 |
(例如农业自留 。)
- 由例 2 的解 、:因为 ,所以 、;又因为 ,所以 、。综上:
1.7 线性无关
1.5 节的齐次方程可以换个视角研究:把它们写成向量方程。这样,关注的焦点就从 的未知解转移到向量方程中出现的那些向量上。
例如考虑方程:
它当然有平凡解 。与 1.5 节一样,核心问题是:平凡解是不是唯一的解?
定义:线性无关与线性相关
中的指标向量集 称为线性无关(linearly independent)的,如果向量方程 只有平凡解。若存在不全为零的权重 使 c_1\mathbf{v}_1 + c_2\mathbf{v}_2 + \cdots + c_p\mathbf{v}_p = \mathbf{0} \tag{2} 则称 线性相关(linearly dependent)。(2) 称为 之间的线性相关关系(linear dependence relation)。一个集合线性相关当且仅当它不线性无关。
例 1 设 ,,。
a. 判断 是否线性无关。
b. 若可能,找出 之间的一个线性相关关系。
解
a. 需要判断方程 (1) 是否有非平凡解。对相应增广矩阵做行变换:
显然 是基本变量, 是自由变量。 的每个非零值都给出 (1) 的一组非平凡解。所以 线性相关(不线性无关)。
b. 为找出线性相关关系,把增广矩阵完全行化简并写出新方程组:
于是 ,, 自由。给 任取非零值,例如 ,则 ,。代入方程 (1) 得:
这就是 之间(无穷多个可能的)一个线性相关关系。
矩阵列的线性无关性
设从矩阵 出发。矩阵方程 可写成
各列之间的每个线性相关关系都对应 的一组非平凡解。于是有:
矩阵列的判据
矩阵 的列线性无关,当且仅当方程 只有平凡解。
例 2 判断矩阵 的列是否线性无关。
解 为研究 ,对增广矩阵行化简:
此时显然有 3 个基本变量、没有自由变量,所以 只有平凡解, 的列线性无关。
一个或两个向量的集合
只含一个向量 的集合线性无关,当且仅当 不是零向量。因为当 时,向量方程 只有平凡解;而零向量本身线性相关,因为 有许多非平凡解。
例 3 判断下列向量集是否线性无关:
解
a. 注意 是 的倍数:。于是 ,说明 线性相关。
b. 与 显然互不为倍数。它们可能线性相关吗?假设 满足 。若 ,可解出 ,这与” 不是 的倍数”矛盾,所以 必为 0;同理 也必为 0。因此 线性无关。
例 3 的论证说明:两个向量组成的集合是否线性相关,可以直接观察得出——只需检查是否至少有一个向量是另一个的倍数,无需行变换(此判据只适用于两个向量的情形)。
两个向量的判据
集合 线性相关,当且仅当其中一个向量是另一个的倍数;线性无关,当且仅当互不为倍数。几何语言:两个向量线性相关当且仅当它们落在过原点的同一条直线上。

图 1-47:线性相关的情形—— 落在 内。

图 1-48:图 1-47 的配套面板——例 3 中两向量是否共线决定线性相关性。
两个或更多向量的集合
下一条定理的证明与例 3 的解法类似,详见本节末尾。
定理 7(线性相关集的特征刻画)
由两个或更多向量组成的指标集 线性相关,当且仅当 中至少有一个向量是其余向量的线性组合。事实上,若 线性相关且 ,则某个 ()是它前面的向量 的线性组合。
常见坑
定理 7 没有说线性相关集中的每个向量都是其余向量的线性组合。相关集中的某个向量可能无法由其他向量表示(见练习题 1(c))。
例 4 设 ,。描述 和 张成的集合,并解释为什么” 在 中”当且仅当” 线性相关”。
解 与 互不为倍数,故线性无关,它们张成 中的一个平面(见 1.3 节)。事实上 就是 平面()。若 是 的线性组合,则由定理 7, 线性相关。反之,设 线性相关,由定理 7(注意 ),其中某个向量是它前面向量的线性组合;由于 不是 的倍数,这个向量只能是 ,所以 在 中。

图 1-49: 中的线性相关—— 落在 张成的平面内。

图 1-50:线性无关的情形—— 不在 内。
例 4 可推广到 中任何 ( 线性无关): 线性相关当且仅当 在 张成的平面内。
接下来的两条定理描述线性相关性”自动成立”的特殊情形。定理 8 在后续章节中是关键结果。
定理 8
若向量组中向量的个数超过每个向量的元素个数,则该组必线性相关。即: 中的任何集合 ,只要 ,就线性相关。
证明 设 ,则 是 矩阵,方程 对应 条方程、 个未知数的方程组。若 ,变量比方程多,必有自由变量,于是 有非平凡解, 的列线性相关。图 1-51 是该定理的矩阵形式示意。

图 1-51:若 (列数多于行数),列必线性相关。
常见坑
定理 8 对”向量个数不超过元素个数”的情形什么也没说——此时可能相关也可能无关,须另行判定。
例 5 向量 、、 由定理 8 知必线性相关:集合里有 3 个向量,而每个向量只有 2 个元素。注意其中没有任何向量是其他向量的倍数——这正说明”个数超限 ⇒ 必相关”,但个数不超限时不能下此结论。
定理 9
若 中的集合 包含零向量,则 线性相关。
证明 给向量重新编号,不妨设 ,则 是权重不全为零的相关关系,故 线性相关。
例 6 用观察法判断下列集合是否线性相关:
a.
b.
c.
解
a. 集合含 4 个向量,每个向量只有 3 个元素。由定理 8,线性相关。
b. 向量个数未超过元素个数,定理 8 不适用。但集合含零向量,由定理 9,线性相关。
c. 逐对比较两个向量的对应元素:第二个向量似乎应该是第一个的 倍。这一关系对前三对元素成立,但第四对不成立()。所以两个向量互不为倍数,线性无关。
定理 7 的证明 若 中某个 等于其他向量的线性组合,把 从等式一端移到另一端,就得到一个 上权重为 (非零)的线性相关关系(例如若 ,则 ),所以 线性相关。
反之,设 线性相关。若 ,则它是其余向量的(平凡)线性组合。否则 ,且存在不全为零的权重 使 。设 是使 的最大下标。若 ,则 ,这与 矛盾,所以 ,且:
即 是它前面各向量的线性组合。
1.7 练习题(先做后看解答)
-
设 ,,,。
a. 集合 、、、、、 是否各自线性无关?为什么?
b. (a) 的答案能否推出 线性无关?
c. 要判断 是否线性相关,先检查某个向量(比如 )是否为其余向量的线性组合,这种做法明智吗?
d. 线性相关吗?
-
设 是 中的线性相关集, 是 中的向量。证明 也线性相关。
本节其余习题(判断向量组线性无关性、求 使向量组相关、判断矩阵列无关性、写出可能的阶梯形、构造反例等)见原书 1.7 EXERCISES。
1.7 练习题解答
-
a. 是。上述每个集合都只有两个向量,而在每种情形里都没有一个向量是另一个的倍数,所以各自线性无关。
b. 不能。(a) 的观察本身对 的线性无关性没有任何说明。
c. 不明智。检验线性无关时,只挑一个向量去检查它能否由其余向量表示通常是个坏主意:可能出现”选中的向量确实不能由其他向量表示,但整个集合仍然线性相关”的情形。在本题中, 就不是 的线性组合。
d. 是,由定理 8:向量个数(4 个)超过了元素的个数(3 个)。

图 1-52:练习题 1—— 不在 内,但这不影响四个向量整体线性相关。
- 对 应用线性相关的定义:存在不全为零的标量 使
在上式两端加上 :
由于 与 0 不全为零, 满足线性相关集的定义。
1.8 线性变换导引
矩阵方程 与对应的向量方程 只是记号上的差别。然而,矩阵方程 还会以另一种面目出现(在计算机图形学、信号处理等应用中):把矩阵 看作一个”作用”在向量 上、通过乘法产生新向量 的对象。
例如,方程

图 1-53: 与 ——乘以 把 变成 ,把 变成零向量。
说明:乘以 把 变换为 ,把 变换为零向量。

图 1-54:通过矩阵乘法变换向量。
从这个新视角看,解方程 相当于找出 中所有被”乘以 “这一作用变换成 中向量 的向量 。
从 到 的对应是一个从一个向量集合到另一个向量集合的函数。这个概念推广了常见的”把一个实数变成另一个实数的法则”。
定义:变换
从 到 的变换(transformation,或函数 function、映射 mapping) 是一条规则:给 中每个向量 指派 中的一个向量 。 称为 的定义域(domain), 称为 的余定义域(codomain)。记号 表示 的定义域是 、余定义域是 。对 ,向量 称为 的像(image,在 的作用下)。所有像 组成的集合称为 的值域(range)。

图 1-55: 的定义域、余定义域与值域。
本节的新术语之所以重要,是因为”矩阵–向量乘法的动态视角”是理解线性代数若干思想的关键,也是为随时间演化的物理系统建立数学模型的关键(这类动力系统将在 1.10 节、4.8–4.9 节和第 5 章讨论)。
矩阵变换
本节其余部分研究与矩阵乘法相联系的映射。对每个 , 按 计算( 是 矩阵)。为简便,这样的矩阵变换常记作 。注意: 有 列时 的定义域是 ; 的每列有 个元素时余定义域是 。
的值域是 各列的所有线性组合组成的集合,因为每个像 都形如 。

图 1-56:矩阵变换的值域是 各列的全部线性组合。
例 1 设 ,,,,并定义变换 为 ,即:
a. 求 ,即 在 作用下的像。
b. 求 中一个像为 的 。
c. 像为 的 是否多于一个?
d. 判断 是否在变换 的值域内。
解
a. 计算:
b. 解 ,即解 :
按 1.4 节的方法对增广矩阵行化简:
故 ,,。这个 在 下的像就是给定的 。
c. 像为 的任意 必须满足方程 (1)。由 (2) 知方程 (1) 有唯一解,所以恰有一个 的像是 。
d. 在 的值域内当且仅当 是某个 的像,即 ——这等价于问方程组 是否相容。对增广矩阵行化简:
第三条方程 说明方程组不相容,所以 不在 的值域内。
例 1(c) 的问题是把线性方程组的唯一性问题翻译成矩阵变换的语言: 是否是唯一一个 的像?类似地,例 1(d) 是存在性问题:是否存在像为 的 ?
接下来的两个矩阵变换有清晰的几何解释,强化了”矩阵把向量变成其他向量”的动态视角。(与计算机图形学相关的更多例子见 2.7 节。)
例 2 若 ,则变换 把 中的点投影到 平面上,因为:

图 1-57:投影变换——所有点被”压”到 平面上。
例 3 设 。变换 ,,称为剪切变换(shear transformation)。可以证明:若 作用于图 1-61 中的 正方形的每个点,则像的集合构成图中带阴影的平行四边形。关键在于证明 把线段映成线段(见习题 27),然后验证正方形的四个角映到平行四边形的四个顶点。例如点 的像是 , 的像是 。 把正方形变形为:底边固定、顶部被向右推。剪切变换出现在物理学、地质学和结晶学中。
先看两张直观示意图:同一只”羊”被剪切前后。

图 1-58:剪切前的原图形。

图 1-59:经剪切矩阵 作用后的图形——底部不动,越往上被推得越远。

图 1-60:剪切变换作用于正方形各点的示意。

图 1-61:例 3——剪切变换把正方形变成平行四边形。
线性变换
1.4 节定理 5 说明:若 是 矩阵,则变换 具有性质
对所有 和标量 成立。用函数记号写出这两条性质,就刻画出线性代数中最重要的一类变换:
定义:线性变换
变换(映射) 称为线性的(linear),如果:
(i) 对 的定义域中所有 ,;
(ii) 对所有标量 和定义域中所有 ,。
每个矩阵变换都是线性变换;不是矩阵变换的重要线性变换将在第 4、5 章讨论。
线性变换保持向量加法和标量乘法这两种运算。性质 (i) 说明:先在 中把 、 相加再施加 ,与先把 、 分别变换到 再把 、 相加,结果相同。由这两条性质立即可得以下有用事实:
线性变换的基本性质
若 是线性变换,则:
T(\mathbf{0}) = \mathbf{0} \tag{3}
且对所有定义域内的 和标量 :
T(c\mathbf{u} + d\mathbf{v}) = cT(\mathbf{u}) + dT(\mathbf{v}) \tag{4}
性质 (3) 由定义中的 (ii) 得出:。性质 (4) 需要 (i) 与 (ii) 同时使用:
反之,若变换对一切 满足 (4),它必是线性的(取 得加法保持性;取 得标量乘法保持性)。反复应用 (4) 得到有用的推广:
在工程和物理学中,(5) 被称为叠加原理(superposition principle):把 看作输入系统的信号, 是系统对各信号的响应。若某输入可以表示成这些信号的线性组合,而系统的响应恰好是对各信号响应的同一线性组合,就称系统满足叠加原理。第 4 章还会回到这个思想。
例 4 给定标量 ,定义 为 。当 时 称为收缩(contraction), 时称为扩张(dilation)。取 ,证明 是线性变换。
解 设 , 为标量,则:
(第一行用 的定义,第三、四行用向量算术。) 满足 (4),所以是线性变换。

图 1-62:扩张变换()——所有向量长度放大 3 倍,方向不变。
例 5 定义线性变换 :
求 、 和 在 下的像。
解
显然 。从图 1-63 看, 把 、 和 绕原点逆时针旋转 。事实上, 把由 、 确定的整个平行四边形变换为由 、 确定的平行四边形。

图 1-63:旋转变换——绕原点逆时针旋转 ,平行四边形整体随之转动。
最后一个例子不是几何的,而是展示线性映射如何把一类数据变换成另一类数据。
例 6 某公司生产两种产品 B 和 C。利用 1.3 节例 7 的数据构造”单位成本”矩阵 ,其列描述两种产品”每美元产出的成本”:
设 是”生产”向量,对应 美元的产品 B 和 美元的产品 C,定义 :
映射 把一份生产量清单(以美元计)变换成一份总成本清单。这一映射的线性体现在两个方面:
- 若产量提高到 4 倍(从 到 ),成本也提高到 4 倍(从 到 );
- 若 、 是两个生产向量,则合并生产 的总成本向量恰等于 。
1.8 练习题(先做后看解答)
-
设 ,且 对某矩阵 和每个 成立。 有几行几列?
-
设 。给出变换 的几何描述。
-
从 到向量 的线段是形如 ()的点的集合。证明线性变换 把这条线段映成 与 之间的线段。
本节其余习题(求像、求原像、判断 是否在值域内、画出各种几何变换、判断真假命题、证明某些变换不是线性变换等)见原书 1.8 EXERCISES。其中习题 18 配图如下:给定 及 、,先把 写成 、 的线性组合,再利用线性性画出 。

图 1-64:习题 18——利用线性性和叠加原理从 、 推出 。
1.8 练习题解答
-
要使 有定义, 必须有 5 列;要使 的余定义域是 , 必须有 2 行。所以 是 矩阵。
-
在坐标纸上画几个点试试:例如点 被映成 。变换 把每个点关于 轴(水平轴)作反射。

图 1-65:练习题 2——变换 是关于 轴的反射。
- 设 ()。因为 线性,,这正是 与 之间线段上的点。
1.9 线性变换的矩阵
每当一个线性变换以几何方式出现或用文字描述时,我们通常希望得到 的”公式”。下面的讨论说明:从 到 的每个线性变换实际上都是矩阵变换 ,而且 的重要性质与 的熟悉性质紧密相连。求 的关键在于观察到: 完全由它对 单位矩阵 各列的作用决定。

图 1-66:只要知道线性变换把 变到哪里,就能确定它把任意向量变到哪里。
例 1 的列是 和 。设 是从 到 的线性变换,且
在没有其他信息的情况下,求 中任意向量 的像的公式。
解 写出:
因为 是线性变换:
从 (1) 到 (2) 的这一步解释了为什么知道 和 就足以确定任意 的像 。而且 (2) 把 表示成向量的线性组合,于是可以把这些向量放进矩阵 的列,把 (2) 写成:
定理 10(标准矩阵的存在与唯一)
设 是线性变换,则存在唯一矩阵 使 事实上, 是 矩阵,其第 列是向量 ,其中 是 中单位矩阵的第 列: A = \left[\begin{array}{cccc} T(\mathbf{e}_1) & T(\mathbf{e}_2) & \cdots & T(\mathbf{e}_n) \end{array}\right] \tag{3}
证明 写 ,利用 的线性性计算:
的唯一性见习题 33(若 对某矩阵 也成立,比较两式在 处的取值即得 的第 列等于 的第 列)。
(3) 中的矩阵 称为线性变换 的标准矩阵(standard matrix)。
现在我们知道:从 到 的每个线性变换都可视为矩阵变换,反之亦然。“线性变换”这个术语侧重映射的性质,“矩阵变换”描述这种映射如何实现。
例 2 求扩张变换 ()的标准矩阵 。
解 写出:
例 3 设 是把 中每点绕原点旋转角 的变换( 为逆时针)。可以几何地证明这种变换是线性的(见 1.8 节图 1-63)。求该变换的标准矩阵 。
解 旋转到 , 旋转到 (见图 1-67)。于是:
1.8 节例 5 是该变换的特例()。

图 1-67:旋转变换—— 的像给出标准矩阵的两列。
的几何线性变换
例 2、例 3 展示了几何描述的线性变换。下表汇总了平面上其他常见的几何线性变换。因为它们是线性的,所以完全由它们对 各列的作用决定。各表展示的不是仅 、 的像,而是变换对单位正方形(图 1-68)的作用。

图 1-68:单位正方形——观察各类变换作用的”参照物”。
表 1:反射
| 变换 | 标准矩阵 |
|---|---|
| 关于 轴(水平轴)反射 | |
| 关于 轴(竖直轴)反射 | |
| 关于直线 反射 | |
| 关于直线 反射 | |
| 关于原点反射 |
表 2:收缩与扩张
| 变换 | 标准矩阵 |
|---|---|
| 水平收缩()与水平扩张() | |
| 竖直收缩()与竖直扩张() |
表 3:剪切
| 变换 | 标准矩阵 |
|---|---|
| 水平剪切( 可正可负) | |
| 竖直剪切( 可正可负) |
表 4:投影
| 变换 | 标准矩阵 |
|---|---|
| 投影到 轴 | |
| 投影到 轴 |
把上表中的变换一个接一个地施加,可以构造出其他变换,例如”水平剪切之后再关于 轴反射”。2.1 节将证明这种线性变换的复合仍是线性变换。
存在性与唯一性问题
线性变换的概念为早先的存在性与唯一性问题提供了新的理解方式。下面紧跟变换表给出两个定义。
定义:满射(onto)
称映射 映上(onto),如果 中每个 都是 中至少一个 的像。
等价地说, 映上 当且仅当 的值域是整个余定义域 ,即对 中每个 ,方程 都有解。” 是否映上 “是一个存在性问题。当存在某个 使 无解时, 就不是映上的。


图 1-69 与图 1-70: 的值域是否覆盖整个 ?——“映上”是一个存在性问题。
定义:单射(one-to-one)
称映射 一对一(one-to-one),如果 中每个 至多是 中一个 的像。
等价地说, 一对一当且仅当对 中每个 ,方程 要么有唯一解、要么无解。” 是否一对一”是一个唯一性问题。当某个 是多个向量的像时, 不是一对一的。

图 1-71:每个 是否至多是一个向量的像?——“一对一”是一个唯一性问题。
表 4 的投影变换不是一对一的,也不把 映上 ;表 1、2、3 中的变换都是一对一的,且都把 映上 。其他可能性见下面的例子与定理。
例 4 设 是标准矩阵为
的线性变换。 把 映上 吗? 是一对一的吗?
解 恰好已是阶梯形,一眼可见 每行都有主元位置。由 1.4 节定理 4,对每个 ,方程 相容。换言之,线性变换 把 (定义域)映上 。但由于 有自由变量(4 个变量却只有 3 个基本变量),每个 是不止一个 的像,即 不是一对一的。
定理 11
设 是线性变换,则 一对一,当且仅当方程 只有平凡解。
证明 因为 线性,。若 一对一,则 至多有一个解,因而只有平凡解。若 不是一对一的,则存在 是 中至少两个不同向量 的像,即 且 。由于 线性:
而 (因为 ),所以 有不止一个解。于是定理中的两个条件同真同假。
定理 12
设 是线性变换, 是 的标准矩阵,则:
a. 把 映上 ,当且仅当 的列张成 ;
b. 一对一,当且仅当 的列线性无关。
证明
a. 由 1.4 节定理 4, 的列张成 当且仅当对每个 方程 相容——也就是说,对每个 ,方程 至少有一个解。而这正是 把 映上 的定义。
b. 方程 与 只是记号不同。由定理 11, 一对一当且仅当 只有平凡解;由 1.7 节的判据 (3),这又当且仅当 的列线性无关。
定理 12(a) 等价于说:” 把 映上 当且仅当 中每个向量都是 各列的线性组合。”

图 1-72:变换 不映上 ——值域只是 的一部分。
在接下来的例子和习题中,列向量常写成行的形式(如 ), 写成 。
例 5 设 。证明 是一对一的线性变换。 把 映上 吗?
解 把 与 写成列向量,可以通过观察每行元素的行向量运算,直接”读出” 的标准矩阵:
所以 确实是线性变换,标准矩阵为 (4) 中的 。 的两列互不为倍数,故线性无关;由定理 12(b), 一对一。要判断 是否映上 ,考察 各列的张成: 是 矩阵,由定理 4, 的列张成 当且仅当 有 3 个主元位置——但 只有 2 列,这不可能。所以 的列不张成 ,相应的线性变换不映上 。
1.9 练习题(先做后看解答)
-
设 先执行一个水平剪切(把 映成 , 不动),再把结果关于 轴反射。假定 是线性的,求它的标准矩阵。(提示:跟踪 和 的像的最终位置。)
-
设 是 矩阵且有 5 个主元。令 是从 到 的线性变换。 一对一吗? 映上 吗?
本节其余习题(求各种旋转/剪切/反射复合的标准矩阵、补全矩阵缺失元素、判断一对一与映上等)见原书 1.9 EXERCISES。其中习题 13、14 配图如下:根据图中 、(或标准矩阵的列 、)的示意,利用线性性画出 或 的像。

图 1-73:习题 13——由 、 的图示推出 。

图 1-74:习题 14——由标准矩阵的列 、 的图示画出 的像。
1.9 练习题解答
- 跟踪 和 的命运(见图 1-77)。首先, 不受剪切影响,随后被反射成 ,所以 。其次,剪切把 变成 ;由于关于 轴的反射把 变成 、把 保持不变,向量 被反射成 。所以 。于是 的标准矩阵为:


图 1-75 与图 1-76:剪切变换与关于 轴的反射。

图 1-77:练习题 1——两个变换的复合:先水平剪切,再反射。
- 的标准矩阵是 。因为 有 5 列和 5 个主元,每列都有主元,列线性无关——由定理 12, 一对一。又因为 有 7 行却只有 5 个主元,并非每行都有主元, 的列不张成 ——由定理 12, 不映上 。
1.10 商业、科学和工程中的线性模型
本节的数学模型都是线性的:每个模型都用线性方程(通常以向量或矩阵形式)描述问题。第一个模型涉及营养配餐,但实际上是线性规划问题中一种通用技术的代表;第二个模型来自电气工程;第三个模型引入线性差分方程——研究工程、生态、经济、电信、管理学等广泛领域中动态过程的强大数学工具。线性模型之所以重要,是因为当变量保持在合理范围内时,自然现象常常是线性或近似线性的;而且线性模型比复杂的非线性模型更容易在计算机上计算。
阅读每个模型时,请注意它的线性反映了被建模系统的什么性质。
构造营养减肥食谱
20 世纪 80 年代流行的 Cambridge Diet(剑桥食谱)的配方建立在多年研究之上。Alan H. Howard 博士带领的科学家团队在剑桥大学对肥胖患者进行了八年多的临床工作后开发了这种食谱。这种极低热量的粉末状配方食品精确平衡了碳水化合物、优质蛋白和脂肪,并配以维生素、矿物质、微量元素和电解质,数百万人用它实现了快速而显著的减重。
为了达到所需营养的数量和比例,Howard 博士不得不在食谱中纳入多种食材:每种食材提供若干所需成分,但比例不对。例如脱脂牛奶是蛋白质的主要来源但含钙过多,于是用豆粉提供部分蛋白质(豆粉含钙少);可豆粉脂肪比例又太高,于是加入乳清(乳清的脂肪相对钙含量较低);可惜乳清碳水化合物又太多……如此反复权衡。
下面的例子在小规模上演示这个问题。表 2 列出食谱中的三种食材,以及每 100 克食材提供的若干营养素的量。
表 2:每 100 克食材提供的营养素(克)
| 营养素 | 脱脂牛奶 | 豆粉 | 乳清 | 食谱每日需求 |
|---|---|---|---|---|
| 蛋白质 | 36 | 51 | 13 | 33 |
| 碳水化合物 | 52 | 34 | 74 | 45 |
| 脂肪 | 0 | 7 | 1.1 | 3 |
例 1 若可能,求脱脂牛奶、豆粉、乳清的某种组合,使其恰好提供食谱一天所需的蛋白质、碳水化合物和脂肪(表 2 最后一列)。
解 设 分别表示这三种食材的单位数(1 单位 = 100 克)。一种做法是为每种营养素单独列方程:例如” 单位脱脂牛奶”乘以”每单位脱脂牛奶的蛋白质含量”就给出 单位脱脂牛奶提供的蛋白质量,再把豆粉和乳清的类似量加起来,令其等于所需蛋白质量;每种营养素都照此办理。
更高效、概念上也更简洁的方法是:为每种食材考虑一个”营养向量”,只建立一个向量方程。 单位脱脂牛奶提供的营养是标量倍:
其中 是表 2 的第一列。设 、 分别是豆粉和乳清对应的向量, 是列出所需总营养量的向量(表 2 最后一列)。则 和 分别给出 单位豆粉、 单位乳清提供的营养。相关方程是:
对相应方程组的增广矩阵行化简:
取三位有效数字,食谱需要 0.277 单位脱脂牛奶、0.392 单位豆粉、0.233 单位乳清,以提供所需的蛋白质、碳水化合物和脂肪。
重要的是 的值为非负——这是解在物理上可行的必要条件(你没法使用 单位的乳清!)。当营养需求很多时,可能需要更多食材才能使方程组有”非负”解,因此可能要检验许多许多种食材组合。事实上,Cambridge Diet 的制造商只用 33 种食材就精确供给了 31 种营养素。
食谱构造问题之所以导出线性方程 (2),是因为每种食材提供的营养可以写成向量的标量倍 (1):食材提供的营养与加入配方的食材量成比例,且混合物中每种营养都是各种食材提供量的总和。为人类和牲畜设计专门食谱的问题很常见,通常用线性规划技术处理;构造向量方程的方法常常能简化建模。
线性方程与电网
简单电网中的电流可以用线性方程组描述。电压源(如电池)迫使电流(电子流)通过网络。当电流通过电阻(如灯泡或电机)时,一部分电压被”消耗”:由欧姆定律,电阻两端的”电压降”为
其中电压 以伏特计,电阻 以欧姆计,电流 以安培计。
下图的网络包含三个闭合回路。流过回路 1、2、3 的电流分别记为 。回路电流的方向是任意指定的:若某个电流算出来是负的,说明实际电流方向与图中所示相反。若电流方向如图所示从电池正极(长边)流向负极(短边),电压取正,否则取负。

图 1-78:例 2 的三回路电网。
基尔霍夫电压定律
沿一个方向绕回路一周,各 电压降的代数和等于同一方向上回路中各电压源的代数和。
例 2 求图 1-78 网络中的回路电流。
解 对回路 1,电流 流过三个电阻, 电压降之和为:
回路 2 的电流也流过回路的 A–B 短分支,在那里产生 伏的 压降;但 A–B 段上回路 1 的电流方向与回路 2 所选方向相反,故回路 1 的 压降代数和为 。回路 1 的电压为 30 伏,由基尔霍夫电压定律:
回路 2 的方程是:
其中 来自回路 1 的电流流过 A–B 分支(电流方向与回路 2 相反,故电压降为负); 是回路 2 内所有电阻之和乘以回路电流; 来自回路 3 的电流反向流过 C–D 分支的 1 欧姆电阻。回路 3 的方程是:
注意 C–D 分支的 5 伏电池既属于回路 2 也属于回路 3,但按回路 3 所选的电流方向它计为 伏;20 伏电池出于同样原因取负值。
回路电流由以下方程组确定:
对增广矩阵做行变换得解: 安, 安, 安。 为负说明回路 3 的实际电流方向与图示相反。
把方程组 (3) 看作向量方程很有启发性:
每个向量的第一个元素与回路 1 有关,依此类推。第一个电阻向量 列出电流 流过的各回路中的电阻;当 在某分支与另一回路的电流方向相反时,该电阻取负值。方程 (4) 的矩阵形式为:
这是欧姆定律的矩阵版本。若所有回路电流都取同一方向(比如都取逆时针),则 主对角线以外的元素全为负。
矩阵方程 使模型的线性一目了然:若电压向量加倍,电流向量必加倍。而且叠加原理成立:方程 (4) 的解是下列三个方程的解之和:
每个方程对应只有一个电压源的电路(其他电源换成导线闭合回路)。电流模型之所以线性,正是因为欧姆定律和基尔霍夫定律都是线性的:电阻上的电压降与流过的电流成比例(欧姆),回路上电压降之和等于电压源之和(基尔霍夫)。
网络中的回路电流可用于确定任一分支的电流。若某分支(如图 1-78 中从 B 到 D)只有一条回路电流经过,则分支电流就是该回路电流;若某分支(如 A 到 B)有多条回路电流经过,则分支电流是这些回路电流的代数和(基尔霍夫电流定律)。例如分支 A–B 的电流是 安,方向同 ;分支 C–D 的电流是 安。
差分方程
在生态学、经济学、工程等许多领域,需要为随时间变化的动态系统建立数学模型。系统的若干特征量在离散时间间隔上被测量,产生向量序列 。向量 的元素提供系统在第 次测量时刻的状态信息。
若存在矩阵 使 ,,……一般地:
则 (5) 称为线性差分方程(linear difference equation,或递推关系 recurrence relation)。给定这样的方程和 ,就能算出 等。(4.8–4.9 节和第 5 章将给出 的公式并讨论 时 的行为。)下面演示一个差分方程如何产生。
人口学家关心人口或人群在区域间的迁移。这里的简单模型研究某城市及其郊区人口在若干年间的变化。
固定初始年份(设为 2014 年),用 和 分别表示该年城市和郊区的人口,记人口向量为:
2015 年及以后的城市、郊区人口记为向量 ,,……目标是刻画这些向量之间的数学关系。
假设人口学研究显示:每年约 5% 的城市人口迁往郊区(95% 留在城市),同时约 3% 的郊区人口迁入城市(97% 留在郊区),见图 1-79。

图 1-79:城市与郊区之间的年度人口迁移百分比。
一年后,2014 年原在城市中的 人分布于城市和郊区:
2014 年在郊区的 人一年后分布为:
(6) 和 (7) 的向量涵盖了 2015 年的全部人口,因此:
即:
其中 是由下表确定的迁移矩阵(列是”从哪来”,行是”到哪去”):
方程 (8) 描述了人口从 2014 年到 2015 年的变化。若迁移百分比保持不变,则 2015 到 2016 年的变化为 ,依此类推。一般地:
向量序列 描述了该地区若干年间的城市/郊区人口。
例 3 设 2014 年该地区城市人口为 600,000、郊区人口为 400,000,计算 2015 年和 2016 年的人口。
解 2014 年初始人口为 。2015 年:
2016 年:
(9) 中的人口迁移模型是线性的,因为对应 是线性变换。其线性依赖于两个事实:从一个地区迁出的人数与该地区的人数成比例(如 (6)(7) 所示),且不同地区迁移的效果通过相加合并。
1.10 练习题
求一个矩阵 和向量 、,使例 1 的问题等价于求解方程 。(答案:,,, 分别为脱脂牛奶、豆粉、乳清的单位数。)
本节其余习题(谷物混合、改进午餐营养、含钙的 Cambridge Diet、求电网回路电流、人口迁移预测、租车分布、钢板温度等)见原书 1.10 EXERCISES。其中习题 5–8 给出四个电路网络(下图依次对应习题 5、6、7、8),要求写出确定回路电流的矩阵方程。

图 1-80:习题 5 的电路网络。

图 1-81:习题 6 的电路网络。

图 1-82:习题 7 的电路网络。

图 1-83:习题 8 的电路网络。
习题 14 研究钢板边界温度对内部节点温度的影响:每个内部节点的温度 近似等于四个最近邻点温度的平均值(下图对应 (a)、(b) 两组边界条件)。

图 1-84:习题 14(a)——钢板内部温度网格,第一组边界条件。

图 1-85:习题 14(b)——第二组边界条件;(b) 的解恰为 1.1 节习题 33–34 的结果 。
章末补充习题导览
原书章末还有一组补充习题(判断真假命题、讨论方程 的解集类型、构造三平面相交的各种情形、确定 使解集为空/唯一/无穷多、把问题在”线性组合/列张成/线性变换”三种语言间转换、构造特殊矩阵、Givens 旋转等),见原书 CHAPTER 1 SUPPLEMENTARY EXERCISES。以下列出几处配图。
补充习题 3:一条方程 ( 不全为零)的解集是 中的平面。该题要求构造三条方程,使它们的图形分别交于一条直线、交于一点、以及没有公共点——对应下面四种典型情形。


图 1-86 与图 1-87:三个平面交于一条直线;三个平面交于一点。


图 1-88 与图 1-89:三个平面没有公共点的两种情形(两两相交但无共同交点;三棱柱式)。
补充习题 10:设 、、 为下图所示 中的向量,。用图判断 是否有解、解是否唯一。

图 1-90:补充习题 10—— 是否落在 张成的”网格”中。
补充习题 23:Givens 旋转是从 到 的线性变换,计算机程序用它把向量的某个分量变成零。 中 Givens 旋转的标准矩阵形如 (),例如把 旋转到 。

图 1-91: 中的 Givens 旋转——保持长度不变、把向量旋到坐标轴上。
自测一下
一个线性方程组的解有哪几种可能的情形?什么叫相容?
线性方程组的解只有三种可能:无解、恰有一个解、或有无穷多解(1.1 节核心事实,1.2 节定理 2 给出证明思路)。有唯一解或无穷多解的方程组称为相容的;无解的方程组称为不相容的。判断相容性的方法是行化简增广矩阵:若出现形如 ()的行(如 ),方程组不相容;否则相容,且无自由变量时解唯一、有自由变量时有无穷多解。
齐次方程 什么时候有非平凡解?它的解集有什么结构?
至少有平凡解 ;存在非平凡解当且仅当方程至少有一个自由变量(即化简后主元列少于未知数个数)。此时解集总可以写成 的参数向量形式:一个自由变量对应过原点的直线(如 1.5 节例 1),两个自由变量对应过原点的平面(如例 2)。
设 是 矩阵。"对每个 , 都有解"等价于哪些说法?
由 1.4 节定理 4,以下四个命题等价:(a) 对每个 方程 有解;(b) 每个 都是 各列的线性组合;(c) 的列张成 ;(d) 的每一行都有主元位置。注意判据 (d) 只适用于系数矩阵——若说的是增广矩阵 每行有主元,方程未必相容。
不做行变换,怎样快速判断一个向量组是否线性相关?
有三条”速判”规则:① 集合里向量个数超过每个向量的元素个数(),必线性相关(定理 8);② 集合含零向量,必线性相关(定理 9);③ 只有两个向量时,互不为倍数就线性无关,有倍数关系就线性相关。其余情形需要行化简 :只有平凡解则线性无关,否则线性相关。
什么是线性变换的标准矩阵?"一对一"和"映上"如何用矩阵性质判断?
由 1.9 节定理 10,线性变换 的标准矩阵是 ,即把单位矩阵各列的像排成矩阵的列; 对一切 成立。由定理 12: 映上 当且仅当 的列张成 ( 每行有主元); 一对一当且仅当 的列线性无关( 每列有主元)。例如 的标准矩阵不可能有 3 个主元,故对应的 不可能映上 (1.9 节例 5)。