Google Optimization Tools, also known as OR-Tools is an open-source, fast and portable software suite for solving combinatorial optimization problems. These encompass problems in vehicle routing, flows, integer and linear programming, and constraint programming. This suite contains a number of solvers, namely: a constraint programming solver; a linear programming solver; wrappers for commercial solvers (like Gurobi or CPLEX) and other open source solvers (SCIP, GLPK, etc.); among others. OR-Tools is written in C++, but comes with wrappers for Python, C# and Java. Once you model your problem in your preferred programming language, you can then use any of OR-Tools’ available solvers.
OR-Tools is an award-winning project, having won three gold medals in the 2020 MiniZinc Challenge, the international constraint programming competition.
Features
- A constraint programming solver
- A linear programming solver
- Wrappers around commercial and other open source solvers, including mixed integer solvers
- Bin packing and knapsack algorithms
- Algorithms for the Traveling Salesman Problem and Vehicle Routing Problem
- Graph algorithms
- Has wrappers in Python, C# and Java