摘? 要:考慮單個Agent資源有限,多個Agent時常需形成聯(lián)盟來完成任務或提高聯(lián)盟整體能力,如何形成一組針對某個任務的最佳聯(lián)盟是MAS中一個緊迫而又關鍵性的問題。基于此,文中提出一種改進的IPSO算法來解決該問題,同時為克服粒子過早收斂和局部優(yōu)化,在改進的慣性權重上引入一種柯西變異的擾動算子,最后與PSO算法及ACO算法做對比,結果表明該IPSO算法的全局搜索能力較強,成功避免了粒子過早收斂,資源浪費等問題。
關鍵詞:多Agent聯(lián)盟;PSO算法;ACO算法;IPSO算法
中圖分類號:TP18? ? ? ?文獻標識碼:A 文章編號:2096-4706(2019)09-0005-03
0? 引? 言
Agents聯(lián)盟形成是分布式人工智能中一種重要的協(xié)作方法。一個聯(lián)盟可以定義為一組Agents為完成一個共同任務或達到一個共同目標而進行的合作,Agent加入一個聯(lián)盟可加強聯(lián)盟完成任務的能力和最大化個人收益,甚至在有些情況下,聯(lián)盟形成是完成任務唯一或最有效的方法[1-3]。目前,在MAS中,聯(lián)盟形成的基本理論是N人合作對策理論,主要考慮如何在聯(lián)盟內Agent間劃分聯(lián)盟的額外效用,使Agent在決策時愿意形成全局最優(yōu)聯(lián)盟。
3.3? 粒子適應值的計算
如果該粒子當前適應值等于個體歷史最優(yōu)值或粒子當前適應值等于全局粒子最優(yōu)值,則隨機選擇粒子位置;如果該粒子當前適應值優(yōu)于個體歷史最優(yōu)值或粒子當前適應值優(yōu)于全局粒子最優(yōu),則將歷史最優(yōu)值或全局最優(yōu)值替換當前粒子的位置。
3.4? 算法步驟
Step1 初始化種群,設粒子數(shù)為n、學習因子c1,c2及慣性權重ω初始值、最大迭代次數(shù)的值,并隨機產(chǎn)生n個初始位置及初始速度;
Step2 根據(jù)適應度函數(shù)對每個粒子位置進行更新;
Step3 根據(jù)式(6)對ω的值進行更新,同時由式(3)和式(4)計算下一刻粒子位置和速度,并運用式(8)和式(9)對粒子位置進行擾動,同時記下每個粒子的當前值;
Step4 若粒子當前值優(yōu)于個體歷史最優(yōu)值,則將當前個體最優(yōu)值替換個體歷史最優(yōu)值,否則不替換;
Step5 粒子當前值優(yōu)于群體歷史最優(yōu)值,則將當前個體最優(yōu)值替換群體歷史最優(yōu)值,否則不替換;
Step6 若達到最高迭代次數(shù)或找到最優(yōu)解,則輸出搜索結果,否則轉入Step2。
4? 實驗環(huán)境設置及結果分析
為驗證算法性能,文中以ACO[3]、PSO[4]及本文的IPSO三種算法進行實驗設計。隨機選取任務量分別為4、12和30,具體算法參數(shù)假設如下:粒子數(shù)n=30,c1=c2=2,ω初始值為0.9。每個Agent能力向量為,Ai完成任務需要的聯(lián)盟代價值為 ;任務需求能力向量為,完成任務需要的聯(lián)盟值為。
4.1? 實驗環(huán)境設置
(1)當時,因Agent能力不足,聯(lián)盟失敗,故任務均不能被完成;
(2)當時,符合聯(lián)盟生成條件,圖1、圖2、圖3給出了在Agents數(shù)量不斷增加的情況下,前500次迭代在1000次實驗中聯(lián)盟值的變化情況。
4.2? 實驗分析
從圖1、圖2、圖3可看出,不同算法下,在隨機選取的三種任務下IPS0算法比PSO算法曲線坡度更陡且位于PSO算法及ACO算法曲線的上方,這意味著IPSO算法在解決Agents聯(lián)盟生成問題時,最終收斂的聯(lián)盟值更有效,從坡度上可看出收斂速度也更快。
同時表1也給出了當?shù)螖?shù)為500時三種算法在完成不同任務時找到最優(yōu)聯(lián)盟值時程序運行時間之比,具體如表1所示,從表中可得出IPSO算法運行時間相比于其它兩種算法時間都是最少的。
綜上可知,本文提出的IPSO算法無論在聯(lián)盟值大小、收斂性還是運行時間上均優(yōu)于PSO算法和ACO算法。
5? 結? 論
多Agent聯(lián)盟是MAS中的一個緊迫性問題,基于此,文中提出一種改進的IPSO算法來解決該問題,同時為克服粒子過早收斂和局部優(yōu)化,在改進的慣性權重基礎上引入一種柯西變異的擾動算子,經(jīng)驗證該IPSO算法的全局搜索能力較高,有效地避免了粒子過早收斂,資源浪費等問題。
參考文獻:
[1] 黃麗麗.基于多Agent的智能生存空間異構協(xié)作研究 [D].北京:北京交通大學,2014.
[2] 李天文.面向多Agent系統(tǒng)的博弈聯(lián)盟形成與分配問題研究 [D].昆明:云南大學,2013.
[3] 吳慶洪,張穎,馬宗民.蟻群算法綜述 [J].微計算機信息,2011,27(3):1-2+5.
[4] 蔣建國,夏娜,齊美彬,等.一種基于蟻群算法的多任務聯(lián)盟串行生成算法 [J].電子學報,2005(12):2178-2182.
[5] Kennedy J ,Eberhart R C . A discrete binary version of the particle swarm algorithm [C]// 1997 IEEE International Conference on Systems,Man,and Cybernetics. Computational Cybernetics and Simulation. IEEE,1997.
[6] 傅小利,顧紅兵,陳國呈,等.基于柯西變異粒子群算法的永磁同步電機參數(shù)辨識 [J].電工技術學報,2014,29(5):127-131.
作者簡介:陳寧霞(1986-),女,漢族,河南周口人,專任教師,助教,Web前端在線課程開發(fā)者之一,碩士,研究方向:分布式人工智能、軟件開發(fā)等。