  The DC optimal power flow (DCOPF) problem is a fundamental problem in power
systems operations and planning. With high penetration of uncertain renewable
resources in power systems, DCOPF needs to be solved repeatedly for a large
amount of scenarios, which can be computationally challenging. As an
alternative to iterative solvers, neural networks are often trained and used to
solve DCOPF. These approaches can offer orders of magnitude reduction in
computational time, but they cannot guarantee generalization, and small
training error does not imply small testing errors. In this work, we propose a
novel algorithm for solving DCOPF that guarantees the generalization
performance. First, by utilizing the convexity of DCOPF problem, we train an
input convex neural network. Second, we construct the training loss based on
KKT optimality conditions. By combining these two techniques, the trained model
has provable generalization properties, where small training error implies
small testing errors. In experiments, our algorithm improves the optimality
ratio of the solutions by a factor of five in comparison to end-to-end models.
