Skip to content
SpecializedSource checked

ADMM

Solves constrained optimization problems by alternating primal updates and dual correction.

Quick Facts

Compact metadata for implementation and discovery.

Category
Optimization
Difficulty
Advanced
Family
Constrained Optimization
Tier
Specialized
Status
Verified
Review
Source Checked
Sources
1
Formulas
1
Relationships
2
Code example
Ready
Visualization
Ready
Aliases
Alternating Direction Method of Multipliers

Overview

ADMM splits an objective into easier subproblems, coordinates them with an augmented Lagrangian, and updates a dual variable to enforce agreement.

Core Concepts

augmented lagrangianvariable splittingdual updateconstraint residual

Quick facts

Complexity

Runtime and memory behavior at a glance.

Best

O(step cost)

Average

O(iterations * step cost)

Worst

O(iterations * step cost)

Space

O(problem state)

When to Use

  • Use when tuning model parameters needs augmented lagrangian.
  • Use when the input matches the assumptions behind constrained Optimization.

When Not to Use

  • Avoid when the objective is cheap and convex enough for a simpler exact solver.
  • Avoid when a simpler algorithm gives the required result with less setup.

What It Does

  • Solves constrained optimization problems by alternating primal updates and dual correction
  • Uses augmented lagrangian and variable splitting to guide the work.
  • Produces best candidate.

Use Cases

  • Tuning model parameters
  • Searching design spaces
  • Fitting models to noisy data

Inputs

  • Objective function
  • Initial candidate or population
  • Stopping rule

Outputs

  • Best candidate
  • Objective value
  • Search history

Key Formulas (1)

Dual update

unext = u + A·x + B·z − c
u_next = u + A*x + B*z - c

Accumulates constraint violation after primal subproblem updates.

Pseudocode

  1. 1.Prepare the inputs and state needed for ADMM.
  2. 2.Apply the augmented lagrangian step while the stopping condition has not been met.
  3. 3.Update intermediate state and discard invalid candidates.
  4. 4.Return best candidate.

Canonical Example

Input
ADMM input with a small representative case
Output
Best candidate
Explanation
ADMM applies augmented lagrangian to produce best candidate.

Implementation Notes

  • Track both best-so-far and current candidate state.
  • Keep the augmented lagrangian step separate enough to test independently.

Common Pitfalls

  • Stopping too early can make a poor local result look like convergence.
  • Forgetting to check edge cases can make ADMM look correct on only ideal inputs.

Interactive Mechanism Walkthrough

Iterative Convergence & State Trajectory

Plot candidate points, objective values, and improvement steps across iterations.

ADMM mechanism walkthrough step 1 of 4x₀x₁x₂x*
Step 1 of 4: Prepare the inputs and state needed for ADMM.
optimization-mechanism

Notes

ADMM is most reliable when the splitting matches the problem structure and residual tolerances are monitored.

Sources (1)

What each reference supports for this entry.

Boyd ADMM paper

Paper

Foundations and Trends reference for ADMM in distributed optimization and statistical learning.

Open source

Explore Next

Good next jumps from the relationship graph, ranked for useful discovery.

Conceptual neighborProximal Gradient Method

Both use proximal-style updates for structured optimization problems.

Tags

OptimizationConstraint SolvingAlternating DirectionConvex Optimization