一、粒子群演算法的概念
粒子群優化演算法的基本思想:是通過群體中個體之間的協作和資訊共享來尋找最優解.
pso的優勢:在於簡單容易實現並且沒有許多引數的調節。目前已被廣泛應用於函式優化、神經網路訓練、模糊系統控制以及其他遺傳演算法的應用領域。
二、粒子群演算法分析
1、基本思想
粒子群演算法通過設計一種無質量的粒子來模擬鳥群中的鳥,粒子僅具有兩個屬性:速度和位置,速度代表移動的快慢,位置代表移動的方向。每個粒子在搜尋空間中單獨的搜尋最優解,並將其記為當前個體極值,並將個體極值與整個粒子群裡的其他粒子共享,找到最優的那個個體極值作為整個粒子群的當前全域性最優解,粒子群中的所有粒子根據自己找到的當前個體極值和整個粒子群共享的當前全域性最優解來調整自己的速度和位置。
2、粒子群演算法的主要步驟如下:
(1)對粒子群的隨機位置和速度進行初始設定,同時設定迭代次數。第二步:計算每個粒子的適應度值。
(2)對每個粒子,將其適應度值與所經歷的最好位置pbest;的適應度值進行比較,若較好,則將其作為當前的個體最優位置。
(3)對每個粒子,將其適應度值與全域性所經歷的最好位置gbestg的適應度值進行比較,若較好,則將其作為當前的全域性最優位置。
(4)根據公式(1), (2)對粒子的速度和位置進行優化,從而產生新的粒子。
(5)如未達到結束條件(通常為最大迴圈數或最小誤差要求),則返回第二步。
3、本案例群體的初始引數列表:
maxgen:一般為最大迭代次數以最小誤差的要求滿足的。粒子群演算法的最大迭代次數,也是終止條件數。
c1,c2:加速常數,取隨機2左右的值。
w:慣性權重產生的。
4、初始執行:
(1)首先測試c1、c2、w的迭代影響:
利用函式來表示各變數:
執行得:
逐漸迭代得:
可以看出迭代收斂最早。隨著不斷的迭代,最優適應度承不穩定狀態。
(2)dim與sizepop的影響:
適應度函式維數dim=12:
適應度函式維數dim=8:
適應度函式維數dim=5:
適應度函式維數dim=3:
種群規模sizepop=220:
種群規模sizepop=200:
種群規模sizepop=150:
種群規模sizepop=130:
將種群規模sizepop調製到<130時,迭代次數無法收斂到接近於0,所以判別種群規模sizepop在200最佳。
結論:較大的w有利於跳出區域性極值。而較小的w有利於演算法收斂。相較於傳統演算法計算速度非常快,全域性搜尋能力也很強;
對於適應度函式維數dim的不斷改變值(初始值為10的情況下),分別測試》10和<10的迭代可以看出,dim的值越小,迭代收斂次數越小。最優值在3~5之間最佳。
pso對於種群大小不十分敏感,所以初始種群往往設為500-1000,不同初值速度影響也不大;
粒子群演算法適用於連續函式極值問題,對於非線性、多峰問題均有較強的全域性搜尋能力。
粒子群(PSO)尋優演算法(matlab)
網上已經有很多大差不大的 但是有可能執行不了,這裡記錄乙個可以使用的,只需要修改適應度函式 要優化的函式 和粒子的維度 優化乙個二元函式,則乙個粒子的維度就是2維 即可。粒子群優化的方向是使得適應度越來越小的方向。clear all 粒子群演算法中的兩個引數 c1 1.49445 兩個加速常數 c2...
粒子群優化演算法 粒子群演算法
粒子群演算法 particle swarm optimization,pso 屬於進化演算法的一種,該演算法最初是受到飛鳥集群活動的規律性啟發,進而利用群體智慧型建立的乙個簡化模型。粒子群演算法在對動物集群活動行為觀察基礎上,利用群體中的個體對資訊的共享使整個群體的運動在問題求解空間中產生從無序到有...
粒子群優化演算法
粒子群優化演算法 1.概念 粒子群優化演算法 pso 是一種進化計算技術。源於對鳥群捕食的行為研究。粒子群優化演算法的基本思想 是通過群體中個體之間的協作和資訊共享來尋找最優解 pso的優勢 在於簡單容易實現並且沒有許多引數的調節。目前已被廣泛應用於函式優化 神經網路訓練 模糊系統控制以及其他遺傳演...