HOME 首頁(yè)
SERVICE 服務(wù)產(chǎn)品
XINMEITI 新媒體代運(yùn)營(yíng)
CASE 服務(wù)案例
NEWS 熱點(diǎn)資訊
ABOUT 關(guān)于我們
CONTACT 聯(lián)系我們
創(chuàng)意嶺
讓品牌有溫度、有情感
專注品牌策劃15年

    粒子群算法的基本思想(粒子群算法的基本思想和原理)

    發(fā)布時(shí)間:2023-04-08 14:02:37     稿源: 創(chuàng)意嶺    閱讀: 81        

    大家好!今天讓創(chuàng)意嶺的小編來(lái)大家介紹下關(guān)于粒子群算法的基本思想的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。

    開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等

    只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁(yè)版、PC客戶端

    官網(wǎng):https://ai.de1919.com。

    創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請(qǐng)撥打電話175-8598-2043,或添加微信:1454722008

    本文目錄:

    粒子群算法的基本思想(粒子群算法的基本思想和原理)

    一、粒子群優(yōu)化算法和多模態(tài)優(yōu)化算法有什么區(qū)別

    摘 要:,粒子群算法據(jù)自己的速度來(lái)決定搜索過(guò)程,只有最優(yōu)的粒子把信息給予其他的粒子,整個(gè)搜索更新過(guò)程是跟隨當(dāng)前最優(yōu)解的過(guò)程,所有的粒子還可以更快的收斂于最優(yōu)解。由于微粒群算法簡(jiǎn)單,容易實(shí)現(xiàn),與其它求解約束優(yōu)化問(wèn)題的方法相比較,具有一定的優(yōu)勢(shì)。實(shí)驗(yàn)結(jié)果表明,對(duì)于無(wú)約束的非線性求解,粒子群算法表現(xiàn)出較好的收斂性和健壯性。

    關(guān)鍵詞:粒子群算法;函數(shù)優(yōu)化;極值尋優(yōu)

    0 引言

    非線性方程的求根問(wèn)題是多年來(lái)數(shù)學(xué)家努力解決的問(wèn)題之一。長(zhǎng)期以來(lái),人們已找出多種用于解決方程求根的方法,例如牛頓法、弦割法、拋物線法等。然而,很多傳統(tǒng)的方法僅能運(yùn)用于相應(yīng)的小的問(wèn)題集,推廣性相對(duì)較差。對(duì)于一個(gè)現(xiàn)實(shí)世界中的優(yōu)化問(wèn)題,必須嘗試很多不同的方法,甚至要發(fā)明相應(yīng)的新的方法來(lái)解決,這顯然是不現(xiàn)實(shí)的。我們需要另外的方法來(lái)克服這樣的困難。

    粒子群算法是一種現(xiàn)代啟發(fā)式算法,具有推廣性強(qiáng)、魯棒性高等特點(diǎn)[1]。該算法具有群體智能、內(nèi)在并行性、迭代格式簡(jiǎn)單、可快速收斂到最優(yōu)解所在區(qū)域等優(yōu)點(diǎn)[2]。本文采用粒子群算法,對(duì)函數(shù)的極值進(jìn)行尋優(yōu)計(jì)算,實(shí)現(xiàn)了對(duì)函數(shù)的極值求解。

    1 粒子群算法

    1.1 基本原理

    粒子群算法(PSO)是一種基于群體的隨機(jī)優(yōu)化技術(shù),它的思想來(lái)源于對(duì)鳥群捕食行為的研究與模擬。粒子群算法與其它基于群體的進(jìn)化算法相類似,選用“群體”和“進(jìn)化”的概念,按照個(gè)體的適應(yīng)度值進(jìn)行操作,也是一種基于迭代的尋優(yōu)技術(shù)。區(qū)別在于,粒子群算法中沒有交叉變異等進(jìn)化算子,而是將每個(gè)個(gè)體看作搜索空間中的微粒,每個(gè)微粒沒有重量和體積,但都有自己的位置向量、速度向量和適應(yīng)度值。所有微粒以一定的速度飛行于搜索空間中,其中的飛行速度是由個(gè)體飛行經(jīng)驗(yàn)和群體的飛行經(jīng)驗(yàn)動(dòng)態(tài)調(diào)整,通過(guò)追蹤當(dāng)前搜索到的最優(yōu)值來(lái)尋找全局最優(yōu)值。

    1.2 參數(shù)選擇

    粒子群算法需要修改的參數(shù)很少,但對(duì)參數(shù)的選擇卻十分敏感。El-Gallad A, El-Hawary M, Sallam A, Kalas A[3]主要對(duì)算法中的種群規(guī)模、迭代次數(shù)和粒子速度的選擇方法進(jìn)行了詳細(xì)分析,利用統(tǒng)計(jì)方法對(duì)約束優(yōu)化問(wèn)題的求解論證了這 3 個(gè)參數(shù)對(duì)算法性能的影響,并給出了具有一定通用性的3 個(gè)參數(shù)選擇原則[4]。

    種群規(guī)模:通常根據(jù)待優(yōu)化問(wèn)題的復(fù)雜程度確定。

    最大速度:決定粒子在一次迭代中的最大移動(dòng)距離,通常設(shè)定為不超過(guò)粒子的范圍寬度。

    加速常數(shù):加速常數(shù)c1和c2通常是由經(jīng)驗(yàn)值決定的,它代表粒子向pbest和gbest靠攏的加速項(xiàng)的權(quán)重。一般取值為:c1=c2=2。

    中止條件:達(dá)到最大迭代次數(shù)或得到最小誤差要求,通常要由具體問(wèn)題確定。

    慣性權(quán)重:慣性權(quán)重能夠針對(duì)待優(yōu)化問(wèn)題調(diào)整算法的局部和全局搜索能力。當(dāng)該值較大時(shí)有利于全局搜索,較小時(shí)有利于局部搜索。所以通常在算法開始時(shí)設(shè)置較大的慣性權(quán)重,以便擴(kuò)大搜索范圍、加快收斂。而隨著迭代次數(shù)的增加逐漸減小慣性權(quán)重的值,使其進(jìn)行精確搜索,避免跳過(guò)最優(yōu)解。

    1.3 算法步驟

    PSO算法步驟如下:

    Step1:初始化一個(gè)規(guī)模為 m 的粒子群,設(shè)定初始位置和速度。

    初始化過(guò)程如下:

    (1)設(shè)定群體規(guī)模m;

    (2)對(duì)任意的i,s,在[-xmax, xmax]內(nèi)均勻分布,產(chǎn)生初始位置xis;

    (3)對(duì)任意的i,s,在[-vmax, vmax]內(nèi)均勻分布,產(chǎn)生速度vis;

    (4)對(duì)任意的i,設(shè)yi=xi,保存?zhèn)€體。

    Step2:計(jì)算每個(gè)粒子的適應(yīng)度值。

    Step3:對(duì)每個(gè)粒子的適應(yīng)度值和得到過(guò)的最好位置pis的適應(yīng)度值進(jìn)行比較,若相對(duì)較好,則將其作為當(dāng)前的最好位置。

    Step4:對(duì)每個(gè)粒子的適應(yīng)度值和全局得到過(guò)的最好位置pgs的適應(yīng)度值進(jìn)行比較,若相對(duì)較好,則將其作為當(dāng)前的全局最好位置。

    Step5:分別對(duì)粒子的所在位置和速度進(jìn)行更新。

    Step6:如果滿足終止條件,則輸出最優(yōu)解;否則,返回Step2。

    1.4 粒子群算法函數(shù)極值求解

    粒子群算法優(yōu)化是計(jì)算機(jī)智能領(lǐng)域,除蟻群算法外的另一種基于群體智能的優(yōu)化算法。粒子群算法是一種群體智能的煙花計(jì)算技術(shù)。與遺傳算法相比,粒子群算法沒有遺傳算法的選擇(Selection)、交叉(Crossover)、變異(Mutation)等操作,而是通過(guò)粒子在解空間追隨最優(yōu)的粒子進(jìn)行搜索。

    粒子群算法流程如圖所示:

    粒子群為由n個(gè)粒子組成的種群X = (X1,X2,X3,…Xn).

    第i個(gè)粒子表示一個(gè)D維向量Xi = (X1,X2,X3,…XD)T.

    第i個(gè)粒子的速度為Vi = (Vi1,Vi2,Vi3,…ViD)T.

    個(gè)體極值為Pi = (Pi1,Pi2,Pi3,…PiD)T.

    全局極值為Pg = (Pg1,Pg2,Pg3,…PgD)T.

    速度更新為,式中,c1和c2為其兩個(gè)學(xué)習(xí)因子的參數(shù)值;r1和r2為其兩個(gè)隨機(jī)值。

    位置更新為.

    2 粒子群算法應(yīng)用舉例

    2.1 實(shí)驗(yàn)問(wèn)題

    這是一個(gè)無(wú)約束函數(shù)的極值尋優(yōu),對(duì)于Ackley函數(shù),

    .

    其中c1=20,e=2. 71289。

    2.2 實(shí)驗(yàn)步驟

    對(duì)于Ackley函數(shù)圖形,選取一個(gè)凹峰進(jìn)行分析,程序運(yùn)行結(jié)果如圖所示。

    圖1 Ackley函數(shù)圖形

    可以看出,選取區(qū)間內(nèi)的Ackley函數(shù)圖形只有一個(gè)極小值點(diǎn)。因此,對(duì)于該段函數(shù)進(jìn)行尋優(yōu),不會(huì)陷入局部最小。采用粒子群算法對(duì)該函數(shù)進(jìn)行極值尋優(yōu)。

    首先,進(jìn)行初始化粒子群,編寫的MATLAB代碼如下:

    % 初始化種群

    for i=1:sizepop

    x1 = popmin1 (popmax1-popmin1)*rand;

    % 產(chǎn)生隨機(jī)個(gè)體

    x2 = popmin2 (popmax2-popmin2)*rand;

    pop(i,1) = x1; % 保存產(chǎn)生的隨機(jī)個(gè)體

    pop(i,2) = x2;

    fitness(i) = fun([x1,x2]); % 適應(yīng)度值

    V(i,1) = 0; % 初始化粒子速度

    V(i,2) = 0;

    end

    程序運(yùn)行后所產(chǎn)生的個(gè)體值為:

    表1 函數(shù)個(gè)體值

    然后,根據(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ù)每一組個(gè)體,通過(guò)目標(biāo)函數(shù),得到的適應(yīng)度值為:

    表2 函數(shù)適應(yīng)度值

    搜索個(gè)體最優(yōu)極值,即搜索最小的適應(yīng)度值,我們可利用MATLAB繪圖將所有個(gè)體的適應(yīng)度值繪成plot圖查看相對(duì)最小值。

    圖3 函數(shù)適應(yīng)度plot圖

    從圖中可看出,當(dāng)個(gè)體=20時(shí),得到相對(duì)最小值,在程序中,將其保存下來(lái)。

    之后進(jìn)行迭代尋優(yōu),直到滿足終止條件。

    最后,得到的最優(yōu)值為:

    圖4 MATLAB運(yùn)行得到結(jié)果

    迭代后得到的運(yùn)行結(jié)果圖如下:

    圖5 迭代曲線圖

    2.3 實(shí)驗(yàn)結(jié)果

    通過(guò)圖5中可看出,該函數(shù)的尋優(yōu)是收斂的,最優(yōu)個(gè)體和實(shí)際情況較吻合。因此,采用粒子群算法進(jìn)行函數(shù)極值尋優(yōu),快速、準(zhǔn)確且魯棒性較好。

    3 結(jié)論

    本文闡述了粒子群算法求解最化問(wèn)題的過(guò)程,實(shí)驗(yàn)結(jié)果表明了該算法對(duì)于無(wú)約束問(wèn)題的可行性。與其它的進(jìn)化算法相比,粒子群算法容易理解、編碼簡(jiǎn)單、容易實(shí)現(xiàn)。但是參數(shù)的設(shè)置對(duì)于該算法的性能卻有很大的影響,例如控制收斂,避免早熟等。在未來(lái)的工作中,將努力于將其它計(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)性了

    還有就是對(duì)粒子群算法進(jìn)行算法融合或改進(jìn),然后針對(duì)改進(jìn)的算法進(jìn)行測(cè)試,檢驗(yàn)其在函數(shù)優(yōu)化等方面的效能。

    三、粒子群算法在任務(wù)調(diào)度中的應(yīng)用

    畢業(yè)論文(設(shè)計(jì))題目: 粒子群算法及其在任務(wù)調(diào)度中的應(yīng)用

    題目類型 理論研究 題目來(lái)源 教師科研題

    畢業(yè)論文(設(shè)計(jì))時(shí)間從 2008年2月24日至 2008年6月14日

    1畢業(yè)論文(設(shè)計(jì)內(nèi)容要求):

    多處理機(jī)調(diào)度問(wèn)題是指有n臺(tái)相同的處理機(jī)和m個(gè)獨(dú)立的作業(yè), 處理機(jī)以互不相關(guān)的方式處理作業(yè),其中,任何作業(yè)可以在任何一臺(tái)處理機(jī)上運(yùn)行,但未完工前不允許中斷作業(yè),作業(yè)也不能拆分成更小的作業(yè),使n個(gè)作業(yè)在盡可能短的時(shí)間內(nèi)由這m臺(tái)相同的處理機(jī)完成。粒子群算法是模擬鳥群覓食的過(guò)程,采用速度- 位置模型進(jìn)行搜索。每個(gè)優(yōu)化問(wèn)題的解都是搜索空間的一只鳥,稱為粒子,粒子群中的每個(gè)粒子通過(guò)追隨個(gè)體最優(yōu)粒子和全局最優(yōu)粒子進(jìn)行搜索.

    本課題要求學(xué)生查找資料,學(xué)習(xí)、理解、掌握遺傳算法的基本思想,總結(jié)遺傳算法的改進(jìn)方法,選定一種粒子群算法應(yīng)用到多處理機(jī)調(diào)度問(wèn)題并編程實(shí)現(xiàn)該算法,對(duì)該算法與首次最優(yōu)匹配法在調(diào)度長(zhǎng)度上進(jìn)行實(shí)驗(yàn)比較 。

    通過(guò)本次畢業(yè)設(shè)計(jì),學(xué)生懂得如何查找資料并對(duì)資料進(jìn)行分析總結(jié),培養(yǎng)科研與獨(dú)立分析問(wèn)題的能力,掌握一門程序開發(fā)語(yǔ)言,培養(yǎng)程序開發(fā)技巧和能力。

    四、粒子群算法及應(yīng)用的介紹

    粒子群算法是一種新的模仿鳥類群體行為的智能優(yōu)化算法,現(xiàn)已成為進(jìn)化算法的一個(gè)新的重要分支。全書共分為八章,分別論述了基本粒子群算法和改進(jìn)粒子群算法的原理,并且詳細(xì)介紹了粒子群算法在函數(shù)優(yōu)化、圖像壓縮和基因聚類中的應(yīng)用,最后給出了粒子群算法的應(yīng)用綜述和相關(guān)程序代碼。

    粒子群算法的基本思想(粒子群算法的基本思想和原理)

    以上就是關(guān)于粒子群算法的基本思想相關(guān)問(wèn)題的回答。希望能幫到你,如有更多相關(guān)問(wèn)題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。


    推薦閱讀:

    光子的粒子符號(hào)(光子的粒子符號(hào)怎么寫)

    物質(zhì)的微觀粒子模型(物質(zhì)的微觀粒子模型教案)

    粒子群算法的基本思想(粒子群算法的基本思想和原理)

    揚(yáng)州校園景觀設(shè)計(jì)案例分析(揚(yáng)州校園景觀設(shè)計(jì)案例分析題)

    女播排行榜(2020女主播排行)