張海艷, 李卿擎, 吳素琴
陸軍炮兵防空兵學院 基礎部,合肥 230031
《教育部關于一流本科課程建設的實施意見》(教高〔2019〕8號)中指出: “課程目標堅持知識、 能力、 素質有機融合,培養學生解決復雜問題的綜合能力和高級思維. 課程設計增加研究性、 創新性、 綜合性內容,加大學生學習投入,科學‘增負’,讓學生體驗‘跳一跳才能夠得著’的學習挑戰”. 因此我們要積極探索教學的新方法,創新教學模式,提高本科教育質量,培養符合新時代要求的大學生. 對大學數學的教學,要實現此目標,必須推行數學教學改革,增加數學教學難度,拓展數學教學深度,把數學課堂變成啟迪智慧的場所.
隨著大數據時代的發展,互聯網在源源不斷地產生各種結構的海量數據[1],其中包含了大量的非結構化數據,對這些數據的處理離不開矩陣理論. 矩陣運算是線性代數課程教學中重要的知識點之一,而矩陣乘法又是矩陣理論中最重要的運算之一. 多數教師在講授這部分內容時會直接給出矩陣乘法的公式,然后再解釋公式的含義. 有許多文獻對矩陣乘法的教學方法做了探討. 文獻[2]介紹了發生教學法的理論基礎和在矩陣運算教學中的應用. 文獻[3]從實際生活背景引入,講解了矩陣乘法的理論部分. 文獻[4]也從實際應用背景出發,詳細地分析了矩陣乘法的運算法則和特征. 文獻[5]主要從行和列的角度對矩陣乘法進行了拓展. 文獻[6]分別從數學角度和圖形學角度討論了矩陣乘數,矩陣乘向量和矩陣乘矩陣. 文獻[7]從不同維度的空間變換探討了矩陣乘法不滿足乘法交換律的問題. 文獻[8]從實例出發解釋了矩陣乘法規則的自然性和科學性. 為培養學生知其然、 知其所以然的數學素養,激發學生的探索精神和創新精神,本文基于發生教學法,從矩陣乘法定義的歷史背景(即知識發生的源頭)講起,讓學生認識一般矩陣乘法定義的來源,理解矩陣乘法的本質. 通過比較和舉反例,得出矩陣乘法的運算性質,特別地,從本質出發讓學生深刻理解為什么矩陣乘法不滿足交換律,讓學生知其然并知其所以然. 通過矩陣乘法將線性方程組寫成矩陣方程的形式,啟發學生在解決問題時要抓住事物的本質. 最后通過學生們熟悉的圖像編輯軟件,引入數學實驗,拓展數學應用[9],加深同學們對矩陣乘法和矩陣理論強大運用的認識.
矩陣作為數學工具之一,在現代科學中的應用日益突出,在機器學習、 圖像處理、 無人駕駛、 電子工程等方面有著非常重要的應用[10]. 矩陣源起于數的思想,是數的拓展,即數陣. 矩陣與數類似,可以進行運算. 然而,矩陣乘法與數乘相比,過程比較復雜,初學者不理解為什么要這樣定義. 在教學中,教師可以通過矩陣乘法被創造的過程講起,帶領學生領悟知識的創造過程,促使學生對知識理解得更加深刻和透徹.
教師通過知識的發生過程了解人類是如何獲得某些認識的,從而對學生應該如何領悟這些認識做出更好的再創造,這種方法稱為發生教學法. 發生教學法借鑒歷史引入主題,保護學生獵奇的天性,通過引導學生重現知識的再發現過程,培養學生的創造力和創新精神. 布魯納發現學習理論認為,只有學生自己親自發現的知識才是真正屬于他自己的東西. 教學目的不該是學生記住教師和教科書上所陳述的內容,而是要培養學生發現知識的能力,從而培養學生卓越的智力. 這樣學生就好比得到了打開知識大門的鑰匙,可以獨立前進了.
矩陣加法的定義要求必須是兩個同型矩陣才可以施行,只需將對應位置上的元素相加,即可得到兩矩陣的和矩陣. 在定義矩陣乘法時,同學們自然地會想到(1)式的定義方法

