📄 dtp.m
字号:
%变尺度法,多变量寻优
%允许迭代的最大次数M,变量数N,
x0=[-3;-1;-3;-1];
n=4; %变量数
I=eye(n);
H1=I; %初始近似矩阵
x1=x0; %代表k次迭代点
M=5000;
e=0.0001;
df1=dfm(x1);
tic
for i=1:M
df1=dfm(x1);
if norm(df1)<e
break;
end
s=-H1*df1; %搜索方向
a=fpart618(x1,s); %采用618法进行单变量寻优
x2=x1+a*s; %代表k+1次迭代点
g=dfm(x2)-dfm(x1); %导数差向量
xc=x2-x1; %点间距,向量
x1g=xc'*g;
xg1=xc*g';
A=(xc*xc')/x1g;
B=H1*g;
H2=H1+A-B*B'/(g'*B); %H矩阵一定时对称的
% H2=(I-xg1/x1g)*H1*(I-xg1/x1g)+xg1/x1g;
x1=x2;
H1=H2;
%df1=dfm(x1);
end
i
x1
fm(x1)
toc
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -