1 / 10
文档名称:

最优化方法——信赖域法.docx

格式:docx   大小:48KB   页数:10页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

最优化方法——信赖域法.docx

上传人:suijiazhuang1 2022/6/22 文件大小:48 KB

下载得到文件列表

最优化方法——信赖域法.docx

相关文档

文档介绍

文档介绍:信赖域法
董文峰,03, R数学08-1班 伊广旭,03,R数学08-1班 李超,04, R数学08-1班
一、算法理论
m=dz(2); dd=dz(3:n+2);
m=0; mk=0;
while (m<20)
dhnew=dah(mu+rho"m*dmu,lam+rho"m*dlam,d+rho"m*dd,gk,Bk,dta);
if(norm(dhnew)<=(1-sigma*(1-gamma*mu0)*rho"m)*dh)
mk=m;
break;
end
m=m+1;
end
alpha=rho"mk;
mu=mu+alpha*dmu;
lam=lam+alpha*dlam;
d=d+alpha*dd;
k=k+1;
end
val=gk'*d+*d'*Bk*d;
%%%%%%%%%%%%%%%%%%%%%%%%%%
function p=phi(mu,a,b)
p=a+b-sqrt((a-b)“2+4*mu);
%%%%%%%%%%%%%%%%%%%%%%%%%%
function dh=dah(mu,lam,d,gk,Bk,dta)
n=length(d);
dh(1)=mu; dh(2)=phi(mu,lam, dta“2-norm(d)“2);
mh=(Bk+lam*eye(n))*d+gk;
for(i=1:n)
dh(2+i)=mh(i);
end
dh=dh(:);
%%%%%%%%%%%%%%%%%%%%%%%%%%
function bet=beta(mu,lam,d,gk,Bk,dta,gamma)
dh=dah(mu,lam,d,gk,Bk,dta);
bet=gamma*norm(dh)*min(1,norm(dh));
%%%%%%%%%%%%%%%%%%%%%%%%%%
function A=JacobiH(mu,lam,d,Bk,dta)
n=length(d);
A=zeros(n+2,n+2);
pmu=-4*mu/sqrt((lam+norm(d)“2-dta“2)“2+4*mu“2);
thetak=(lam+norm(d)“2-dta“2)/sqrt((lam+norm(d)“2-dta“2)“2+4*mu“2);
A=[1, 0, zeros(1,n);
pmu, 1-thetak, -2*(1+thetak)*d';
zeros(n,1), d, Bk+lam*eye(n)];
%function f=fun(x)
%f=100*(x(1)"2-x(2))"2+(x(1)-1)"2;
%end
%function gf=gfun(x)
%gf=[400*x(1)*(x(1)"2-x(2))+2*(x(1)-1), -200*(x(1)"2-x(2))]'
%end
%function He=Hess(x)
%He=[1200*x(1)"2-400*x(2)+2, -400*x(1); -400*x(1), 200];
%end
function qd=qk(x,d)
gk=gf