Learning with Combinatorial Optimization Layers: a Probabilistic Approach

Guillaume Dalle, Léo Baty, Louis Bouvier, Axel Parmentier
7/27/2022
stat.MLcs.LGmath.OC

No official code found. Best implementation: JuliaDecisionFocusedLearning/InferOpt.jl (131 stars, MIT, last commit 2025-11-24). 3 more below.

Abstract

Combinatorial optimization (CO) layers in machine learning (ML) pipelines are a powerful tool to tackle data-driven decision tasks, but they come with two main challenges. First, the solution of a CO problem often behaves as a piecewise constant function of its objective parameters. Given that ML pipelines are typically trained using stochastic gradient descent, the absence of slope information is very detrimental. Second, standard ML losses do not work well in combinatorial settings. A growing body of research addresses these challenges through diverse methods. Unfortunately, the lack of well-maintained implementations slows down the adoption of CO layers. In this paper, building upon previous works, we introduce a probabilistic perspective on CO layers, which lends itself naturally to approximate differentiation and the construction of structured losses. We recover many approaches from the literature as special cases, and we also derive new ones. Based on this unifying perspective, we present InferOpt.jl, an open-source Julia package that 1) allows turning any CO oracle with a linear objective into a differentiable layer, and 2) defines adequate losses to train pipelines containing such layers. Our library works with arbitrary optimization algorithms, and it is fully compatible with Julia's ML ecosystem. We demonstrate its abilities using a pathfinding problem on video game maps as guiding example, as well as three other applications from operations research.

View on arXivView PDF

Code Implementations(4)

MIT

Combinatorial optimization layers for machine learning pipelines

1315JuliaApr 12, 202211 months agoMIT
automatic-differentiationcombinatorial-optimizationjuliamachine-learningstructured-learning
MIT

Application of InferOpt.jl to the Stochastic Vehicle Scheduling Problem

50JuliaMay 17, 20228 months agoMIT
combinatorial-optimizationjuliamachine-learningstochastic-vehicle-schedulingstructured-learning+1 more
MIT
41JuliaMay 23, 20221 years agoMIT
MIT

Minimum Weight Two Stage Spanning tree: Mathematical Programming algorithms and Combinatorial Optimization Layers in ML pipelines

40JuliaOct 18, 20223 years agoMIT

Similar Papers

Cite this paper

@article{dalle2022learning,
  title  = {Learning with Combinatorial Optimization Layers: a Probabilistic Approach},
  author = {Guillaume Dalle and Léo Baty and Louis Bouvier and Axel Parmentier},
  year   = {2022},
  eprint = {2207.13513},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2207.13513v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2207.13513.svg)](https://codeofpaper.com/paper/2207.13513)

Discussion