bfgs_u2_min_kier.m
来自「Control optimisation. It is example of u」· M 代码 · 共 45 行
M
45 行
% poszukiwanie na kierunku optymalnych sterowan u2
function [wynik,q_wyniku] = bfgs_u2_min_kier(x,d,main_x0,main_h0,main_tau,q_stare)
alfa = 0.5; % wspolczynnik zmniejszania kroku
zn = 1; % poczatkowy krok
maxit = 5; % maksymalna ilosc iteracji
x0 = x;
df = d;
if zn<(1e-8)
wynik = x0;
return
end
for i = 1:length(x0)
xf(i) = x0(i)+zn*df(i);
end
qn = bfgs_f_celu2((main_tau'),main_x0,main_h0,xf);
for nr=1:maxit
xfs = xf;
qs = qn;
zn = alfa*zn;
for i = 1:length(x0)
xf(i) = x0(i)+zn*df(i);
end
qn = bfgs_f_celu2((main_tau'),main_x0,main_h0,xf);
if qn>=qs
if qs<q_stare
% disp ('U2 wylaczenie dla nr rownego:');
% nr=nr
break;
else
% disp ('U2 bez wylaczenia dla nr rownego:');
% nr=nr
;
end
end
end
wynik = xf';
q_wyniku = qn;
end % koniec funkcji
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?