google/or-tools

Developer Tools

An open-source solver suite for combinatorial optimization problems, with C++, Python, C# and Java interfaces.

14,298
2,537
C++
Apache-2.0
11 years old

OR-Tools is Google's open-source suite for combinatorial optimization: you describe a problem such as scheduling, routing, allocation or packing, and the library returns a solution. It suits developers and researchers who can express a problem mathematically and want a choice of solver backends rather than a hosted scheduling service.

What it solves

The suite includes CP* and CP-SAT constraint programming solvers, Glop and PDLP linear programming solvers, wrappers around commercial and other open-source solvers including mixed-integer ones, bin packing and knapsack algorithms, Traveling Salesman and Vehicle Routing algorithms, and graph algorithms such as shortest paths and min/max cost flow About OR-Tools. The core is written in C++, with wrappers for Python, C# and Java About OR-Tools.

How a workflow looks

A typical use is a routing or assignment problem: model the variables and constraints, choose a solver, run it, and interpret the returned assignments. Ready-made samples are grouped by component, including routing/constraint solving, SAT, linear solving, and graph algorithms, plus full examples in C++, .NET, Java, Python and Jupyter notebooks Codemap. The project points new users to its developer-guide tutorials and samples rather than to a single command-line tool Quick Start.

Requirements and build paths

The README says the suite has been tested on Ubuntu 18.04 LTS and up (64-bit), macOS Mojave with Xcode 9.x (64-bit), and Windows with Visual Studio 2022 (64-bit) Installation. It builds with Make (described as legacy), CMake or Bazel; each path has its own build instructions, so a working build depends on following the matching one Installation. Binary and source installation options are documented on the installation page Installation instructions. There is also a dedicated installation page rather than one universal prebuilt binary assumption.

Limits to keep in mind

This is a solver library, not an application: the README does not promise that every problem is tractable, and the choice among CP-SAT, linear solvers, and third-party wrappers affects the model form and available results. License is Apache-2.0, which permits commercial use under its terms License.

Written by AI from the project's README, updated October 29, 2026. The project's own docs are the source of truth.

Hacker News

Google's Operations Research Tools
▲ 3 · 0 comments · January 22, 2020
OR-Tools – Google Optimization Tools
▲ 2 · 0 comments · June 23, 2022
OR-Tools - Google Optimization Tools
▲ 2 · 0 comments · August 1, 2019