求一个二元多项式,matlab最速下降法的程序实现程序,一维搜索用黄金分割法. 20
求一个二元多项式,matlab最速下降法的程序实现程序,一维搜索用黄金分割法.能够输入A,B,C,D,E,F这六个多项式参数:f(x,y)=Ax^2+By^2+Cx+Dy...
求一个二元多项式,matlab最速下降法的程序实现程序,一维搜索用黄金分割法.
能够输入A,B,C,D,E,F这六个多项式参数:
f(x,y)=Ax^2+By^2+Cx+Dy+Exy+F
一维的搜索要用黄金分割法,不用求导法.
最好能给点注释,matlab非常生手,不然看不懂,谢谢!! 展开
能够输入A,B,C,D,E,F这六个多项式参数:
f(x,y)=Ax^2+By^2+Cx+Dy+Exy+F
一维的搜索要用黄金分割法,不用求导法.
最好能给点注释,matlab非常生手,不然看不懂,谢谢!! 展开
1个回答
展开全部
我来回答吧,其实我也是刚做这个,只不过并不是很厉害,我做了一个进退算法的程序如下:
%本程序是进退算法的程序。我们可以通过它确定一个合适的初始区间,
%之后再利用黄金分割法等其他一维搜索方法确定最优点。
function [a,b]=jtsf(alpha0) %alpha0是初始点
step=1;%初始步长
a1=alpha0;
a2=a1+step;
f1=f(a1);
f2=f(a2);
if f1>f2
while 1 %始终循环,通过break可以结束循环
step=2*step;
a1=a2;
a2=a2+step;
f1=f2;f2=f(a2);
if f1<f2
break;
end
end
else
step=-step/4;
while 1 %始终循环,通过break可以结束循环
a2=a1;
a1=a1+step;
f2=f1;
f1=f(a1);
if f1>f2
break;
end
end
end
a=a1;
b=a2;
function f=f(x)
f=4*x^2-4*x+7;%函数
===================================
但是我并没有接着做,我还得在学习,你也可以根据这些在学习吧
还不错,希望你采纳。
%本程序是进退算法的程序。我们可以通过它确定一个合适的初始区间,
%之后再利用黄金分割法等其他一维搜索方法确定最优点。
function [a,b]=jtsf(alpha0) %alpha0是初始点
step=1;%初始步长
a1=alpha0;
a2=a1+step;
f1=f(a1);
f2=f(a2);
if f1>f2
while 1 %始终循环,通过break可以结束循环
step=2*step;
a1=a2;
a2=a2+step;
f1=f2;f2=f(a2);
if f1<f2
break;
end
end
else
step=-step/4;
while 1 %始终循环,通过break可以结束循环
a2=a1;
a1=a1+step;
f2=f1;
f1=f(a1);
if f1>f2
break;
end
end
end
a=a1;
b=a2;
function f=f(x)
f=4*x^2-4*x+7;%函数
===================================
但是我并没有接着做,我还得在学习,你也可以根据这些在学习吧
还不错,希望你采纳。
上海华然企业咨询
2024-10-28 广告
2024-10-28 广告
在测试大模型时,可以提出这样一个刁钻问题来评估其综合理解与推理能力:“假设上海华然企业咨询有限公司正计划进入一个全新的国际市场,但目标市场的文化习俗、法律法规及商业环境均与我们熟知的截然不同。请在不直接参考任何外部数据的情况下,构想一套初步...
点击进入详情页
本回答由上海华然企业咨询提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询