题 目: 《神奇的矩阵》(修改版 1.12)
学 校: 哈尔滨工程大学
姓 名: 黎文科
联系方式: QQ 群:53937814
联系方式: 190356321@qq.com
Contents
前言................................................................................................................................ 3
绪论................................................................................................................................ 4
1 线性代数的根基-空间 ............................................................................................. 8
2 矩阵描述运动 ......................................................................................................... 10
3 矩阵与方程组 ......................................................................................................... 13
4 坐标系与坐标 .......................................................................................................... 14
5 特殊的矩阵 .............................................................................................................. 16
6 什么是等价与相似 .................................................................................................. 18
7 矩阵的相似对角化 .................................................................................................. 19
8 矩阵的复数域对角化 .............................................................................................. 22
9 内积与相关 .............................................................................................................. 24
10 优美的二次型 ........................................................................................................ 25
11 行列式的意义 ........................................................................................................ 25
前言
这里只是整理了孟岩老师的《理解矩阵》和任广千、胡翠芳老师的《线性代数的几何意
义》,在改正一些错误的基础上,前一部分基本忠实原文。但是本文并不是一次简单的复制
粘贴,我在最后一部分加入了自己的一些感悟和理解,分别对矩阵的乘法,等价,相似、对
角化等做出了讨论。文中重要的内容处采用楷体加粗,以示区分。可以说,本文是对原来文
章的一次整理和升华。这里只是出于一种对数学的爱好!有兴趣的读者建议阅读原文,希望
不会引起读者朋友的拍板砖。
本文的大部分内容取材于David C.Lay的《线性代数及其应用》、孟岩老师的《理解矩
阵》、任广千、胡翠芳老师的《线性代数的几何意义》、维基百科、范崇金、王锋老师的《线
性代数》(也就是我们学校的教材,我感觉这是一本不错的教材,讲解很透彻)。由于线性代
数大家都学过,没有秘密可言。数学的好经验应该大家共享,我们自己也是这么学来的。作
者愿意公开本文的电子文档。
版权声明如下:
(1)读者可以任意拷贝、修改本书的内容,但不可以篡改作者及所属单位。
(2)未经作者许可,不得出版或大量印发本文。
(3)如果你有好的修改建议,或者也写了一些心得体会,欢迎联系我,与大家共享。
由于本人水平有限,错误在所难免,欢迎读者对本文提出批评建议。相信每一次的思考,
不管对错,都能对你的理解做出贡献。希望这篇拙作能起到抛砖引玉的作用。
谨以此文献给我的母校哈尔滨工程大学,作为一份建校六十周年的纪念!
——作者
2013 年 9 月于哈尔滨
3
绪论
学过线性代数的人都感觉到,线性代数带来的困惑实在太多了:对于线性代数,无论你
从行列式入手还是直接从矩阵入手,从一开始就充斥着莫名其妙。比如说,在全国一般工科
院系教学中应用最广泛的同济线性代数教材,一上来就介绍逆序数这个“前无古人,后无来
者”的古怪概念,然后用逆序数给出行列式的一个极不直观的定义,接着是一些简直犯傻的
行列式性质和习题——把这行乘一个系数加到另一行上,再把那一列减过来,折腾得那叫一
个热闹,可就是压根看不出这个东西有嘛用。大多数像我一样资质平庸的学生到这里就有点
犯晕:连这是个什么东西都模模糊糊的,就开始钻火圈表演了,这未免太“无厘头”了吧!于
是开始有人逃课,更多的人开始抄作业。这下就中招了,因为其后的发展可以用一句峰回路
转来形容,紧跟着这个无厘头的行列式的,是一个同样无厘头但是伟大的无以复加的家伙的
出场——矩阵来了!多年之后,我才明白,当老师犯傻似地用中括号把一堆傻了吧叽的数括
起来,并且不紧不慢地说:“这个东西叫做矩阵”的时候,我的数学生涯掀开了何等悲壮辛酸、
惨绝人寰的一幕!自那以后,在几乎所有跟“学问”二字稍微沾点边的东西里,矩阵这个家伙
从不缺席。对于我这个没能一次搞定线性代数的笨蛋来说,矩阵老大的不请自来每每搞得我
灰头土脸,头破血流。
要想提高自己的专业水平,你肯定深感数学能力的重要。随便打开一篇专著或论文,满
纸的微分方程、矩阵扑面而来。竭力迎头而上,每每被打得灰头土脸、晕头转向。我天生就
不是搞数学的?我的智力有问题吗?
太失望了,太伤自尊了。转头看看周围,莫不雷同。大多的工程师们靠经验来工作,经
验靠时间或试验来积累。数学应用的层次最多就是高中水平。也有硕士博士级的牛人,但也
少见把数学工具在工作中应用的得心应手、手到擒来的。
数学工具在科技实践中缺失的严重,导致我们的科技创新能力的严重缺失。普遍现象,
绝对的。返回来想一想,我的智力应该没问题,重点大学都毕业了,能有多严重的问题?所
有的工程师们、大学毕业生们的智力也没问题。问题是大家没把数学学好,没有真正掌握它。
为啥没有在四年的大学阶段学好《线代》呢?要知道,学生是通过高考百里挑一录取的,智
力应是足够正常的。事实上,我并不是特例。一般工科学生初学线性代数,通常都会感到困
难。这种情形在国内外皆然。
我认为,这是我们的线性代数教学中直觉性丧失的后果。上述这些涉及到“如何能”、“怎
么会”的问题,仅仅通过纯粹的数学证明来回答,是不能令提问者满意的。比如,如果你通
过一般的证明方证了矩阵分块运算确实可行,那么这并不能够让提问者的疑惑得到解决。他
们真正的困惑是:矩阵分块运算为什么竟然是可行的?究竟只是凑巧,还是说这是由矩阵这
种对象的某种本质所必然决定的?如果是后者,那么矩阵的这些本质是什么?只要对上述那
些问题稍加考虑,我们就会发现,所有这些问题都不是单纯依靠数学证明所能够解决的。像
我们的教科书那样,凡事用数学证明,最后培养出来的学生,只能熟练地使用工具,却欠缺
真正意义上的理解。
自从 1930 年代法国布尔巴基学派兴起以来,数学的公理化、系统性描述已经获得巨大
的成功,这使得我们接受的数学教育在严谨性上大大提高。然而数学公理化的一个备受争议
的副作用,就是一般数学教育中直觉性的丧失。数学家们似乎认为直觉性与抽象性是矛盾的,
因此毫不犹豫地牺牲掉前者。然而包括我本人在内的很多人都对此表示怀疑,我们不认为直
觉性与抽象性一定相互矛盾,特别是在数学教育中和数学教材中,帮助学生建立直觉,有助
于它们理解那些抽象的概念,进而理解数学的本质。反之,如果一味注重形式上的严格性,
学生就好像被迫进行钻火圈表演的小白鼠一样,变成枯燥的规则的奴隶。
4
”我们在小学和中学的学习阶段,老师常常也讲一些抽象概念所对应的几何意义,为何
到了大学我们的大脑就一下子高度抽象起来了?把形象仍得远远的,象瘟疫一样躲着他?目
的是训练抽象思维?最终实际结果呢?不可否认,大学毕业后大家确实是抽象了,抽象得只
会夸夸其谈讲理论不会干具体活了。既然你具体的活计不会干那干脆就专搞抽象的理论去
嘛,结果也搞不了,为啥?只会做做过的抽象的数学题不会发明创造,没学会真正的抽象,
真是越抽象越糊涂。
事实上,当我们开始学习线性代数的时候,不知不觉就进入了“第二代数学模型”的范畴
当中,这意味着数学的表述方式和抽象性有了一次全面的进化,对于从小一直在“第一代数
学模型”,即以实用为导向的、具体的数学模型中学习的我们来说,在没有并明确告知的情
况下进行如此剧烈的 paradigm shift,不感到困难才是奇怪的。
我觉得,抽象和形象是相辅相成,缺一不可的。由形象而抽象,再由抽象到形象,人的
知识结构螺旋架才能旋转而上,达到越来越高的知识峰巅。
大部分工科学生,往往是在学习了一些后继课程,如数值分析、数学规划、矩阵论之后,
才逐渐能够理解和熟练运用线性代数。即便如此,不少人即使能够很熟练地以线性代数为工
具进行科研和应用工作,但对于很多这门课程的初学者提出的、看上去是很基础的问题却并
不清楚。比如说:
* 矩阵究竟是什么东西?向量可以被认为是具有 n 个相互独立的性质(维度)的对象的表示,
矩阵又是什么呢?我们如果认为矩阵是一组列(行)向量组成的新的复合向量的展开式,那
么为什么这种展开式具有如此广泛的应用?特别是,为什么偏偏二维的展开式如此有用?如
果矩阵中每一个元素又是一个向量,那么我们再展开一次,变成三维的立方阵,是不是更有
用?
* 矩阵的乘法规则究竟为什么这样规定?为什么这样一种怪异的乘法规则却能够在实践中
发挥如此巨大的功效?很多看上去似乎是完全不相关的问题,最后竟然都归结到矩阵的乘
法,这难道不是很奇妙的事情?难道在矩阵乘法那看上去莫名其妙的规则下面,包含着世界
的某些本质规律?如果是的话,这些本质规律是什么?
* 行列式究竟是一个什么东西?为什么会有如此怪异的计算规则?行列式与其对应方阵本
质上是什么关系?为什么只有方阵才有对应的行列式,而一般矩阵就没有(不要觉得这个问
题很蠢,如果必要,针对 m n 矩阵定义行列式不是做不到的,之所以不做,是因为没有
这个必要,但是为什么没有这个必要)?而且,行列式的计算规则,看上去跟矩阵的任何计
算规则都没有直观的联系,为什么又在很多方面决定了矩阵的性质?难道这一切仅是巧合?
* 为什么说 P-1AP 得到的矩阵与 A 矩阵“相似”?这里的“相似”是什么意思?
* 特征值和特征向量的本质是什么?它们定义就让人很惊讶,因为 Ax =λx,一个诺大的矩
阵的效应,竟然不过相当于一个小小的数 λ,确实有点奇妙。但何至于用“特征”甚至“本征”
来界定?它们刻划的究竟是什么?它又有什么神通广大的应用呢?
这样的一类问题,经常让使用线性代数已经很多年的人都感到为难。就好像大人面对小
孩子的刨根问底,最后总会迫不得已地说“就这样吧,到此为止”一样,面对这样的问题,很
多老手们最后也只能用:“就是这么规定的,你接受并且记住就好”来搪塞。然而,这样的问
题如果不能获得回答,线性代数对于我们来说就是一个粗暴的、不讲道理的、莫名其妙的规
则集合,我们会感到,自己并不是在学习一门学问,而是被不由分说地“抛到”一个强制的世
界中,只是在考试的皮鞭挥舞之下被迫赶路,全然无法领略其中的美妙、和谐与统一。直到
多年以后,我们已经发觉这门学问如此的有用,却仍然会非常迷惑:怎么这么凑巧?
线性代数有什么用?这是每一个圈养在象牙塔里,在灌输式教学模式下的“被学习”的
学生刚刚开始思考时的第一个问题。我稍微仔细的整理了一下学习线代的理由,竟然也罗列
了不少,不知道能不能说服你:
5
1、如果你想顺利地拿到学位,线性代数的学分对你有帮助;
2、如果你想继续深造,考研,必须学好线代。因为它是必考的数学科目,也是研究生
科目《矩阵论》、《泛函分析》的基础。例如,泛函分析的起点就是无穷多个未知量的无穷多
线性方程组理论。
3、如果你想提高自己的科研能力,不被现代科技发展潮流所抛弃,也必须学好,因为
瑞典的 L.戈丁说过,没有掌握线代的人简直就是文盲。他在自己的数学名著《数学概观》
中说:要是没有线性代数,任何数学和初等教程都讲不下去。按照现行的国际标准,线性代
数是通过公理化来表述的。它是第二代数学模型,其根源来自于欧几里得几何、解析几何以
及线性方程组理论。…,如果不熟悉线性代数的概念,像线性性质、向量、线性空间、矩阵
等等,要去学习自然科学,现在看来就和文盲差不多,甚至可能学习社会科学也是如此。
4、如果毕业后想找个好工作,也必须学好线代:
想搞数学,当个数学家(我去,这个还需要列出来,谁不知道线代是数学)。恭喜你,
你的职业未来将是最光明的。如果到美国打工的话你可以找到最好的职业。
想搞电子工程,好,电路分析、线性信号系统分析、数字滤波器分析设计等需要线
代,因为线代就是研究线性网络的主要工具;进行 IC 集成电路设计时,对付数百万个集体
管的仿真软件就需要依赖线性方程组的方法;想搞光电及射频工程,好,电磁场、光波导分
析都是向量场的分析,比如光调制器分析研制需要张量矩阵,手机信号处理等等也离不开矩
阵运算。
想搞软件工程,好,3D 游戏的数学基础就是以图形的矩阵运算为基础;当然,如果
你只想玩 3D 游戏可以不必掌握线代;想搞图像处理,大量的图像数据处理更离不开矩阵这
个强大的工具,《阿凡达》中大量的后期电脑制作没有线代的数学工具简直难以想象。
想搞经济研究。好,知道列昂惕夫(Wassily Leontief)吗?哈佛大学教授,1949 年
用计算机计算出了由美国统计局的 25 万条经济数据所组成的 42 个未知数的 42 个方程的方
程组,他打开了研究经济数学模型的新时代的大门。这些模型通常都是线性的,也就是说,
它们是用线性方程组来描述的,被称为列昂惕夫“投入-产出”模型。列昂惕夫因此获得了
1973 年的诺贝尔经济学奖。
相当领导,好,要会运筹学,运筹学的一个重要议题是线性规划。许多重要的管理
决策是在线性规划模型的基础上做出的。线性规划的知识就是线代的知识啊。比如,航空运
输业就使用线性规划来调度航班,监视飞行及机场的维护运作等;又如,你作为一个大商场
的老板,线性规划可以帮助你合理的安排各种商品的进货,以达到最大利润。
对于其他工程领域,没有用不上线代的地方。如搞建筑工程,那么奥运场馆鸟巢的
受力分析需要线代的工具;石油勘探,勘探设备获得的大量数据所满足的几千个方程组需要
你的线代知识来解决;飞行器设计,就要研究飞机表面的气流的过程包含反复求解大型的线
性方程组,在这个求解的过程中,有两个矩阵运算的技巧:对稀疏矩阵进行分块处理和进行
LU 分解; 作餐饮业,对于构造一份有营养的减肥食谱也需要解线性方程组;知道有限元
方法吗?这个工程分析中十分有效的有限元方法,其基础就是求解线性方程组。知道马尔科
夫链吗?这个“链子”神通广大,在许多学科如生物学、商业、化学、工程学及物理学等领
域中被用来做数学模型,实际上马尔科夫链是由一个随机变量矩阵所决定的一个概率向量序
列,看看,矩阵、向量又出现了。
另外,矩阵的特征值和特征向量可以用在研究物理、化学领域的微分方程、连续的
或离散的动力系统中,比如结构动力学、刚体动力学、振动力学等,而且不论是机械振动还
是振荡电路,只要有振动的地方就有求矩阵的特征值和特征向量的问题。甚至数学生态学家
用以在预测原始森林遭到何种程度的砍伐会造成猫头鹰的种群灭亡;大名鼎鼎的最小二乘算
法广泛应用在各个工程领域里被用来把实验中得到的大量测量数据来拟合到一个理想的直
6
线或曲线上,最小二乘拟合算法实质就是超定线性方程组的求解;计算机人脸识别中也应用
到矩阵的特征值和特征向量。
二次型常常出现在线性代数在工程(标准设计及优化)和信号处理(输出的噪声功
率)的应用中,他们也常常出现在物理学(例如势能和动能)、微分几何(例如曲面的法曲
率)、经济学(例如效用函数)和统计学(例如置信椭圆体)中,某些这类应用实例的数学
背景很容易转化为对对称矩阵的研究。
嘿嘿(脸红),说实在的,我也没有足够经验讲清楚线代在各个工程领域中的应用,只
能大概人云亦云地讲述以上线代的一些基本应用。因为你如果要真正的讲清楚线代的一个应
用,就必须充分了解所要应用的领域内的知识,最好有实际的工程应用的经验在里面;况且
线性代数在各个工程领域中的应用真是太多了,要知道当今成为一个工程通才只是一个传
说。
总结一下,线性代数的应用领域几乎可以涵盖所有的工程技术领域。如果想知道更详细
的应用材料,建议看一下《线性代数及应用》,这是美国 David C. Lay 教授写的迄今最现代
的流行教材。国内的教材可以看看《线性代数实践及 MATLAB 入门》,这是西电科大陈怀
琛教授写的最实用的新教材。
线性代数的内容及发展简史
线性代数是高等代数的一大分支。通过前面的章节的介绍,我们知道,在研究关联着多
个因素的量所引起的问题,则需要考察多元函数。如果所研究的关联性是线性的,那么称这
个问题为线性问题。一次方程就是研究线性问题的方程,被称为线性方程,讨论线性方程及
线性运算的代数就叫做线性代数。历史上线性代数的第一个问题是关于解线性方程组的问
题,而线性方程组理论的发展又促成了作为工具的行列式理论和矩阵论的创立与发展,这些
内容已成为我们线性代数教材的主要部分。作为代表“线性”的最基本的概念--向量的概念 ,
从数学的观点来看不过是有序三元数组的一个集合 , 然而它以力或速度作为直接的物理意
义 , 并且数学上用它能立刻写出物理上所说的事情。向量用于梯度 , 散度 , 旋度就更有说
服力。同样 , 行列式和矩阵如导数一样(虽然 dy/dx 在数学上不过是一个符号 , 表示包括
△y/△x 的极限的式子 , 但导数本身是一个强有力的概念 , 能使我们直接而创造性地想象
物理上发生的事情)。因此,虽然表面上看,行列式和矩阵不过是一种语言或速记,但它的
大多数生动的概念能对新的思想领域提供钥匙。然而已经证明这两个概念是数学物理上高度
有用的工具。
用一个表格总结一下线性代数的发展历史上做出重要贡献的数学家,如下:
人物
理论贡献
1 せき たかかず(关孝和)
最早提出行列式概念
2
3
4
5
6
7
8
9
力量指数
★★★
★★★
A-T.Vandermonde(范德蒙)
首次把行列式理论与线性方程组求解相分离
Augustin Louis Cauchy(柯西)
1815 年启用行列式名词,1841 年提出特征方程概念 ★★★★
James Joseph Sylvester(西尔维斯特)
1850 年启用矩阵名词,1852 年发现惯性定律
★★★
Arthur Cayley(凯莱)
1855 年引入定义矩阵乘法等运算
Henry John Stephen Smith(史密斯)
引进了方程组的增广矩阵和非增广矩阵的概念
Carl Gustav Jacob Jacobi(雅可比)
重新发现并证明惯性定律
Hermann Günther Graßmann(格拉斯曼)
1844 至 1862 年间创建高维线性空间理论
Karl Theodor Wilhelm Weierstraß(魏尔斯特拉斯) 1868 年完成二次型理论
★★★★★
★★★
★★★
★★★★★
★★★
7
1 线性代数的根基-空间
好了,言归正传,下面让我们来理解一下矩阵的神奇!我们先谈谈对线形空间和矩阵的
几个核心概念的理解。
首先,线性代数里面的线性主要的意思就是线性空间里的线性变换。线性变换或线性映
射是把中学的线性函数概念进行了重新定义,强调了函数的变量之间的变换的意义。线性函
数的概念在初等数学和高等数学中含义不尽相同(高等数学常常把初等数学的关键概念进行
推广或进一步抽象化,初等数学的概念就变成了高等数学概念的一个特例)。
在中学的初等数学里,我们知道,函数 f(x)=kx+b(k 和 b 是不变量),称为一元线性函
数,因为在平面直角坐标系中这个函数的图形就是一条直线,就是变量(包括自变量和因变
量)之间的关系描述为一条直线,所以把这种函数形象地称为“线性”函数;如果 b=0 ,
这个函数的外观就变成 f(x)=kx 的形式了,这是一条过原点的直线。显然,过原点的直线是
最简单的线性函数。
在大学的代数里面,为了线性函数的进一步推广(如推广至双线性函数、多线性函数、
线性空间、线性泛函…)的远大未来,我们忍痛割“尾”,把一元线性函数 f (x)= kx + b 的
b 割舍掉,成了 f(x)=kx 的形式。呵呵,简单点说,只有过原点的最简单的直线 f (x)= kx 才
被称为一元线性函数。
为什么?只因为不过原点的直线不满足我们对线性函数的比例性的要求。
线性函数表现为直线,这只是几何意义。那么所谓“线性”的代数意义是什么呢?实际上,
最基本的意义只有两条:可加性和比例性。用数学的表达来说就是:对加法和数乘封闭。
然后说说空间(space),这个概念是现代数学的命根子之一。对于空间的的理解需要更
抽象一些,简单的说,能装东西的就是空间。比如计算机内有存储单元,那么就有内存空间;
我们上课有课表,那么就有课表空间;有一个能装载梦境的东西,我们可以叫它盗梦空间。
对于数学来说,数学家定义的空间里装载的当然是能运算的东西。从拓扑空间开始,一步步
往上加定义,可以形成很多空间。线形空间其实还是比较初级的,如果在里面定义了范数,
就成了赋范线性空间。赋范线性空间满足完备性,就成了巴那赫空间;赋范线性空间中定义
角度,就有了内积空间,内积空间再满足完备性,就得到希尔伯特空间,如果空间里装载所
有类型的函数,就叫泛函空间。
总之,空间有很多种。你要是去看某种空间的数学定义,大致都是“存在一个集合,在
这个集合上定义某某概念,然后满足某些性质”,就可以被称为空间。这未免有点奇怪,为
什么要用“空间”来称呼一些这样的集合呢?大家将会看到,其实这是很有道理的。
我们一般人最熟悉的空间,毫无疑问就是我们生活在其中的(按照牛顿的绝对时空观)
的三维空间,从数学上说,这是一个三维的欧几里德空间,我们先不管那么多,先看看我们
熟悉的这样一个空间有些什么最基本的特点。仔细想想我们就会知道,这个三维的空间:
1. 由很多(实际上是无穷多个)位置点组成
2. 这些点之间存在相对的关系
3. 可以在空间中定义长度、角度
4. 这个空间可以容纳运动
这里我们所说的运动是从一个点到另一个点的移动(变换),而不是微积分意义上的“连
续”性的运动,上面的这些性质中,最最关键的是第 4 条。第 1、2 条只能说是空间的基础,
不算是空间特有的性质,凡是讨论数学问题,都得有一个集合,大多数还得在这个集合上定
义一些结构或关系,并不是说有了这些就算是空间。而第 3 条太特殊,其他的空间不需要具
备,更不是关键的性质。只有第 4 条是空间的本质,也就是说:容纳运动是空间的本质特征。
认识到了这些,我们就可以把我们关于三维空间的认识扩展到其他的空间。事实上,不
8