一種群體智慧演算法,作者從觀察鳥群覓食的行為獲得啟發。鳥群在一空間搜索食物時,會結合自身與其他同伴的
最佳經驗判斷該去哪邊才能找到最多食物,漸漸的整個鳥群會朝最多食物的方向飛去。
1.產生N個粒子的各自亂數初始位置以及初始速度
2.設定適應函數
3.計算適應值,並將第一代群體和個體最佳先存起來
4.計算適應值
5.群體最佳值更新
6.個體最佳值更新
7.速度更新與調整
8.位置更新與調整
9.印出群體最佳值
10.重複4-9 迭代itera次
adapt_fun(x,v,N):適應函數,x為位置,v為速度,N為粒子數
N:粒子數,10~20個
c0 、c1:常數,設2.0
Vmax:最大速度,以粒子範圍為大小,設200
w :慣性權重,採線性遞減的慣性權重,從0.9線性遞減到0.4
itera:150
迭代次數與群體最佳值關係曲線圖
x軸為迭代次數、y軸為群體最佳值





