-
我下面來講另一種求3×3逆方陣矩陣的方法
-
我更喜歡這種方法,覺得更有趣些
-
而且不那麽容易犯錯
-
但是,如果我沒記錯的話
-
《代數2》好像不教這個內容
-
這也是爲什麽我先講前面那個方法
-
我們先來過一遍新方法
-
以後的影片裏,我會解釋這個方法的道理
-
知其所以然是很重要的
-
但在線性代數裏,有那麽幾個知識點
-
最好先掌握怎麽操作
-
我認爲這是其中之一
-
之後我們再來講爲什麽
-
因爲,“怎麽操作”是個很機械的過程
-
只涉及一些基礎的運算
-
而“爲什麽”則更加深入
-
所以我把它留到以後來講
-
通常,當你掌握了“怎麽操作”時
-
也就有信心進行更深入的思考了
-
言歸正傳,我們來看原矩陣
-
上段影片裏的原矩陣是多少來著?
-
它是1, 0, 1, 0, 2, 1, 1, 1, 1
-
要求它的逆矩陣
-
我們介紹新的求逆方法,名叫:
-
高斯-若當消去
-
整個過程看起來就像是魔法一樣
-
以後的影片裏會有更詳細的解釋
-
我們先來“擴增”(augment)這個矩陣
-
什麽叫“擴增”(augment)?
-
就是給它加上些東西(這裡就是在原函數右邊寫上單位方陣)
-
我習慣畫一條分開線;有些人不畫,也是可以的
-
在分開線的另一邊,我寫上同樣大小的單位方陣
-
這裡是3×3矩陣,所以寫上3×3的單位方陣
-
即1, 0, 0, 0, 1, 0, 0, 0, 1
-
好了,接下來做什麽呢?
-
我會進行一係列“基本行運算”(elementary row operation)
-
我呆會兒再教你什麽叫做“基本行運算”
-
但是無論我對左邊矩陣的做什麽操作
-
我都要對右邊的相應行做同樣的運算
-
我的目標是:對左邊矩陣進行一係列的運算
-
當然也對右邊矩陣進行同樣的操作
-
使得左邊的矩陣,最終變成單位方陣
-
而當左邊變成單位方陣的時候
-
右邊的矩陣,就會變成左邊原逆方陣矩陣
-
當左邊變成單位方陣的時候
-
我們會管它叫“簡式行階梯形”(reduced row echelon form)
-
後面會有專門的影片來講這個
-
線性代數裏有很多術語和定義
-
但它們實際上都是很簡單的概念
-
先不扯遠了,我們動手計算
-
算完後你們就會更清楚些
-
至少會清楚計算過程
-
雖然可能還無法理解道理何在
-
我說過我們要進行一係列運算
-
所以首先,我們先要弄明白:
-
什麽樣的運算是合法的?
-
也就是“基本行運算”
-
合法的運算包括下面這些:
-
我可以拿某一行,乘上一個倍數
-
這是可以的
-
我可以交換任意兩行的位置
-
當然,如果我在左邊交換第一和第二行
-
我也必須在右邊做同樣的操作
-
我還可以拿某一行加上或減去另一行
-
比如說,我可以拿第三行,加上第二行
-
所以第三行的數字就變成它們的和
-
等下你們就明白這是什麽意思了
-
而且,這些運算可以組合起來
-
比如說,拿第二行乘以負1
-
然後把結果加到第三行上
-
你可能覺得這挺像在解一次方程組
-
確實如此,因爲矩陣就是一個
-
用來表示方程組的好方法
-
這一點我以後會給你們解釋
-
回到主題,我們來做點“基本行運算”
-
把左邊這個矩陣轉化成“簡式行階梯形”
-
其實也就是說“我們把它化成單位方陣”
-
我們的目標也就是:
-
得讓這一條對角線上全變成1
-
剩下的都變成0
-
我們來看看有沒有什麽簡便的方法
-
我們把新矩陣寫在下面
-
第一步,我要把左下角的1化成0
-
看起來很簡單
-
前兩行不變,照寫下來
-
1, 0, 1
-
然後是分開線
-
1, 0, 0
-
第二行也不做任何操作
-
0, 2, 1
-
0, 1, 0
-
我現在的目標,是要拿這一行
-
把它的第一個數字1,變成0寫在這裡
-
這樣一來,我們就朝單位方陣前進了一步
-
怎麽讓這裡得到0?
-
我可以這麽做:拿上面的第三行減去第一行
-
然後把結果寫在新的第三行的位置上
-
第三行減去第一行,結果是什麽?
-
1減去1,得0
-
1減去0,得1
-
1減去1,得0
-
我在左邊做了一次減法
-
也必須在右邊做相同的操作
-
也就是拿第三行減去第一行
-
即,0減去1,得負1
-
0減去0,得0
-
1減去0,得1
-
很好
-
接下來怎麽辦?
-
現在左邊的第三行,兩邊是0,中間是1
-
很像單位方陣裏的第二行
-
那何不直接交換這兩行呢?
-
直接交換第二行和第三行
-
我們把它寫下來
-
交換第二行和第三行
-
第一行不變,還是1, 0, 1
-
右邊的第一行也是一樣
-
現在我們交換第二行和第三行
-
所以第二行變成:0, 1, 0
-
右邊也同樣交換
-
變成:負1, 0, 1
-
直接交換兩行的位置就行了
-
所以第三行現在就變成了前面的第二行
-
0, 2, 1
-
這邊是0, 1, 0
-
好的
-
接下來又該怎麽辦?
-
如果第三行的這個2變成0就好了
-
這樣一來等於朝單位方陣前進了一大步
-
我怎麽才能把它變成0呢?
-
拿第三行減去2倍的第二行怎麽樣?
-
2倍的第二行,中間的數就是2
-
從第三行中減去它,中間就得0
-
就這麽辦
-
第一行,很幸運地,一直不用動
-
我們照寫下來
-
1, 0, 1, 1, 0, 0
-
第二行這回也不需要變
-
右邊是:負1, 0, 1
-
我剛才說要怎麽做來著?
-
我要從第三行裏減去“2倍的第二行”
-
就是:0,減去“2乘以0”,得0
-
2,減去“2乘以1”,就是0
-
1,減去“2乘以0”,得1
-
0,減去“2乘以負1”,就是0減去負2,得正2
-
1,減去“2乘以0”,還是等於1
-
0,減去“2乘以1”,得到負2
-
我都算對了嗎?
-
我來檢查下
-
0減去“2乘以負1”,“2乘以負1”等於負2
-
0減去負2,所以是正2
-
好的,快完成了
-
左邊看起來已經很像單位方陣了
-
或者說“簡式行階梯形”
-
唯一不同的是右上角的1
-
所以我們終於要對第一行下手了
-
我應該怎麽做?
-
我從第一行裏減去第三行怎麽樣?
-
因爲右上角的1減去右下角的1,就得0
-
我們把它寫下來
-
從第一行裏減去第三行
-
1減去0,得1
-
0減去0,得0
-
1減去1,得0
-
這就是我們想要的
-
然後是:1減去2,得負1
-
0減去1,得負1
-
0減去負2,就得到正2
-
其余的兩行不變
-
0, 1, 0, 負1, 0, 1
-
下面是:0, 0, 1, 2, 1, 負2
-
大功告成
-
我們對左邊的矩陣做了一係列運算
-
也對右邊的矩陣進行同樣的操作
-
左邊的變成了單位方陣,或者叫“簡式行階梯形”
-
所用的方法叫“高斯-若當消去”
-
那麽右邊的這是什麽?
-
它就是左邊原逆方陣矩陣
-
原矩陣和它相乘,就等於單元矩陣
-
如果原矩陣叫A的話
-
那麽這個就是“A逆”
-
就這麽簡單
-
你們可以看到,這只花了我上次所用時間的一半
-
而且計算更容易
-
不用求伴隨矩陣、余因子、行列式什麽的
-
爲了幫助你們理解,我稍微講講這個方法的原理
-
我對左邊這個矩陣所做的每一步操作
-
都可以視爲是對它做了一次矩陣乘法
-
比如,要從原矩陣,到下面這個矩陣
-
就好像說,存在某個矩陣
-
乘以它的效果,就等於做了這第一步的操作
-
而第二步操作,相當於乘上了另一個矩陣
-
所以實質上,我們相當於拿原矩陣
-
乘上一係列的矩陣,最終得到單位方陣
-
這一係行矩陣,叫做“消元矩陣”(elinimation matrix)
-
我們把它們相乘,就得到原逆方陣矩陣
-
這是什麽意思呢?
-
比如,我們有原矩陣A
-
從A到下面這個矩陣,相當於乘上了一個消元矩陣
-
要是你們覺得一頭霧水,可以完全忽略
-
但它也可能會有所啓發
-
因爲第一步操作消去了元素(3, 1)(第三行第一列)
-
所以我們管這一步對應的消元矩陣叫做E(3,1)
-
而第二步操作,相當於乘上另一個矩陣
-
以後的影片裏,會有更詳細的解釋
-
我會教你們如何構造這些消元矩陣
-
這裡的第二步操作,是兩行元素交換位置
-
我們姑且管它對應的矩陣,叫做“交換矩陣”S
-
乘上它,效果是交換第二行和第三行,所以寫成S(2, 3)
-
第三步也相當於一次乘法
-
我們消去了什麽?消去了第三行第二列
-
所以其對應的消元矩陣叫做E(3, 2)
-
最後一步,也相當於乘上了一個消元矩陣
-
消去了右上角的元素,也就是第一行第三列
-
所以它叫做E(1, 3)
-
你們現在不用搞清楚這些矩陣長什麽樣
-
後面我會教你們如何去構建它們
-
我現在只是想讓你們提前確信:
-
這裡的每一步操作,都可以通過“乘上一個矩陣”來完成
-
而我們知道,乘上這些矩陣之後
-
原矩陣A就變成了單位方陣I
-
也就是這裡
-
所以這幾個矩陣的乘積
-
如果我們把它們相乘的話
-
肯定就等於A的逆矩陣
-
這些消元、交換矩陣乘起來,肯定等於A的逆矩陣
-
因爲拿它們乘上A,結果等於單位方陣
-
那麽,這會給我們什麽結論呢?
-
如果這些矩陣相乘等於逆矩陣
-
那麽拿單位方陣乘上它們
-
也就是:第一步乘以E(3, 1)
-
第二步乘以S(2, 3)
-
第三步乘以E(3, 2)
-
如此往複
-
當你把這些步驟合在一起
-
實際上就相當於拿逆矩陣乘以單位方陣,明白嗎?
-
我不希望把你弄糊塗
-
你明白我所說的當然好,不明白也沒關係
-
但是,如果你著眼於大效果的話
-
這些步驟的效果,實際上相當於:
-
把這個擴增矩陣的左右兩邊都乘上逆矩陣
-
左邊的乘上逆矩陣,得到單位方陣
-
而右邊,單位方陣乘上逆矩陣,當然就得到逆矩陣
-
話說回來,我不想把你弄糊塗
-
只是希望能給你一點點解釋
-
以後我會用更具體的例子來解釋它的原理
-
目前你只要知道有這麽個簡便的方法
-
不用去算伴隨、余因子、子式矩陣、行列式之類的
-
好的,那我們下段影片再見