Foundations and Trends R(cid:1) in
Machine Learning
Vol. 3, No. 1 (2010) 1–122
c(cid:1) 2011 S. Boyd, N. Parikh, E. Chu, B. Peleato
and J. Eckstein
DOI: 10.1561/2200000016
Distributed Optimization and Statistical
Learning via the Alternating Direction
Method of Multipliers
Stephen Boyd1, Neal Parikh2, Eric Chu3
Borja Peleato4 and Jonathan Eckstein5
1 Electrical Engineering Department, Stanford University, Stanford, CA
94305, USA, [email protected]
2 Computer Science Department, Stanford University, Stanford, CA 94305,
USA, [email protected]
3 Electrical Engineering Department, Stanford University, Stanford, CA
94305, USA, [email protected]
4 Electrical Engineering Department, Stanford University, Stanford, CA
94305, USA, [email protected]
5 Management Science and Information Systems Department and
RUTCOR, Rutgers University, Piscataway, NJ 08854, USA,
Contents
1 Introduction
2 Precursors
2.1 Dual Ascent
2.2 Dual Decomposition
2.3 Augmented Lagrangians and the Method of Multipliers
3 Alternating Direction Method of Multipliers
3.1 Algorithm
3.2 Convergence
3.3 Optimality Conditions and Stopping Criterion
3.4 Extensions and Variations
3.5 Notes and References
4 General Patterns
4.1 Proximity Operator
4.2 Quadratic Objective Terms
4.3 Smooth Objective Terms
4.4 Decomposition
5 Constrained Convex Optimization
5.1 Convex Feasibility
5.2 Linear and Quadratic Programming
3
7
7
9
10
13
13
15
18
20
23
25
25
26
30
31
33
34
36
6 (cid:1)1-Norm Problems
6.1 Least Absolute Deviations
6.2 Basis Pursuit
6.3 General (cid:1)1 Regularized Loss Minimization
6.4 Lasso
6.5 Sparse Inverse Covariance Selection
7 Consensus and Sharing
7.1 Global Variable Consensus Optimization
7.2 General Form Consensus Optimization
7.3 Sharing
8 Distributed Model Fitting
8.1 Examples
8.2 Splitting across Examples
8.3 Splitting across Features
9 Nonconvex Problems
9.1 Nonconvex Constraints
9.2 Bi-convex Problems
10 Implementation
10.1 Abstract Implementation
10.2 MPI
10.3 Graph Computing Frameworks
10.4 MapReduce
11 Numerical Examples
11.1 Small Dense Lasso
11.2 Distributed (cid:1)1 Regularized Logistic Regression
11.3 Group Lasso with Feature Splitting
11.4 Distributed Large-Scale Lasso with MPI
11.5 Regressor Selection
38
39
41
42
43
45
48
48
53
56
61
62
64
66
73
73
76
78
78
80
81
82
87
88
92
95
97
100
12 Conclusions
Acknowledgments
A Convergence Proof
References
103
105
106
111
Abstract
Many problems of recent interest in statistics and machine learning
can be posed in the framework of convex optimization. Due to the
explosion in size and complexity of modern datasets, it is increasingly
important to be able to solve problems with a very large number of fea-
tures or training examples. As a result, both the decentralized collection
or storage of these datasets as well as accompanying distributed solu-
tion methods are either necessary or at least highly desirable. In this
review, we argue that the alternating direction method of multipliers
is well suited to distributed convex optimization, and in particular to
large-scale problems arising in statistics, machine learning, and related
areas. The method was developed in the 1970s, with roots in the 1950s,
and is equivalent or closely related to many other algorithms, such
as dual decomposition, the method of multipliers, Douglas–Rachford
splitting, Spingarn’s method of partial inverses, Dykstra’s alternating
projections, Bregman iterative algorithms for (cid:1)1 problems, proximal
methods, and others. After briefly surveying the theory and history of
the algorithm, we discuss applications to a wide variety of statistical
and machine learning problems of recent interest, including the lasso,
sparse logistic regression, basis pursuit, covariance selection, support
vector machines, and many others. We also discuss general distributed
optimization, extensions to the nonconvex setting, and efficient imple-
mentation, including some details on distributed MPI and Hadoop
MapReduce implementations.
1
Introduction
In all applied fields, it is now commonplace to attack problems through
data analysis, particularly through the use of statistical and machine
learning algorithms on what are often large datasets. In industry, this
trend has been referred to as ‘Big Data’, and it has had a significant
impact in areas as varied as artificial intelligence, internet applications,
Publicité
computational biology, medicine, finance, marketing, journalism, net-
work analysis, and logistics.
Though these problems arise in diverse application domains, they
share some key characteristics. First, the datasets are often extremely
large, consisting of hundreds of millions or billions of training examples;
second, the data is often very high-dimensional, because it is now possi-
ble to measure and store very detailed information about each example;
and third, because of the large scale of many applications, the data is
often stored or even collected in a distributed manner. As a result, it
has become of central importance to develop algorithms that are both
rich enough to capture the complexity of modern data, and scalable
enough to process huge datasets in a parallelized or fully decentral-
ized fashion. Indeed, some researchers [92] have suggested that even
highly complex and structured problems may succumb most easily to
relatively simple models trained on vast datasets.
3
4
Introduction
Many such problems can be posed in the framework of convex opti-
mization. Given the significant work on decomposition methods and
decentralized algorithms in the optimization community, it is natural
to look to parallel optimization algorithms as a mechanism for solving
large-scale statistical tasks. This approach also has the benefit that one
algorithm could be flexible enough to solve many problems.
This review discusses the alternating direction method of multipli-
ers (ADMM), a simple but powerful algorithm that is well suited to
distributed convex optimization, and in particular to problems aris-
ing in applied statistics and machine learning. It takes the form of a
decomposition-coordination procedure, in which the solutions to small
local subproblems are coordinated to find a solution to a large global
problem. ADMM can be viewed as an attempt to blend the benefits
of dual decomposition and augmented Lagrangian methods for con-
strained optimization, two earlier approaches that we review in §2. It
turns out to be equivalent or closely related to many other algorithms
as well, such as Douglas-Rachford splitting from numerical analysis,
Spingarn’s method of partial inverses, Dykstra’s alternating projec-
tions method, Bregman iterative algorithms for (cid:1)1 problems in signal
processing, proximal methods, and many others. The fact that it has
been re-invented in different fields over the decades underscores the
intuitive appeal of the approach.
It is worth emphasizing that the algorithm itself is not new, and that
we do not present any new theoretical results. It was first introduced
in the mid-1970s by Gabay, Mercier, Glowinski, and Marrocco, though
similar ideas emerged as early as the mid-1950s. The algorithm was
studied throughout the 1980s, and by the mid-1990s, almost all of the
theoretical results mentioned here had been established. The fact that
ADMM was developed so far in advance of the ready availability of
large-scale distributed computing systems and massive optimization
problems may account for why it is not as widely known today as we
believe it should be.
The main contributions of this review can be summarized as follows:
(1) We provide a simple, cohesive discussion of the extensive
literature in a way that emphasizes and unifies the aspects
of primary importance in applications.
5
(2) We show, through a number of examples, that the algorithm
is well suited for a wide variety of large-scale distributed mod-
ern problems. We derive methods for decomposing a wide
class of statistical problems by training examples and by fea-
tures, which is not easily accomplished in general.
(3) We place a greater emphasis on practical large-scale imple-
mentation than most previous references. In particular, we
discuss the implementation of the algorithm in cloud com-
puting environments using standard frameworks and provide
easily readable implementations of many of our examples.
Throughout, the focus is on applications rather than theory, and a main
goal is to provide the reader with a kind of ‘toolbox’ that can be applied
in many situations to derive and implement a distributed algorithm of
practical use. Though the focus here is on parallelism, the algorithm
can also be used serially, and it is interesting to note that with no
tuning, ADMM can be competitive with the best known methods for
some problems.
While we have emphasized applications that can be concisely
explained, the algorithm would also be a natural fit for more compli-
cated problems in areas like graphical models. In addition, though our
focus is on statistical learning problems, the algorithm is readily appli-
cable in many other cases, such as in engineering design, multi-period
portfolio optimization, time series analysis, network flow, or scheduling.
Outline
We begin in §2 with a brief review of dual decomposition and the
method of multipliers, two important precursors to ADMM. This sec-
tion is intended mainly for background and can be skimmed. In §3,
we present ADMM, including a basic convergence theorem, some vari-
ations on the basic version that are useful in practice, and a survey of
some of the key literature. A complete convergence proof is given in
appendix A.
In §4, we describe some general patterns that arise in applications
of the algorithm, such as cases when one of the steps in ADMM can
6
Introduction
be carried out particularly efficiently. These general patterns will recur
throughout our examples. In §5, we consider the use of ADMM for some
generic convex optimization problems, such as constrained minimiza-
tion and linear and quadratic programming. In §6, we discuss a wide
variety of problems involving the (cid:1)1 norm. It turns out that ADMM
yields methods for these problems that are related to many state-of-the-
art algorithms. This section also clarifies why ADMM is particularly
well suited to machine learning problems.
In §7, we present consensus and sharing problems, which provide
general frameworks for distributed optimization. In §8, we consider
distributed methods for generic model fitting problems, including reg-
ularized regression models like the lasso and classification models like
support vector machines.
In §9, we consider the use of ADMM as a heuristic for solving some
nonconvex problems. In §10, we discuss some practical implementation
details, including how to implement the algorithm in frameworks suit-
able for cloud computing applications. Finally, in §11, we present the
details of some numerical experiments.
2
Precursors
In this section, we briefly review two optimization algorithms that are
precursors to the alternating direction method of multipliers. While
we will not use this material in the sequel, it provides some useful
background and motivation.
2.1 Dual Ascent
Consider the equality-constrained convex optimization problem
minimize
subject to Ax = b,
f (x)
(2.1)
with variable x ∈ Rn, where A ∈ Rm×n and f : Rn → R is convex.
The Lagrangian for problem (2.1) is
L(x, y) = f (x) + yT (Ax − b)
and the dual function is
g(y) = inf
x
L(x, y) = −f ∗(−AT y) − bT y,
where y is the dual variable or Lagrange multiplier, and f ∗ is the convex
conjugate of f ; see [20, §3.3] or [140, §12] for background. The dual
7
8 Precursors
problem is
maximize g(y),
with variable y ∈ Rm. Assuming that strong duality holds, the optimal
values of the primal and dual problems are the same. We can recover
a primal optimal point x(cid:1) from a dual optimal point y(cid:1) as
x(cid:1) = argmin
L(x, y(cid:1)),
x
provided there is only one minimizer of L(x, y(cid:1)). (This is the case
if, e.g., f is strictly convex.) In the sequel, we will use the notation
argminx F (x) to denote any minimizer of F , even when F does not
have a unique minimizer.
In the dual ascent method, we solve the dual problem using gradient
ascent. Assuming that g is differentiable, the gradient ∇g(y) can be
evaluated as follows. We first find x+ = argminx L(x, y); then we have
∇g(y) = Ax+ − b, which is the residual for the equality constraint. The
dual ascent method consists of iterating the updates
xk+1 := argmin
L(x, yk)
x
yk+1 := yk + αk(Axk+1 − b),
(2.2)
(2.3)
where αk > 0 is a step size, and the superscript is the iteration counter.
The first step (2.2) is an x-minimization step, and the second step (2.3)
Publicité
is a dual variable update. The dual variable y can be interpreted as
a vector of prices, and the y-update is then called a price update or
price adjustment step. This algorithm is called dual ascent since, with
appropriate choice of αk, the dual function increases in each step, i.e.,
g(yk+1) > g(yk).
The dual ascent method can be used even in some cases when g is
not differentiable. In this case, the residual Axk+1 − b is not the gradi-
ent of g, but the negative of a subgradient of −g. This case requires a
different choice of the αk than when g is differentiable, and convergence
is not monotone; it is often the case that g(yk+1) (cid:4)> g(yk). In this case,
the algorithm is usually called the dual subgradient method [152].
If αk is chosen appropriately and several other assumptions hold,
then xk converges to an optimal point and yk converges to an optimal
2.2 Dual Decomposition
9
dual point. However, these assumptions do not hold in many applica-
tions, so dual ascent often cannot be used. As an example, if f is a
nonzero affine function of any component of x, then the x-update (2.2)
fails, since L is unbounded below in x for most y.
2.2 Dual Decomposition
The major benefit of the dual ascent method is that it can lead to a
decentralized algorithm in some cases. Suppose, for example, that the
objective f is separable (with respect to a partition or splitting of the
variable into subvectors), meaning that
N(cid:1)
f (x) =
fi(xi),
i=1
where x = (x1, . . . , xN ) and the variables xi ∈ Rni are subvectors of x.
Partitioning the matrix A conformably as
so Ax =
(cid:2)
N
i=1 Aixi, the Lagrangian can be written as
A = [A1 · · · AN ] ,
N(cid:1)
L(x, y) =
Li(xi, y) =
i=1
N(cid:1)
(cid:3)
i=1
fi(xi) + yT Aixi − (1/N )yT b
(cid:4)
,
which is also separable in x. This means that the x-minimization
step (2.2) splits into N separate problems that can be solved in parallel.
Explicitly, the algorithm is
xk+1
i
:= argmin
xi
Li(xi, yk)
yk+1 := yk + αk(Axk+1 − b).
(2.4)
(2.5)
The x-minimization step (2.4) is carried out independently, in parallel,
for each i = 1, . . . , N . In this case, we refer to the dual ascent method
as dual decomposition.
In the general case, each iteration of the dual decomposition method
requires a broadcast and a gather operation. In the dual update
step (2.5), the equality constraint residual contributions Aixk+1
are
i
10 Precursors
collected (gathered) in order to compute the residual Axk+1 − b. Once
the (global) dual variable yk+1 is computed, it must be distributed
(broadcast) to the processors that carry out the N individual xi mini-
mization steps (2.4).
Dual decomposition is an old idea in optimization, and traces back
at least to the early 1960s. Related ideas appear in well known work
by Dantzig and Wolfe [44] and Benders [13] on large-scale linear pro-
gramming, as well as in Dantzig’s seminal book [43]. The general idea
of dual decomposition appears to be originally due to Everett [69],
and is explored in many early references [107, 84, 117, 14]. The use
of nondifferentiable optimization, such as the subgradient method, to
solve the dual problem is discussed by Shor [152]. Good references on
dual methods and decomposition include the book by Bertsekas [16,
chapter 6] and the survey by Nedi´c and Ozdaglar [131] on distributed
optimization, which discusses dual decomposition methods and con-
sensus problems. A number of papers also discuss variants on standard
dual decomposition, such as [129].
More generally, decentralized optimization has been an active topic
of research since the 1980s. For instance, Tsitsiklis and his co-authors
worked on a number of decentralized detection and consensus problems
involving the minimization of a smooth function f known to multi-
ple agents [160, 161, 17]. Some good reference books on parallel opti-
mization include those by Bertsekas and Tsitsiklis [17] and Censor and
Zenios [31]. There has also been some recent work on problems where
each agent has its own convex, potentially nondifferentiable, objective
function [130]. See [54] for a recent discussion of distributed methods
for graph-structured optimization problems.
2.3 Augmented Lagrangians and the Method of Multipliers
Augmented Lagrangian methods were developed in part to bring
robustness to the dual ascent method, and in particular, to yield con-
vergence without assumptions like strict convexity or finiteness of f .
The augmented Lagrangian for (2.1) is
Lρ(x, y) = f (x) + yT (Ax − b) + (ρ/2)(cid:5)Ax − b(cid:5)2
2,
(2.6)
2.3 Augmented Lagrangians and the Method of Multipliers
11
where ρ > 0 is called the penalty parameter. (Note that L0 is the
standard Lagrangian for the problem.) The augmented Lagrangian
can be viewed as the (unaugmented) Lagrangian associated with the
problem
minimize
subject to Ax = b.
f (x) + (ρ/2)(cid:5)Ax − b(cid:5)2
2
This problem is clearly equivalent to the original problem (2.1), since
for any feasible x the term added to the objective is zero. The associated
dual function is gρ(y) = inf x Lρ(x, y).
The benefit of including the penalty term is that gρ can be shown to
be differentiable under rather mild conditions on the original problem.
The gradient of the augmented dual function is found the same way as
with the ordinary Lagrangian, i.e., by minimizing over x, and then eval-
uating the resulting equality constraint residual. Applying dual ascent
to the modified problem yields the algorithm
Lρ(x, yk)
xk+1 := argmin
(2.7)
x
yk+1 := yk + ρ(Axk+1 − b),
(2.8)
which is known as the method of multipliers for solving (2.1). This is
the same as standard dual ascent, except that the x-minimization step
uses the augmented Lagrangian, and the penalty parameter ρ is used
as the step size αk. The method of multipliers converges under far more
general conditions than dual ascent, including cases when f takes on
the value +∞ or is not strictly convex.
It is easy to motivate the choice of the particular step size ρ in
the dual update (2.8). For simplicity, we assume here that f is differ-
entiable, though this is not required for the algorithm to work. The
optimality conditions for (2.1) are primal and dual feasibility, i.e.,
Ax(cid:1) − b = 0,
∇f (x(cid:1)) + AT y(cid:1) = 0,
respectively. By definition, xk+1 minimizes Lρ(x, yk), so
0 = ∇xLρ(xk+1, yk)
= ∇xf (xk+1) + AT
= ∇xf (xk+1) + AT yk+1.
(cid:5)
(cid:6)
yk + ρ(Axk+1 − b)
12 Precursors
We see that by using ρ as the step size in the dual update, the iterate
(xk+1, yk+1) is dual feasible. As the method of multipliers proceeds, the
primal residual Axk+1 − b converges to zero, yielding optimality.
The greatly improved convergence properties of the method of mul-
tipliers over dual ascent comes at a cost. When f is separable, the aug-
mented Lagrangian Lρ is not separable, so the x-minimization step (2.7)
cannot be carried out separately in parallel for each xi. This means that
the basic method of multipliers cannot be used for decomposition. We
will see how to address this issue next.
Augmented Lagrangians and the method of multipliers for con-
strained optimization were first proposed in the late 1960s by Hestenes
Publicité
[97, 98] and Powell [138]. Many of the early numerical experiments on
the method of multipliers are due to Miele et al. [124, 125, 126]. Much
of the early work is consolidated in a monograph by Bertsekas [15],
who also discusses similarities to older approaches using Lagrangians
and penalty functions [6, 5, 71], as well as a number of generalizations.
3
Alternating Direction Method of Multipliers
3.1 Algorithm
ADMM is an algorithm that is intended to blend the decomposability
of dual ascent with the superior convergence properties of the method
of multipliers. The algorithm solves problems in the form
minimize
subject to Ax + Bz = c
f (x) + g(z)
(3.1)
with variables x ∈ Rn and z ∈ Rm, where A ∈ Rp×n, B ∈ Rp×m, and
c ∈ Rp. We will assume that f and g are convex; more specific assump-
tions will be discussed in §3.2. The only difference from the general
linear equality-constrained problem (2.1) is that the variable, called x
there, has been split into two parts, called x and z here, with the objec-
tive function separable across this splitting. The optimal value of the
problem (3.1) will be denoted by
p(cid:1) = inf{f (x) + g(z) | Ax + Bz = c}.
As in the method of multipliers, we form the augmented Lagrangian
Lρ(x, z, y) = f (x) + g(z) + yT (Ax + Bz − c) + (ρ/2)(cid:5)Ax + Bz − c(cid:5)2
2.
13
14 Alternating Direction Method of Multipliers
ADMM consists of the iterations
xk+1 := argmin
x
zk+1 := argmin
z
Lρ(x, zk, yk)
Lρ(xk+1, z, yk)
yk+1 := yk + ρ(Axk+1 + Bzk+1 − c),
(3.2)
(3.3)
(3.4)
where ρ > 0. The algorithm is very similar to dual ascent and the
method of multipliers: it consists of an x-minimization step (3.2), a
z-minimization step (3.3), and a dual variable update (3.4). As in the
method of multipliers, the dual variable update uses a step size equal
to the augmented Lagrangian parameter ρ.
The method of multipliers for (3.1) has the form
(xk+1, zk+1) := argmin
x,z
Lρ(x, z, yk)
yk+1 := yk + ρ(Axk+1 + Bzk+1 − c).
Here the augmented Lagrangian is minimized jointly with respect to
the two primal variables. In ADMM, on the other hand, x and z are
updated in an alternating or sequential fashion, which accounts for the
term alternating direction. ADMM can be viewed as a version of the
method of multipliers where a single Gauss-Seidel pass [90, §10.1] over
x and z is used instead of the usual joint minimization. Separating the
minimization over x and z into two steps is precisely what allows for
decomposition when f or g are separable.
The algorithm state in ADMM consists of zk and yk. In other words,
(zk+1, yk+1) is a function of (zk, yk). The variable xk is not part of the
state; it is an intermediate result computed from the previous state
(zk−1, yk−1).
If we switch (re-label) x and z, f and g, and A and B in the prob-
lem (3.1), we obtain a variation on ADMM with the order of the x-
update step (3.2) and z-update step (3.3) reversed. The roles of x and
z are almost symmetric, but not quite, since the dual update is done
after the z-update but before the x-update.
3.2 Convergence
15
3.1.1 Scaled Form
ADMM can be written in a slightly different form, which is often
more convenient, by combining the linear and quadratic terms in the
augmented Lagrangian and scaling the dual variable. Defining the resid-
ual r = Ax + Bz − c, we have
yT r + (ρ/2)(cid:5)r(cid:5)2
2 = (ρ/2)(cid:5)r + (1/ρ)y(cid:5)2
2
= (ρ/2)(cid:5)r + u(cid:5)2
2
− (1/2ρ)(cid:5)y(cid:5)2
2
− (ρ/2)(cid:5)u(cid:5)2
2,
where u = (1/ρ)y is the scaled dual variable. Using the scaled dual vari-
able, we can express ADMM as
(cid:5)
(cid:6)
xk+1 := argmin
x
(cid:5)
zk+1 := argmin
z
f (x) + (ρ/2)(cid:5)Ax + Bzk − c + uk(cid:5)2
2
g(z) + (ρ/2)(cid:5)Axk+1 + Bz − c + uk(cid:5)2
2
uk+1 := uk + Axk+1 + Bzk+1 − c.
(cid:6)
(3.5)
(3.6)
(3.7)
Defining the residual at iteration k as rk = Axk + Bzk − c, we see that
uk = u0 +
k(cid:1)
j=1
rj,
the running sum of the residuals.
We call the first form of ADMM above, given by (3.2–3.4), the
unscaled form, and the second form (3.5–3.7) the scaled form, since it
is expressed in terms of a scaled version of the dual variable. The two
are clearly equivalent, but the formulas in the scaled form of ADMM
are often shorter than in the unscaled form, so we will use the scaled
form in the sequel. We will use the unscaled form when we wish to
emphasize the role of the dual variable or to give an interpretation
that relies on the (unscaled) dual variable.
3.2 Convergence
There are many convergence results for ADMM discussed in the liter-
ature; here, we limit ourselves to a basic but still very general result
that applies to all of the examples we will consider. We will make one
16 Alternating Direction Method of Multipliers
assumption about the functions f and g, and one assumption about
problem (3.1).
Assumption 1. The (extended-real-valued) functions f : Rn → R ∪
{+∞} and g : Rm → R ∪ {+∞} are closed, proper, and convex.
This assumption can be expressed compactly using the epigraphs of
the functions: The function f satisfies assumption 1 if and only if its
epigraph
epi f = {(x, t) ∈ Rn × R | f (x) ≤ t}
is a closed nonempty convex set.
Assumption 1 implies that the subproblems arising in the x-update
(3.2) and z-update (3.3) are solvable, i.e., there exist x and z, not neces-
sarily unique (without further assumptions on A and B), that minimize
the augmented Lagrangian. It is important to note that assumption 1
allows f and g to be nondifferentiable and to assume the value +∞.
For example, we can take f to be the indicator function of a closed
nonempty convex set C, i.e., f (x) = 0 for x ∈ C and f (x) = +∞ other-
wise. In this case, the x-minimization step (3.2) will involve solving a
constrained quadratic program over C, the effective domain of f .
Assumption 2. The unaugmented Lagrangian L0 has a saddle point.
Explicitly, there exist (x(cid:1), z(cid:1), y(cid:1)), not necessarily unique, for which
L0(x(cid:1), z(cid:1), y) ≤ L0(x(cid:1), z(cid:1), y(cid:1)) ≤ L0(x, z, y(cid:1))
holds for all x, z, y.
By assumption 1, it follows that L0(x(cid:1), z(cid:1), y(cid:1)) is finite for any sad-
dle point (x(cid:1), z(cid:1), y(cid:1)). This implies that (x(cid:1), z(cid:1)) is a solution to (3.1),
so Ax(cid:1) + Bz(cid:1) = c and f (x(cid:1)) < ∞, g(z(cid:1)) < ∞. It also implies that y(cid:1)
is dual optimal, and the optimal values of the primal and dual prob-
lems are equal, i.e., that strong duality holds. Note that we make no
assumptions about A, B, or c, except implicitly through assumption 2;
in particular, neither A nor B is required to be full rank.
3.2.1 Convergence
Under assumptions 1 and 2, the ADMM iterates satisfy the following:
3.2 Convergence
17
• Residual convergence. rk → 0 as k → ∞, i.e., the iterates
approach feasibility.
• Objective convergence. f (xk) + g(zk) → p(cid:1) as k → ∞, i.e.,
the objective function of the iterates approaches the optimal
Publicité
value.
• Dual variable convergence. yk → y(cid:1) as k → ∞, where y(cid:1) is a
dual optimal point.
A proof of the residual and objective convergence results is given in
appendix A. Note that xk and zk need not converge to optimal values,
although such results can be shown under additional assumptions.
3.2.2 Convergence in Practice
Simple examples show that ADMM can be very slow to converge to
high accuracy. However, it is often the case that ADMM converges to
modest accuracy—sufficient for many applications—within a few tens
of iterations. This behavior makes ADMM similar to algorithms like
the conjugate gradient method, for example, in that a few tens of iter-
ations will often produce acceptable results of practical use. However,
the slow convergence of ADMM also distinguishes it from algorithms
such as Newton’s method (or, for constrained problems, interior-point
methods), where high accuracy can be attained in a reasonable amount
of time. While in some cases it is possible to combine ADMM with
a method for producing a high accuracy solution from a low accu-
racy solution [64], in the general case ADMM will be practically useful
mostly in cases when modest accuracy is sufficient. Fortunately, this
is usually the case for the kinds of large-scale problems we consider.
Also, in the case of statistical and machine learning problems, solving
a parameter estimation problem to very high accuracy often yields lit-
tle to no improvement in actual prediction performance, the real metric
of interest in applications.
18 Alternating Direction Method of Multipliers
3.3 Optimality Conditions and Stopping Criterion
The necessary and sufficient optimality conditions for the ADMM prob-
lem (3.1) are primal feasibility,
and dual feasibility,
Ax(cid:1) + Bz(cid:1) − c = 0,
0 ∈ ∂f (x(cid:1)) + AT y(cid:1)
0 ∈ ∂g(z(cid:1)) + BT y(cid:1).
(3.8)
(3.9)
(3.10)
Here, ∂ denotes the subdifferential operator; see, e.g., [140, 19, 99].
(When f and g are differentiable, the subdifferentials ∂f and ∂g can
be replaced by the gradients ∇f and ∇g, and ∈ can be replaced by =.)
Since zk+1 minimizes Lρ(xk+1, z, yk) by definition, we have that
0 ∈ ∂g(zk+1) + BT yk + ρBT (Axk+1 + Bzk+1 − c)
= ∂g(zk+1) + BT yk + ρBT rk+1
= ∂g(zk+1) + BT yk+1.
This means that zk+1 and yk+1 always satisfy (3.10), so attaining opti-
mality comes down to satisfying (3.8) and (3.9). This phenomenon is
analogous to the iterates of the method of multipliers always being dual
feasible; see page 11.
Since xk+1 minimizes Lρ(x, zk, yk) by definition, we have that
0 ∈ ∂f (xk+1) + AT yk + ρAT (Axk+1 + Bzk − c)
= ∂f (xk+1) + AT (yk + ρrk+1 + ρB(zk − zk+1))
= ∂f (xk+1) + AT yk+1 + ρAT B(zk − zk+1),
or equivalently,
ρAT B(zk+1 − zk) ∈ ∂f (xk+1) + AT yk+1.
This means that the quantity
sk+1 = ρAT B(zk+1 − zk)
can be viewed as a residual for the dual feasibility condition (3.9).
We will refer to sk+1 as the dual residual at iteration k + 1, and to
rk+1 = Axk+1 + Bzk+1 − c as the primal residual at iteration k + 1.
3.3 Optimality Conditions and Stopping Criterion
19
In summary, the optimality conditions for the ADMM problem con-
sist of three conditions, (3.8–3.10). The last condition (3.10) always
holds for (xk+1, zk+1, yk+1); the residuals for the other two, (3.8) and
(3.9), are the primal and dual residuals rk+1 and sk+1, respectively.
These two residuals converge to zero as ADMM proceeds. (In fact, the
convergence proof in appendix A shows B(zk+1 − zk) converges to zero,
which implies sk converges to zero.)
3.3.1 Stopping Criteria
The residuals of the optimality conditions can be related to a bound on
the objective suboptimality of the current point, i.e., f (xk) + g(zk) −
p(cid:1). As shown in the convergence proof in appendix A, we have
f (xk) + g(zk) − p(cid:1) ≤ −(yk)T rk + (xk − x(cid:1))T sk.
(3.11)
This shows that when the residuals rk and sk are small, the objective
suboptimality also must be small. We cannot use this inequality directly
in a stopping criterion, however, since we do not know x(cid:1). But if we
guess or estimate that (cid:5)xk − x(cid:1)(cid:5)2 ≤ d, we have that
f (xk) + g(zk) − p(cid:1) ≤ −(yk)T rk + d(cid:5)sk(cid:5)2 ≤ (cid:5)yk(cid:5)2(cid:5)rk(cid:5)2 + d(cid:5)sk(cid:5)2.
The middle or righthand terms can be used as an approximate bound
on the objective suboptimality (which depends on our guess of d).
This suggests that a reasonable termination criterion is that the
primal and dual residuals must be small, i.e.,
(cid:5)rk(cid:5)2 ≤ (cid:5)pri
and (cid:5)sk(cid:5)2 ≤ (cid:5)dual,
(3.12)
where (cid:5)pri > 0 and (cid:5)dual > 0 are feasibility tolerances for the primal and
dual feasibility conditions (3.8) and (3.9), respectively. These tolerances
can be chosen using an absolute and relative criterion, such as
√
√
(cid:5)pri =
(cid:5)dual =
p (cid:5)abs + (cid:5)rel max{(cid:5)Axk(cid:5)2, (cid:5)Bzk(cid:5)2, (cid:5)c(cid:5)2},
n (cid:5)abs + (cid:5)rel(cid:5)AT yk(cid:5)2,
where (cid:5)abs > 0 is an absolute tolerance and (cid:5)rel > 0 is a relative toler-
n account for the fact that the (cid:1)2 norms are
ance. (The factors
in Rp and Rn, respectively.) A reasonable value for the relative stopping
p and
√
√
20 Alternating Direction Method of Multipliers
criterion might be (cid:5)rel = 10−3 or 10−4, depending on the application.
The choice of absolute stopping criterion depends on the scale of the
typical variable values.
3.4 Extensions and Variations
Many variations on the classic ADMM algorithm have been explored in
the literature. Here we briefly survey some of these variants, organized
into groups of related ideas. Some of these methods can give superior
convergence in practice compared to the standard ADMM presented
above. Most of the extensions have been rigorously analyzed, so the
convergence results described above are still valid (in some cases, under
some additional conditions).
3.4.1 Varying Penalty Parameter
A standard extension is to use possibly different penalty parameters ρk
for each iteration, with the goal of improving the convergence in prac-
tice, as well as making performance less dependent on the initial choice
of the penalty parameter. In the context of the method of multipliers,
this approach is analyzed in [142], where it is shown that superlinear
convergence may be achieved if ρk → ∞. Though it can be difficult to
prove the convergence of ADMM when ρ varies by iteration, the fixed-
ρ theory still applies if one just assumes that ρ becomes fixed after a
finite number of iterations.
A simple scheme that often works well is (see, e.g., [96, 169]):
ρk+1 :=
τ incrρk
ρk/τ decr
ρk
if (cid:5)rk(cid:5)2 > µ(cid:5)sk(cid:5)2
if (cid:5)sk(cid:5)2 > µ(cid:5)rk(cid:5)2
otherwise,
(3.13)
where µ > 1, τ incr > 1, and τ decr > 1 are parameters. Typical choices
might be µ = 10 and τ incr = τ decr = 2. The idea behind this penalty
parameter update is to try to keep the primal and dual residual norms
within a factor of µ of one another as they both converge to zero.
The ADMM update equations suggest that large values of ρ place a
large penalty on violations of primal feasibility and so tend to produce
3.4 Extensions and Variations
21
small primal residuals. Conversely, the definition of sk+1 suggests that
small values of ρ tend to reduce the dual residual, but at the expense of
reducing the penalty on primal feasibility, which may result in a larger
primal residual. The adjustment scheme (3.13) inflates ρ by τ incr when
the primal residual appears large compared to the dual residual, and
deflates ρ by τ decr when the primal residual seems too small relative
to the dual residual. This scheme may also be refined by taking into
account the relative magnitudes of (cid:5)pri and (cid:5)dual.
When a varying penalty parameter is used in the scaled form of
ADMM, the scaled dual variable uk = (1/ρ)yk must also be rescaled
after updating ρ; fo...