Skip to content

Timefold Solver 1.14.0

Compare
Choose a tag to compare
@timefold-release timefold-release released this 17 Sep 12:35

Summer vacations are over, the big announcements are made, and now we're back with another release of Timefold Solver!

Featured Update: Ruin and Recreate Move

Is your solver getting stuck in local optima, no longer improving the solution? Then you may benefit from the "Ruin and Recreate" move, which destroys part of the solution and rebuilds it all over again. Our experiments show that this can often help the solver escape local optima, so why don't you give it a try? And when you do, we'd love to hear what your own experience with this new move was - come talk to us!

Besides that, we are bringing the usual bunch of bug fixes and improvements. As always, all of these are available for all of our Java, Python and Kotlin users.

Changelog

🚀 Features

🐛 Fixes

📝 Documentation

Contributors

We'd like to thank the following people for their contributions:

  • Christopher Chianelli
  • Frederico Gonçalves (@zepfred)
  • Geoffrey De Smet
  • Lukáš Petrovický
  • Rutger Lubbers
  • Tobias Wasner (@wasnertobias)

Timefold Solver Community Edition is an open source project, and you are more than welcome to contribute as well!
For more, see Contributing.

Should your business need to scale to truly massive data sets or require enterprise-grade support,
check out Timefold Solver Enterprise Edition.

How to use Timefold Solver

To see Timefold Solver in action, check out the quickstarts.

With Maven or Gradle, add the ai.timefold.solver : timefold-solver-core : 1.14.0 dependency in your pom.xml to get started.

You can also import the Timefold Solver Bom (ai.timefold.solver : timefold-solver-bom : 1.14.0)
to avoid duplicating version numbers when adding other Timefold Solver dependencies later on.

Additional notes

The changelog and the list of contributors above are automatically generated.
It excludes contributions to certain areas of the repository, such as CI and build automation.
This is done for the sake of brevity and to make the user-facing changes stand out more.