中科大《優(yōu)化設計》課程大作業(yè)之約束優(yōu)化實驗報告(共8頁)

上傳人:2127513****773577... 文檔編號:43358390 上傳時間:2021-12-01 格式:DOCX 頁數(shù):8 大?。?8.91KB
收藏 版權申訴 舉報 下載
中科大《優(yōu)化設計》課程大作業(yè)之約束優(yōu)化實驗報告(共8頁)_第1頁
第1頁 / 共8頁
中科大《優(yōu)化設計》課程大作業(yè)之約束優(yōu)化實驗報告(共8頁)_第2頁
第2頁 / 共8頁
中科大《優(yōu)化設計》課程大作業(yè)之約束優(yōu)化實驗報告(共8頁)_第3頁
第3頁 / 共8頁

下載文檔到電腦,查找使用更方便

20 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《中科大《優(yōu)化設計》課程大作業(yè)之約束優(yōu)化實驗報告(共8頁)》由會員分享,可在線閱讀,更多相關《中科大《優(yōu)化設計》課程大作業(yè)之約束優(yōu)化實驗報告(共8頁)(8頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、精選優(yōu)質文檔-----傾情為你奉上 約束優(yōu)化設計實驗報告 力學系 型號:聯(lián)想y470 CPU:i5-2450M 內(nèi)存:2GB 系統(tǒng):win7-64位 求解問題: 如上是以下三個約束方法共同需要求解的問題,預估結果:在(x1,x2,x3)≈(23,13,12)點附近存在極值。其中,每個方法對應的初始條件分別為: (1)隨機試驗法 設計變量范圍: 隨機試驗點數(shù):N=1000 精度:eps=0.001 (2)隨機方向法 初始點:x0=(25,15,5) 初始步長:a0=0.5 精度:eps=0.001 (3)線性規(guī)劃單純形法 初始復合形:X=[20 2

2、3 25 30;10 13 15 20;10 9 5 0] 頂點個數(shù):n=4 精度:eps=0.01 計算結果: 約束方法 所需時間 迭代次數(shù) 極值點 極值 隨機試驗法 28.23 0 (22.63,12.63,12.06) 3445.50 隨機方向法 0.65 49 (22.67,12.67,11.98) 3441.99 線性規(guī)劃單純形法 6.23 5 (22.59,12.59,12.12) 3445.61 程序說明:主程序為main,運行main后按提示即可得到相應約束方法的求解結果。 程序如下: 1、 主程序 clear;

3、global kk; kk=0; disp(1.隨機試驗法); disp(2.隨機方向法); disp(3.線性規(guī)劃單純形法); while 1 n0=input(請輸入上面所想選擇約束優(yōu)化方法的編號(1、2、3):); if n0==1||n0==2||n0==3 break; end disp(此次輸入無效.); end disp( ); disp(~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~); [xx,yy]=fmins(n0); fprintf(迭代次數(shù)為: %8.0f\n, kk

4、); disp(所求極值點的坐標向量為:); fprintf( %16.5f\n, xx); fprintf(所求函數(shù)的極值為: %16.5f\n, yy); 2、 調(diào)用函數(shù) function [xx,yy]=fmins(n0) if n0==1 tic;[xx,yy]=suijishiyan();toc; elseif n0==2 tic;[xx,yy]=suijifangxiang();toc; elseif n0==3 tic;[xx,yy]=danchunxing();toc; end end

5、 3、 單純形法 function [xx,yy]=danchunxing() clear; global kk; syms a b c; f=-a*b*c; g=[-a+2*b+2*c>=0;a+2*b+2*c<=72;abs(a-b-10)<=1e-3;b>=10;b<=20]; X=[20 23 25 30;10 13 15 20;10 9 5 0]; alpha=1.3; sita=0.5; gama=1; beta=0.7; var=[a;b;c]; eps=0.001; N=size(X); n=N(2); FX=zeros(1,n); whi

6、le 1 for i=1:n FX(i)=double(subs(f,var,X(:,i))); end [XS,IX]=sort(FX); Xsorted=X(:,IX); px=sum(Xsorted(:,1:(n-1)),2)/(n-1); Fpx=double(subs(f,var,px)); SumF=0; for i=1:n SumF=SumF+(FX(IX(i))-Fpx)^2; end SumF=sqrt(SumF/(n-

7、1)); if SumF<=eps xx=Xsorted(:,1); break; else bcon_1=1; cof_alpha=alpha; while bcon_1 x2=px+cof_alpha*(px-Xsorted(:,n)); gx2=double(subs(g,var,x2)); if min(gx2)>0 bcon_1=0;

8、 else cof_alpha=0.7*(cof_alpha); end end fx2=double(subs(f,var,x2)); if fx2

9、r,x3)); fx3=double(subs(f,var,x3)); if min(gx3)>0 bcon_2=0; if fx3