(1)
即將兩個同型矩陣對應位置上的元素相乘,得到它們的乘積矩陣. 歷史上的確有人曾經這樣定義矩陣的乘積,這種乘積稱為矩陣的Hadamard乘積[11].
如今,Hadamard乘積在算法中經常使用,然而在當時的基礎數學領域,這種定義方法缺乏實際的應用背景和理論價值,沒有被推廣開來. 歷史有其偶然也有其必然,現在廣泛應用的矩陣乘積被稱為一般的矩陣乘積,它是由英國數學家阿瑟·凱萊在研究線性變換的復合時提出來的. 矩陣乘積的這一定義推動了矩陣理論的快速發展. 目前,矩陣乘積是矩陣理論中最重要的運算之一.
矩陣的創立是用來解線性方程組問題的,與線性方程組關系非常密切的一類問題即是線性變換問題. 凱萊在研究線性變換的復合時,將線性變換所對應的矩陣之間的運算關系定義為矩陣乘法.
一般矩陣乘法的由來:
1) 線性變換的本質
由變量x1,x2,…,xn到變量y1,y2,…,ym的線性變換
的本質是一個由實數空間Rn到實數空間Rm的映射,即多維空間上的映射,可見這個映射可以將n維空間中的元素映射到m維空間當中. 高等數學中學習過數集上的映射以及映射的復合,學生自然會想知道線性變換的復合是什么樣的.
2) 矩陣乘法的定義
根據
(2)
(3)
計算可得由變量x1,x2到z1,z2的線性變換
(4)
線性變換(4)是先做線性變換(3),再做線性變換(2)的結果,即是線性變換(2)與(3)的復合,稱為(2)與(3)的乘積. 由于線性變換與其系數矩陣是一一對應的關系,3個線性變換所對應的矩陣分別為A,B和C,此時稱矩陣C是矩陣A與B的乘積,記作C=AB[12].
2.2.1 小組討論,發現規律
通過讓學生觀察,總結出矩陣C中元素與A和B中元素之間的關系為
(5)
根據(5)式的運算規則,分組討論,共同解決以下問題:
1) 是否任意兩個矩陣都能施行乘法運算?
2) 請確定乘積矩陣C中元素的構成和C的形式.
通過學生分享討論結果,使學生掌握矩陣能相乘的條件,即左矩陣的列數等于右矩陣的行數. 相乘的計算方法為左行右列法——矩陣乘積元素cij等于左矩陣的第i行與右矩陣的第j列對應元素乘積之和. 乘積矩陣的行列數——左矩陣的行數為乘積矩陣的行數,右矩陣的列數為乘積矩陣的列數等. 最后共同總結出矩陣乘法的一般定義:
定義1設A=(aij)是一個m×p矩陣,B=(bij)是一個p×n矩陣,C=(cij),如果
則稱矩陣C=(cij)m×n為矩陣A與矩陣B的乘積,記作C=AB.
傳統的教學理念認為學生知識、 技能的獲得均來于教師,所以教師在授課時往往不考慮學生的感受,將知識與技能滿堂灌. 近年來一直在提倡應以學生為主體、 教師為主導的方式進行教學[13]. 通過學生課堂上討論并分享討論結果的方式,充分發揮學生在課堂上的主體作用,增加學生在發現知識過程中的學習投入和情感投入,提高學生學習數學的內在動機. 學生在討論中碰撞出知識的火花,一步步打開真理的大門,深刻掌握知識點的同時,提高語言表達能力和知識講授能力,增強學好數學的勇氣和自信心.
2.2.2 做比較,總結規律
在學習矩陣加減法時,我們是通過與實數的加減法比較[14]引出的,其運算規律與實數的加減法運算規律較為一致,由此繼續引導學生思考矩陣乘法的運算規律又是如何?是否仍然和實數乘法的運算規律一致?引導學生總結出矩陣乘法的運算規律.

表1 數的乘法與矩陣乘法之間的聯系與區別
2.2.3 舉反例,溯本求源
在說明矩陣乘法一般不滿足交換律和消去律時,最直接的方法就是舉反例.
例1設

計算AC,AB和BA.
由AC=O,可以進一步說明矩陣相乘不滿足消去律.
從計算結果中可知,AB≠BA,即矩陣乘法不滿足交換律. 矩陣乘法的這一特點與數的乘法有很大的區別,為什么會有這樣的結果呢?這里從矩陣乘法的本質來說明:
例1中矩陣A所對應的線性變換為平面上任意一個向量關于x軸的投影變換,即
B所對應的線性變換為繞原點逆時針旋轉90°的旋轉變換,即

下面考慮A與B所對應的線性變換對平面R2中任意向量復合作用后的效果,不妨取R2中的一個元素p=(2,3)(p在平面中可以代表向量).
AB所對應的復合線性變換作用于p,指先將向量p繞原點逆時針旋轉90°,再對得到的向量p1向x軸作投影,變換后的結果為p2=(-3,0)(見圖1);

圖1 p2=(-3,0)
BA所對應的復合線性變換作用于p,指先對向量p作x軸的投影,得到向量p3,再繞x軸逆時針旋轉90°,結果為p4=(0,2)(見圖2).

