TimefoldAI/timefold-quickstarts

Get started with Timefold quickstarts here. Optimize the vehicle routing problem, employee rostering, task assignment, maintenance scheduling and other planning problems.

What it solves

This repository provides a collection of reference implementations and quickstart guides to help developers use the Timefold Solver, an AI constraint solver for Java and Kotlin. It demonstrates how to solve complex optimization problems where multiple constraints must be balanced to find the most efficient schedule or allocation.

How it works

The project provides a series of pre-built examples that implement specific business use cases using the Timefold Solver library. These examples show how to define constraints and variables to optimize outcomes, such as minimizing downtime or maximizing resource utilization. While Timefold Solver is a headless library, these quickstarts include rudimentary UIs to visualize the results of the optimization process.

Who it’s for

Java and Kotlin developers who need to implement automated scheduling, routing, or resource allocation logic in their applications.

Highlights

  • Diverse Use Cases: Includes implementations for vehicle routing, employee scheduling, school timetabling, and flight crew scheduling.
  • Multi-Framework Support: Examples are provided for Quarkus, Spring Boot, and standalone Java/Kotlin libraries.
  • CVRPTW Support: Specifically demonstrates Capacitated Vehicle Routing Problem with Time Windows.
  • Broad Optimization Scope: Covers various complex scenarios including facility location, bed allocation in hospitals, and sports league scheduling.

Related

  • Project
  • Project
  • Project
  • Project
  • Project