admm_linearized¶
- odl.solvers.nonsmooth.admm.admm_linearized(x, f, g, L, tau, sigma, niter, **kwargs)[source]¶
Generic linearized ADMM method for convex problems.
ADMM stands for "Alternating Direction Method of Multipliers" and is a popular convex optimization method. This variant solves problems of the form
min_x [ f(x) + g(Lx) ]
with convex
f
andg
, and a linear operatorL
. See Section 4.4 of [PB2014] and the Notes for more mathematical details.- Parameters:
- x
L.domain
element Starting point of the iteration, updated in-place.
- f, g
Functional
The functions
f
andg
in the problem definition. They need to implement theproximal
method.- Llinear
Operator
The linear operator that is composed with
g
in the problem definition. It must fulfillL.domain == f.domain
andL.range == g.domain
.- tau, sigmapositive float
Step size parameters for the update of the variables.
- niternon-negative int
Number of iterations.
- x
- Other Parameters:
- callbackcallable, optional
Function called with the current iterate after each iteration.
Notes
Given (the provided
x
) and , linearized ADMM applies the following iteration:The step size parameters and must satisfy
to guarantee convergence.
The name "linearized ADMM" comes from the fact that in the minimization subproblem for the variable, this variant uses a linearization of a quadratic term in the augmented Lagrangian of the generic ADMM, in order to make the step expressible with the proximal operator of .
Another name for this algorithm is split inexact Uzawa method.
References
[PB2014] Parikh, N and Boyd, S. Proximal Algorithms. Foundations and Trends in Optimization, 1(3) (2014), pp 123-231.