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 + -
显示快捷键?