Share your thoughts, 1 month free Claude Pro on usSee more
WorkDL logo mark

Contrastive Losses and Solution Caching for Predict-and-Optimize

About

Many decision-making processes involve solving a combinatorial optimization problem with uncertain input that can be estimated from historic data. Recently, problems in this class have been successfully addressed via end-to-end learning approaches, which rely on solving one optimization problem for each training instance at every epoch. In this context, we provide two distinct contributions. First, we use a Noise Contrastive approach to motivate a family of surrogate loss functions, based on viewing non-optimal solutions as negative examples. Second, we address a major bottleneck of all predict-and-optimize approaches, i.e. the need to frequently recompute optimal solutions at training time. This is done via a solver-agnostic solution caching scheme, and by replacing optimization calls with a lookup in the solution cache. The method is formally based on an inner approximation of the feasible space and, combined with a cache lookup strategy, provides a controllable trade-off between training time and accuracy of the loss approximation. We empirically show that even a very slow growth rate is enough to match the quality of state-of-the-art methods, at a fraction of the computational cost.

Maxime Mulamba, Jayanta Mandi, Michelangelo Diligenti, Michele Lombardi, Victor Bucarey, Tias Guns• 2020

Related benchmarks

TaskDatasetResultRank
Traveling Salesman ProblemTSP-500 (test)--
95
Traveling Salesman ProblemTSP-1000 (test)
Optimality Gap1
57
Shortest PathShortest Path Degree 2, 4, 6, 8 (test)
Average Relative Regret9.59
32
Knapsack ProblemKnapsack Degree 2, 4, 6, 8 (test)
Average Relative Regret20.07
32
Portfolio OptimizationPortfolio Degree 2, 4, 6, 8 (test)
Average Relative Regret7.81
32
Traveling Salesperson ProblemTSP-100 (test)
Total Time (s)77
16
Combinatorial Auction Knapsack ProblemCAKS500 (test)
Regret0.96
15
Combinatorial Auction Knapsack ProblemCAKS100 (test)
Regret0.98
15
Combinatorial Auction Knapsack ProblemCAKS1000 (test)
Regret1
15
Knapsack ProblemKS500 (test)
Regret0.94
15
Showing 10 of 16 rows

Other info

Follow for update