Combinatorial Optimization at Google tools, solvers, and applications

Поделиться
HTML-код
  • Опубликовано: 8 окт 2024
  • Google Optimization Tools (aka OR-Tools, developers.goo...) is a mature, open source software suite for combinatorial optimization, tuned for tackling the world's toughest problems in i) integer and linear programming, ii) satisfiability and constraint programming, iii) vehicle routing and iv) graph flows. We present the available modeling APIs and solvers. In more details, we explore mixed-integer programming (MIP) and its application at Google in optimization of real-life, large-scale computer systems. In particular, we present MathOpt, a solver agnostic framework to model and solve linear and quadratic problems with many advanced features like incrementality, callbacks and remote solving. We also elaborate on the award-winning CP-SAT solver, and its applicability to solve MIP problems. Finally, we discuss how MIPs are used within a larger production environment. Overall, we show that OR-Tools provides a unified, high-quality experience for efficient combinatorial optimization across multiple platforms (Windows, Linux, Mac) and languages (C++, C#, Python, Java). It is, thus, a great one-stop solution for many academic endeavors and industrial applications.

Комментарии • 3