下载此文档

基于matlab的坐标轮换法程序.doc


文档分类:IT计算机 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
functiony=ff(x1,x2)%y=10*(x1+x2-5)^2+(x1-x2)^2;y=x1^2+x2^2-x1*x2-10*x1-4*x2+60;functionalpha=goldmethod2(x01,x02,d,h0)%输入分割比gamagama=;%确定搜索区间[a,b][a,b]=search2(x01,x02,d,h0);%计算a1,a2和函数值y1,y2,确定最优步长alphaa1=b-gama*(b-a);y1=ff(x01+d(1)*a1,x02+d(2)*a1);a2=a+gama*(b-a);y2=ff(x01+d(1)*a2,x02+d(2)*a2);forn=1:100ify1>=y2x1(n)=a1;x2(n)=a2;yp1(n)=y1;yp2(n)=y2;a=a1;a1=a2;y1=y2;a2=a+gama*(b-a);y2=ff(x01+d(1)*a2,x02+d(2)*a2);elsex1(n)=a1;x2(n)=a2;yp1(n)=y1;yp2(n)=y2;b=a2;a2=a1;y2=y1;a1=b-gama*(b-a);y1=ff(x01+d(1)*a1,x02+d(2)*a1);endaa(n)=(a+b)/2;%输出极值点y(n)=ff(x01+d(1)*aa(n),x02+d(2)*aa(n));%输出极值点函数值e(n)=abs(b-a);alpha=(a+b)/2;ifabs(b-a)<1e-5break;endendclear;h0=;x0=[0,0];e=[1,0;0,1];xp=[0,0];fork=1:20kfori=1:2ix01=x0(1);x02=x0(2);d=e(i,:);alpha=goldmethod2(x01,x02,d,h0);%确定最优步长alphaalphax1=x0+alpha*d;x0=x1;xpendxn=x1;ifabs(xn-xp)<1e-1break;endxp=xn;endclear;%给定初始值h0=;x0=[0,0];e=[1,0;0,1];n=2;fork=1:20k%k代表第轮计算%第1到n次搜索计算fori=1:1%第1次搜索ix01=x0(1);x02=x0(2);d=e(i,:);F0=ff(x0(1),x0(2));alpha=goldmethod2(x01,x02,d,h0);%确定最优步长alphaalphax(i,:)=x0+alpha*d;F(i)=ff(x(i,1),x(i,2));Delta(i)=F(i)-F0;endfori=2:n%第2到n次搜索ix01=x(i-1,1);x02=x(i-1,2);d=e(i,:);alpha=goldmethod2(x01,x02,d,h0);%确定最优步长alphaalphax(i,:)=x(i-1,:)+alpha*d;F(i)=ff(x(i,1),x(i,2));Delta(i)=F(i-1)-F(i);end%111%精度是否满足要求2ifabs(x(n,:)-x0)<1e-3break;end%222%第n次结束参数计算d=x(n,:)-x0;x(n+1,:)=2*x(n,:)-x0;[Delta_m,j]=max(Delta);F2=F(n);F

基于matlab的坐标轮换法程序 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数5
  • 收藏数0 收藏
  • 顶次数0
  • 上传人wwlgqnh
  • 文件大小20 KB
  • 时间2020-08-07