基于PSO的尋優(yōu)計(jì)算_第1頁
基于PSO的尋優(yōu)計(jì)算_第2頁
基于PSO的尋優(yōu)計(jì)算_第3頁
基于PSO的尋優(yōu)計(jì)算_第4頁
基于PSO的尋優(yōu)計(jì)算_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用第第13章章 基于基于PSO的尋優(yōu)計(jì)算的尋優(yōu)計(jì)算 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.1 基本粒子群算法基本粒子群算法 粒子群算法(PSO)是一種基于群體的隨機(jī)優(yōu)化技術(shù)。與其它基于群體的進(jìn)化算法相比,它們均初始化為一組隨機(jī)解,通過迭代搜尋最優(yōu)解。不同的是:進(jìn)化計(jì)算遵循適者生存原則,而PSO模擬社會。將每個可能產(chǎn)生的解表述為群中的一個微粒,每個微粒都具有自己的位置向量和速度向量,以及一個由目標(biāo)函數(shù)決定的適應(yīng)度。所有微粒在搜索空間中以一定速度飛行,通過追隨當(dāng)前搜索到的最優(yōu)值來尋找全局

2、最優(yōu)值。 PSO模擬社會采用了以下三條簡單規(guī)則對粒子個體進(jìn)行操作:飛離最近的個體,以避免碰撞。飛向目標(biāo)。飛向群體的中心。這是粒子群算法的基本概念之一。 粒子群算法其基本思想是受許多鳥類的群體行為進(jìn)行建模與仿真研究結(jié)果的啟發(fā)。 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.1 基本粒子群算法基本粒子群算法 Frank Heppner的鳥類模型在反映群體行為方面與其它類模型有許多相同之處。由于鳥類用簡單的規(guī)則確定自己的飛行方向與飛行速度(實(shí)質(zhì)上,每只鳥都試圖停在鳥群中而又不相互碰撞),當(dāng)一只鳥飛離鳥群而飛向棲息地時,將導(dǎo)致它周圍的其他鳥也飛向棲息地。這些鳥一旦發(fā)現(xiàn)棲

3、息地,將降落在此,驅(qū)使更多的鳥落在棲息地,直到整個鳥群都落在棲息地。 粒子群算法與其它的進(jìn)化類算法類似,也采用“群體”和“進(jìn)化”的概念,同樣也根據(jù)個體的適應(yīng)值大小進(jìn)行操作。不同的是,PSO中沒有進(jìn)化算子,而是將每個個體看作搜索空間中沒有重量和體積的微粒,并在搜索空間中以一定的速度飛行,該飛行速度由個體飛行經(jīng)驗(yàn)和群體的飛行經(jīng)驗(yàn)進(jìn)行動態(tài)調(diào)整。 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.1 基本粒子群算法基本粒子群算法PSO算法步驟如下:Step1:初始化一個規(guī)模為 m 的粒子群,設(shè)定初始位置和速度。Step2:計(jì)算每個粒子的適應(yīng)值。初始化過程如下: (1)設(shè)定群

4、體規(guī)模m; (2)對任意的 i,s ,在 內(nèi)服從均勻分布產(chǎn)生 ; (3)對任意的 i,s ,在 內(nèi)服從均勻分布產(chǎn)生 ; (4)對任意的 i ,設(shè) 。maxmax,xxisxmaxmax,vvisviiyxStep3:對每個粒子將其適應(yīng)值和其經(jīng)歷過的最好位置 的適應(yīng)值進(jìn)行比較,若較好,則將其作為當(dāng)前的最好位置。Step4:對每個粒子將其適應(yīng)值和全局經(jīng)歷過的最好位置 的適應(yīng)值進(jìn)行比較,若較好,則將其作為當(dāng)前的全局最好位置。Step5:分別對粒子的速度和位置進(jìn)行更新。Step6:如果滿足終止條件,則輸出解;否則返回Step2。ispgsp 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案

