线性代数课程改造的理念与目标教育部“使用信息技术工具改造课程”项目改革的缘由——需求牵引•现在的线性代数教学大纲存在着重大的缺陷,主要是没有把“需求牵引”和“技术推动”作为动力:•1。不能满足工科后续课的需求,按所教的方法后续课无法用来解高阶、复数的矩阵题目;后续课普遍不用线性代数解题。工科后续课能用而不用矩阵的调查(给数学教指委的建议书中列出)化学计算机图形学高等数学信号与系统电路数字信号处理理论力学系统动力学材料力学自动控制原理数值计算方法机械振动传热学机器人学(物理)实验一些典型的应用(1)•静力学中的核心是平衡方程,一个空间物体有6个平衡方程,就是n=6的线性方程组,两个刚体相联,方程数n就加倍;•电路课中稳态电路核心是基尔霍夫方程,n个节点(或回路)就有n个方程,交流电路更是复数方程,构成n元复数方程组。•线性代数教的手工解法解决不了,只好不用,还是用中学的代入法,这就是现状。后续课中要算的n都大于3,现代的科学计算问题n达到几百、几千,不教计算机结果是统统不用矩阵,简单的用中学的方法,复杂的只好不算。静力学模型10001.00000010001.00000000-0.50000.86600010-1.0000000A095.0962200.0000154.90386.6025,,0010-1.0000100.000000000.70710.7071-35.3553BX8-95.0962145.0962-95.096245.0962交流电路模型oIsa122bs2211111011110.500101LUZZZUIZZZIZAX=BIss122111abUUIZZZ122110.5babLUUUIZZZ111aUIZ典型的应用(2)•计算信号流图传递函数公式。在传统的教材中,都向学生介绍梅森公式,这个公式是以图论为基础的,既没有证明,计算又极繁琐,后面根本不用,但几十年就是这样讲下来的。其实线性系统的任何复杂信号流图都可以严格地用矩阵表示,写成:•其中,有N个信号,方程就有N个,矩阵就有N阶•很容易得出传递函数W的公式:•靠手算,这个N阶矩阵求逆的运算,谁都不敢碰。但若用MATLAB算,很复杂的系统,这个式子不过几秒钟就出结果了,既有严格理论,又可快速计算,比梅森公式强得多。它的前提是,学生会用计算机解线性代数问题,学生的数学基础是符合现代化标准的。X=QX+PU-1W=X/U=(I-Q)P一个信号流图的实例信号流图代表的是线性方程组:x1=u,x2=x1-x3-x5,x3=G1*x2,x4=x3+x1-x5x5=G2*x4,x6=x3+x5-x7x7=G3*x6,x8=K*x712345670000000010-10-10000G10000001010-1000000G2000xxxxxxxyX=QX+PU,XQ1000,=00001010-10000000G3000000000K00*invPW=X/U=(I-Q)P123232432KG3(2G2G1+G1+G2)8(2G2G1+2G2G1G3+G3+G1+1+G2+G2G3+G1G3)34,,K=51256s+15s+47s+12W=52s+26s+109s+170s+50WssGGGssss得若:,可得:应用(3)频谱的计算•把DFT写成矩阵形式:设•通常N=1024,记作:•W矩阵是1024×1024阶的,106个元素•输入技巧:列×行121242(1)12(1)(1)(1)1111(0)(0)1(1)(1)1(1)](1)1NNNNNNNNNNNNNNNXxX=Wx2/jNNWe应用(4)最优FIR滤波器设计归结为解以下的超定线性方程组求d8765432188887777666655554444333322221111d(4)d(3)d(2))1d()0d(4cos3cos2coscos14cos3cos2coscos14cos3cos2coscos14cos3cos2coscos14cos3cos2coscos14cos3cos2coscos14cos3cos2coscos14cos3cos2coscos1DDDDDDDD估计圆直径的方法测圆周上n个点,求其半径。设圆周方程为:c1,c2为圆心的坐标,r为半径。整理上述方程,得到•用n个测量点坐标(xi,yi)代入,得到•这是关于三个未知数的n个线性方程,所以是一个超定问题。解出就可得知这个最小二乘圆的圆心坐标和半径r的值:22212()()xcycr22222121212322()22xcycrccxcyccxy22111112222222322221221221nnnnxyxycxyxyccxyxyAc=B22312rccc应用(5)坐标测量仪测园直径•归结为求超定方程最小二乘解c-6.00006.06001.0000-4.00007.80001.0000-2.00008.70001.000009.00001.00002.00008.80001.00004.00008.04001.00006.0000Ac=B1232231218.180919.210019.922520.250020.360020.16046.52001.000019.6276cccrccc-1c=(A'*A)(A'*B)为什么不用“技术推动”?•从“需求牵引”的角度,我们知道,即使是大学后续课程,需要的是高阶、复数、超定的线性方程组。用中学的代入法、消去法是不行的,所以要引进线性代数,其实,它比中学方法更繁,因为它不找窍门,而是死算,但死算有一个好处,因为程序简单了,所以线性代数的好处只有与计算机结合才能显示。•。线性代数不用计算机解题,不联系应用,不符合课程现代化的要求,落后于美国十多年;一个比方•中学代数中的“代入法”、“消去法”相当于手推独轮车,解决个体户自留地中的运输问题。•大学学线性代数是“载重汽车”,解决大生产中大规模、长距离的运输问题。•载重汽车很复杂,要讲它的原理和设计方法很费时间,但许多人忘掉了最关键一点,要使载重汽车发挥作用,必须要用发动机,要加油(MATLAB),其次必须要学会开车(机算)、认路(建模)。如果仍然用手工,那么载重汽车还不如手推车,除了耍杂技玩,谁也不会用的。•现在的问题就在这里,我们在造“手工载重车”方面下的功夫很大,但在汽油发动机、开车、认路方面一点不教,所以在后续课的广阔天地中没人用载重汽车,都是用独轮车在解题。离开“现代化”太远了!一个比方•中学代数中的“代入法”、“消去法”相当于手推独轮车,解决个体户自留地中的运输问题。•大学学线性代数是“载重汽车”,解决大生产中大规模、长距离的运输问题。•载重汽车很复杂,要讲它的原理和设计方法很费时间,但许多人忘掉了最关键一点,要使载重汽车发挥作用,必须要用发动机,要加油(MATLAB),其次必须要学会开车(机算)、认路(建模)。如果仍然用手工,那么载重汽车还不如手推车,谁也不会用的。•现在的问题就在这里,我们在造“手工载重车”方面下的功夫很大,但在汽油发动机、开车、认路方面一点不教,所以在后续课的广阔天地中没人用载重汽车。要把大多数用汽车的与少数造汽车的区分开来,教会他们开车、认路、解决现代化大生产的需要,这是我们改革的目标。矩阵在科学计算中的重大意义•矩阵是组织海量数据进行运算的最好的数学方法,如果矩阵运算仍然用单个元素运算来完成,那末人们宁愿用代入法或消去法等中学方法。至少它可以省掉一些运算量。•要使矩阵运算带来实际的好处,必须要有能进行海量数据运算、处理、绘图的工具,笔算无法显示矩阵优势,只有靠计算机。•如果计算机每次只对两个数进行运算,那它的效率和计算器差不多。计算机的优势只有在数据批处理中才能显示。•会矩阵不会计算机,是瘸子;会计算机不会矩阵,也是瘸子,要把两者的优势结合起来,才算真正进入了科学计算的殿堂。线性代数能完成这一点,对大学生,对现代化,将是功德无量!国内外教材简要对比篇幅图(张)计算软件工程应用实例修订思想(序言)同济[1]196×32开6没有0没有Leon[2]545×16开100MATLAB33几年改一次,热情给出修订理由和网上帮助。Lay[3]548×16开≈300MATLAB24工程线性代数188×16开61MATLAB27提出一系列改革的理念说明我国教材的三个弱点1。不注意从几何图形引入线性代数的概念,不用图说明问题。2。不使用现代化计算工具,使得解题的范围无法扩大。3。不联系应用实际,不了解科学和工业现代化对线性代数的需求。不能激发学生学习的热情。国内的线性代数改革,多侧重于课程内部概念的讲法,但缺少两点:一是不注意与应用、与后续课等外部的关系的改革,二是不注意引进新技术,没有用现代化的计算和教学工具。这正是我们常讲的引领科技发展的两个动力:“需求牵引”和“技术推动”。少了这两点,创新的新思想、新课题就没法诞生。机算和手算解题范围的对比•可以用下图表示数学软件对线性代数的作用。白色部分为手工能解的区,黑色区是手工不能解的区域,灰色区是计算太繁的区域,用了数学软件后全部都能解。不难看出,数学软件可以使线性代数较好地满足后续课和未来工程计算的需要。新旧线性代数内容覆盖图大纲改革后的解题指标1。解6元以上的实数线性代数方程组(力学);2。解3元以上的复数线性代数方程组(电路);3。会进行3阶以上的信号流图传递函数计算,即学会做文字变量的求逆运算;(信号与系统)4。进行6阶3元以上超定方程组的求解;•这是指教材中控制的例题和习题的深度,我们觉得,线性代数达到这个水平,与后续课就可以实现无缝衔接了。•实际上,只要学会使用计算机编程以后,阶数是没有上限的。补丁书《线性代数实践…》•补充的内容为:•1。后续课和工程中的应用实例;•2。线性代数中所有概念的几何形象,甚至动画;•3。解各种线性代数问题的MATLAB程序;•4。适合计算机算的习题。另外就是MATLAB语言入门。它的宗旨是实现下面三句口号:•线性代数抽象吗?看了本书后,你会知道它的概念都基于空间形象。•线性代数冗繁吗?学了本书后,你会懂得它的计算全藉助简明程序。•线性代数枯燥吗?读了本书后,你会发现它的应用极其广泛又精彩。美国的做法•1990年开始,先组成了线性代数课程研究组(LinearAlgebraCurriculumStudyGroup-LACSG)。8月,他们和工程界的代表,共同提出了几条建议,简称为LACSGRecommendations:要点是:(i),线性代数课程要面向应用,满足广大的非数学专业学生的需要;(ii),它应该是面向矩阵的;(iii),它应该是根据学生的水平和需要来组织的;(iv),它应该利用最新的计算技术;(v),对数学专业要另设课程提高其抽象性。•1992年NSF又资助了一个ATLAST计划,ATLAST是AugmenttheTeachingof