• 大小: 856B
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-01-01
  • 语言: 其他
  • 标签: ADMM  

资源简介

ADMM算法是机器学习中比较广泛使用的约束问题最优化方法。本程序实现了ADMM求解优化问题的代码。

资源截图

代码片段和文件信息

function []=ADMM(x0)%x0 is an initial vector
maxk=100;
k=0;
yita=1;
A=[20.25;0.250.2];
hl=plotfun(x0);
%x0=zeros(12);
y=zeros(21);
z=zeros(21);
x1=[x0(1)]; x2=[x0(2)];
eps=1e-10;
while(k    x0=f(yitayz);
    z=proximalfun(x0yitay);
    y=y+yita*(x0-z);
    x1=[x1;x0(1)];
    x2=[x2;x0(2)]; 
    set(hl‘xdata‘x1‘ydata‘x2);
    if k~=0 && norm(fun1(x0)-fun1(xpre))       break;
    end;
    xpre=x0;
    k=k+1;
end
plotobj(x1x2);
val=fun1(x0)
x0
k
end
%%
function [xnew]=f(yitayz)
A=[20.25;0.250.2];
b=[0.5;0.5];
c=-1.5;
x=(zeros(12)-y‘+z‘/yita-b‘)*inv(A+(1/yita)*eye(2));
xnew=x‘;
end
%%
function [znew]=proximalfun(xyitay)
n=length(x);
znew=[];
for i=1:n
    if yita*y(i)+x(i)-0.2*yita>0
        z(i)=yita*y(i)+x(i)-0.2*yi

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

     文件       1760  2016-07-06 00:12  ADMM.m

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

                 1760                    1


评论

共有 条评论

相关资源