5、例分析與應(yīng)用13.3 粒子群算法函數(shù)極值求解粒子群算法函數(shù)極值求解PSO算法流程如圖13-1所示。 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.1 一維函數(shù)全局最優(yōu)一維函數(shù)全局最優(yōu) sin/cosf xxxxx采用fmincon進(jìn)行有約束的非線性最小化求解 % fmincon:求多個變量的目標(biāo)函數(shù)的最小值 % fmincon(FUN,X,A,B,Aeq,Beq,LB,UB,NONLCON,options,varargin) x(i) = fmincon(f,x0(i),lb,ub,. optimset(Algorithm,SQP,Disp,none);01

6、2345678910-40-30-20-10010203040 xSolution using globalSearch.x sin(x) + x/cos(xxStarting at 0 x sin(x) + x cos(2 xxStarting at 10510-2002040 xStarting at 30510-2002040 xStarting at 6x sin(x) + x cos(2 xxStarting at 80510-2002040 xStarting at 10搜索起始點(diǎn)位置全局搜索最小值

7、結(jié)果 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.2 經(jīng)典測試函數(shù)經(jīng)典測試函數(shù)Griewank函數(shù)圖形 Rastrigin函數(shù)圖形 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.2 經(jīng)典測試函數(shù)經(jīng)典測試函數(shù)Schaffer函數(shù) Ackley函數(shù)圖形 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.2 經(jīng)典測試函數(shù)經(jīng)典測試函數(shù)Rosenbrock函數(shù) 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.3 無約束函數(shù)極值尋優(yōu)無約束函數(shù)極值尋優(yōu)待求解極值函數(shù)圖形

8、 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.3 無約束函數(shù)極值尋優(yōu)無約束函數(shù)極值尋優(yōu) %速度更新 V(j,:) = V(j,:) + c1*rand*(gbest(j,:) - pop(j,:) + c2*rand*(zbest - pop(j,:); V(j,find(V(j,:)Vmax)=Vmax; V(j,find(V(j,:)popmax)=popmax; pop(j,find(pop(j,:)0.8 k=ceil(2*rand); pop(j,k)=rand; end%適應(yīng)度值 fitness(j)=fun(pop(j,:); 第十三章第十三

9、章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.3 無約束函數(shù)極值尋優(yōu)無約束函數(shù)極值尋優(yōu) %個體最優(yōu)更新 if fitness(j) fitnessgbest(j) gbest(j,:) = pop(j,:); fitnessgbest(j) = fitness(j); end %群體最優(yōu)更新 if fitness(j) fitnesszbest zbest = pop(j,:); fitnesszbest = fitness(j); end待尋優(yōu)的目標(biāo)函數(shù)如下:function y = fun(x)y = - 2 0 * e x p ( - 0 . 2 * s q r t

10、 ( ( x ( 1 ) 2 + x ( 2 ) 2 ) / 2 ) ) -exp(cos(2*pi*x(1)+cos(2*pi*x(2)/2)+20+2.71289; %Ackley函數(shù) 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.3 無約束函數(shù)極值尋優(yōu)無約束函數(shù)極值尋優(yōu)020406080100120140160180200-0.200.20.40.60.811.21.41.61.8適 應(yīng) 度 曲 線 終 止 代 數(shù) 200進(jìn) 化 代 數(shù)適應(yīng)度適應(yīng)度曲線 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.4 有約束函數(shù)極值

11、尋優(yōu)有約束函數(shù)極值尋優(yōu)選取如下所示的目標(biāo)函數(shù)(最小值):123546xxx對于該目標(biāo)函數(shù),相應(yīng)的約束為:20 xxx32142x4x2x332130 x2x321321x0,x0,x0待尋優(yōu)的目標(biāo)函數(shù)為:function y = fun2(x) y=-5*x(1)-4*x(2)-6*x(3);end 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.4 有約束函數(shù)極值尋優(yōu)有約束函數(shù)極值尋優(yōu)020406080100120140160180200-80-75-70-65-60-55-50-45-40-35-30適 應(yīng) 度 曲 線 終 止 代 數(shù) 200進(jìn) 化 代 數(shù)

12、適應(yīng)度適應(yīng)度曲線 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.5 有約束函數(shù)極值有約束函數(shù)極值A(chǔ)PSO尋優(yōu)尋優(yōu)目標(biāo)函數(shù): 21 12234214f xa x xa x xx約束條件:2300084000kx123000 2x x12222132221312432 26xxxkxxxx x22212222132136004xxxx24350400030000 xx 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.5 有約束函數(shù)極值有約束函數(shù)極值A(chǔ)PSO尋優(yōu)尋優(yōu)目標(biāo)函數(shù): 21 12234214f xa x xa x xx約束

13、條件:3430.252.1952x x 2663436.1423 101 0.0282600036x xx140.125xx21123421145.0axa x xx11.10471a 20.04811a 10.12.0 x20.110.0 x30.110.0 x40.12.0 x 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.5 有約束函數(shù)極值有約束函數(shù)極值A(chǔ)PSO尋優(yōu)尋優(yōu)Lb=0.1 0.1 0.1 0.1;%下邊界Ub=2.0 10.0 10.0 2.0; %上邊界% 默認(rèn)參數(shù)para=25 150 0.95; %粒子數(shù),迭代次數(shù),gama參數(shù) % A

14、PSO 優(yōu)化求解函數(shù)gbest,fmin=pso_mincon(cost,constraint,Lb,Ub,para); % 輸出結(jié)果Bestsolution=gbest % 全局最優(yōu)個體fmin % 目標(biāo)函數(shù)function f=cost(x)f=1.10471*x(1)2*x(2)+0.04811*x(3)*x(4)*(14.0+x(2); 第十三章第十三章MATLAB優(yōu)化算法案例分析與應(yīng)用優(yōu)化算法案例分析與應(yīng)用13.3.5 有約束函數(shù)極值有約束函數(shù)極值A(chǔ)PSO尋優(yōu)尋優(yōu)% 非線性約束function g,geq=constraint(x)% 不等式限制條件Q=6000*(14+x(2)/2

15、);D=sqrt(x(2)2/4+(x(1)+x(3)2/4);J=2*(x(1)*x(2)*sqrt(2)*(x(2)2/12+(x(1)+x(3)2/4);alpha=6000/(sqrt(2)*x(1)*x(2); %beta=Q*D/J; %tau=sqrt(alpha2+2*alpha*beta*x(2)/(2*D)+beta2); %sigma=504000/(x(4)*x(3)2); %delta=65856000/(30*106*x(4)*x(3)3); %F=4.013*(30*106)/196*sqrt(x(3)2*x(4)6/36)*(1-x(3)*sqrt(30/48)/28);g(1)=tau-13600;g(2)=sigma-

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論