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

Download

OptaPlanner 9 (latest)

Distribution zip

The OptaPlanner distribution zip includes binaries, documentation, examples and sources.

  • Download Download OptaPlanner Engine 9.44.0.Final

    • Release notes 9 - Upgrade recipe to 9

    • License: Apache License 2.0 - Date: Wed 6 September 2023

    • Download size: Large (over 90% is due to examples, data sets and documentation)

  • For Red Hat subscription releases go to the product download site.

Maven

The OptaPlanner jars are also available in the central maven repository (and also in the JBoss maven repository).

With Maven, just add the optaplanner-core dependency in your pom.xml to get started:

  <dependency>
    <groupId>org.optaplanner</groupId>
    <artifactId>optaplanner-core</artifactId>
    <version>9.44.0.Final</version>
  </dependency>

Or better yet, import the optaplanner-bom to avoid duplicating version numbers when adding other optaplanner dependencies later on:

<project>
  ...
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.optaplanner</groupId>
        <artifactId>optaplanner-bom</artifactId>
        <type>pom</type>
        <version>9.44.0.Final</version>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.optaplanner</groupId>
      <artifactId>optaplanner-core</artifactId>
    </dependency>
    <dependency>
      <groupId>org.optaplanner</groupId>
      <artifactId>optaplanner-test</artifactId>
      <scope>test</scope>
    </dependency>
    ...
  </dependencies>
</project>

Gradle

With Gradle, just add the optaplanner-core dependency in your build.gradle to get started:

dependencies {
  implementation 'org.optaplanner:optaplanner-core:9.44.0.Final'
}

OptaPlanner 8 (legacy)

Both OptaPlanner 8 and 9 are equal feature-wise and their APIs have not changed. While OptaPlanner 9 brings compatibility with Jakarta EE 10, Quarkus 3 and Spring Boot 3, OptaPlanner 8 provides full backward compatibility for users who cannot migrate yet. OptaPlanner 8 will keep being released in parallel to OptaPlanner 9 until further notice.

If you are not sure which version to pick, see the following diagram:

Which OptaPlanner stream to choose?

To summarize what the diagram shows:

  • If you're starting a new project, or you don't use Quarkus or Spring Boot, we recommend using OptaPlanner 9.
  • Otherwise, stay on OptaPlanner 8, but plan for the migration. OptaPlanner 8 releases will end once enough users adopt Quarkus 3 or Spring Boot 3.

Distribution zip

The OptaPlanner distribution zip includes binaries, documentation, examples and sources.

  • Download Download OptaPlanner Engine 8.44.0.Final

    • Release notes 8 - Upgrade recipe to 8

    • License: Apache License 2.0 - Date: Wed 6 September 2023

    • Download size: Large (over 90% is due to examples, data sets and documentation)

  • For Red Hat subscription releases go to the product download site.

Maven

The OptaPlanner jars are also available in the central maven repository (and also in the JBoss maven repository).

With Maven, just add the optaplanner-core dependency in your pom.xml to get started:

  <dependency>
    <groupId>org.optaplanner</groupId>
    <artifactId>optaplanner-core</artifactId>
    <version>8.44.0.Final</version>
  </dependency>

Or better yet, import the optaplanner-bom to avoid duplicating version numbers when adding other optaplanner dependencies later on:

<project>
  ...
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.optaplanner</groupId>
        <artifactId>optaplanner-bom</artifactId>
        <type>pom</type>
        <version>8.44.0.Final</version>
        <scope>import</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.optaplanner</groupId>
      <artifactId>optaplanner-core</artifactId>
    </dependency>
    <dependency>
      <groupId>org.optaplanner</groupId>
      <artifactId>optaplanner-test</artifactId>
      <scope>test</scope>
    </dependency>
    ...
  </dependencies>
</project>

Gradle

With Gradle, just add the optaplanner-core dependency in your build.gradle to get started:

dependencies {
  implementation 'org.optaplanner:optaplanner-core:8.44.0.Final'
}

Non-Final releases

Non-Final releases are the best way to test drive new features and APIs to provide feedback before we lock down the API with a Final release. We welcome such feedback in our forum.

Alphas, Betas and CRs

An Alpha can be unstable. A Beta should work (it passes automated testing), but its new APIs might still change in the next release. A CR should be almost identical to the Final release.

There is no Alpha or Beta yet because we just released a Final version.

Nightly snapshots

Nightly snapshots are unstable binaries, built automatically by our CI server.

  • Download Download OptaPlanner Engine 9.45.0-SNAPSHOT

Older releases

For older community releases, check the release archive.

Latest release
  • 9.44.0.Final released
    Wed 6 September 2023
Upcoming events
    Add event / Archive
Latest blog posts
  • Scaling Up Vehicle Routing Problem with planning list variable and Nearby Selector
    Thu 27 April 2023
    Anna Dupliak
  • OptaPlanner 9 has been released
    Mon 24 April 2023
    Radovan Synek
  • 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
  • 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