matlab 最速下降法求解clc;clear;disp('最速下降法')syms x1 x2 lam;x=[x1 x2];t=0; X0=[1;1]; y=(x1^2+x2-11)^2+(x1+x2^2-7)^2;e=0.01;for n=1:10 a=subs(diff(y,x1),x,X0); b=subs(diff(y,x2),x,X0); yj=[a;b]; z=subs(y,x,X0-lam*y
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/27 14:30:54
![matlab 最速下降法求解clc;clear;disp('最速下降法')syms x1 x2 lam;x=[x1 x2];t=0; X0=[1;1]; y=(x1^2+x2-11)^2+(x1+x2^2-7)^2;e=0.01;for n=1:10 a=subs(diff(y,x1),x,X0); b=subs(diff(y,x2),x,X0); yj=[a;b]; z=subs(y,x,X0-lam*y](/uploads/image/z/5161860-36-0.jpg?t=matlab+%E6%9C%80%E9%80%9F%E4%B8%8B%E9%99%8D%E6%B3%95%E6%B1%82%E8%A7%A3clc%3Bclear%3Bdisp%28%27%E6%9C%80%E9%80%9F%E4%B8%8B%E9%99%8D%E6%B3%95%27%29syms+x1+x2+lam%3Bx%3D%5Bx1+x2%5D%3Bt%3D0%3B+++++++++X0%3D%5B1%3B1%5D%3B+y%3D%28x1%5E2%2Bx2-11%29%5E2%2B%28x1%2Bx2%5E2-7%29%5E2%3Be%3D0.01%3Bfor+n%3D1%3A10++++a%3Dsubs%28diff%28y%2Cx1%29%2Cx%2CX0%29%3B++++b%3Dsubs%28diff%28y%2Cx2%29%2Cx%2CX0%29%3B++++yj%3D%5Ba%3Bb%5D%3B+++++z%3Dsubs%28y%2Cx%2CX0-lam%2Ay)
matlab 最速下降法求解clc;clear;disp('最速下降法')syms x1 x2 lam;x=[x1 x2];t=0; X0=[1;1]; y=(x1^2+x2-11)^2+(x1+x2^2-7)^2;e=0.01;for n=1:10 a=subs(diff(y,x1),x,X0); b=subs(diff(y,x2),x,X0); yj=[a;b]; z=subs(y,x,X0-lam*y
matlab 最速下降法求解
clc;
clear;
disp('最速下降法')
syms x1 x2 lam;
x=[x1 x2];
t=0;
X0=[1;1];
y=(x1^2+x2-11)^2+(x1+x2^2-7)^2;
e=0.01;
for n=1:10
a=subs(diff(y,x1),x,X0);
b=subs(diff(y,x2),x,X0);
yj=[a;b];
z=subs(y,x,X0-lam*yj);
z1=diff(z,lam);
lambda=solve(z1,'lam');
lambda=double(lambda);
a=subs(diff(y,x1),x,X0);
b=subs(diff(y,x2),x,X0);
fan=norm(yj);
if fan>e
X1=X0-lambda(1)*yj;
X0=X1;
t=t+1;
else
break
end
end
X0
y=(subs(y,x,X0));
y
t
这是我编的谁能帮我看看有啥问题
明白最速下降法的帮我看看 得不到结果 谢谢了
matlab 最速下降法求解clc;clear;disp('最速下降法')syms x1 x2 lam;x=[x1 x2];t=0; X0=[1;1]; y=(x1^2+x2-11)^2+(x1+x2^2-7)^2;e=0.01;for n=1:10 a=subs(diff(y,x1),x,X0); b=subs(diff(y,x2),x,X0); yj=[a;b]; z=subs(y,x,X0-lam*y
你写的程序我已经运行过了,没有任何语法错误