圖2 p4=(0,2)
因此線性變換復合的順序不一樣,結果也往往不一樣,所以,矩陣乘法運算一般不滿足交換律. 此處,AB稱為A左乘B,BA可稱為A右乘B. 矩陣乘法運算滿足分配律,但是由于其不滿足交換律,分配律區分為左分配律和右分配律.
在解二元一次方程組和三元一次方程組的過程中,發現方程組的系數對方程組的解起決定性作用. 事實上,大約在公元前 1世紀,我國的《九章算術》的“方程”章中就敘述了一個三元線性方程組的解法,當時用算籌將未知數的系數和常數項排列成一個長方陣,運用遍乘直除算法求解,這就是矩陣最早的雛形,遍乘直除算法就是現今矩陣的初等變換. 以算法體系為特征的中國傳統數學,為世界數學的發展開創了新觀念[15].
行列式和矩陣都是伴隨著解線性方程組而產生的,都是通過對方程組的系數進行處理而達到解方程的目的. 行列式用來解未知量個數與方程個數相等的線性方程組. 1850年,西爾維斯特在研究未知量個數與方程個數不相等的線性方程組時,行列式不能使用,提出了矩陣一詞,表示一項由m行n列元素組成的矩形陣列,這是最早矩陣一詞的使用. 根據矩陣乘法的運算規則,含有n個未知數,m個方程的線性方程組
可以寫成矩陣乘法的形式. 令
則線性方程組可記作Ax=b. 此式可看成是矩陣相乘的特殊形式. 其中A稱為矩陣方程的系數矩陣,x稱為未知數矩陣,b稱為常數項矩陣. 未知量是矩陣的方程稱為矩陣方程.
這一形式可以推廣到更一般的情形,令
矩陣方程AX=B可看作是由系數矩陣相同的p個線性方程組組成的. 求矩陣方程的解是后續課程中的重要內容. 矩陣乘法的一般定義,將求線性方程組的解的問題轉換成了求矩陣方程的問題,極大地簡化了線性方程組的求解問題,這也是矩陣乘法在矩陣論中相當重要的原因.
利用矩陣乘法將線性方程組寫成矩陣方程的形式,只需對矩陣進行相應的處理即可方便快捷地解決線性方程組的解的問題. 啟發學生在解決問題時要善于抓住問題的本質,做到事半功倍.
矩陣乘法在圖像處理中有著非常重要的應用. 我們對圖片的數字化處理實質上就是對圖片所對應的矩陣進行相應的運算. 為了理解這點,以一個簡單的例子說明.
例2將圖3中矩形的4個頂點繞原點逆時針旋轉90°,點O,A,B,C所對應的點坐標作為列向量構成的矩陣為

圖3 矩形OABC

繞原點逆時針旋轉90°的線性變換所對應的矩陣為
對O,A,B,C這4個點同時做線性變換,就是用R左乘G,計算RG,得到旋轉后的4個點構成的矩陣為

旋轉后的4個點記為O,A′,B′,C′,對應圖像為

圖4 矩形OA′B′C′
注意,此處僅僅是將矩形的4個頂點進行了旋轉.
一般地,對一張圖片進行旋轉,本質上是用旋轉變換所對應的矩陣左乘圖片所對應的像素矩陣. 具體地用Matlab軟件進行演示,如圖5,即是將戰斗機圖片逆時針旋轉30°,

圖5 戰斗機圖片
另外,利用矩陣的運算可以實現對圖片的剪切、 伸縮以及圖片信息的隱藏等. 將相應的Matlab程序發送到智慧平臺,供學有余力的學生課后學習和操作. 利用人們常用的圖像編輯,引起學生學習的興趣,使學生認識到矩陣乘法運算的廣泛應用,更加重視矩陣理論的學習.
本文利用發生教學法,根據學生認知規律,從矩陣乘法的創立過程出發,對矩陣乘法的內容進行了教學設計,帶領學生重新經歷矩陣乘法的創造過程,理解矩陣乘法的本質是線性變換的復合. 通過課堂小組討論,總結得出矩陣乘法運算規則和運算規律的特點,從本質出發闡述矩陣乘法一般不滿足交換律的原因. 這個過程,不僅是學生掌握數學知識的過程,更是學生發展創造力,培養科學精神的過程. 而后分析了線性方程組與矩陣方程之間的關系,讓學生進一步理解了矩陣乘法運算的現實意義. 最后從學生常用的圖像處理的角度探討了矩陣乘法的應用,讓學生深刻體會到知識來源于實踐,概念的創造是用來解決問題的,不是憑空創造出來的. 通過Matlab的實驗操作和課后練習,讓學生熟悉數學軟件的使用,體會矩陣理論和數學軟件的強大應用,培養學生的抽象思維和邏輯思維,加強學生們未來學以致用、 學以善用的綜合能力和水平[16].