10、else bcon_2=0; count=3; end end if count==1 Xsorted(:,n)=x3; X=Xsorted; continue else Xsorted(:,n)=x2; X=X

11、sorted; continue end else if fx2

12、 cof_beta=beta; bcon_3=1; while bcon_3<4 x4=Xsorted(:,n)+cof_beta*(px-Xsorted(:,n)); gx4=double(subs(g,var,x4)); if min(gx4)>0 bcon_3=5;

13、 else cof_beta=cof_beta/2; bcon_3=bcon_3+1; end end if min(gx4)>0 fx4=double(subs(f,var,x4)); FNnew=double(subs(f,var,

14、Xsorted(:,n))); if fx4

15、 Xsorted(:,i)=x0+sita*(Xsorted(:,i)-x0); end end else x0=Xsorted(:,1); for i=1:n Xsorted(:,i)=x0+sita*(Xsorted(:,i)-x0);

16、 X=Xsorted; continue end end else x0=Xsorted(:,1); for i=1:n Xsorted(:,i)=x0+sita*(Xsorted(:,i)-x0);

17、 X=Xsorted; continue end end end end end X=Xsorted; kk=kk+1; end yy=-double(subs(f,var,xx)); end 4、 隨機方向法 function [xx,yy]=suijifangxiang() clear; global kk; x0 = [25;15;5]; n

18、= 3; eps = 0.001; a0 = 0.5; k = 10000; f0 = -x0(1)*x0(2)*x0(3); fl = -x0(1)*x0(2)*x0(3); i = 1; while 1 a = a0; r = -1 + 2*rand(n,k); for j = 1:k ss=(sum(abs(r(:,j))))^0.5; e = r(:,j)./ss; x = x0 + a*e; if (-x(1)+2*x(2)+2*x(3)>=0)&& (x(1)+2*

19、x(2)+2*x(3)<=72)&&(abs(x(1)-x(2)-10)<=1e-3)&&(x(2)>=10)&&(x(2)<=20) f =-x(1)*x(2)*x(3); if f < fl fl = f; d = e; xl = x; end end end while 1 x = xl; a = 1.3*a; x =

20、x+a*d; if (-x(1)+2*x(2)+2*x(3)>=0)&& (x(1)+2*x(2)+2*x(3)<=72)&&(abs(x(1)-x(2)-10)<=1e-3)&&(x(2)>=10)&&(x(2)<=20) f =-x(1)*x(2)*x(3); if f < fl fl = f; else break end else break

21、 end kk=kk+1; end for b = 1:50 x = x - a*d; a = 0.7*a; x = x + a*d; if (-x(1)+2*x(2)+2*x(3)>=0)&& (x(1)+2*x(2)+2*x(3)<=72)&&(abs(x(1)-x(2)-10)<=1e-3)&&(x(2)>=10)&&(x(2)<=20) f =-x(1)*x(2)*x(3); if f < fl

22、 fl = f; break end end end epsl = abs((f0-fl)/f0); if epsl < eps&&x(1)<23 break else i = i+1; x0 = x; f0 = f; fl = f; end kk=kk+1; end xx = x; yy =-f; end 5、 隨機試驗法 functi

23、on [xx,yy]=suijishiyan() format long N=1000; x1=[];x2=[];x3=[]; zmax=-inf; x10=unifrnd(20,30,N,1); x20=unifrnd(10,20,N,1); x30=unifrnd(-10,16,N,1); for i=1:N for j=1:N for k=1:N if (-x10(i)+2*x20(j)+2*x30(k)>=0)&& (x10(i)+2*x20(j)+2*x30(k)<=72)&&(abs(x10(i)-x20(j)-10)<=1e-3) z=x10(i)*x20(j)*x30(k); if zmax

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關資源

更多
正為您匹配相似的精品文檔
關于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!