recent advances in particle swarm

31
Recent Advances in Particle Swarm 授授授授 授授授 授授 授授授

Upload: virginie-michel

Post on 01-Jan-2016

48 views

Category:

Documents


0 download

DESCRIPTION

Recent Advances in Particle Swarm. 授課教授 :葉榮懋 教授 報 告 者 :蔡宏林. 2. 基本算法. 3. 離散粒子群最佳化. 4. 在複雜環境的 PSO 算法. 6. 總結. 報告大綱. 1. 緒論. 5. PSO 的應用. 1. 緒論. 粒子群演算法是以 鳥 群為根基的隨機最佳化技術 由 Kennedy 和 Eberhart 在 1995 提出 本文回顧了粒子演算法近年來的發展 , 以及討論各種參數使用情況並修改參數 , 以適應不同的現實複雜環境. 1. 緒論. - PowerPoint PPT Presentation

TRANSCRIPT

Recent Advances in Particle Swarm

授課教授 :葉榮懋 教授報 告 者 :蔡宏林

報告大綱

1. 緒論

2. 基本算法

3. 離散粒子群最佳化

4. 在複雜環境的 PSO 算法

6. 總結

5. PSO 的應用

1. 緒論

粒子群演算法是以鳥群為根基的隨機最佳化技術由 Kennedy 和 Eberhart 在 1995 提出

本文回顧了粒子演算法近年來的發展,以及討論各種參數使用情況並修改參數,以適應不同的現實複雜環境

1. 緒論

在過去幾年中粒子演算法,已經發表超過 300篇有關粒子群的文章,越來越多的研究者對於這種新的算法有興趣,並從不同角度下去研究

每年發表論文的數量 ,2003 年報告不完整

2. 基本算法

起源 生物社會學家對鳥群尋找食物行為的研究

原理 我們可以設想這樣的一個場景,一群鳥再隨機搜尋食物。

這個區域裡只有一塊食物。所有的鳥都不知道食物再哪裡,但他們知道目前距離食物還有多遠,那麼找到食物的最佳策略是什麼?最簡單的方法就是找尋距離食物最近的鳥之周圍區域及根據自己本身飛行的經驗判斷食物的所在。

2. 基本算法

在總體搜索空間,粒子群每個單一的解答,就像是“鳥”的搜索空間,被稱為“粒子”所有的粒子的適合價值是要評估適合函數的優選和粒子飛行的速度,按照粒子的最佳解決方案讓這些粒子穿過問題空間

特點 • 分散式搜尋• 具記憶性• 元件較少,容易實現• 適合在連續性的範圍內搜尋

2. 基本算法

Food Global Best Solution

Past Best Solution

鳥群的覓食行為

2. 基本算法

1. 初始化:– 將群族做初始化,以隨機的方式求出每一粒子之初始位置與速度

2. 估算:– 依據適應度函數計算出其最適合值以作為判斷每一粒子之好壞

3. 適合的 Pbest :– 找出每一粒子到目前為止的搜尋過程中最佳解,這個最佳解我們將之稱為

Pbest4. 適合的 Gbest :

– 找出所有粒子到目前為止所搜尋到的整體最佳解,此最佳解我們稱之為Gbest

5. 更新:1. 更新每一粒子之速度與位置

• 回到步驟 2 繼續執行,直到獲得一個令人滿意的結果或符合終止條件為止• 最後會得到 Pgd , f(Pgd) 就是解的結果

2. 基本算法 - 速度更新函數

Vid :每一粒子在第 d 維之速度• i :粒子之編號 •d :維度

w : Inertia Weightc1 、 c2 :學習常數 Rand( ) :一介於 0 至 1 的亂數Pid :每一粒子到目前為止,所出現的最佳位置Pnd :所有粒子到目前為止,所出現的最佳位置Xid :每一粒子目前之所在

2. 基本算法 - 更新位置

粒子群內的每一個粒子點更新如下公式

