• 沒有找到結果。

第一章 緒論

1.5 論文章節架構

粒子群最佳化演算化是由 J.Kennedy 和 R.Eberhart 於 1995 年提出一套演化 式計算的演算法,此方法是一種基於個體、群體、群集並且結合人工智慧以解決

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

6

區域性最佳解(Local best solution,或稱 Personal best,簡稱 Pbest),全部粒子群 體會有全域性最佳解(Global best solution,或稱 Global best,簡稱 Gbest),上述 這些數值會不斷經過數學式子計算,不斷尋找到粒子個體中區域最佳解、群體中 全域性最佳解,且根據這兩個過去經驗以求得最佳解,我們將在第三章時介紹整 個演算法流程,並說明上述幾個參數是如何推演。

過去國內外有許多學者研究粒子群最佳化演算法,並且有各種不同的應用,

尹邦嚴等人[1]提出粒子族群最佳化的視覺化及開發工具,利用程式語言將演算 法可以視覺化的展示,讓使用者可以清楚了解粒子群最佳化的演化過程,並且可 以顯示在圖片上,如圖 2.1 所示。

圖 2.1:演算法經過三次演化後的路徑圖,圖像取自[1]

蔡元介等人[5]提出建立一個以 PSO 求解多點最佳路徑的行動地理資訊系統,

藉由網路服務(web services)技術,透過呼叫遠端伺服器的演算法來進行複雜的地 圖路徑計算,以求得最佳路徑;蔡賢量[6]等人提出基於粒子族群最佳化之不完 全資料處理,應用在知識發掘(knowledge discovery)的研究,透過演算法處理不 完全資料的問題,並且延伸至後續應用在中文文字處理[2]。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

7

2.2 估測基礎矩陣

Xavier 和 Joaquim[18]於 2003 年曾提出並且整理過去一些估測基礎矩陣的方 法,在整理的 19 種方法中,又可以分為三大類,分別是線性方法(linear method)(圖 2.2 中 1~4)、疊代法(iterative methods)(圖 2.2 中 5~11)和強健式方法(robust methods)(圖 2.2 中 12~19),作者將 19 種方法實作後,用現實拍攝的影像進行實 驗,結果顯示,線性方法在對應點準確率高的情況下,實驗結果是誤差小且正確 率高。疊代法可以處理一些有高斯雜訊(gaussian noise)的情況,但是對於錯誤資 料太多的狀況下處理是相當沒有效率的。強健式方法可以同時處理高斯雜訊和存 在錯誤對應點的情況,因此在本研究會選一種強健式估測基礎矩陣的方法當作比 較範例,在第五章實驗結果時會有討論與分析。

圖 2.2:19 種估測方法時間比較,圖像取自[18]

過去有許多學者持續以強健式方法為基礎進行研究,Zhang[19]於 1997 提出 一篇強健式參數估測用於圓錐體近似,由於大部份電腦視覺的問題常常會遇到雜 訊資料干擾影響估測結果,所以 Zhang 模擬圓錐體近似實驗,並且分佈資料點可

所以 Zhang 使用了參數估測中的最小平方法(least-squares)和最小平方中值法希 望可以過濾掉錯誤資料,我們將在第三章描述其相關技術,並且在第四章以粒子 群最佳化演算法加入解題,因為圓錐體可以在二維平面上繪圖出來,所以我們先 觀察演算法用在解類似問題下是否適合,進而使用在估測基礎矩陣實驗。

圖 2.3:圓錐體近似問題示意圖

鄒慎財[3]提出強健式估測基礎矩陣之研究,利用強健式估測方法,如最小 平方中值法和隨機抽樣(RANdom SAmple Consensus, RANSAC)演算法進行估測,

其中要使用最小平方中值法時,要注意錯誤資料需要佔全部可取樣點數的 50% 法,並且以線性近似(Line Fitting)和估測基礎矩陣為實驗範例,分析錯誤資料佔 全部資料在不同的百分比之下,使用何種強健式方法可以得到最好的解,最後結 合不同的強健式方法,再改善實驗結果,提供未來繼續研究的空間。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

