优化设计
Hijack·
这个作者很懒,什么都没留下…
展开
-
matlab鲍威尔法(Powell)
matlab鲍威尔法(Powell)%改进鲍威尔法clcclear allsyms x1 x2 a1 a2 a3 b1 b2 b3f = x1*x1+2*x2*x2-4*x1-2*x1*x2;X=[x1;x2];X0=[1 1]'; %给定初始点Theta_error=0.001;e1=[1 0]';e2=[0 1]';FX0=subs(f,X,X0);n=2;k=0;k1=0;k2=0;d1=e1;%初始搜搜方向d2=e2;i=1;%求a1,a2,X1.原创 2021-12-10 14:13:24 · 2736 阅读 · 0 评论 -
matlab最速下降法学习笔记
%最速下降法clear allclcsyms x1 x2 a bTheta_error=0.001;x0=[3;2];X = [x1;x2];f = x1^2+25*x2^2;df = gradient(f,X);dfx = subs(df,X,x0); %求函数在x0时的梯度Fx0 = subs(f,X,x0);X1 = x0-a.*dfx;h = X1(1)^2+25*X1(2)^2; %构造函数h=f(x)dh = grad...原创 2021-11-03 10:50:46 · 335 阅读 · 0 评论 -
matlab二次插值法学习笔记
%二次插值法求最小值clear allclcf=@(x)sin(x);a1=4;a2=4.5;a3=5;Theta_error=0.000000001;y1=feval(f,a1);y2=feval(f,a2);y3=feval(f,a3);h=10;c1=(y3-y1)/(a3-a1);c2=((y2-y1)/(a2-a1)-c1)/(a2-a3);ap=0.5*(a1+a3-c1/c2);yp=feval(f,ap);X=[a1^2 a1 1; a2^2 a..原创 2021-11-03 10:48:45 · 1228 阅读 · 0 评论 -
matlab黄金分割法
%黄金分割法clear allclcf=@(x)4*x^3-5*x+10;a=0.3;b=1.5;Theta_error=0.0001;x1=a+0.382*(b-a);x2=a+0.618*(b-a);y1=feval(f,x1);y2=feval(f,x2);stepNum=0;k=stepNum;Da=[];Db=[];Dx1=[];Dx2=[];Dy1=[];Dy2=[];while abs(b-a)>Theta_error stepNu..原创 2021-11-03 10:49:12 · 963 阅读 · 0 评论 -
matlab外推法求区间
%外推法求区间clcclearf=@(x)4*x^2-5*x+10;x1=0;h0=0.1;h=h0;y1=feval(f,x1);x2=x1+h;y2=feval(f,x2);if(y1>=y2) h=2*h; x3=x2+h; y3=feval(f,x3);else h=-h; x3=x1; y3=y1; x1=x2;y1=y2; x2=x3;y2=y3; h=2*h; x3=x2+h; ...原创 2021-11-03 10:45:11 · 1919 阅读 · 0 评论