  Large optimization problems with hard constraints arise in many settings, yet
classical solvers are often prohibitively slow, motivating the use of deep
networks as cheap "approximate solvers." Unfortunately, naive deep learning
approaches typically cannot enforce the hard constraints of such problems,
leading to infeasible solutions. In this work, we present Deep Constraint
Completion and Correction (DC3), an algorithm to address this challenge.
Specifically, this method enforces feasibility via a differentiable procedure,
which implicitly completes partial solutions to satisfy equality constraints
and unrolls gradient-based corrections to satisfy inequality constraints. We
demonstrate the effectiveness of DC3 in both synthetic optimization tasks and
the real-world setting of AC optimal power flow, where hard constraints encode
the physics of the electrical grid. In both cases, DC3 achieves near-optimal
objective values while preserving feasibility.
