張海艷, 李卿擎, 吳素琴
陸軍炮兵防空兵學(xué)院 基礎(chǔ)部,合肥 230031
《教育部關(guān)于一流本科課程建設(shè)的實(shí)施意見》(教高〔2019〕8號(hào))中指出: “課程目標(biāo)堅(jiān)持知識(shí)、 能力、 素質(zhì)有機(jī)融合,培養(yǎng)學(xué)生解決復(fù)雜問題的綜合能力和高級(jí)思維. 課程設(shè)計(jì)增加研究性、 創(chuàng)新性、 綜合性內(nèi)容,加大學(xué)生學(xué)習(xí)投入,科學(xué)‘增負(fù)’,讓學(xué)生體驗(yàn)‘跳一跳才能夠得著’的學(xué)習(xí)挑戰(zhàn)”. 因此我們要積極探索教學(xué)的新方法,創(chuàng)新教學(xué)模式,提高本科教育質(zhì)量,培養(yǎng)符合新時(shí)代要求的大學(xué)生. 對(duì)大學(xué)數(shù)學(xué)的教學(xué),要實(shí)現(xiàn)此目標(biāo),必須推行數(shù)學(xué)教學(xué)改革,增加數(shù)學(xué)教學(xué)難度,拓展數(shù)學(xué)教學(xué)深度,把數(shù)學(xué)課堂變成啟迪智慧的場(chǎng)所.
隨著大數(shù)據(jù)時(shí)代的發(fā)展,互聯(lián)網(wǎng)在源源不斷地產(chǎn)生各種結(jié)構(gòu)的海量數(shù)據(jù)[1],其中包含了大量的非結(jié)構(gòu)化數(shù)據(jù),對(duì)這些數(shù)據(jù)的處理離不開矩陣?yán)碚摚?矩陣運(yùn)算是線性代數(shù)課程教學(xué)中重要的知識(shí)點(diǎn)之一,而矩陣乘法又是矩陣?yán)碚撝凶钪匾倪\(yùn)算之一. 多數(shù)教師在講授這部分內(nèi)容時(shí)會(huì)直接給出矩陣乘法的公式,然后再解釋公式的含義. 有許多文獻(xiàn)對(duì)矩陣乘法的教學(xué)方法做了探討. 文獻(xiàn)[2]介紹了發(fā)生教學(xué)法的理論基礎(chǔ)和在矩陣運(yùn)算教學(xué)中的應(yīng)用. 文獻(xiàn)[3]從實(shí)際生活背景引入,講解了矩陣乘法的理論部分. 文獻(xiàn)[4]也從實(shí)際應(yīng)用背景出發(fā),詳細(xì)地分析了矩陣乘法的運(yùn)算法則和特征. 文獻(xiàn)[5]主要從行和列的角度對(duì)矩陣乘法進(jìn)行了拓展. 文獻(xiàn)[6]分別從數(shù)學(xué)角度和圖形學(xué)角度討論了矩陣乘數(shù),矩陣乘向量和矩陣乘矩陣. 文獻(xiàn)[7]從不同維度的空間變換探討了矩陣乘法不滿足乘法交換律的問題. 文獻(xiàn)[8]從實(shí)例出發(fā)解釋了矩陣乘法規(guī)則的自然性和科學(xué)性. 為培養(yǎng)學(xué)生知其然、 知其所以然的數(shù)學(xué)素養(yǎng),激發(fā)學(xué)生的探索精神和創(chuàng)新精神,本文基于發(fā)生教學(xué)法,從矩陣乘法定義的歷史背景(即知識(shí)發(fā)生的源頭)講起,讓學(xué)生認(rèn)識(shí)一般矩陣乘法定義的來源,理解矩陣乘法的本質(zhì). 通過比較和舉反例,得出矩陣乘法的運(yùn)算性質(zhì),特別地,從本質(zhì)出發(fā)讓學(xué)生深刻理解為什么矩陣乘法不滿足交換律,讓學(xué)生知其然并知其所以然. 通過矩陣乘法將線性方程組寫成矩陣方程的形式,啟發(fā)學(xué)生在解決問題時(shí)要抓住事物的本質(zhì). 最后通過學(xué)生們熟悉的圖像編輯軟件,引入數(shù)學(xué)實(shí)驗(yàn),拓展數(shù)學(xué)應(yīng)用[9],加深同學(xué)們對(duì)矩陣乘法和矩陣?yán)碚搹?qiáng)大運(yùn)用的認(rèn)識(shí).
矩陣作為數(shù)學(xué)工具之一,在現(xiàn)代科學(xué)中的應(yīng)用日益突出,在機(jī)器學(xué)習(xí)、 圖像處理、 無人駕駛、 電子工程等方面有著非常重要的應(yīng)用[10]. 矩陣源起于數(shù)的思想,是數(shù)的拓展,即數(shù)陣. 矩陣與數(shù)類似,可以進(jìn)行運(yùn)算. 然而,矩陣乘法與數(shù)乘相比,過程比較復(fù)雜,初學(xué)者不理解為什么要這樣定義. 在教學(xué)中,教師可以通過矩陣乘法被創(chuàng)造的過程講起,帶領(lǐng)學(xué)生領(lǐng)悟知識(shí)的創(chuàng)造過程,促使學(xué)生對(duì)知識(shí)理解得更加深刻和透徹.
教師通過知識(shí)的發(fā)生過程了解人類是如何獲得某些認(rèn)識(shí)的,從而對(duì)學(xué)生應(yīng)該如何領(lǐng)悟這些認(rèn)識(shí)做出更好的再創(chuàng)造,這種方法稱為發(fā)生教學(xué)法. 發(fā)生教學(xué)法借鑒歷史引入主題,保護(hù)學(xué)生獵奇的天性,通過引導(dǎo)學(xué)生重現(xiàn)知識(shí)的再發(fā)現(xiàn)過程,培養(yǎng)學(xué)生的創(chuàng)造力和創(chuàng)新精神. 布魯納發(fā)現(xiàn)學(xué)習(xí)理論認(rèn)為,只有學(xué)生自己親自發(fā)現(xiàn)的知識(shí)才是真正屬于他自己的東西. 教學(xué)目的不該是學(xué)生記住教師和教科書上所陳述的內(nèi)容,而是要培養(yǎng)學(xué)生發(fā)現(xiàn)知識(shí)的能力,從而培養(yǎng)學(xué)生卓越的智力. 這樣學(xué)生就好比得到了打開知識(shí)大門的鑰匙,可以獨(dú)立前進(jìn)了.
矩陣加法的定義要求必須是兩個(gè)同型矩陣才可以施行,只需將對(duì)應(yīng)位置上的元素相加,即可得到兩矩陣的和矩陣. 在定義矩陣乘法時(shí),同學(xué)們自然地會(huì)想到(1)式的定義方法
(1)
即將兩個(gè)同型矩陣對(duì)應(yīng)位置上的元素相乘,得到它們的乘積矩陣. 歷史上的確有人曾經(jīng)這樣定義矩陣的乘積,這種乘積稱為矩陣的Hadamard乘積[11].
如今,Hadamard乘積在算法中經(jīng)常使用,然而在當(dāng)時(shí)的基礎(chǔ)數(shù)學(xué)領(lǐng)域,這種定義方法缺乏實(shí)際的應(yīng)用背景和理論價(jià)值,沒有被推廣開來. 歷史有其偶然也有其必然,現(xiàn)在廣泛應(yīng)用的矩陣乘積被稱為一般的矩陣乘積,它是由英國(guó)數(shù)學(xué)家阿瑟·凱萊在研究線性變換的復(fù)合時(shí)提出來的. 矩陣乘積的這一定義推動(dòng)了矩陣?yán)碚摰目焖侔l(fā)展. 目前,矩陣乘積是矩陣?yán)碚撝凶钪匾倪\(yùn)算之一.
矩陣的創(chuàng)立是用來解線性方程組問題的,與線性方程組關(guān)系非常密切的一類問題即是線性變換問題. 凱萊在研究線性變換的復(fù)合時(shí),將線性變換所對(duì)應(yīng)的矩陣之間的運(yùn)算關(guān)系定義為矩陣乘法.
一般矩陣乘法的由來:
1) 線性變換的本質(zhì)
由變量x1,x2,…,xn到變量y1,y2,…,ym的線性變換
的本質(zhì)是一個(gè)由實(shí)數(shù)空間Rn到實(shí)數(shù)空間Rm的映射,即多維空間上的映射,可見這個(gè)映射可以將n維空間中的元素映射到m維空間當(dāng)中. 高等數(shù)學(xué)中學(xué)習(xí)過數(shù)集上的映射以及映射的復(fù)合,學(xué)生自然會(huì)想知道線性變換的復(fù)合是什么樣的.
2) 矩陣乘法的定義
根據(jù)
(2)
(3)
計(jì)算可得由變量x1,x2到z1,z2的線性變換
(4)
線性變換(4)是先做線性變換(3),再做線性變換(2)的結(jié)果,即是線性變換(2)與(3)的復(fù)合,稱為(2)與(3)的乘積. 由于線性變換與其系數(shù)矩陣是一一對(duì)應(yīng)的關(guān)系,3個(gè)線性變換所對(duì)應(yīng)的矩陣分別為A,B和C,此時(shí)稱矩陣C是矩陣A與B的乘積,記作C=AB[12].
2.2.1 小組討論,發(fā)現(xiàn)規(guī)律
通過讓學(xué)生觀察,總結(jié)出矩陣C中元素與A和B中元素之間的關(guān)系為
(5)
根據(jù)(5)式的運(yùn)算規(guī)則,分組討論,共同解決以下問題:
1) 是否任意兩個(gè)矩陣都能施行乘法運(yùn)算?
2) 請(qǐng)確定乘積矩陣C中元素的構(gòu)成和C的形式.
通過學(xué)生分享討論結(jié)果,使學(xué)生掌握矩陣能相乘的條件,即左矩陣的列數(shù)等于右矩陣的行數(shù). 相乘的計(jì)算方法為左行右列法——矩陣乘積元素cij等于左矩陣的第i行與右矩陣的第j列對(duì)應(yīng)元素乘積之和. 乘積矩陣的行列數(shù)——左矩陣的行數(shù)為乘積矩陣的行數(shù),右矩陣的列數(shù)為乘積矩陣的列數(shù)等. 最后共同總結(jié)出矩陣乘法的一般定義:
定義1設(shè)A=(aij)是一個(gè)m×p矩陣,B=(bij)是一個(gè)p×n矩陣,C=(cij),如果
則稱矩陣C=(cij)m×n為矩陣A與矩陣B的乘積,記作C=AB.
傳統(tǒng)的教學(xué)理念認(rèn)為學(xué)生知識(shí)、 技能的獲得均來于教師,所以教師在授課時(shí)往往不考慮學(xué)生的感受,將知識(shí)與技能滿堂灌. 近年來一直在提倡應(yīng)以學(xué)生為主體、 教師為主導(dǎo)的方式進(jìn)行教學(xué)[13]. 通過學(xué)生課堂上討論并分享討論結(jié)果的方式,充分發(fā)揮學(xué)生在課堂上的主體作用,增加學(xué)生在發(fā)現(xiàn)知識(shí)過程中的學(xué)習(xí)投入和情感投入,提高學(xué)生學(xué)習(xí)數(shù)學(xué)的內(nèi)在動(dòng)機(jī). 學(xué)生在討論中碰撞出知識(shí)的火花,一步步打開真理的大門,深刻掌握知識(shí)點(diǎn)的同時(shí),提高語言表達(dá)能力和知識(shí)講授能力,增強(qiáng)學(xué)好數(shù)學(xué)的勇氣和自信心.
2.2.2 做比較,總結(jié)規(guī)律
在學(xué)習(xí)矩陣加減法時(shí),我們是通過與實(shí)數(shù)的加減法比較[14]引出的,其運(yùn)算規(guī)律與實(shí)數(shù)的加減法運(yùn)算規(guī)律較為一致,由此繼續(xù)引導(dǎo)學(xué)生思考矩陣乘法的運(yùn)算規(guī)律又是如何?是否仍然和實(shí)數(shù)乘法的運(yùn)算規(guī)律一致?引導(dǎo)學(xué)生總結(jié)出矩陣乘法的運(yùn)算規(guī)律.
表1 數(shù)的乘法與矩陣乘法之間的聯(lián)系與區(qū)別
2.2.3 舉反例,溯本求源
在說明矩陣乘法一般不滿足交換律和消去律時(shí),最直接的方法就是舉反例.
例1設(shè)
計(jì)算AC,AB和BA.
由AC=O,可以進(jìn)一步說明矩陣相乘不滿足消去律.
從計(jì)算結(jié)果中可知,AB≠BA,即矩陣乘法不滿足交換律. 矩陣乘法的這一特點(diǎn)與數(shù)的乘法有很大的區(qū)別,為什么會(huì)有這樣的結(jié)果呢?這里從矩陣乘法的本質(zhì)來說明:
例1中矩陣A所對(duì)應(yīng)的線性變換為平面上任意一個(gè)向量關(guān)于x軸的投影變換,即
B所對(duì)應(yīng)的線性變換為繞原點(diǎn)逆時(shí)針旋轉(zhuǎn)90°的旋轉(zhuǎn)變換,即
下面考慮A與B所對(duì)應(yīng)的線性變換對(duì)平面R2中任意向量復(fù)合作用后的效果,不妨取R2中的一個(gè)元素p=(2,3)(p在平面中可以代表向量).
AB所對(duì)應(yīng)的復(fù)合線性變換作用于p,指先將向量p繞原點(diǎn)逆時(shí)針旋轉(zhuǎn)90°,再對(duì)得到的向量p1向x軸作投影,變換后的結(jié)果為p2=(-3,0)(見圖1);
圖1 p2=(-3,0)
BA所對(duì)應(yīng)的復(fù)合線性變換作用于p,指先對(duì)向量p作x軸的投影,得到向量p3,再繞x軸逆時(shí)針旋轉(zhuǎn)90°,結(jié)果為p4=(0,2)(見圖2).
圖2 p4=(0,2)
因此線性變換復(fù)合的順序不一樣,結(jié)果也往往不一樣,所以,矩陣乘法運(yùn)算一般不滿足交換律. 此處,AB稱為A左乘B,BA可稱為A右乘B. 矩陣乘法運(yùn)算滿足分配律,但是由于其不滿足交換律,分配律區(qū)分為左分配律和右分配律.
在解二元一次方程組和三元一次方程組的過程中,發(fā)現(xiàn)方程組的系數(shù)對(duì)方程組的解起決定性作用. 事實(shí)上,大約在公元前 1世紀(jì),我國(guó)的《九章算術(shù)》的“方程”章中就敘述了一個(gè)三元線性方程組的解法,當(dāng)時(shí)用算籌將未知數(shù)的系數(shù)和常數(shù)項(xiàng)排列成一個(gè)長(zhǎng)方陣,運(yùn)用遍乘直除算法求解,這就是矩陣最早的雛形,遍乘直除算法就是現(xiàn)今矩陣的初等變換. 以算法體系為特征的中國(guó)傳統(tǒng)數(shù)學(xué),為世界數(shù)學(xué)的發(fā)展開創(chuàng)了新觀念[15].
行列式和矩陣都是伴隨著解線性方程組而產(chǎn)生的,都是通過對(duì)方程組的系數(shù)進(jìn)行處理而達(dá)到解方程的目的. 行列式用來解未知量個(gè)數(shù)與方程個(gè)數(shù)相等的線性方程組. 1850年,西爾維斯特在研究未知量個(gè)數(shù)與方程個(gè)數(shù)不相等的線性方程組時(shí),行列式不能使用,提出了矩陣一詞,表示一項(xiàng)由m行n列元素組成的矩形陣列,這是最早矩陣一詞的使用. 根據(jù)矩陣乘法的運(yùn)算規(guī)則,含有n個(gè)未知數(shù),m個(gè)方程的線性方程組
可以寫成矩陣乘法的形式. 令
則線性方程組可記作Ax=b. 此式可看成是矩陣相乘的特殊形式. 其中A稱為矩陣方程的系數(shù)矩陣,x稱為未知數(shù)矩陣,b稱為常數(shù)項(xiàng)矩陣. 未知量是矩陣的方程稱為矩陣方程.
這一形式可以推廣到更一般的情形,令
矩陣方程AX=B可看作是由系數(shù)矩陣相同的p個(gè)線性方程組組成的. 求矩陣方程的解是后續(xù)課程中的重要內(nèi)容. 矩陣乘法的一般定義,將求線性方程組的解的問題轉(zhuǎn)換成了求矩陣方程的問題,極大地簡(jiǎn)化了線性方程組的求解問題,這也是矩陣乘法在矩陣論中相當(dāng)重要的原因.
利用矩陣乘法將線性方程組寫成矩陣方程的形式,只需對(duì)矩陣進(jìn)行相應(yīng)的處理即可方便快捷地解決線性方程組的解的問題. 啟發(fā)學(xué)生在解決問題時(shí)要善于抓住問題的本質(zhì),做到事半功倍.
矩陣乘法在圖像處理中有著非常重要的應(yīng)用. 我們對(duì)圖片的數(shù)字化處理實(shí)質(zhì)上就是對(duì)圖片所對(duì)應(yīng)的矩陣進(jìn)行相應(yīng)的運(yùn)算. 為了理解這點(diǎn),以一個(gè)簡(jiǎn)單的例子說明.
例2將圖3中矩形的4個(gè)頂點(diǎn)繞原點(diǎn)逆時(shí)針旋轉(zhuǎn)90°,點(diǎn)O,A,B,C所對(duì)應(yīng)的點(diǎn)坐標(biāo)作為列向量構(gòu)成的矩陣為
圖3 矩形OABC
繞原點(diǎn)逆時(shí)針旋轉(zhuǎn)90°的線性變換所對(duì)應(yīng)的矩陣為
對(duì)O,A,B,C這4個(gè)點(diǎn)同時(shí)做線性變換,就是用R左乘G,計(jì)算RG,得到旋轉(zhuǎn)后的4個(gè)點(diǎn)構(gòu)成的矩陣為
旋轉(zhuǎn)后的4個(gè)點(diǎn)記為O,A′,B′,C′,對(duì)應(yīng)圖像為
圖4 矩形OA′B′C′
注意,此處僅僅是將矩形的4個(gè)頂點(diǎn)進(jìn)行了旋轉(zhuǎn).
一般地,對(duì)一張圖片進(jìn)行旋轉(zhuǎn),本質(zhì)上是用旋轉(zhuǎn)變換所對(duì)應(yīng)的矩陣左乘圖片所對(duì)應(yīng)的像素矩陣. 具體地用Matlab軟件進(jìn)行演示,如圖5,即是將戰(zhàn)斗機(jī)圖片逆時(shí)針旋轉(zhuǎn)30°,
圖5 戰(zhàn)斗機(jī)圖片
另外,利用矩陣的運(yùn)算可以實(shí)現(xiàn)對(duì)圖片的剪切、 伸縮以及圖片信息的隱藏等. 將相應(yīng)的Matlab程序發(fā)送到智慧平臺(tái),供學(xué)有余力的學(xué)生課后學(xué)習(xí)和操作. 利用人們常用的圖像編輯,引起學(xué)生學(xué)習(xí)的興趣,使學(xué)生認(rèn)識(shí)到矩陣乘法運(yùn)算的廣泛應(yīng)用,更加重視矩陣?yán)碚摰膶W(xué)習(xí).
本文利用發(fā)生教學(xué)法,根據(jù)學(xué)生認(rèn)知規(guī)律,從矩陣乘法的創(chuàng)立過程出發(fā),對(duì)矩陣乘法的內(nèi)容進(jìn)行了教學(xué)設(shè)計(jì),帶領(lǐng)學(xué)生重新經(jīng)歷矩陣乘法的創(chuàng)造過程,理解矩陣乘法的本質(zhì)是線性變換的復(fù)合. 通過課堂小組討論,總結(jié)得出矩陣乘法運(yùn)算規(guī)則和運(yùn)算規(guī)律的特點(diǎn),從本質(zhì)出發(fā)闡述矩陣乘法一般不滿足交換律的原因. 這個(gè)過程,不僅是學(xué)生掌握數(shù)學(xué)知識(shí)的過程,更是學(xué)生發(fā)展創(chuàng)造力,培養(yǎng)科學(xué)精神的過程. 而后分析了線性方程組與矩陣方程之間的關(guān)系,讓學(xué)生進(jìn)一步理解了矩陣乘法運(yùn)算的現(xiàn)實(shí)意義. 最后從學(xué)生常用的圖像處理的角度探討了矩陣乘法的應(yīng)用,讓學(xué)生深刻體會(huì)到知識(shí)來源于實(shí)踐,概念的創(chuàng)造是用來解決問題的,不是憑空創(chuàng)造出來的. 通過Matlab的實(shí)驗(yàn)操作和課后練習(xí),讓學(xué)生熟悉數(shù)學(xué)軟件的使用,體會(huì)矩陣?yán)碚摵蛿?shù)學(xué)軟件的強(qiáng)大應(yīng)用,培養(yǎng)學(xué)生的抽象思維和邏輯思維,加強(qiáng)學(xué)生們未來學(xué)以致用、 學(xué)以善用的綜合能力和水平[16].