/school-timetable-calculator

School Timetable Calculator

Primary LanguageJava

OptaPlanner Community Central demo

Overview of all Modules

  1. brute-force-timetabling Quarkus application that uses custom implementation of the algorithm to come over all the combinations of subjects and timeslots and searches the best solution

  2. greedy-timetabling Quarkus application that uses custom greedy implementation and picks the best solution of all each time.

  3. optaplanner-timetabling uses constraints and different optimization to search for the best solution in reasonable time.

Get started

  1. Install JDK 11 or later with JAVA_HOME configured appropriately.

  2. Clone this repository to build showcase:

    $ git clone https://github.com/dupliaka/2022-community-central-school-timetabling.git
    $ cd 2022-community-central-school-timetabling
    $ mvn clean install

Use case

School timetabling

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

quarkus school timetabling screenshot

More information

Learn more on www.optaplanner.org.