# google/or-tools

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/google-or-tools).**

13,114 stars · 2,364 forks · C++ · apache-2.0

## Links

- GitHub: https://github.com/google/or-tools
- Homepage: https://developers.google.com/optimization/
- awesome-repositories: https://awesome-repositories.com/repository/google-or-tools.md

## Topics

`combinatorial-optimization` `linear-programming` `operations-research` `optimization` `or-tools`

## Description

OR-Tools is a software suite for combinatorial optimization, constraint programming, and mathematical modeling. It provides a framework for defining complex problems involving variables and logical constraints, enabling the systematic search for feasible or optimal solutions.

The project features a high-performance core engine written in C++ that utilizes branch and bound search and local search metaheuristics to navigate large solution spaces. A language-agnostic wrapper layer allows these optimization capabilities to be accessed through idiomatic interfaces in multiple high-level programming languages.

The library supports a broad range of practical applications, including resource scheduling, supply chain network design, and vehicle routing logistics. It includes a unified mathematical programming abstraction that connects custom problem definitions to a variety of internal and external solver engines.

## Tags

### Scientific & Mathematical Computing

- [Optimization & Solvers](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/optimization-solvers.md) — Acts as a comprehensive library for modeling and solving combinatorial optimization problems like routing and scheduling.
- [Constraint Solvers](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/optimization-solvers/constraint-solvers.md) — Provides a framework for solving problems defined by logical constraints and variable domains.
- [Mathematical Libraries and Utilities](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/mathematical-libraries-and-utilities.md) — Offers a toolkit for defining and solving linear, integer, and constraint programming models.
- [Combinatorial Optimization Problems](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/algorithms-and-complexity/algorithms/algorithmic-problems/combinatorial-optimization-problems.md) — Enables modeling complex tasks as mathematical programs to evaluate combinations of variables for optimal solutions. ([source](https://developers.google.com/optimization/))
- [Metaheuristic Optimization](https://awesome-repositories.com/f/scientific-mathematical-computing/numerical-mathematical-foundations/optimization-solvers/metaheuristic-optimization.md) — Utilizes local search metaheuristics to iteratively refine candidate solutions in computationally difficult scenarios.

### Business & Productivity Software

- [Vehicle Routing Systems](https://awesome-repositories.com/f/business-productivity-software/vehicle-routing-systems.md) — Calculates efficient delivery routes and schedules for vehicle fleets while accounting for capacity and time constraints.
- [Supply Chain Network Design Tools](https://awesome-repositories.com/f/business-productivity-software/supply-chain-network-design-tools.md) — Enables the design of optimal supply chain networks by determining warehouse and distribution center placement.

### Education & Learning Resources

- [Constraint Programming](https://awesome-repositories.com/f/education-learning-resources/technical-domain-education/technical-academic-domains/ai-data-science-education/constraint-programming.md) — Provides a declarative framework for defining and solving problems using logical constraints and variable domains.

### Artificial Intelligence & ML

- [Optimization Engines](https://awesome-repositories.com/f/artificial-intelligence-ml/machine-learning/infrastructure/model-inference-serving/inference-engines/c-inference-backends/c-based-engines/optimization-engines.md) — Provides a high-performance C++ core engine for executing complex mathematical optimization algorithms.
- [Language Bindings](https://awesome-repositories.com/f/artificial-intelligence-ml/language-agnostic-connectors/language-bindings.md) — Uses Swig to generate idiomatic wrappers that allow optimization capabilities to be accessed from multiple programming languages.

### System Administration & Monitoring

- [Operational Schedulers](https://awesome-repositories.com/f/system-administration-monitoring/resource-scheduling/operational-schedulers.md) — Supports complex resource scheduling by assigning tasks and equipment to maximize productivity while adhering to availability constraints.

### DevOps & Infrastructure

- [Search Algorithms](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/version-control-systems/branch-merging-strategies/branch-protections/search-algorithms.md) — Implements branch and bound search algorithms to navigate large solution spaces for optimization problems.

### Software Engineering & Architecture

- [Integration Abstraction Layers](https://awesome-repositories.com/f/software-engineering-architecture/integration-abstraction-layers.md) — Provides a unified API abstraction layer to connect custom problem definitions to various internal and external solver engines.