2. 基本算法

pBestpBest

nBestnBest

C1C1 和和 C2C2

ww

是取得最好的粒子本身位置

是目前為止粒子鄰居的一個最佳位置

代表權重的隨機加速限制

慣性權重

2. 基本算法 -pBest

適應度函數的唯一最好的位置並不總是取決於價值 許多限制因素,可用於定義的最佳位置,以適應不

同的問題 . 而這並不會降低搜索能力和性能 例如,在非線性限制最佳化問題 , 在可行解空間粒

子只記得這些位置和無視不可行的解決方案 , 這個簡單的修改成功定位最佳化系列基準問題

2. 基本算法 -nBest

傳統來說 , PSO 算法需要某些預先設定共同粒子的鄰居,鄰居的數目或大小會影響收斂算法的速度 .

普遍認為,規模較大的鄰居粒子收斂更快,而小規模鄰居將有助於防止粒子的不成熟提早收斂 .

gBest 是一個極端的情況的 nBest版本

2. 基本算法 -C1 C2

從心理學的角度 , 認知項代表個人的傾向重複過去的行為,已證明是成功的,而社會的長期趨勢是遵循別人的成功

學習常數一般設定為c1 = c2 = 2

不過在文獻中也有其他的取值,一般設定 c1 = c2 值介於 0~4 之間

2. 基本算法 - 其它參數

粒子數:一般取 20 ~ 40 個,大部分的問題用10 ~ 20 個粒子就能取的不錯的結果

Vmax :最大速度,決定粒子再一個循環中最大的移動距離

例如 :•問題適應度函數 : f(x)= x1^2+x2^2+x3^2

•其中限制式為 -10<= x1, x2, x3 <= 10•則 Vmax 的大小就是 10-(-10) = 20

3.離散粒子群最佳化

許多最佳化問題涉及離散或二進制變量,典型的例子是調度問題或路徑問題

PSO 程序的更新公式被導向為而設計連續的空間 必須設法適應離散的空間,該編碼的變化可能很簡

單,但是很難定義速度的意思以及決定軌道的變化

3.離散粒子群最佳化

KennedyKennedy ChangChang MohanMohan

定義 PSO 的第一個離散二進制粒子群的版本,這些粒子被編碼為二進制字符串,速度被壓抑對間隔時間[0 , 1]

對重新接駁的問題使用這種方法,表明它是有效的商品中尋找最佳的解決方案

提出了多種二進位的方法(直接方法,量子方法,使合法化方法,偏見向量方法,混合的方法)

4. 在複雜環境的 PSO 算法 - 多目標最佳化

在多目標最佳化的問題,彼此分開目標函數進行最佳化,對每一個目標提出最好的解決方案,然而,最佳的所有目標很少能找到完美的解決方案,即目標函數往往相互衝突

相對於其他每個目標這是一組替代解決方案,必須考慮等同於缺乏資料的相關性

粒子群的信息共享機制明顯不同於其他的最佳化工具。在遺傳算法,染色體交換信息的相互交叉,這是一個雙向的信息共享機制

在 PSO ,只有 nBest信息給其他人,這是一個單向的信息共享機制

4. 在複雜環境的 PSO 算法 - 多目標最佳化

在 PSO 算法,粒子是一個獨立的情報人員,其中搜索問題空間根據自己的經驗和其他粒子經驗

前者是認知的一部分群更新的公式,而後者則是社會的一部分粒子更新公式

因此,選擇的社會和認知( nBest 和 pBest)是關鍵點的多目標粒子群最佳化算法

4. 在複雜環境的 PSO 算法 - 多目標最佳化

•Ray 結合 Pareto 順序方案以及處理多目標粒子群問題•在每一產生期間選擇通過粒子讓粒子更好•些粒子履行的粒子領袖建立在 Pareto 行列的基礎上•其餘的粒子將選擇一個領導者 nBest 並移動到新位置

4. 在複雜環境的 PSO 算法 - 多目標最佳化

