{"id":7840179,"url":"https://google.github.io/or-tools","last_synced_at":"2025-07-19T03:31:03.069Z","repository":{"id":27618096,"uuid":"31102092","full_name":"google/or-tools","owner":"google","description":"Google's Operations Research tools:","archived":false,"fork":false,"pushed_at":"2024-11-26T09:07:04.000Z","size":1291841,"stargazers_count":11301,"open_issues_count":65,"forks_count":2134,"subscribers_count":305,"default_branch":"stable","last_synced_at":"2024-11-26T09:13:27.925Z","etag":null,"topics":["combinatorial-optimization","linear-programming","operations-research","optimization","or-tools"],"latest_commit_sha":null,"homepage":"https://developers.google.com/optimization/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/google.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-02-21T01:25:35.000Z","updated_at":"2024-11-26T08:10:11.000Z","dependencies_parsed_at":"2023-02-17T19:31:30.876Z","dependency_job_id":"5b1ff163-ca04-439c-939c-719dc4904b3c","html_url":"https://github.com/google/or-tools","commit_stats":{"total_commits":11380,"total_committers":173,"mean_commits":65.78034682080924,"dds":0.6921792618629174,"last_synced_commit":"1d696f9108a0ebfd99feb73b9211e2f5a6b0812b"},"previous_names":[],"tags_count":49,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2For-tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2For-tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2For-tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/google%2For-tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/google","download_url":"https://codeload.github.com/google/or-tools/tar.gz/refs/heads/stable","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226514987,"owners_count":17645157,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["combinatorial-optimization","linear-programming","operations-research","optimization","or-tools"],"created_at":"2024-04-13T00:15:49.603Z","updated_at":"2024-11-26T10:31:16.251Z","avatar_url":"https://github.com/google.png","language":"C++","readme":"# OR-Tools - Google Optimization Tools\n\n[![PyPI version](https://img.shields.io/pypi/v/ortools.svg)](https://pypi.org/project/ortools/)\n[![PyPI download](https://img.shields.io/pypi/dm/ortools.svg)](https://pypi.org/project/ortools/#files)\n[![Binder](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/google/or-tools/main)\n\\\n[![NuGet version](https://img.shields.io/nuget/v/Google.OrTools.svg)](https://www.nuget.org/packages/Google.OrTools)\n[![NuGet download](https://img.shields.io/nuget/dt/Google.OrTools.svg)](https://www.nuget.org/packages/Google.OrTools)\n\\\n[![Maven Central](https://img.shields.io/maven-central/v/com.google.ortools/ortools-java)](https://mvnrepository.com/artifact/com.google.ortools/ortools-java)\n\\\n[![Discord](https://img.shields.io/discord/693088862481678374?color=7289DA\u0026logo=discord\u0026style=plastic)](https://discord.gg/ENkQrdf)\n\nGoogle's software suite for combinatorial optimization.\n\n## Table of Contents\n\n*   [About OR-Tools](#about)\n*   [Codemap](#codemap)\n*   [Installation](#installation)\n*   [Quick Start](#quick-start)\n*   [Documentation](#documentation)\n*   [Contributing](#contributing)\n*   [License](#license)\n\n\u003ca name=\"about\"\u003e\u003c/a\u003e\n## About OR-Tools\n\nGoogle Optimization Tools (a.k.a., OR-Tools) is an open-source, fast and\nportable software suite for solving combinatorial optimization problems.\n\nThe suite contains:\n\n*   Two constraint programming solver (CP* and CP-SAT);\n*   Two linear programming solvers (Glop and PDLP);\n*   Wrappers around commercial and other open source solvers, including mixed\n    integer solvers;\n*   Bin packing and knapsack algorithms;\n*   Algorithms for the Traveling Salesman Problem and Vehicle Routing Problem;\n*   Graph algorithms (shortest paths, min cost flow, max flow, linear sum\n    assignment).\n\nWe wrote OR-Tools in C++, but provide wrappers in Python, C# and Java.\n\n## Codemap\n\nThis software suite is composed of the following components:\n\n*   [Makefile](Makefile) Top-level for\n    [GNU Make](https://www.gnu.org/software/make/manual/make.html) based build.\n*   [makefiles](makefiles) Subsidiary Make files, CI and build system documentation.\n*   [CMakeLists.txt](CMakeLists.txt) Top-level for\n    [CMake](https://cmake.org/cmake/help/latest/) based build.\n*   [cmake](cmake) Subsidiary CMake files, CI and build system documentation.\n*   [WORKSPACE](WORKSPACE) Top-level for\n    [Bazel](https://bazel.build/start/bazel-intro) based build.\n*   [bazel](bazel) Subsidiary Bazel files, CI and build system documentation.\n*   [ortools](ortools) Root directory for source code.\n    *   [base](ortools/base) Basic utilities.\n    *   [algorithms](ortools/algorithms) Basic algorithms.\n        *   [samples](ortools/algorithms/samples) Carefully crafted samples.\n    *   [graph](ortools/graph) Graph algorithms.\n        *   [samples](ortools/graph/samples) Carefully crafted samples.\n    *   [linear_solver](ortools/linear_solver) Linear solver wrapper.\n        *   [samples](ortools/linear_solver/samples) Carefully crafted samples.\n    *   [glop](ortools/glop) Simplex-based linear programming solver.\n        *   [samples](ortools/glop/samples) Carefully crafted samples.\n    *   [pdlp](ortools/pdlp) First-order linear programming solver.\n        *   [samples](ortools/pdlp/samples) Carefully crafted samples.\n    *   [lp_data](ortools/lp_data) Data structures for linear models.\n    *   [constraint_solver](ortools/constraint_solver) Constraint and Routing\n        solver.\n        *   [docs](ortools/constraint_solver/docs) Documentation of the component.\n        *   [samples](ortools/constraint_solver/samples) Carefully crafted samples.\n    *   [sat](ortools/sat) SAT solver.\n        *   [docs](ortools/sat/docs) Documentation of the component.\n        *   [samples](ortools/sat/samples) Carefully crafted samples.\n    *   [bop](ortools/bop) Boolean solver based on SAT.\n    *   [util](ortools/util) Utilities needed by the constraint solver\n*   [examples](examples) Root directory for all examples.\n    *   [contrib](examples/contrib) Examples from the community.\n    *   [cpp](examples/cpp) C++ examples.\n    *   [dotnet](examples/dotnet) .Net examples.\n    *   [java](examples/java) Java examples.\n    *   [python](examples/python) Python examples.\n    *   [notebook](examples/notebook) Jupyter/IPython notebooks.\n    *   [flatzinc](examples/flatzinc) FlatZinc examples.\n    *   [tests](examples/tests) Unit tests and bug reports.\n*   [tools](tools) Delivery Tools (e.g. Windows GNU binaries, scripts, release dockers)\n\n## Installation\n\nThis software suite has been tested under:\n\n*   Ubuntu 18.04 LTS and up (64-bit);\n*   Apple macOS Mojave with Xcode 9.x (64-bit);\n*   Microsoft Windows with Visual Studio 2022 (64-bit).\n\nOR-Tools currently builds with a Makefile, but also provides Bazel and CMake\nsupport.\n\nFor installation instructions (both source and binary), please visit\nhttps://developers.google.com/optimization/introduction/installing.\n\n### Build from source using Make (legacy)\n\nWe provide a Make based build.\u003cbr\u003ePlease check the\n[Make build instructions](makefiles/README.md).\n\n### Build from source using CMake\n\nWe provide a CMake based build.\u003cbr\u003ePlease check the\n[CMake build instructions](cmake/README.md).\n\n### Build from source using Bazel\n\nWe provide a Bazel based build.\u003cbr\u003ePlease check the\n[Bazel build instructions](bazel/README.md).\n\n## Quick Start\n\nThe best way to learn how to use OR-Tools is to follow the tutorials in our\ndeveloper guide:\n\nhttps://developers.google.com/optimization/introduction/get_started\n\nIf you want to learn from code examples, take a look at the examples in the\n[examples](examples) directory.\n\n## Documentation\n\nThe complete documentation for OR-Tools is available at:\nhttps://developers.google.com/optimization/\n\n## Contributing\n\nThe [CONTRIBUTING.md](CONTRIBUTING.md) file contains instructions on how to\nsubmit the Contributor License Agreement before sending any pull requests (PRs).\nOf course, if you're new to the project, it's usually best to discuss any\nproposals and reach consensus before sending your first PR.\n\n## License\n\nThe OR-Tools software suite is licensed under the terms of the Apache License 2.0.\n\u003cbr\u003eSee [LICENSE](LICENSE) for more information.\n","funding_links":[],"categories":["Table of Contents"],"sub_categories":["Reading"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/google.github.io%2For-tools","html_url":"https://awesome.ecosyste.ms/projects/google.github.io%2For-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/google.github.io%2For-tools/lists"}