-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
粒子群算法的基本思想(粒子群算法的基本思想和原理)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于粒子群算法的基本思想的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、粒子群優(yōu)化算法和多模態(tài)優(yōu)化算法有什么區(qū)別
摘 要:,粒子群算法據(jù)自己的速度來決定搜索過程,只有最優(yōu)的粒子把信息給予其他的粒子,整個搜索更新過程是跟隨當(dāng)前最優(yōu)解的過程,所有的粒子還可以更快的收斂于最優(yōu)解。由于微粒群算法簡單,容易實(shí)現(xiàn),與其它求解約束優(yōu)化問題的方法相比較,具有一定的優(yōu)勢。實(shí)驗(yàn)結(jié)果表明,對于無約束的非線性求解,粒子群算法表現(xiàn)出較好的收斂性和健壯性。
關(guān)鍵詞:粒子群算法;函數(shù)優(yōu)化;極值尋優(yōu)
0 引言
非線性方程的求根問題是多年來數(shù)學(xué)家努力解決的問題之一。長期以來,人們已找出多種用于解決方程求根的方法,例如牛頓法、弦割法、拋物線法等。然而,很多傳統(tǒng)的方法僅能運(yùn)用于相應(yīng)的小的問題集,推廣性相對較差。對于一個現(xiàn)實(shí)世界中的優(yōu)化問題,必須嘗試很多不同的方法,甚至要發(fā)明相應(yīng)的新的方法來解決,這顯然是不現(xiàn)實(shí)的。我們需要另外的方法來克服這樣的困難。
粒子群算法是一種現(xiàn)代啟發(fā)式算法,具有推廣性強(qiáng)、魯棒性高等特點(diǎn)[1]。該算法具有群體智能、內(nèi)在并行性、迭代格式簡單、可快速收斂到最優(yōu)解所在區(qū)域等優(yōu)點(diǎn)[2]。本文采用粒子群算法,對函數(shù)的極值進(jìn)行尋優(yōu)計(jì)算,實(shí)現(xiàn)了對函數(shù)的極值求解。
1 粒子群算法
1.1 基本原理
粒子群算法(PSO)是一種基于群體的隨機(jī)優(yōu)化技術(shù),它的思想來源于對鳥群捕食行為的研究與模擬。粒子群算法與其它基于群體的進(jìn)化算法相類似,選用“群體”和“進(jìn)化”的概念,按照個體的適應(yīng)度值進(jìn)行操作,也是一種基于迭代的尋優(yōu)技術(shù)。區(qū)別在于,粒子群算法中沒有交叉變異等進(jìn)化算子,而是將每個個體看作搜索空間中的微粒,每個微粒沒有重量和體積,但都有自己的位置向量、速度向量和適應(yīng)度值。所有微粒以一定的速度飛行于搜索空間中,其中的飛行速度是由個體飛行經(jīng)驗(yàn)和群體的飛行經(jīng)驗(yàn)動態(tài)調(diào)整,通過追蹤當(dāng)前搜索到的最優(yōu)值來尋找全局最優(yōu)值。
1.2 參數(shù)選擇
粒子群算法需要修改的參數(shù)很少,但對參數(shù)的選擇卻十分敏感。El-Gallad A, El-Hawary M, Sallam A, Kalas A[3]主要對算法中的種群規(guī)模、迭代次數(shù)和粒子速度的選擇方法進(jìn)行了詳細(xì)分析,利用統(tǒng)計(jì)方法對約束優(yōu)化問題的求解論證了這 3 個參數(shù)對算法性能的影響,并給出了具有一定通用性的3 個參數(shù)選擇原則[4]。
種群規(guī)模:通常根據(jù)待優(yōu)化問題的復(fù)雜程度確定。
最大速度:決定粒子在一次迭代中的最大移動距離,通常設(shè)定為不超過粒子的范圍寬度。
加速常數(shù):加速常數(shù)c1和c2通常是由經(jīng)驗(yàn)值決定的,它代表粒子向pbest和gbest靠攏的加速項(xiàng)的權(quán)重。一般取值為:c1=c2=2。
中止條件:達(dá)到最大迭代次數(shù)或得到最小誤差要求,通常要由具體問題確定。
慣性權(quán)重:慣性權(quán)重能夠針對待優(yōu)化問題調(diào)整算法的局部和全局搜索能力。當(dāng)該值較大時(shí)有利于全局搜索,較小時(shí)有利于局部搜索。所以通常在算法開始時(shí)設(shè)置較大的慣性權(quán)重,以便擴(kuò)大搜索范圍、加快收斂。而隨著迭代次數(shù)的增加逐漸減小慣性權(quán)重的值,使其進(jìn)行精確搜索,避免跳過最優(yōu)解。
1.3 算法步驟
PSO算法步驟如下:
Step1:初始化一個規(guī)模為 m 的粒子群,設(shè)定初始位置和速度。
初始化過程如下:
(1)設(shè)定群體規(guī)模m;
(2)對任意的i,s,在[-xmax, xmax]內(nèi)均勻分布,產(chǎn)生初始位置xis;
(3)對任意的i,s,在[-vmax, vmax]內(nèi)均勻分布,產(chǎn)生速度vis;
(4)對任意的i,設(shè)yi=xi,保存?zhèn)€體。
Step2:計(jì)算每個粒子的適應(yīng)度值。
Step3:對每個粒子的適應(yīng)度值和得到過的最好位置pis的適應(yīng)度值進(jìn)行比較,若相對較好,則將其作為當(dāng)前的最好位置。
Step4:對每個粒子的適應(yīng)度值和全局得到過的最好位置pgs的適應(yīng)度值進(jìn)行比較,若相對較好,則將其作為當(dāng)前的全局最好位置。
Step5:分別對粒子的所在位置和速度進(jìn)行更新。
Step6:如果滿足終止條件,則輸出最優(yōu)解;否則,返回Step2。
1.4 粒子群算法函數(shù)極值求解
粒子群算法優(yōu)化是計(jì)算機(jī)智能領(lǐng)域,除蟻群算法外的另一種基于群體智能的優(yōu)化算法。粒子群算法是一種群體智能的煙花計(jì)算技術(shù)。與遺傳算法相比,粒子群算法沒有遺傳算法的選擇(Selection)、交叉(Crossover)、變異(Mutation)等操作,而是通過粒子在解空間追隨最優(yōu)的粒子進(jìn)行搜索。
粒子群算法流程如圖所示:
粒子群為由n個粒子組成的種群X = (X1,X2,X3,…Xn).
第i個粒子表示一個D維向量Xi = (X1,X2,X3,…XD)T.
第i個粒子的速度為Vi = (Vi1,Vi2,Vi3,…ViD)T.
個體極值為Pi = (Pi1,Pi2,Pi3,…PiD)T.
全局極值為Pg = (Pg1,Pg2,Pg3,…PgD)T.
速度更新為,式中,c1和c2為其兩個學(xué)習(xí)因子的參數(shù)值;r1和r2為其兩個隨機(jī)值。
位置更新為.
2 粒子群算法應(yīng)用舉例
2.1 實(shí)驗(yàn)問題
這是一個無約束函數(shù)的極值尋優(yōu),對于Ackley函數(shù),
.
其中c1=20,e=2. 71289。
2.2 實(shí)驗(yàn)步驟
對于Ackley函數(shù)圖形,選取一個凹峰進(jìn)行分析,程序運(yùn)行結(jié)果如圖所示。
圖1 Ackley函數(shù)圖形
可以看出,選取區(qū)間內(nèi)的Ackley函數(shù)圖形只有一個極小值點(diǎn)。因此,對于該段函數(shù)進(jìn)行尋優(yōu),不會陷入局部最小。采用粒子群算法對該函數(shù)進(jìn)行極值尋優(yōu)。
首先,進(jìn)行初始化粒子群,編寫的MATLAB代碼如下:
% 初始化種群
for i=1:sizepop
x1 = popmin1 (popmax1-popmin1)*rand;
% 產(chǎn)生隨機(jī)個體
x2 = popmin2 (popmax2-popmin2)*rand;
pop(i,1) = x1; % 保存產(chǎn)生的隨機(jī)個體
pop(i,2) = x2;
fitness(i) = fun([x1,x2]); % 適應(yīng)度值
V(i,1) = 0; % 初始化粒子速度
V(i,2) = 0;
end
程序運(yùn)行后所產(chǎn)生的個體值為:
表1 函數(shù)個體值
然后,根據(jù)待尋優(yōu)的目標(biāo)函數(shù),計(jì)算適應(yīng)度值。待尋優(yōu)的目標(biāo)函數(shù)為:
function y = fun(x)
y=-20*exp(-0.2*sqrt((x(1)^2x(2)^2)/2))-exp((cos(2*pi*x(1)) cos(2*pi*x(2)))/2) 20 2.71289;
根據(jù)每一組個體,通過目標(biāo)函數(shù),得到的適應(yīng)度值為:
表2 函數(shù)適應(yīng)度值
搜索個體最優(yōu)極值,即搜索最小的適應(yīng)度值,我們可利用MATLAB繪圖將所有個體的適應(yīng)度值繪成plot圖查看相對最小值。
圖3 函數(shù)適應(yīng)度plot圖
從圖中可看出,當(dāng)個體=20時(shí),得到相對最小值,在程序中,將其保存下來。
之后進(jìn)行迭代尋優(yōu),直到滿足終止條件。
最后,得到的最優(yōu)值為:
圖4 MATLAB運(yùn)行得到結(jié)果
迭代后得到的運(yùn)行結(jié)果圖如下:
圖5 迭代曲線圖
2.3 實(shí)驗(yàn)結(jié)果
通過圖5中可看出,該函數(shù)的尋優(yōu)是收斂的,最優(yōu)個體和實(shí)際情況較吻合。因此,采用粒子群算法進(jìn)行函數(shù)極值尋優(yōu),快速、準(zhǔn)確且魯棒性較好。
3 結(jié)論
本文闡述了粒子群算法求解最化問題的過程,實(shí)驗(yàn)結(jié)果表明了該算法對于無約束問題的可行性。與其它的進(jìn)化算法相比,粒子群算法容易理解、編碼簡單、容易實(shí)現(xiàn)。但是參數(shù)的設(shè)置對于該算法的性能卻有很大的影響,例如控制收斂,避免早熟等。在未來的工作中,將努力于將其它計(jì)算智能算法或其它優(yōu)化技術(shù)應(yīng)用于粒子群算法中,以進(jìn)一步提高粒子群算法的性能。
二、粒子群算法及其應(yīng)用
既然是數(shù)學(xué)系的,可以考慮從粒子群算法的收斂性證明和分布性檢驗(yàn)方面著手,偏理論性的證明,這方面比較欠缺,有點(diǎn)類似于高樓地基不穩(wěn),大家卻在上面繼續(xù)壘
可以參考遺傳算法的模式定理或隱性并行性定理等,如果能夠提出關(guān)于粒子群算法的定理,應(yīng)該足夠具有挑戰(zhàn)性了
還有就是對粒子群算法進(jìn)行算法融合或改進(jìn),然后針對改進(jìn)的算法進(jìn)行測試,檢驗(yàn)其在函數(shù)優(yōu)化等方面的效能。
三、粒子群算法在任務(wù)調(diào)度中的應(yīng)用
畢業(yè)論文(設(shè)計(jì))題目: 粒子群算法及其在任務(wù)調(diào)度中的應(yīng)用
題目類型 理論研究 題目來源 教師科研題
畢業(yè)論文(設(shè)計(jì))時(shí)間從 2008年2月24日至 2008年6月14日
1畢業(yè)論文(設(shè)計(jì)內(nèi)容要求):
多處理機(jī)調(diào)度問題是指有n臺相同的處理機(jī)和m個獨(dú)立的作業(yè), 處理機(jī)以互不相關(guān)的方式處理作業(yè),其中,任何作業(yè)可以在任何一臺處理機(jī)上運(yùn)行,但未完工前不允許中斷作業(yè),作業(yè)也不能拆分成更小的作業(yè),使n個作業(yè)在盡可能短的時(shí)間內(nèi)由這m臺相同的處理機(jī)完成。粒子群算法是模擬鳥群覓食的過程,采用速度- 位置模型進(jìn)行搜索。每個優(yōu)化問題的解都是搜索空間的一只鳥,稱為粒子,粒子群中的每個粒子通過追隨個體最優(yōu)粒子和全局最優(yōu)粒子進(jìn)行搜索.
本課題要求學(xué)生查找資料,學(xué)習(xí)、理解、掌握遺傳算法的基本思想,總結(jié)遺傳算法的改進(jìn)方法,選定一種粒子群算法應(yīng)用到多處理機(jī)調(diào)度問題并編程實(shí)現(xiàn)該算法,對該算法與首次最優(yōu)匹配法在調(diào)度長度上進(jìn)行實(shí)驗(yàn)比較 。
通過本次畢業(yè)設(shè)計(jì),學(xué)生懂得如何查找資料并對資料進(jìn)行分析總結(jié),培養(yǎng)科研與獨(dú)立分析問題的能力,掌握一門程序開發(fā)語言,培養(yǎng)程序開發(fā)技巧和能力。
四、粒子群算法及應(yīng)用的介紹
粒子群算法是一種新的模仿鳥類群體行為的智能優(yōu)化算法,現(xiàn)已成為進(jìn)化算法的一個新的重要分支。全書共分為八章,分別論述了基本粒子群算法和改進(jìn)粒子群算法的原理,并且詳細(xì)介紹了粒子群算法在函數(shù)優(yōu)化、圖像壓縮和基因聚類中的應(yīng)用,最后給出了粒子群算法的應(yīng)用綜述和相關(guān)程序代碼。
以上就是關(guān)于粒子群算法的基本思想相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。
推薦閱讀:
物質(zhì)的微觀粒子模型(物質(zhì)的微觀粒子模型教案)
揚(yáng)州校園景觀設(shè)計(jì)案例分析(揚(yáng)州校園景觀設(shè)計(jì)案例分析題)