Software:OR-Tools
Original author(s) | Laurent Perron |
---|---|
Developer(s) | Google Optimization team[1] |
Initial release | September 15, 2010 |
Stable release | v9.4.1874[2]
/ August 12, 2022 |
Repository | github |
Written in | C++ |
Operating system | Linux, macOS, Microsoft Windows |
Type | Library |
License | Apache License 2.0 |
Website | developers |
Google OR-Tools is a free and open-source software suite developed by Google for solving linear programming (LP), mixed integer programming (MIP), constraint programming (CP), vehicle routing (VRP), and related optimization problems.[3][4]
OR-Tools is a set of components written in C++ but provides wrappers for Java, .NET and Python.
It is distributed under the Apache License 2.0.[5]
History
OR-Tools was created by Laurent Perron in 2011.[6]
In 2014, Google's open source linear programming solver, GLOP, was released as part of OR-Tools.[1]
The CP-SAT solver[7] bundled with OR-Tools won a total of eleven gold medals between 2018 and 2020 in the MiniZinc Challenge,[8] an international constraint programming competition.
Features
The OR-Tools supports a variety of programming languages, including:
- Object-oriented interfaces for C++[9]
- A Java wrapper package[10]
- A .NET and .NET Framework wrapper package[11]
- A Python wrapper package[12]
OR-Tools supports a wide range of problem types,[13][3] among them:
- Assignment problem[14][15]
- Linear programming
- Mixed-integer programming[16]
- Constraint programming[7]
- Vehicle routing problem[14][17]
- Network flow algorithms
It supports the FlatZinc modeling language.[18]
See also
References
- ↑ 1.0 1.1 "Sudoku, Linear Optimization, and the Ten Cent Diet". https://ai.googleblog.com/2014/09/sudoku-linear-optimization-and-ten-cent.html.
- ↑ "Release v9.4". https://github.com/google/or-tools/releases/tag/v9.4.
- ↑ 3.0 3.1 "Google OR-Tools a guide". February 24, 2019. https://medium.com/google-or-tools/google-or-tools-a-guide-39f439a5cd0f.
- ↑ "We help you implement OR-tools technology". https://www.solvice.io/technology/or-tools.
- ↑ "LICENSE-2.0.txt". https://github.com/google/or-tools/blob/stable/LICENSE-2.0.txt.
- ↑ Perron, Laurent (2011-07-01). "Operations Research and Constraint Programming at Google". Lee J. (Eds) Principles and Practice of Constraint Programming – CP 2011. Lecture Notes in Computer Science 6876: 2. doi:10.1007/978-3-642-23786-7_2. ISBN 978-3-642-23786-7.
- ↑ 7.0 7.1 "How the CP-SAT solver works". April 25, 2020. https://www.xiang.dev/explaining-cp-sat/.
- ↑ "The MiniZinc Challenge". https://www.minizinc.org/challenge.html.
- ↑ "Homebrew package". https://formulae.brew.sh/formula/or-tools.
- ↑ "com.google.ortools:ortools-java". https://mvnrepository.com/artifact/com.google.ortools/ortools-java.
- ↑ "Google.OrTools". https://www.nuget.org/packages/Google.OrTools/.
- ↑ "ortools". https://pypi.org/project/ortools/.
- ↑ "OR-Tools introduction". https://developers.google.com/optimization/introduction/overview.
- ↑ 14.0 14.1 "Application of Google OR-Tools". https://www.kaggle.com/jpmiller/application-of-google-or-tools.
- ↑ "Google OR-Tools. Business value and potential". https://freshcodeit.com/google-or-tools.
- ↑ Louat, Christophe (2009). Etude et mise en œuvre de stratégies de coupes efficaces pour des problèmes entiers mixtes 0-1 (PhD). 1. Université de Versailles Saint-Quentin-en-Yvelines. p. 144.
- ↑ "Routing use case". https://activimetrics.com/blog/ortools/multiday_tsp.
- ↑ "Software with FlatZinc implementations". https://www.minizinc.org/software.html#flatzinc.
Bibliography
- Kruk, Serge (February 26, 2018). Practical Python AI Projects: Mathematical Models of Optimization Problems with Google OR-Tools (1st ed.). O'Reilly Media. ISBN 9781484234235. https://www.oreilly.com/library/view/practical-python-ai/9781484234235/.
- Da Col, Giacomo; Teppan, Eric C. (2019). "Google vs IBM: A Constraint Solving Challenge on the Job-Shop Scheduling Problem". Electronic Proceedings in Theoretical Computer Science (Open Publishing Association) 306: 259-265. doi:10.4204/eptcs.306.30. ISSN 2075-2180. http://dx.doi.org/10.4204/EPTCS.306.30.
- Li, Mengyun; Chow, Joseph (April 2021). "School Bus Routing Problem with a Mixed Ride, Mixed Load, and Heterogeneous Fleet". Transportation Research Record Journal of the Transportation Research Board 2675 (7): 467-479. doi:10.1177/03611981211016860.
External links
Original source: https://en.wikipedia.org/wiki/OR-Tools.
Read more |