9

賴岳宏[7][8]提出利用演化式計算做最佳化之研究,引用田口方法(taguchi method)[14]和演化式演算法中的基因演算法(genetic algorithms)[9]估測基礎矩陣,

利用模擬大自然的基因交配,留下最適合適應環境的方式,在隨機取樣的問題中,

可以透過複製、交配和突變來求取最佳解,估測出好的基礎矩陣,在實驗中,雖 然可以找到較佳的基礎矩陣,但是演化速度相當費時,較不符和計算成本。

本研究除了以粒子群最佳化演算法估測基礎矩陣外,也結合強健式方法中的 最小平方中值法內幾個步驟,另外獨立實作最小平方中值法作為比較,我們將在 第五章列出實驗結果,並且討論與分析。

C rand GbestX X

     

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

15

3.3 最小平方法

在有兩點或是多點的二維座標系中,我們要找到一組(a,b)集合解,在線性近 似問題中(如圖 3.3),求出一條最逼近、誤差值最小的直線方程式(如式 3.4),最 小平方法是一個好的解題方法。

yaxb

(3.4)

圖 3.3:線性近似問題範例圖

由於每個座標點並不在我們近似的直線上,因此每個點皆可以代入式 3.4,

計算出來一組殘餘誤差值 r(如式 3.5)。為了避免統計誤差時正負值會抵消,所以 採用誤差平方和為最小(min

r

i2)。

i i i

rax   b y

(3.5)

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

17

3.4 最小平方中值法

是一種強健式估測方法,由於錯誤資料是無法避免並且常常會佔有一定的比 例,因此當我們使用最小平方中值法時,希望可以有效率的過濾掉錯誤資料。在 計算的過程中,會產生最小平方中值表格,我們將所有的誤差值經過排序後,捨 棄誤差值較大的 50%資料,保留前 50%的值,希望讓平均值以上的資料可以繼 續被留下來應用,進行後續的實驗,如圖 3.4 所示。

圖 3.4:最小平方中值法示意圖

我們採用最小平方中值法,並且應用在計算一組粒子個體的評估值,當我們 估測出一組結果時,可以將原先所有資料代入計算,這時每組資料都會有一組殘 餘誤差值(如 3.3 小節中式 3.5),接著我們會將誤差值由小到大排序,並且取中位 數,當作我們的評估值,這表示我們相信前面 50%的資料,後續實驗會以這樣的 做法來取評估值。

Hartley 的書中曾提過八點演算法(式 3.9),即表示有八組對應點座標時,即 可以計算出一組基礎矩陣,在第一章時我們曾介紹極限幾何關係(圖 1.1),接著

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

19

要估測出基礎矩陣,需要求解 3.11 聯立方程式,只要有八組對應點,就可 以有一組答案,但我們主要問題在於估測出來的基礎矩陣要是好的。倘若基礎矩 陣解出來不好,在後續找密集對應點的過程中會產生錯誤,我們該如何使用粒子 群最佳化演算法幫助初始隨機取樣後的結果呢,將在第四章時會說明。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

20

第四章

以粒子群最佳化演算法估測基礎矩陣

本章第一小節介紹兩個基礎實驗,分別是粒子群最佳化演算法應用於二維平面和 圓錐近似兩個實驗,透過模擬的實驗,我們可以更清楚演算法的流程和運作,第 二小節是估測基礎矩陣的研究方法與流程,會詳細說明每個步驟和設計的想法,

實驗結果將在第五章。

4.1 模擬基礎實驗

4.1.1 平面中粒子群最佳化

本實驗將在平面中模擬粒子群最佳化演算法,由於三維以上的空間我們很難 想像,因此我們用一個最簡單的例子,如圖 4.1,是一個二維平面找尋最佳解的 問題,我們將最佳解的目標假定在平面裡其中一個座標點位置,並且在限制位置 大小的範圍隨機分佈粒子個體,最終我們希望初始分散的所有粒子個體,可以逼 近至我們假定的最佳解目標,以及達到停止條件制訂的門檻值,實驗流程可以參 考圖 3.1。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

