閻家斌 宋叔尼 孫艷蕊
[摘 要]2009年1月我們參與了教育部高教司啟動的“用MATLAB和建模實踐改造工科線性代數課程”的項目,主要負責制作一套線性代數機考試題,試題要求涉及線性代數課程的所有主要運算方法,而由計算機隨機生成試題。由于試題生成的隨機性,使得很多問題變得比較復雜,難于用線性代數的知識解決。文章介紹了利用矩陣的三角分解方法解決線性代數中遇到的一些特殊問題,以及具體應用的實例和線性代數課程改造的重要意義。
[關鍵詞]線性代數應用 矩陣三角分解 教學改革 教學方法 機考試題
[中圖分類號] G642.0 [文獻標識碼] A [文章編號] 2095-3437(2013)08-0065-02
2009年1月教育部高教司啟動了“利用信息技術工具改造課程”項目,包含理工、財經、藝術等共18項,西安電子科技大學等院校的“用MATLAB和建模實踐改造工科線性代數課程”項目被列為第一項,西安電子科技大學課題組編寫的“線性代數實踐及MATLAB入門”及“工程線性代數(MATLAB版)”兩本教材,較好地體現了經典理論與現代計算手段相結合,將抽象概念形象化,使一些復雜的計算問題得以實現,激發了學生學習的興趣,培養了解決問題的能力,提高了教學質量。由教育部數學教指委數學基礎課程分指委對項目進行了驗收鑒定,對項目和教材作出了高度評價。
一、試題建立中遇到的問題
在建立試題的初期,我們遇到了一些看上去很簡單卻無從下手的問題。
例如:求n階矩陣A的逆矩陣問題,這是線性代數中最常見的問題,現在是我們如何給出矩陣A?如何保證矩陣A是可逆的?n階矩陣A有n2個元素,而可逆矩陣對這n2個元素沒有什么太多的限制。矩陣A可逆只要求A非奇異,即detA≠0。但是,利用行列式定義計算一個n階行列式大約需要(n2-1)n次乘法運算,這個計算量是驚人的。反之,用detA≠0這么一個條件去限制矩陣A的n2個元素的取值也是困難的。在線性代數的各類問題中,要求一個矩陣是可逆的是常見問題,比如用Cramer法則求線性方程組的唯一解,也要求方程組系數矩陣是可逆的。在線性空間中,給出兩組基之間的過渡矩陣,也要求過渡矩陣是可逆的。
再如:求一個n元齊次線性方程組Ax=0的基礎解系問題,如何保證n元齊次線性方程組Ax=0一定有基礎解系?進一步基礎解系中包含幾個解向量?這些當然應該在生成線性方程組時得到解決。理論上就是要求矩陣A的秩R(A)=r 二、矩陣三角分解的推廣應用 數值分析課程中,線性方程組的三角分解法有下面結論,只要矩陣A的各階順序主子式都不等于零,則存在唯一的單位下三角矩陣L,和上三角矩陣U,使得A=LU。但是,矩陣A可逆并不要求矩陣A的各階順序主子式都不等于零。雖然如此,矩陣的三角分解給了我們重要的啟示,容易得到下面的結論: 1. 三角形矩陣可逆的充分必要條件是對角線元素都不等于零。 2. 兩個可逆矩陣的乘積一定還是可逆矩陣。 這就給出了隨機生成可逆矩陣的方法,只要選取矩陣, 其中,lij,1≤j≤i≤n,uij,1≤i≤j≤n隨機取值,只要滿足lii,uii≠0,1≤i≤n。則兩個三角形矩陣L和U都是可逆的,再取矩陣 這樣生成的矩陣A就是可逆矩陣。這是因為|A|=|L||U|=l11l22…lnnu11u22…unn≠0。 在具體應用中,例如生成考試題時,為了使生成的可逆矩陣在求逆矩陣時計算不太復雜,而且不同試題的計算難度相差不大,生成不同矩陣時可以選取相同的階數n。而取矩陣的元素lij,uij絕對值比較小的整數,取lii=uii=1,1≤i≤n由于此時有|A|=1,利用逆矩陣的計算公式A-1=■A*,可知矩陣A的逆矩陣的所有元素都是整數,便于利用各種方法求矩陣A的逆矩陣,而且答案比較整齊。 對矩陣的三角分解進行進一步研究,我們又得到下面的重要結論:記矩陣, 其中,Lr和Ur分別是r階下三角形矩陣和r階上三角形矩陣,B是(m-r)×r階矩陣,C是r×(n-r)階矩陣,O1是r×(k-r)階零矩陣,O2是(m-r)×(k-r)階零矩陣,O3是(k-r)×r階零矩陣,O4是(k-r)×(n-r)階零矩陣。則有 是一個m×n矩陣。而且有如下結論: 如果Lr和Ur是可逆矩陣,則矩陣A的秩等于r。 證明 由于Lr和Ur是可逆矩陣,所以,LrUr可逆,于是有 R(L)=R(U)=R(LrUr)=r,R(A)≤R(L)=r 由于矩陣A中有一個r階子式|LrUr|≠0,所以,R(A)≥r。 于是,矩陣A的秩等于r。 由此可見,按上述方法可以隨機生成一個秩等于r的m×n矩陣A。 三、線性代數課程改造的重要意義 線性代數是高等學校理工科各專業和經濟管理類專業的一門重要基礎課,它不但是學習數值分析、最優化方法、離散數學和微分方程等數學課程的基礎,也廣泛地應用于工程學、計算機科學、物理學、生物學、經濟學、統計學、力學、信號與信號處理、系統控制、通信、航空等學科和領域。 工科學生之所以把線性代數課程作為一門基礎課程來學,就是因為后續課程需要應用它來快速、準確地描述和解決問題。也是因為矩陣、向量等線性代數知識是大量具體運算的工具,各種工程問題都要應用這些知識。在教學中,讓學生知道課程的用途,帶著問題學習知識,是提高學習自覺性和學習動力的重要手段。 線性代數包含行列式、矩陣、向量、線性組合、線性相關、秩、線性方程組、線性空間、線性變換、基、維數、坐標、向量正交、二次型、慣性指數等大量的抽象數學概念,也包含行列式計算、矩陣求逆、矩陣作初等變換、矩陣和向量組求秩、向量組求極大無關組、線性方程組求解、線性空間求基、維數和坐標、將矩陣相似對角化、二次型化標準形[1]等大量的具體計算。由于線性代數中大量計算是復雜的,所以,以筆算為基礎的教材只能把大量內容限制在三階以下的理論推演中,引入了科學計算軟件MATLAB,任何高階問題都可以在短時間內解出,學生可以從大量繁瑣的計算中解放出來,把主要精力放在命題實質的思考上。在線性代數課程中充分使用信息技術的最新成果,把工程的需求作為最大的目標,才能讓學生同時學習理論和實踐,才是線性代數課程發展的最大動力,才能更好地面向現代化,面向未來。 從線性代數課程的角度來看,學生的創新精神、創新能力的培養主要通過應用數學方法解決具體實例來體現。李大潛院士指出:“數學的教學不能和其它科學和外部世界隔離,只是一個勁地在數學內部的概念、方法和理論中打圈子,這不利于了解數學的概念、方法和理論的來龍去脈,不利于啟發學生自覺運用數學工具來解決各種各樣的現實問題,不利于提高學生的數學素養”。在高等學校,線性代數教學涉及專業廣,涉及學生人數眾多,加強課程與計算機的結合,加強課程的實際應用,讓學生通過具體實踐去認識、掌握所學的知識,并運用所學的知識去解決實際問題,無疑是重要的。也需要我們去進一步探索、實踐。 [ 參 考 文 獻 ] [1] 陳懷琛,高淑萍,楊威.工程線性代數(MATLAB版)[M].北京:電子工業出版社,2007,(7). [2] 李洪潮.多媒體教學網絡系統的應用研究[J].西北工業大學學報(社會科學版),2005,(4). [3] 張鐵,閻家斌.數值分析[M].北京:冶金工業出版社,2007,(3). [4] 邢偉,李建華,樊復生.線性代數與空間解析幾何[M].北京:高等教育出版社,2005. [5] 李大潛.素質教育與數學教學改革[J].中國大學教學,2000,(3):9-11. [責任編輯:左 蕓]