•Coello Coello 使用兩步驟選擇處理得到社會的領導者•第一個適合空間分割為超小立方體•然後滾輪駕駛盤的選擇是用於挑選超出立方體的 nBesf•在第二個步驟,一個社會的領導者將隨機抽取從選定的立方體

4. 在複雜環境的 PSO 算法 - 多目標最佳化

•Mostaghim 介紹了六西格瑪方法,尋找最佳的社會領袖和每個粒子的群•西格瑪值計算每個人的候選人名單以及粒子,而西格馬值兩目標最佳化問題的定義為:(C )•以最小的西格馬距離粒子會發現社會的領導者

4. 在複雜環境的 PSO 算法 - 多目標最佳化

•Fieldsend 提出了控制樹存儲粒子

4. 在複雜環境的 PSO 算法 - 多目標最佳化

•Hu et. 開發一個動態社區,選擇的社會領袖多目標粒子群•目標分為兩組,目的之一是定義為最佳化目標,而所有其他目標被定義為社區的目標•首先,計算目前粒子之間距離及候選人,然後一群鄰居們挑選的基礎上的距離•然後,候選人的最適合價值為最佳化目標,成為社會的領導者

4. 在複雜環境的 PSO 算法 - 限制最佳化

有一些研究文獻報導,擴展粒子群最佳化問題的限制,其目標限制最佳化問題是找到解決方案,同時滿足一組線性和非線性限制

對於限制最佳化問題,原來的粒子群方法需要修改

4. 在複雜環境的 PSO 算法 - 限制最佳化

Hu and

EherhartEl-Gallad Parsopoulos Ray

修改 PSO1.當更新記憶,所有的粒子的唯一可行的解決方案保持在他們的記憶2. 在初始化過程中,所有粒子都開始與可行的解決辦法

推出了類似的方法,唯一不同的是,當一個粒子是可行的空間之外,將重新到最後找到最佳值。,它可能會限制粒子的地區,粒子被初始化

轉換限制最佳化問題轉變為一個非限制最佳化問題,通過了一項非平穩多階段任務函數,然後應用粒子群的轉換問題

提出了比喻群的多層次報告共享策略,以處理最佳化問題

5. 應用 - 人工神經網絡的訓練

PSO 算法已應用到三個主要特徵的神經網絡:網絡連接,網絡體系結構和網絡學習算法

在 GA通常的拓撲結構編碼為染色體,在選擇適應度函數適合於研究目標,對於分類問題,服務模式錯誤率可以被看作是適合的價值

相對於反向傳播訓練方法,粒子群的優勢在於,利用它可用於例非微粒傳遞函數和非梯度資料

在過去幾年報告中使用粒子群取代反向傳播學習算法的人工神經網絡,他們表明, PSO 算法是一種很有前途的方法訓練人工神經網絡。在大多數情況下得到更快更好的結果在大多數情況下它也避免了遺傳算法遇到的一些問題

5. 應用 - 相互作用與其他計算方法

除了神經網絡訓練,粒子群結合了各種方法來解決不同的問題,如模糊,自組織特徵映射和隱馬爾可夫模型訓練等

5. 應用 - 參數優化和特徵選擇

參數優化 粒子群已應用於各種參數估計和最佳化問題 例如, Abido 應用粒子群最佳化的參數設置,電力系統穩定以及最優潮流問題

特徵選擇 Agrafiotis 使用 PSO 算法的特徵選擇問題,測試結果該方法結果優於模擬退火。

6. 總結

粒子群作為一個新的技術,得到了許多關注,儘管如此仍有許多未解決的問題像是收斂性分析

粒子群最佳化組合各種技術來處理複雜的問題 大多數研究項目文獻報導連續變量處理,有限的研究表明, PSO處理離散變量算法時有一定困難

PSO植根於人工生命生物智能互動,雖然只是採用生物世界簡單的規則但是 PSO 算法是成功的