资源简介

在含有等式约束的凸优化问题中,分别对初始点为可行点、初始点为不可行点以及对偶问题利用Newton下降法求解

资源截图

代码片段和文件信息

function [ figureHandlecalTime]  = Dual_Newton(VMaxCalTimeerralphabetaAbstyle)
%DUAL_NEWTON Summary of this function goes here
%   无约束问题,可用标准牛顿法解
for calTime=1:MaxCalTime
    %计算newton方向及减量
    Gradient=b-A*exp(-A‘*V-1);                  %求梯度
    Hess=A*diag(exp(-A‘*V-1))*A‘;               %求Hess矩阵
    Vnt=-Hess\Gradient;                         %牛顿方向
    Lamd2=Gradient‘*(Hess^-1)*Gradient;         %牛顿减量    
    output(calTime)=b‘*V+sum(exp(-A‘*V-1));      %输出目标函数值
    
    %判断停止牛顿减量
    if Lamd2<=2*err
        break;
    end
    
    %回溯搜索法
    t=1;
    while b‘*(V+t*Vnt)+sum(exp(-A‘*(V+t*Vnt)-1))>=b‘*V+sum(exp(-A‘*V-1))+alpha*t*Gradient‘*Vnt
        t=beta*t;
    end
    V=V+t*Vnt;
end
output2(1:calTime)=output(1:calTime)-output(calTime); %计算偏离值
figureHandle=semilogy(output2style);
display(‘迭代次数:‘);
display(num2str(calTime));
xlabel(‘迭代次数k‘);
ylabel(‘log(f(v)-g*)‘);
display(‘最优值为:‘);
display(num2str(output(calTime)));
end


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1055  2011-11-21 14:29  附件\Dual_Newton.m

     文件       1626  2011-11-21 14:29  附件\Main.m

     文件       1354  2011-11-21 14:27  附件\Newton1.m

     文件       1354  2011-11-21 14:27  附件\Newton2.m

     文件        155  2011-11-21 14:44  附件\说明.txt

     目录          0  2011-11-21 14:41  附件

----------- ---------  ---------- -----  ----

                 5544                    6


评论

共有 条评论