❶ 怎麼判斷粒子群優化演算法有沒有局部收斂
轉載請註明:來自網路知道——小七的風
首先說,標準的粒子群演算法是通過控制權重系數ω的線性下降來使得種群收斂的,從收斂圖上看,如果在多次迭代後(比如100次迭代後)如果最優粒子的適應度值不再變化即認為此時演算法已經達到收斂。
理論上,粒子群通過自身的更新機制使得每個粒子在每次的迭代中會向該粒子的歷史最優位置以及全局粒子位置的中間(或周圍)位置靠近,這樣雖然保證了粒子搜索的高效性(假設最優點存在於全局最優點與歷史最優點的中間位置)但勢必帶來了粒子搜索范圍的減少,所以容易出現局部收斂,並且已有相關文獻證明了這不是一個全局最優的演算法。
還有一種簡單的做法是證偽,即不去直接證明粒子群是一個全局最優,而是試圖去找到一個點,這個點的適應度值比粒子群找到的全局最優點的適應度值更好,這樣就間接說明了演算法沒有找到全局最優點(可以採用純隨機,直到找到比粒子群提供的全局最優點好為止)
❷ 粒子群演算法的優點
第一,演算法規則簡單,容易實現,在工程應用中比較廣;第二,收斂速度快,且有很多措施可以避免陷入局部最優;第三,可調參數少,並且對於參數的選擇已經有成熟的理論研究成果,見Eberhart的論文。