




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、粒子群算法工具箱應(yīng)用簡介1。引言。引言 粒子群算法(粒子群算法(PSO算法)算法) 定義:粒子群算法,又稱粒子群優(yōu)化算法(Partical Swarm Optimization),縮寫為 PSO, 是近年來發(fā)展起來的一種新的進(jìn)化算法(Evolutionary Algorithm - EA),由Eberhart 博士和kennedy 博士于1995年提出,其源于對鳥群捕食的行為研究。2。算法思想。算法思想 PSO模擬鳥群的捕食行為。模擬鳥群的捕食行為。 設(shè)想這樣一個場景:一群鳥在隨機(jī)搜索食物,在這個區(qū)域里設(shè)想這樣一個場景:一群鳥在隨機(jī)搜索食物,在這個區(qū)域里只有一塊食物,所有的鳥都不知道食物在那里
2、,但是它們只有一塊食物,所有的鳥都不知道食物在那里,但是它們知道當(dāng)前的位置離食物還有多遠(yuǎn),那么找到食物的最優(yōu)策知道當(dāng)前的位置離食物還有多遠(yuǎn),那么找到食物的最優(yōu)策略是什么呢?略是什么呢? 最簡單有效的就是搜尋目前離食物最近的鳥的周圍區(qū)域。最簡單有效的就是搜尋目前離食物最近的鳥的周圍區(qū)域。都向這片區(qū)域靠攏。都向這片區(qū)域靠攏。 3。抽象。抽象 PSO中,將問題的搜索空間類比于鳥類的飛行空間,將中,將問題的搜索空間類比于鳥類的飛行空間,將每只鳥抽象為一個無質(zhì)量無體積的微粒,用以表征優(yōu)化問題每只鳥抽象為一個無質(zhì)量無體積的微粒,用以表征優(yōu)化問題的一個候選解,我們稱之為的一個候選解,我們稱之為“粒子粒子”,
3、優(yōu)化所需要尋找的,優(yōu)化所需要尋找的最優(yōu)最優(yōu)解解則等同于要尋找的食物。則等同于要尋找的食物。所有的粒子都有一個由被優(yōu)化的函數(shù)決定的所有的粒子都有一個由被優(yōu)化的函數(shù)決定的適應(yīng)值適應(yīng)值(fitness value),每個粒子還有一個,每個粒子還有一個速度速度決定他們飛翔的方向和距離決定他們飛翔的方向和距離,然后粒子們就追隨當(dāng)前的最優(yōu)粒子在解空間中搜索。,然后粒子們就追隨當(dāng)前的最優(yōu)粒子在解空間中搜索。 3。抽象。抽象 PSO初始化為一群隨機(jī)粒子初始化為一群隨機(jī)粒子(隨機(jī)解、一群鳥隨機(jī)解、一群鳥),然后通,然后通過迭代找到最優(yōu)解。在每一次迭代中,粒子(鳥)通過跟過迭代找到最優(yōu)解。在每一次迭代中,粒子(鳥
4、)通過跟蹤兩個蹤兩個“極值極值”來更新自己的位置。一個就是粒子本身所找來更新自己的位置。一個就是粒子本身所找到的最優(yōu)解,這個解叫做個體極值到的最優(yōu)解,這個解叫做個體極值pBest,另一個極值是,另一個極值是整個種群目前找到的最優(yōu)解,這個極值是全局極值整個種群目前找到的最優(yōu)解,這個極值是全局極值gBest。(。(gBest是是pBest中最好值)中最好值)3。算法介紹。算法介紹 在找到這兩個最優(yōu)值時,粒子根據(jù)如下的公式來更新自己在找到這兩個最優(yōu)值時,粒子根據(jù)如下的公式來更新自己的速度和位置:的速度和位置: 其中其中 ,V 是粒子的速度,是粒子的速度,Present 是粒子的當(dāng)前位置是粒子的當(dāng)前位
5、置 ,pBest 與與 gBest見前面定義。見前面定義。rand ( )是是(0 ,1)之間的隨機(jī)數(shù)之間的隨機(jī)數(shù) ,c1和和c2被稱作學(xué)習(xí)因子。通常被稱作學(xué)習(xí)因子。通常 ,c1 = c2 = 2。w 是加權(quán)系是加權(quán)系數(shù)(慣性權(quán)重),取值在數(shù)(慣性權(quán)重),取值在 0. 1到到0. 9之間。粒子通過不斷學(xué)之間。粒子通過不斷學(xué)習(xí)更新習(xí)更新 ,最終飛至解空間中最優(yōu)解所在的位置,最終飛至解空間中最優(yōu)解所在的位置 ,搜索過,搜索過程結(jié)束。最后輸出的程結(jié)束。最后輸出的 gBest 就是全局最優(yōu)解。在更新過程就是全局最優(yōu)解。在更新過程中中 ,粒子每一維的最大速率限被限制為粒子每一維的最大速率限被限制為 Vm
6、ax ,如果某一維如果某一維更新后的速度超過設(shè)定的更新后的速度超過設(shè)定的Vmax,那么這一維的速度就被,那么這一維的速度就被限定為限定為Vmax。3。算法介紹。算法介紹 將粒子延伸到N維空間,粒子i在N維空間里的位置表示為一個矢量,每個粒子的飛行速度也表示為一個矢量。p 粒子數(shù)(鳥的個數(shù))粒子數(shù)(鳥的個數(shù)): 一般取一般取 140. 其實對于大部分的問其實對于大部分的問題題10個粒子已經(jīng)足夠可以取得好的結(jié)果個粒子已經(jīng)足夠可以取得好的結(jié)果;p 粒子的長度(維度)粒子的長度(維度): 這是由優(yōu)化問題決定這是由優(yōu)化問題決定, 就是問題解就是問題解的長度(決策變量個數(shù))的長度(決策變量個數(shù));p 粒子
7、的范圍粒子的范圍: 由優(yōu)化問題決定,每一維可以設(shè)定不同的由優(yōu)化問題決定,每一維可以設(shè)定不同的范圍;范圍;p Vmax: 最大速度,決定粒子在一個循環(huán)中最大的移動距最大速度,決定粒子在一個循環(huán)中最大的移動距離,離, 通常設(shè)定為粒子的范圍寬度通常設(shè)定為粒子的范圍寬度,例如,粒子例如,粒子 (x1, x2, x3) ,x1 屬于屬于 -10, 10, 那么那么 Vmax 的大小就是的大小就是 20。p 學(xué)習(xí)因子學(xué)習(xí)因子: 使粒子具有自我總結(jié)和向群體中優(yōu)秀個體學(xué)習(xí)使粒子具有自我總結(jié)和向群體中優(yōu)秀個體學(xué)習(xí)的能力,從而向群體內(nèi)或鄰域內(nèi)最優(yōu)點靠近,的能力,從而向群體內(nèi)或鄰域內(nèi)最優(yōu)點靠近,c1 和和 c2 通
8、常通常等于等于2,并且范圍在,并且范圍在 0 和和 4 之間。之間。p 中止條件中止條件: 最大循環(huán)數(shù)以及最小錯誤要求。最大循環(huán)數(shù)以及最小錯誤要求。p 慣性權(quán)重慣性權(quán)重w :決定了對粒子當(dāng)前速度繼承多少,合適的選決定了對粒子當(dāng)前速度繼承多少,合適的選擇可以使粒子具有均衡的探索能力和開發(fā)能力,慣性權(quán)重的擇可以使粒子具有均衡的探索能力和開發(fā)能力,慣性權(quán)重的取法有常數(shù)法、線性遞減法、自適應(yīng)法等。取法有常數(shù)法、線性遞減法、自適應(yīng)法等。3。算法介紹。算法介紹 例:對于問題 f(x) = x12 + x22+x32 求解,粒子可以直接編碼為 (x1, x2, x3),而適應(yīng)度函數(shù)就是f(x),接著我們就可
9、以利用前面的過程去尋優(yōu),尋優(yōu)過程是一個迭代過程, 中止條件一般為設(shè)置為達(dá)到最大循環(huán)數(shù)或者最小錯誤要求。3。算法介紹。算法介紹 PSO框架圖框架圖粒子群優(yōu)化算法粒子群優(yōu)化算法Matlab工具箱簡介工具箱簡介 Matlab粒子群工具箱(粒子群工具箱(PSOt)提供了非常先進(jìn)的粒子群)提供了非常先進(jìn)的粒子群優(yōu)化算法優(yōu)化算法 ,可指定慣性因子的起始值和中止值,可指定慣性因子的起始值和中止值 ,可約定各,可約定各維變量的取值范圍維變量的取值范圍 、粒子在遇到邊界時是否反彈等各種參、粒子在遇到邊界時是否反彈等各種參數(shù)數(shù) 。除此以外。除此以外 ,粒子群工具箱既可以在用戶約定的范圍內(nèi),粒子群工具箱既可以在用戶
10、約定的范圍內(nèi)自動隨機(jī)生成指定群體規(guī)模的初始粒子群自動隨機(jī)生成指定群體規(guī)模的初始粒子群 ,也可人工輸入,也可人工輸入小于群體規(guī)模的任意數(shù)目的初始粒子小于群體規(guī)模的任意數(shù)目的初始粒子 ,具備非常強的靈活,具備非常強的靈活性性 。粒子群優(yōu)化算法粒子群優(yōu)化算法Matlab工具箱簡介工具箱簡介粒子群優(yōu)化算法粒子群優(yōu)化算法Matlab工具箱簡介工具箱簡介PSOt具有非常強的靈活性,在實際計算中,用戶只要根據(jù)具有非常強的靈活性,在實際計算中,用戶只要根據(jù)需求編寫好需求編寫好目標(biāo)函數(shù)目標(biāo)函數(shù),并設(shè)置好函數(shù)自變量的,并設(shè)置好函數(shù)自變量的取值范圍取值范圍和和每步迭代允許的每步迭代允許的最大變化量最大變化量,PSO
11、t即可自動進(jìn)行優(yōu)化計算即可自動進(jìn)行優(yōu)化計算。該該工具箱的使用方法主要分為為一下幾個個步驟驟:(1)在MATLAB的命令窗口中點擊擊“File”,“Set Path”,設(shè)設(shè)置工具箱的路徑徑。(2)編寫編寫待優(yōu)優(yōu)化的函數(shù)數(shù)(test_func),保存為為同名m文件粒子群優(yōu)化算法粒子群優(yōu)化算法Matlab工具箱簡介工具箱簡介( 3 ) 調(diào) 用 粒 子 群 算 法 的 核 心 模 塊 :) 調(diào) 用 粒 子 群 算 法 的 核 心 模 塊 :pso_Trelea_vectorized.m,其調(diào)用格式為:,其調(diào)用格式為:pso_Trelea_vectorized(functname, D, mv, Var
12、Range , minmax, PSOparams, plotfcn, PSOseedValue)pso_Trelea_vectorized(functname, D, mv, VarRange, minmax, PSOparams, plotfcn, PSOseedValue)l Functname:目標(biāo)函數(shù)名:目標(biāo)函數(shù)名l D:待優(yōu)化問題的維數(shù);:待優(yōu)化問題的維數(shù);l mv:粒子飛行的最大速度;:粒子飛行的最大速度;l VarRange:參數(shù)變化范圍矩陣;:參數(shù)變化范圍矩陣;l Minmax:尋優(yōu)類型,取:尋優(yōu)類型,取0代表求目標(biāo)函數(shù)最小值,取代表求目標(biāo)函數(shù)最小值,取1代表求代表求目目 標(biāo)
13、函數(shù)最大值);標(biāo)函數(shù)最大值);l PSOparams:參數(shù)矩陣,包括最大迭代次數(shù)、粒子群規(guī)模、:參數(shù)矩陣,包括最大迭代次數(shù)、粒子群規(guī)模、慣性因子、學(xué)習(xí)因子、終止迭代條件等;慣性因子、學(xué)習(xí)因子、終止迭代條件等;l Plotfcn:尋優(yōu)過程中用于展示尋優(yōu)過程的畫圖函數(shù);:尋優(yōu)過程中用于展示尋優(yōu)過程的畫圖函數(shù);l PSOseedValue:可允許用戶輸入任意多組初始粒子。:可允許用戶輸入任意多組初始粒子。求非線性函數(shù)極大值求非線性函數(shù)極大值工具箱應(yīng)用實例工具箱應(yīng)用實例cos2cos222222sin,2.71289xyxyf(x y)exy工具箱應(yīng)用實例工具箱應(yīng)用實例(1)編寫待優(yōu)化函數(shù)程序)編寫待
14、優(yōu)化函數(shù)程序function z = test_func(in)nn=size(in); %輸入的是矩陣輸入的是矩陣 ,即算法中隨機(jī)產(chǎn)生一組,即算法中隨機(jī)產(chǎn)生一組x和和y ,按,按x(nn, 1), y(nn, 1)排列排列x=in(:,1);y=in(:,2);nx=nn(1);for i=1:nx temp=sin(sqrt(x(i)2+y(i)2)/sqrt(x(i)2+y(i)2)+exp(cos(2*pi*x(i)+cos(2*pi*y(i)/2)-2.71289;z(i,:)=temp;end工具箱應(yīng)用實例工具箱應(yīng)用實例(2)編寫調(diào)用函數(shù))編寫調(diào)用函數(shù)x_range=-2,2;y_range=-2,2;range=x_range; y_range;Max_V=0.2* (
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年教師資格證教育知識與能力(中學(xué))強化訓(xùn)練試卷:教育政策與教育改革
- 2025年注冊建筑師考試建筑設(shè)計知識歷年真題解析與案例分析試卷
- 2025年考研數(shù)學(xué)(二)高等數(shù)學(xué)應(yīng)用題實戰(zhàn)強化模擬試卷
- 2025年學(xué)分制管理新規(guī)定:如何應(yīng)對學(xué)分制下的教學(xué)挑戰(zhàn)
- 2025年中考語文文言文閱讀(議論類)專項訓(xùn)練卷-文言文閱讀理解與解題
- 處分條例培訓(xùn)綱要
- 2025年日語能力考N閱讀真題易錯題型解析(2015-2024附長難句)
- 肺部腫瘤保養(yǎng)方案
- C++程序設(shè)計基本概念試題及答案
- 安徽省合肥市廬江縣2019-2020學(xué)年高一下學(xué)期期末考試試題(生物)
- 養(yǎng)老院安全常識培訓(xùn)
- 裝飾裝修三級安全教育培訓(xùn)考試
- 梁山伯與祝英臺小提琴譜樂譜
- 安徽省池州市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名明細(xì)
- 施工噪聲監(jiān)測記錄表附表
- 鏈斗技術(shù)規(guī)范書
- 船舶應(yīng)急部署表及船員應(yīng)變卡
- 爾雅《尊重學(xué)術(shù)道德遵守學(xué)術(shù)規(guī)范》期末考試答案0001
- 生產(chǎn)建設(shè)項目水土保持方案編制大綱詳細(xì)版WORD版
- 關(guān)聯(lián)交易模板詳解
- 政治經(jīng)濟(jì)學(xué)計算題附答案
評論
0/150
提交評論