改進(jìn)鮑威爾法_第1頁(yè)
改進(jìn)鮑威爾法_第2頁(yè)
改進(jìn)鮑威爾法_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、自定義函數(shù):%求最優(yōu)步長(zhǎng)的函數(shù), x1x2 為起始坐標(biāo), d1d2 為搜索方向 function m=y(x1,x2,d1,d2,alpha)m=(x1+alpha*d1F2+2*(x2+alpha*d2)A2-4*(x1+alpha*d1) -2*(x1+alpha*d1)*(x2+alpha*d2);%原函數(shù)function y=f(x1,x2)y=x1A2+2*x2A2-4*x1-2*x1*x2;%確定搜索區(qū)間function a,b=section(x1,x2,d1,d2)x11=x1;x22=x2;d11=d1;d22=d2;h0=1;h=h0;alpha1=0; y1=y(x11,

2、x22,d11,d22,alpha1);alpha2=h; y2=y(x11,x22,d11,d22,alpha2);t=0;if y2>y1h=-h;alpha3=alpha1;y3=y1;t=1;endwhile(1)if t=1alpha1=alpha2;y1=y2; alpha2=alpha3;y2=y3;else t=1;endalpha3=alpha2+h; y3=y(x11,x22,d11,d22,alpha3);if y3<y2h=2*h;elsebreak;end endif alpha1>alpha3 tem=alpha1;alpha1=alpha3;al

3、pha3=tem;a=alpha1;b=alpha3;elsea=alpha1;b=alpha3;end%黃金分割法確定最優(yōu)步長(zhǎng)alphafunction alpha=goldencut(x1,x2,d1,d2,A,B) x11=x1;x22=x2;d11=d1;d22=d2;a=A;b=B;e=0.001;%精度為 0.001 r=0.618;alpha1=b-r*(b-a); y1=y(x11,x22,d11,d22,alpha1);alpha2=a+r*(b-a); y2=y(x11,x22,d11,d22,alpha2);while(1)if y1>=y2 a=alpha1; a

4、lpha1=alpha2;y1=y2;alpha2=a+r*(b-a); y2=y(x11,x22,d11,d22,alpha2);else b=alpha2;alpha2=alpha1; y2=y1;alpha1=b-r*(b-a); y1=y(x11,x22,d11,d22,alpha1);endif abs(b-a)<e & abs(y2-y1)<e break;end end alpha=0.5*(a+b); % 求得最優(yōu)步長(zhǎng)主程序%powell+黃金分割法主程序k=0;n=2;x=1;1;%初始點(diǎn)ff(1)=f(x(1),x(2);e=0.001;%精度為 0.0

5、01d=1;0;0;1;while (1)x00=x(1);x(2);for i=1:n a(i),b(i)=section(x(2*i-1),x(2*i),d(2*i-1),d(2*i); alpha(i)=goldencut(x(2*i-1),x(2*i),d(2*i-1),d(2*i),a(i),b(i); x(2*i+1)=x(2*i-1)+alpha(i)*d(2*i-1);x(2*i+2)=x(2*i)+alpha(i)*d(2*i); ff(i+1)=f(x(2*i+1),x(2*i+2);endfor i=1:n Delta(i)=ff(i)-ff(i+1); end delt

6、a=max(Delta);for i=1:nif delta=Delta(i)m=i;break;endendd(2*n+1)=x(2*n+1)-x(1);d(2*n+2)=x(2*n+2)-x(2); x(2*n+3)=2*x(2*n+1)-x(1); x(2*n+4)=2*x(2*n+2)-x(2);ff(n+2)=f(x(2*n+3),x(2*n+4);f0=ff(1); f2=ff(n+1); f3=ff(n+2);k=k+1;R(k,:)=k,x',d',ff;If f3<f0 & (f0-2*f2+f3)*(f0-f2-delta)A2<0.5*

7、delta*(f0-f3)A2 a(n+1),b(n+1)=section(x(2*n+1),x(2*n+2),d(2*n+1),d(2*n+2); alpha(n+1)=goldencut(x(2*n+1),x(2*n+2),d(2*n+1),d(2*n+2),a(n+1),b(n+1); x(1)=x(2*n+1)+alpha(n+1)*d(2*n+1); x(2)=x(2*n+2)+alpha(n+1)*d(2*n+2);for i=m:nd(2*i-1)=d(2*i+1);d(2*i)=d(2*i+2);endelseif f2<f3x(1)=x(2*n+1);x(2)=x(2*n+2);elsex(1)=x(2*n+3);x(2)=x(2*n+4);endendRR(k,:)=alpha;ff(1)=f(x(1),x(2);if (x(2* n+1)-x00(1)F2+(x(2* n+2)-x00(2)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論