# Learning Linear Programs from Optimal Decisions

arXiv: https://arxiv.org/abs/2006.08923 · HTML: https://mlsanity.com/paper/2006.08923/

## Key facts

- Cited by 18 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 16 Jun 2020.

## Built on by (most cited first, 18 of 18)

- [Decision-Focused Learning: Foundations, State of the Art, Benchmark and Future Opportunities](https://mlsanity.com/paper/2307.13565/) (2023)
- [Strategic Classification Made Practical](https://mlsanity.com/paper/2103.01826/) (2021)
- [CombOptNet: Fit the Right NP-Hard Problem by Learning Integer Programming Constraints](https://mlsanity.com/paper/2105.02343/) (2021)
- [Backpropagation through Combinatorial Algorithms: Identity with Projection Works](https://mlsanity.com/paper/2205.15213/) (2022)
- [Maximum Optimality Margin: A Unified Approach for Contextual Linear Programming and Inverse Linear Programming](https://mlsanity.com/paper/2301.11260/) (2023)
- [Neuro-Symbolic Constraint Programming for Structured Prediction](https://mlsanity.com/paper/2103.17232/) (2021)
- [Generalization Bound and Learning Methods for Data-Driven Projections in Linear Programming](https://mlsanity.com/paper/2309.00203/) (2023)
- [Differentiation Through Black-Box Quadratic Programming Solvers](https://mlsanity.com/paper/2410.06324/) (2024)
- [Online Inverse Linear Optimization: Efficient Logarithmic-Regret Algorithm, Robustness to Suboptimality, and Lower Bound](https://mlsanity.com/paper/2501.14349/) (2025)
- [Revisiting Online Learning Approach to Inverse Linear Optimization: A Fenchel-Young Loss Perspective and Gap-Dependent Regret Analysis](https://mlsanity.com/paper/2501.13648/) (2025)
- [A Solver-Free Framework for Scalable Learning in Neural ILP Architectures](https://mlsanity.com/paper/2210.09082/) (2022)
- [Using Inverse Optimization to Learn Cost Functions in Generalized Nash Games](https://mlsanity.com/paper/2102.12415/) (2021)
- [Learning Mixed-Integer Linear Programs from Contextual Examples](https://mlsanity.com/paper/2107.07136/) (2021)
- [Gradient boosting for convex cone predict and optimize problems](https://mlsanity.com/paper/2204.06895/) (2022)
- [Social-Inverse: Inverse Decision-making of Social Contagion Management with Task Migrations](https://mlsanity.com/paper/2209.10493/) (2022)
- [Inverse Optimization Latent Variable Models for Learning Costs Applied to Route Problems](https://mlsanity.com/paper/2509.15999/) (2025)
- [Uncovering expert objectives in production planning via inverse optimization: An industrial case study](https://mlsanity.com/paper/2608.07398/) (2026)
- [TACIT: Optimization Models that Learn from Their Mistakes](https://mlsanity.com/paper/2609.38434/) (2026)

## Abstract (arXiv)

We propose a flexible gradient-based framework for learning linear programs from optimal decisions. Linear programs are often specified by hand, using prior knowledge of relevant costs and constraints. In some applications, linear programs must instead be learned from observations of optimal decisions. Learning from optimal decisions is a particularly challenging bi-level problem, and much of the related inverse optimization literature is dedicated to special cases. We tackle the general problem, learning all parameters jointly while allowing flexible parametrizations of costs, constraints, and loss functions. We also address challenges specific to learning linear programs, such as empty feasible regions and non-unique optimal decisions. Experiments show that our method successfully learns synthetic linear programs and minimum-cost multi-commodity flow instances for which previous methods are not directly applicable. We also provide a fast batch-mode PyTorch implementation of the homogeneous interior point algorithm, which supports gradients by implicit differentiation or backpropagation.
