How to cite OR-Tools and its solvers

  • OR-Tools offers a suite of solvers (CP-SAT, GLOP, PDLP) and a flexible interface for utilizing various open source and commercial solvers.

  • Publications referencing the CP-SAT solver, its linear solver wrapper, or the Flatzinc backend should cite the provided BibTeX entry for cpsatlp, adjusting the version as needed.

  • The OR-Tools routing library should be cited using the provided BibTeX entry for ortools_routing, with the appropriate version number.

  • For general OR-Tools references, cite the BibTeX entry for ortools, updating the version accordingly.

OR-Tools is a suite of Google solvers (CP-SAT, GLOP, PDLP) and a solver-independent interface that can be used to call a multitude of open source and commercial solvers.

How to cite the CP-SAT solver, or the Flatzinc backend

Any publication referencing the CP-SAT solver, either directly, or through the linear solver wrapper (with the SAT_INTEGER_PROGRAMMING tag) or the flatzinc backend, should cite it as follows, updating the version number as appropriate:

OR-Tools CP-SAT v9.12. Laurent Perron and Frédéric Didier. https://developers.google.com/optimization/cp/cp_solver.

BibTeX:

@software{cpsatlp,
  title = {CP-SAT},
  version = { v9.12 },
  author = {Laurent Perron and Frédéric Didier},
  organization = {Google},
  url = {https://developers.google.com/optimization/cp/cp_solver/},
  date = { 2025-02-17 }
}

The following video of the CPAIOR 2020 masterclass on Constraint Programming can also be used as a reference:

BibTeX:

@misc{cpsatlp_cpaior_masterclass,
  title={CPAIOR 2020 Master Class: Constraint Programming},
  url={https://youtu.be/lmy1ddn4cyw},
  journal={CPAIOR},
  author={CPAIOR},
  year={2020},
  month={Sept.},
}

The following abstract refers to the plenary session given at the CP2023 conference in Toronto:

BibTeX:

@InProceedings{perron_et_al:LIPIcs.CP.2023.3,
  author =  {Perron, Laurent and Didier, Fr\'{e}d\'{e}ric and Gay, Steven},
  title =   {The CP-SAT-LP Solver},
  booktitle =   {29th International Conference on Principles and Practice of Constraint Programming (CP 2023)},
  pages =   {3:1--3:2},
  series =  {Leibniz International Proceedings in Informatics (LIPIcs)},
  ISBN =    {978-3-95977-300-3},
  ISSN =    {1868-8969},
  year =    {2023},
  volume =  {280},
  editor =  {Yap, Roland H. C.},
  publisher =   {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address = {Dagstuhl, Germany},
  URL =     {https://drops.dagstuhl.de/opus/volltexte/2023/19040},
  URN =     {urn:nbn:de:0030-drops-190405},
  doi =     {10.4230/LIPIcs.CP.2023.3},
  annote =  {Keywords: Constraint Programming, Operations Research, Sat Solver}
}

How to cite the routing library

Any publication referencing the OR-Tools routing library should cite it as follows, updating the version number as appropriate:

OR-Tools Routing Library v9.12. Vincent Furnon and Laurent Perron. https://developers.google.com/optimization/routing/.

BibTeX:

@software{ortools_routing,
  title = {OR-Tools Routing Library},
  version = { v9.12 },
  author = {Vincent Furnon and Laurent Perron},
  organization = {Google},
  url = {https://developers.google.com/optimization/routing/},
  date = { 2025-02-17 }
}

Any publication referencing OR-Tools should cite it as follows, updating the version number as appropriate:

OR-Tools v9.12. Laurent Perron and Vincent Furnon. https://developers.google.com/optimization/.

BibTeX:

@software{ortools,
  title = {OR-Tools},
  version = { v9.12 },
  author = {Laurent Perron and Vincent Furnon},
  organization = {Google},
  url = {https://developers.google.com/optimization/},
  date = { 2025-02-17 }
}

Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2026-03-18 UTC.