Timezone: »

 
PyEPO: A PyTorch-based End-to-End Predict-then-Optimize Library with Linear Objective Function
Bo Tang · Elias Khalil
Event URL: https://openreview.net/forum?id=IK9zAk5v4cd »

In many practical settings, some parameters of an optimization problem may be a priori unknown but can be estimated from historical data. Recently, end-to-end predict-then-optimize has emerged as an attractive alternative to the two-stage approach of separately fitting a predictive model for the unknown parameters, then optimizing. In this work, we present the PyEPO package, a PyTorch-based end-to-end predict-then-optimize library in Python for linear and integer programming. It provides two base algorithms: the first is based on the convex surrogate loss function from the seminal work of Elmachtoub & Grigas (2021), and the second is based on the differentiable black-box solver approach of Vlastelica et al. (2019). PyEPO provides a simple interface for the definition of new optimization problems, the implementation of state-of-the-art predict-then-optimize training algorithms, the use of custom neural network architectures, and the comparison of end-to-end approaches with the two-stage approach.

Author Information

Bo Tang (University of Toronto)
Bo Tang

I am a Ph.D. candidate in the MIE department at the University of Toronto. Elias Khalil is my supervisor. And my current research area is the intersection of Operations Research and Machine learning, particularly in End-to-End Predict-then-Optimize.

Elias Khalil (University of Toronto)

More from the Same Authors