21

圖 4.1:二維平面問題示意圖

初始化

同 3.1 小節,在本實驗我們將維度設為二維,因為這是在平面中模擬的實驗,

位置向量的範圍即是二維的範圍,速度向量範圍會依據可移動的位置向量範圍做 調整。

計算評估值

同 3.1 小節,在平面實驗中,我們制訂了一個公式用來計算評估值 f,如 式 4.1。在這個模擬實驗我們假定最佳解是知道的,目的是為了觀察粒子個體 的移動。

i x

2

i y

2

fXGoalYGoal

(4.1)

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

22

比較過去經驗、更新

和 3.1 小節皆相同。

疊代速度、檢查速度向量、疊代位置、檢查位置向量

因為在平面中搜尋範圍是有限制的,我們必須控制粒子個體的移動範圍、速 度向量,舉例來說,假設是 1000x1000 的搜尋空間,粒子個體在疊代步驟計算後,

位置向量很有可能超過我們預設的搜尋空間,因此我們這邊多了一個判斷的步驟 來確保粒子特體會存在範圍內。

其中速度向量在二維實驗中若有調整時,可再細分為兩種,速度向量正規化 和速度向量未正規化,表 1 是速度向量正規化演算法,第五章列出實驗結果實我 們會比較兩種做法的實驗結果,以及適合使用的時機。

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

32

影像上特徵點在第二張影像上的對應點,由這個對應點,和極線計算距離誤差,

同理,將第二張影像上的特徵點,經由同樣的方法,也可以在第一張相片上畫出 極線,由對應在第一張影像上的點進行計算距離誤差,若是同一組對應點時,可 以取平均值當作最後的一組誤差,當我們統計的點數越多時,越可以清楚知道我 們估測基礎矩陣的好壞。圖 4.3 是計算誤差的示意圖,計算公式如式 4.6。

2 2

( , ) ax by c d m L

a b

 

 

(4.6)

m 為對應點的座標,L 為 m 在另外一張相片畫出的極線方程式

ax by    c 0

, 公式帶入後求出的 d 值即為誤差值。

圖 4.4:計算基礎矩陣誤差示意圖

fitness 值的制訂如式子 4.1,每次實驗我們會列出初始分佈和結束時的數據表格,

並列出每經過 100 次疊代後粒子移動後的圖形。

值為 0.657727。其餘粒子我們也將記錄初始 fitness 值,實驗停止條件為所有粒 子的 fitness 值皆要小於 0.1,實驗即停止,同時我們也記錄了初始 Gbest 和實驗

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

35

粒子 18 392.376 0.93267 粒子 19 495.773 0.172525 粒子 20 844.203 0.894932 Gbest 103.793 0.172525

平均值 555.49 0.631088

標準差 226.697 0.211664

疊代次數 526

在圖 5.1(a)中,是實驗初始 20 個粒子的分佈圖,我們採取了影像處理的座標 模式,將 X 座標置於圖的上方,Y 座標維持在圖的左方,可以看出,初始的隨 機分佈在圖中相當分散。

(a)

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

36

經過 100 次疊代計算後,可以看出 20 個粒子已經漸漸收斂至我們假定的最 佳座標點,但是因為尚未達到實驗停止條件,因此實驗繼續進行,在 200 次疊代 計算後,其實粒子群變動的幅度已經不明顯,都收斂在最佳座標點附近,直到最 後實驗停止條件達成後,我們將實驗停止,並且列出最後結果。

(b)

(c)

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

37

(d)

(e)

‧ 國

立 政 治 大 學

N a tio na

l C h engchi U ni ve rs it y

38

(f)

(g)

圖 5.1:速度未正規化第一次實驗 (a)初始分佈 (b)疊代 100 次後 (c)疊代 200 次 後 (d)疊代 300 次後 (e)疊代 400 次後 (f)疊代 500 次後 (g) 實驗停止

相關文件