TimefoldAI / timefold-quickstarts

Get started with Timefold quickstarts here. Optimize the vehicle routing problem, employee rostering, task assignment, maintenance scheduling and other planning problems.
https://timefold.ai
Apache License 2.0
238 stars 76 forks source link
artificial-intelligence constraint-programming cvrp employee-scheduling gradle java job-shop-scheduling kotlin maintenance-scheduling maven operations-research optimization-library planning-algorithms python quarkus resource-allocation spring-boot vehicle-routing-problem vrptw

= Timefold Quickstarts

Planning optimization made easy. + https://timefold.ai[timefold.ai]

== Overview of all Quickstarts

|=== |Use case quickstarts |Technology quickstarts

a|* <<vehicle-routing, Vehicle Routing>>

a|* link:java/hello-world/README.adoc[Java (Hello World)] (Java, Maven or Gradle)

== Use cases

=== Vehicle Routing

Find the most efficient routes for vehicles to reach visits, taking into account vehicle capacity and time windows when visits are available. Sometimes also called "CVRPTW".

image::java/vehicle-routing/vehicle-routing-screenshot.png[]

=== Maintenance scheduling

Schedule maintenance jobs to crews over time to reduce both premature and overdue maintenance.

image::java/maintenance-scheduling/maintenance-scheduling-screenshot.png[]

=== Employee Scheduling

Schedule shifts to employees, accounting for employee availability and shift skill requirements.

image::java/employee-scheduling/employee-scheduling-screenshot.png[]

=== Food Packaging

Schedule food packaging orders to manufacturing lines, to minimize downtime and fulfill all orders in time.

image::java/food-packaging/food-packaging-screenshot.png[]

=== Order Picking

Generate an optimal picking plan for completing a set of orders.

image::java/order-picking/order-picking-screenshot.png[]

=== School timetabling

Assign lessons to timeslots and rooms to produce a better schedule for teachers and students.

image::java/school-timetabling/school-timetabling-screenshot.png[]

Without a UI:

=== Facility location problem

Pick the best geographical locations for new stores, distribution centers, covid test centers or telco masts.

image::java/facility-location/facility-location-screenshot.png[]

=== Conference Scheduling

Assign conference talks to timeslots and rooms to produce a better schedule for speakers.

image::java/conference-scheduling/conference-scheduling-screenshot.png[]

=== Bed Allocation Scheduling

Assign beds to patient stays to produce a better schedule for hospitals.

image::java/bed-allocation/bed-scheduling-screenshot.png[]

=== Flight Crew Scheduling

Assign crew to flights to produce a better schedule for flight assignments.

image::java/flight-crew-scheduling/flight-crew-scheduling-screenshot.png[]

=== Meeting Scheduling

Assign timeslots and rooms for meetings to produce a better schedule.

image::java/meeting-scheduling/meeting-scheduling-screenshot.png[]

=== Sports League Scheduling

Assign rounds to matches to produce a better schedule for league matches.

image::java/sports-league-scheduling/sports-league-scheduling-screenshot.png[]

=== Task Assigning

Assign employees to tasks to produce a better plan for task assignments.

image::java/task-assigning/task-assigning-screenshot.png[]

=== Project Job Scheduling

Assign jobs for execution to produce a better schedule for project job allocations.

image::java/project-job-scheduling/project-job-scheduling-screenshot.png[]

=== Tournament Scheduling

Tournament Scheduling service assigning teams to tournament matches.

image::java/tournament-scheduling/tournament-scheduling-screenshot.png[]

== Legal notice

Timefold Quickstarts was https://timefold.ai/blog/2023/optaplanner-fork/[forked] on 20 April 2023 from OptaPlanner Quickstarts, which was entirely Apache-2.0 licensed (a permissive license).

Timefold Quickstarts is a derivative work of OptaPlanner Quickstarts, which includes copyrights of the original creator, Red Hat Inc., affiliates and contributors, that were all entirely licensed under the Apache-2.0 license. Every source file has been modified.