OptaPlanner logo
  • Download
  • Learn
    • Documentation
    • Videos

    • Use cases
    • Compatibility
    • Testimonials and case studies
  • Get help
  • Blog
  • Source
  • Team
  • Services
  • Star
  • T
  • L
  • F
  • YT
Fork me on GitHub

School timetabling

Video thumbnail
Quickstart guide
Quickstart source code

Universities and schools aim to provide high quality lesson schedules to their teachers and students. Depending on room capacity and availability, school timetabling decides when and where a lecture takes place. Optimize this planning problem with an AI constraint solver to improve teacher and student satisfaction. Reduce commute and gap hours while adhering to other constraints such as conflicting lessons, teacher availability, room availability and room capacity.

School timetabling input output

What is OptaPlanner?

OptaPlanner is the leading Open Source Java™ AI constraint solver to optimize maintenance scheduling, adhering to skill, capacity, SLAs and other constraints.

OptaPlanner is a lightweight, embeddable planning engine. It enables normal Java™ programmers to solve optimization problems efficiently. It is also compatible with other JVM languages (such as Kotlin and Scala). Constraints apply on plain domain objects and can call existing code. There’s no need to input constraints as mathematical equations. Under the hood, OptaPlanner combines sophisticated Artificial Intelligence optimization algorithms (such as Tabu Search, Simulated Annealing, Late Acceptance and other metaheuristics) with very efficient score calculation and other state-of-the-art constraint solving techniques.

OptaPlanner is open source software, released under the Apache License. It is written in 100% pure Java™, runs on any JVM and is available in the Maven Central repository too.

Related videos

Video thumbnail
AI lesson scheduling on Quarkus with OptaPlanner
Geoffrey De Smet 18 Nov 2021
Video thumbnail
School timetable optimization
Geoffrey De Smet 6 Sep 2021
Video thumbnail
AI on Spring
Geoffrey De Smet 15 May 2020
Video thumbnail
Artificial Intelligence on Quarkus: I love it when an OptaPlan comes together
Geoffrey De Smet 9 Apr 2020
Video thumbnail
Artificial Intelligence in Java: how to write a Quarkus app with OptaPlanner from scratch
Geoffrey De Smet 2 Apr 2020
Video thumbnail
Exam timetabling with OptaPlanner
Geoffrey De Smet 17 May 2014
Video thumbnail
Course Scheduling with OptaPlanner
Geoffrey De Smet 9 Oct 2013

Related blog posts

  • Visualize the score and the constraints
    Mon 13 March 2017
    Geoffrey De Smet
  • Is the search space of an optimization problem really that big?
    Thu 27 March 2014
    Geoffrey De Smet
  • Will Skynet control our schedule if the computer optimizes it for us?
    Fri 11 October 2013
    Geoffrey De Smet
Download
Try OptaPlanner
Download 8.35.0.Final
  1. Download and unzip.
  2. Run runQuickstarts.sh (Linux/macOS)
    or runQuickstarts.bat (Windows).
Requires JDK 11 or higher to run.
Documentation
Get started
User guide 8.35.0.Final
Clone the Quickstarts code.
Latest release
  • 8.35.0.Final released
    Fri 3 March 2023
Upcoming events
    Add event / Archive
Latest blog posts
  • OptaPlanner 9 is coming
    Tue 21 February 2023
    Lukáš Petrovický
  • Farewell - a new lead
    Tue 15 November 2022
    Geoffrey De Smet
  • Run OptaPlanner workloads on OpenShift, part II
    Wed 9 November 2022
    Radovan Synek
  • Bavet - A faster score engine for OptaPlanner
    Tue 6 September 2022
    Geoffrey De Smet
  • Run OptaPlanner workloads on OpenShift, part I.
    Thu 9 June 2022
    Radovan Synek
  • OptaPlanner deprecates score DRL
    Thu 26 May 2022
    Lukáš Petrovický
  • Real-time planning meets SolverManager
    Mon 7 March 2022
    Radovan Synek
  • Blog archive
Latest videos
  • The Vehicle Routing Problem
    Fri 23 September 2022
    Geoffrey De Smet
  • Introduction to OptaPlanner AI constraint solver
    Thu 25 August 2022
    Anna Dupliak
  • On schedule: Artificial Intelligence plans that meet expectations
    Sat 23 July 2022
    Geoffrey De Smet
  • Host your OptaPlanner app on OpenShift (Kubernetes)
    Mon 7 February 2022
    Geoffrey De Smet
  • OptaPlanner - A fast, easy-to-use, open source AI constraint solver for software developers
    Mon 31 January 2022
  • Order picking planning with OptaPlanner
    Fri 31 December 2021
    Anna Dupliak
  • AI lesson scheduling on Quarkus with OptaPlanner
    Thu 18 November 2021
    Geoffrey De Smet
  • Video archive

OptaPlanner is open. All dependencies of this project are available under the Apache Software License 2.0 or a compatible license. OptaPlanner is trademarked.

This website was built with JBake and is open source.

Community

  • Blog
  • Get Help
  • Team
  • Governance
  • Academic research

Code

  • Build from source
  • Issue tracker
  • Release notes
  • Upgrade recipes
  • Logo and branding
CC by 3.0 | Privacy Policy
Sponsored by Red Hat