這邊我們一樣考慮解 ,前面講的是 Gradient Method,那這節要講的是 Conjugate Gradient Method,效率一般來說會更好,而且好很多
要選來 minimize ,因為我們希望它越小越好,前面的 Gradient Method 裡面 是用 gradient 來做的,但這邊我們不用這個方法
我們先看 ,先不管 ,所以假設 已知:
基本上推導過程差不多,所以重點就是 要怎麼找
在開始找之前我們先給個定義,假設 A 是個 的矩陣,我們說有一個 nonzero vector 的 set ,如果這個集合滿足 的話,我們就說這個集合是一個 A-orthogonal 的 set
那我們說這個集合如果是 A-orthogonal 而且 A 矩陣是對稱正定的話,那麼這個集合必定會線性獨立,證明:
代表這個集合是 的一組基底
給定一個集合 A-orthogonal 的集合 , 是對稱正定矩陣
那當我們要解 時我們要用這個式子:
那妳可以看見 只有 n 項,也就代表最多只會迭代 n 次,也就是說 就是我們要的
證明:
所以現在問題就變成 要怎麼找了
residual vector , k = 1, 2, ..., n,滿足 <>, j = 1, 2, ..., k
也就是說 和 垂直, 和 還有 垂直, 和全部的 垂直
那證明我們就用數學歸納法:
假設執行到第 k 步的時候 且 都已經知道了,那下一次的
因為我們要造的是 A-orthogonal 的集合,所以我們希望找到的 能讓 和上一次的 垂直,那就把寫下來整理一下:
然後把前面算出來的 抄下來推一下: