= 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[]
link:java/vehicle-routing/README.adoc[Run quarkus-vehicle-routing] (Java, Maven, Quarkus)
link:python/vehicle-routing/README.adoc[Run python-vehicle-routing] (Python, FastAPI)
=== 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[]
link:java/employee-scheduling/README.adoc[Run quarkus-employee-scheduling] (Java, Maven, Quarkus)
link:python/employee-scheduling/README.adoc[Run python-employee-scheduling] (Python, FastAPI)
=== 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.