Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/timefoldai/timefold-quickstarts
Get started with Timefold quickstarts here. Timefold is the successor of OptaPlanner, by the OptaPlanner team. Optimize the vehicle routing problem, employee rostering, task assignment, maintenance scheduling and other planning problems
https://github.com/timefoldai/timefold-quickstarts
artificial-intelligence constraint-programming cvrp employee-scheduling gradle java job-shop-scheduling kotlin maintenance-scheduling maven operations-research optimization-library planning-algorithms quarkus resource-allocation spring-boot timefold vehicle-routing-problem vrptw
Last synced: 2 days ago
JSON representation
Get started with Timefold quickstarts here. Timefold is the successor of OptaPlanner, by the OptaPlanner team. Optimize the vehicle routing problem, employee rostering, task assignment, maintenance scheduling and other planning problems
- Host: GitHub
- URL: https://github.com/timefoldai/timefold-quickstarts
- Owner: TimefoldAI
- License: apache-2.0
- Created: 2023-04-21T13:51:19.000Z (almost 2 years ago)
- Default Branch: stable
- Last Pushed: 2024-04-11T14:34:10.000Z (10 months ago)
- Last Synced: 2024-04-12T09:05:57.934Z (10 months ago)
- Topics: artificial-intelligence, constraint-programming, cvrp, employee-scheduling, gradle, java, job-shop-scheduling, kotlin, maintenance-scheduling, maven, operations-research, optimization-library, planning-algorithms, quarkus, resource-allocation, spring-boot, timefold, vehicle-routing-problem, vrptw
- Language: Java
- Homepage: https://timefold.ai
- Size: 20.1 MB
- Stars: 145
- Watchers: 11
- Forks: 40
- Open Issues: 12
-
Metadata Files:
- Readme: README.adoc
- License: LICENSE.txt
Awesome Lists containing this project
README
= Timefold Quickstarts
_Planning optimization made easy._ +
https://timefold.ai[timefold.ai]== Overview of all Quickstarts
|===
|Use case quickstarts |Technology quickstartsa|* <>
* <>
* <>
* <>
* <>
* <>
* <>
* <>
* <>
* <>
* <>
* <>
* <>
* <>
* <>a|* link:java/hello-world/README.adoc[Java (Hello World)] (Java, Maven or Gradle)
* link:java/school-timetabling/README.adoc[Quarkus] (Java, Maven or Gradle, Quarkus)
* link:java/spring-boot-integration/README.adoc[Spring Boot] (Java, Maven or Gradle, Spring Boot)
* link:kotlin/school-timetabling/README.adoc[Kotlin] (Kotlin, Maven, Quarkus)
* link:python/hello-world/README.adoc[Python] (Python)
|===== 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[]
* link:java/maintenance-scheduling/README.adoc[Run quarkus-maintenance-scheduling] (Java, Maven, Quarkus)
=== 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[]
* link:java/food-packaging/README.adoc[Run quarkus-food-packaging] (Java, Maven, Quarkus)
=== Order Picking
Generate an optimal picking plan for completing a set of orders.
image::java/order-picking/order-picking-screenshot.png[]
* link:java/order-picking/README.adoc[Run quarkus-order-picking] (Java, Maven, Quarkus)
=== 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[]
* link:java/school-timetabling/README.adoc[Run quarkus-school-timetabling] (Java, Maven or Gradle, Quarkus)
* link:java/spring-boot-integration/README.adoc[Run spring-boot-school-timetabling] (Java, Maven or Gradle, Spring Boot)
* link:kotlin/school-timetabling/README.adoc[Run kotlin-quarkus-school-timetabling] (Kotlin, Maven, Quarkus)
* link:python/school-timetabling/README.adoc[Run python-school-timetabling] (Python, FastAPI)Without a UI:
* link:java/hello-world/README.adoc[Run hello-world-school-timetabling] (Java, Maven or Gradle)
=== 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[]
* link:java/facility-location/README.adoc[Run quarkus-facility-location] (Java, Maven, Quarkus)
=== Conference Scheduling
Assign conference talks to timeslots and rooms to produce a better schedule for speakers.
image::java/conference-scheduling/conference-scheduling-screenshot.png[]
* link:java/conference-scheduling/README.adoc[Run quarkus-conference-scheduling] (Java, Maven, Quarkus)
=== Bed Allocation Scheduling
Assign beds to patient stays to produce a better schedule for hospitals.
image::java/bed-allocation/bed-scheduling-screenshot.png[]
* link:java/bed-allocation/README.adoc[Run quarkus-bed-allocation-scheduling] (Java, Maven, Quarkus)
=== 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[]
* link:java/flight-crew-scheduling/README.adoc[Run quarkus-flight-crew-scheduling] (Java, Maven, Quarkus)
=== Meeting Scheduling
Assign timeslots and rooms for meetings to produce a better schedule.
image::java/meeting-scheduling/meeting-scheduling-screenshot.png[]
* link:java/meeting-scheduling/README.adoc[Run quarkus-flight-crew-scheduling] (Java, Maven, Quarkus)
=== 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[]
* link:java/sports-league-scheduling/README.adoc[Run quarkus-sports-league-scheduling] (Java, Maven, Quarkus)
=== Task Assigning
Assign employees to tasks to produce a better plan for task assignments.
image::java/task-assigning/task-assigning-screenshot.png[]
* link:java/task-assigning/README.adoc[Run quarkus-task-assigning] (Java, Maven, Quarkus)
=== 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[]
* link:java/project-job-scheduling/README.adoc[Run quarkus-project-job-scheduling] (Java, Maven, Quarkus)
=== Tournament Scheduling
Tournament Scheduling service assigning teams to tournament matches.
image::java/tournament-scheduling/tournament-scheduling-screenshot.png[]
* link:java/tournament-scheduling/README.adoc[Run quarkus-tournament-scheduling] (Java, Maven, Quarkus)
== 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.