Table of Contents
Fetching ...

Deep Learning for Two-Stage Robust Integer Optimization

Justin Dumouchelle, Esther Julien, Jannis Kurtz, Elias B. Khalil

TL;DR

Neur2RO, a deep-learning-augmented instantiation of the column-and-constraint-generation (CCG) algorithm, which expands the applicability of the 2RO framework to large-scale instances with integer decisions in both stages, and produces high-quality solutions quickly.

Abstract

Robust optimization is an established framework for modeling optimization problems with uncertain parameters. While static robust optimization is often criticized for being too conservative, two-stage (or adjustable) robust optimization (2RO) provides a less conservative alternative by allowing some decisions to be made after the uncertain parameters have been revealed. Unfortunately, in the case of integer decision variables, existing solution methods for 2RO typically fail to solve large-scale instances, limiting the applicability of this modeling paradigm to simple cases. We propose Neur2RO, a deep-learning-augmented instantiation of the column-and-constraint-generation (CCG) algorithm, which expands the applicability of the 2RO framework to large-scale instances with integer decisions in both stages. A custom-designed neural network is trained to estimate the optimal value and feasibility of the second-stage problem. The network can be incorporated into CCG, leading to more computationally tractable subproblems in each of its iterations. The resulting algorithm enjoys approximation guarantees which depend on the neural network's prediction error. In our experiments, Neur2RO produces high-quality solutions quickly, outperforming state-of-the-art methods on two-stage knapsack, capital budgeting, and facility location problems. Compared to existing methods, which often run for hours, Neur2RO finds better solutions in a few seconds or minutes. Our code is available at https://github.com/khalil-research/Neur2RO.

Deep Learning for Two-Stage Robust Integer Optimization

TL;DR

Neur2RO, a deep-learning-augmented instantiation of the column-and-constraint-generation (CCG) algorithm, which expands the applicability of the 2RO framework to large-scale instances with integer decisions in both stages, and produces high-quality solutions quickly.

Abstract

Robust optimization is an established framework for modeling optimization problems with uncertain parameters. While static robust optimization is often criticized for being too conservative, two-stage (or adjustable) robust optimization (2RO) provides a less conservative alternative by allowing some decisions to be made after the uncertain parameters have been revealed. Unfortunately, in the case of integer decision variables, existing solution methods for 2RO typically fail to solve large-scale instances, limiting the applicability of this modeling paradigm to simple cases. We propose Neur2RO, a deep-learning-augmented instantiation of the column-and-constraint-generation (CCG) algorithm, which expands the applicability of the 2RO framework to large-scale instances with integer decisions in both stages. A custom-designed neural network is trained to estimate the optimal value and feasibility of the second-stage problem. The network can be incorporated into CCG, leading to more computationally tractable subproblems in each of its iterations. The resulting algorithm enjoys approximation guarantees which depend on the neural network's prediction error. In our experiments, Neur2RO produces high-quality solutions quickly, outperforming state-of-the-art methods on two-stage knapsack, capital budgeting, and facility location problems. Compared to existing methods, which often run for hours, Neur2RO finds better solutions in a few seconds or minutes. Our code is available at https://github.com/khalil-research/Neur2RO.
Paper Structure (68 sections, 2 theorems, 37 equations, 5 figures, 8 tables, 4 algorithms)

This paper contains 68 sections, 2 theorems, 37 equations, 5 figures, 8 tables, 4 algorithms.

Key Result

Theorem 1

If ${\mathcal{X}}$ is finite, then alg:CCG_neur2ro terminates after a finite number of iterations.

Figures (5)

  • Figure 1: The neural network architecture for learning-augmented CCG. To distinguish between instance parameters related to the first-stage decisions and the scenario, we use $\pi_{\mathbf{x}}^{(i)}$ and $\pi_{\boldsymbol{\xi}}^{(j)}$ as parameters specific to the $i$-th first-stage decision and the $j$-th scenario index, respectively. $\bigoplus$ denotes the aggregation (summation) of vectors.
  • Figure 2: Box plot of relative errors for $\textsc{N}_{\textsc{MILP}}$, $\textsc{N}_{\textsc{IPO}}$, SRO, and BP on knapsack instances. Each box contains the relative errors over 18 instances. The uncorrelated, weakly correlated, almost strongly correlated, and strongly correlated instances are in the top-left, top-right, bottom-left, and bottom-right, respectively.
  • Figure 3: Box plot of relative errors for $\textsc{N}_{\textsc{MILP}}$, $\textsc{N}_{\textsc{IPO}}$, SRO, and $k$-adaptability on capital budgeting instances. Each box contains the relative errors over 50 instances.
  • Figure 4: Box plot of relative errors for $\textsc{N}_{\textsc{MILP}}$, $\textsc{N}_{\textsc{IPO}}$, $\textsc{N}_{\textsc{NGC}}$, SRO, and $k$-adaptability on facility location instances. Only feasible solutions are used to compute the relative error, and the percentage of possible solutions for each instance size and method are provided below the respective boxplot. For algorithms that do not compute feasible solutions for any of the instances, no boxes are plotted. Each box contains the relative errors over 30 instances excluding infeasible cases.
  • Figure 5: Training and validation loss over training epochs for Knapsack, Capital Budgeting, and Facility Location.

Theorems & Definitions (4)

  • Theorem 1
  • proof
  • Theorem 2
  • proof