Augmented Lagrangian method
Augmented Lagrangian methods are a certain class of algorithms for solving constrained optimization problems. They have similarities to penalty methods in that they replace a constrained optimization problem by a series of unconstrained problems and add a penalty term to the objective; the difference is that the augmented Lagrangian method adds yet another term, designed to mimic a Lagrange multiplier. The augmented Lagrangian is related to, but not identical with the method of Lagrange multipliers. Viewed differently, the unconstrained objective is the of the constrained problem, with an additional penalty term (the augmentation). The method was originally  known as the method of multipliers, and was studied much in the 1970 and 1980s as a good alternative to penalty methods. It was first discussed by Magnus Hestenes, and by Michael Powell in 1969. The method was studied by R. Tyrrell Rockafellar in relation to Fenchel duality, particularly in relation to proximal-point methods, Moreau–Yosida regularization, and maximal monotone operators: These methods were used in structural optimization. The method was also studied by Dimitri Bertsekas, notably in his 1982 book, together with extensions involving nonquadratic regularization functions, such as entropic regularization, which gives rise to the "exponential method  of multipliers," a method that handles inequality constraints with a twice differentiable augmented Lagrangian function. Since the 1970s, sequential quadratic programming (SQP) and interior point methods (IPM) have had increasing attention, in part because they more easily use sparse matrix subroutines from numerical software libraries, and in part because IPMs have proven complexity results via the theory of self-concordant functions. The augmented Lagrangian method was rejuvenated by the optimization systems LANCELOT, ALGENCAN and AMPL, which allowed sparse matrix techniques to be used on seemingly dense but "partially separable" problems. The method is still useful for some problems. Around 2007 , there was a resurgence of augmented Lagrangian methods in fields such as total-variation denoising and compressed sensing. In particular, a variant of the standard augmented Lagrangian method that uses partial updates (similar to the Gauss–Seidel method for solving linear equations) known as the alternating direction method of multipliers or ADMM gained some attention. General method. Let us say we are solving the following constrained problem: subject to where formula_3 denotes the indices for equality constraints. This problem can be solved as a series of unconstrained minimization problems. For reference, we first list the "k"th step of the penalty  method approach: The penalty method solves this problem, then at the next iteration it re-solves the problem using a larger value of formula_5 (and using the old solution as the initial guess or "warm-start"). The augmented Lagrangian method uses the following unconstrained objective: and after each iteration, in addition to updating formula_5, the variable formula_8 is also updated according to the rule where formula_10 is the solution to the unconstrained problem at the "k"th step, i.e. formula_11 The variable formula_8 is an estimate of the Lagrange multiplier, and the accuracy of this estimate improves at every step. The  major advantage of the method is that unlike the penalty method, it is not necessary to take formula_13 in order to solve the original constrained problem. Instead, because of the presence of the Lagrange multiplier term, formula_14 can stay much smaller, thus avoiding ill-conditioning. Nevertheless, it is common in practical implementations to project multipliers estimates in a large bounded set (safeguards), avoiding numerical instabilities and leading to a strong theoretical convergence. The method can be extended to handle inequality constraints. For a discussion of practical improvements, see. Alternating direction method of multipliers. The alternating direction method of multipliers (ADMM ) is a variant of the augmented Lagrangian scheme that uses partial updates for the dual variables. This method is often applied to solve problems such as This is equivalent to the constrained problem Though this change may seem trivial, the problem can now be attacked using methods of constrained optimization (in particular, the augmented Lagrangian method), and the objective function is separable in "x" and "y". The dual update requires solving a proximity function in "x" and "y" at the same time; the ADMM technique allows this problem to be solved approximately by first solving for "x" with "y" fixed , and then solving for "y" with "x" fixed. Rather than iterate until convergence (like the Jacobi method), the algorithm proceeds directly to updating the dual variable and then repeating the process. This is not equivalent to the exact minimization, but it can still be shown that this method converges to the right answer under some assumptions. Because of this approximation, the algorithm is distinct from the pure augmented Lagrangian method. The ADMM can be viewed as an application of the Douglas-Rachford splitting algorithm, and the Douglas-Rachford algorithm is in turn an instance of the Proximal point algorithm; details  can be found here. There are several modern software packages that solve Basis pursuit and variants and use the ADMM; such packages include YALL1 (2009), SpaRSA (2009) and SALSA (2009). There are also packages that use the ADMM to solve more general problems, some of which can exploit multiple computing cores SNAPVX (2015), parADMM (2016). Stochastic optimization. Stochastic optimization considers the problem of minimizing a loss function with access to noisy samples of the (gradient of the) function. The goal is to have an estimate of the optimal parameter (minimizer) per new sample. ADMM is originally a batch method. However , with some modifications it can also be used for stochastic optimization. Since in stochastic setting we only have access to noisy samples of gradient, we use an inexact approximation of the Lagrangian as formula_17 where formula_18 is a time-varying step size. The alternating direction method of multipliers (ADMM) is a popular method for online and distributed optimization on a large scale, and is employed in many applications, e.g. ADMM is often applied to solve regularized problems, where the function optimization and regularization can be carried out locally, and then coordinated globally via constraints. Regularized optimization problems are especially relevant  in the high dimensional regime since regularization is a natural mechanism to overcome ill-posedness and to encourage parsimony in the optimal solution, e.g., sparsity and low rank. Due to the efficiency of ADMM in solving regularized problems, it has a good potential for stochastic optimization in high dimensions. Software. Open source and non-free/commercial implementations of the augmented Lagrangian method: