The alternating direction method of multipliers (ADMM) originated in the 1970s as a decomposition-coordination method for solving optimization problems. It has recently experienced a revival due to its highly distributed and parallel nature. It is typically applied when the objective function can be decomposed into a sum of functions over a set of shared variables. ADMM iteratively optimizes each function independently and uses update rules that enforce a consensus among the values of the shared variables.