m.m

来自「Lagrange乘子法 用于解约束最优化问题」· M 代码 · 共 21 行

M
21
字号
function y=M(x)
global lumda sigma l m;
c=confun(x);
sum=0;
for i=1:l
    sum=sum+c(i)^2;
end
sum=sigma/2*sum;
for i=1:l
    sum=sum-lumda(i)*c(i);
end
for i=(l+1):m
    if lumda(i)-sigma*c(i)>=0;
        temp=(lumda(i)-sigma*c(i))^2-lumda(i)^2;
    else
        temp=-lumda(i)^2;
    end
    sum=sum+1/(2*sigma)*temp;
end
y=fun(x)+sum;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?