Timefold Releases

November 12th, 2024
latest

Timefold Solver 1.16.0

Looks like Christmas came early this year! This release of your favorite solver is packed to the brim with cool new features.

Featured update: Nullness annotations on public API

Users of Kotlin rejoice! All public APIs of Timefold Solver have now been null-marked using JSpecify. This means you should now be able to remove some of those pesky Elvis operators from your code. Both Java and Kotlin users will also be able to benefit from IDE support, warning of improper use and handling of null.

This has been a big change and we are doubly excited about it, because it was entirely contributed by a member of our growing community! Our thanks go out to Peter Laggner (@greyhairredbear), for the time and effort he spent delivering this. We hope he'll enjoy some Timefold-branded tokens of appreciation we've sent his way.

But that's not all we have in store for you!

  • Due to some improvements to the solver, we no longer require you to implement undo moves for your Custom moves; you can safely delete them from your codebase, just like we did with ours.
  • We have also updated the Score Analysis API to optionally skip listing all justifications, which will help users with massive datasets.
  • We have a brand new documentation website with some refreshed content.

And last but not least, we've been making smaller improvements and bugfixes here and there, as per usual. Enjoy the latest and greatest Timefold Solver, and stay in touch!

October 8th, 2024

Timefold Solver 1.15.0

Fall is here and the days are getting shorter, but the release cadence of Timefold Solver is still once a month!

This time, we've brought a whole bunch of smaller improvements and bug fixes. We've extended our Recommendations API, made the recently introduced Ruin and Recreate move more reliable, and improved our Python experience.

September 17th, 2024

Timefold Solver 1.14.0

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.

August 13th, 2024

Timefold Solver 1.13.0

As the summer sun is slowly baking us, so have we baked something new for you. Timefold Solver 1.13.0 brings new features as well as the usual assortment of bug fixes and improvements.

Featured Update: Constraint Weight Overrides

We bring you a smaller an improved API for setting weights for your constraints. Where previously you had to write a lot of boilerplate to provide an entire ConstraintConfiguration implementation, specifying a constraint weight is now as easy as adding a Map to your planning solution!

Besides that, we are introducing a new type of shadow variable - one that can be updated by a simple method, as opposed to introducing an entire VariableListener. This allows for easy updates to the tail chains of a list variable.

As always, all of these updates are available for all of our Java, Python and Kotlin users.

July 9th, 2024

Timefold Solver 1.12.0

Summer is here, but we're not resting! Not all of us anyway. This release brings features, as well as an assortment of bug fixes and enhancements.

Featured update: Fairness and Load Balancing

Providing optimized schedules is only one part of the problem. And if our employees see that our schedule isn't being fair to them, because Ann is getting three times as many shifts as Dan is, they will not be very happy and the business will struggle. The business may even run into labour law issues.

That is why we are introducing a load balancing collector for Constraint Streams. You can read all about it in Fairness and load balancing section of the documentation.

Besides that, we have added some quality of life improvements:

  • ScoreAnalysis now provides more information about itself, including a useful textual summary of the analysis.
  • The solver can now trigger an event when the first initialized solution shows up, letting you know when the construction heuristic ends and local search begins.

All of these improvements and bugfixes are also available in Timefold Solver for Python. Have you checked it out yet?

June 19th, 2024

Timefold Solver 1.11.0

Nearly a year ago, we released Timefold Solver 1.0 for Java, the first step on our journey to rid the world of wasteful planning. Today, the journey continues as we announce Timefold Solver for Python!

In this first Beta release, we give the Python ecosystem access to Timefold Solver and all of its features. We invite you to try out our new Python quickstarts and let us know what you think. Do you like the APIs? Does it integrate well with your Python projects? How's the performance? We need your feedback!

Timefold Solver for Python will move out of Beta once we've heard back from enough of you. While in Beta, we reserve the right to change APIs and to add or remove functionality based on user feedback. Once we leave Beta, we will provide the same backwards compatibility guarantees as with the Java solver.

And speaking of the Java solver, we haven't forgotten about it either. In this release, we've been mostly fixing bugs and making small tweaks here and there. Going forward, we've got plenty of interesting things in store for the Java and Python solvers, as they will evolve together from now on.

May 14th, 2024

Timefold Solver 1.10.0

In the May '24 release of Timefold Solver, we’ve focused on making everything more stable and reliable. Here’s what’s new:

  • Connected Ranges Collector: This new feature helps manage and penalize the use of resources over time.
  • Legacy Examples to Quickstarts: We’ve turned old examples into quickstart guides for easier use.
  • Throttling Best Solution Consumer: For our Enterprise Edition users, we’ve added a feature to prevent integrations from being overloaded by solver events.
  • Maven Repository Authentication: We’re preparing to require authentication for our Enterprise Edition binaries. We’ll notify customers in advance to ensure a smooth transition. Community Edition users won’t be affected, as their binaries will remain freely available on Maven Central.
April 9th, 2024

Timefold Solver 1.9.0

Introducing Timefold Solver’s latest release: Broadening Horizons Across Industries.

In our pursuit to cater to a wider array of planning challenges, we have added new quickstarts in our latest release. Tailored to meet the dynamic needs of various industries and use-cases.

These quickstarts are designed to jump-start your planning processes, offering a fast track to deploying sophisticated scheduling and allocation solutions.

Enterprise Edition

Our customers gain an edge with the introduction of Nearby Selection in Construction Heuristics. This powerful feature enhances the solver’s capability to generate better initial solutions by considering proximity in decision-making, thereby optimizing operational efficiency and resource utilization across your projects.

And as always, this release also includes significant bug fixes and quality of life improvements for all users.

March 26th, 2024

Timefold Solver 1.8.1

This is a hotfix release for Timefold customers. Please update if all of the following applies to you:

  • You use list variables with unassigned values,
  • you use multi-threaded solving,
  • and you use construction heuristics.

If any one of the above doesn't apply to you, you do not need to update to Timefold Solver 1.8.1 and can wait for the regularly scheduled release next month.

March 12th, 2024

Timefold Solver Community Edition 1.8.0

Spring is in the air, and so is another release of Timefold Solver. And this time, it's a big one! For the Community Edition, we have prepared the following features:

  • List variables now allow for unassigned values. Say goodbye to the "dummy vehicle" pattern, say hello to the performance improvements that come from it!
  • Spring Boot users among you can now easily generate native images, as was already possible for Quarkus.
  • ConstraintVerifier can now test for justifications and indictments, allowing you to write tests that will give you even more confidence in your constraints than was possible before.
  • We have exposed new metrics that allow you to better monitor the currently running solver(s).
  • We have brought the usual bugfixes and dependency upgrades.

On top of all that, our Enterprise Edition customers can enjoy some exclusive goodies:

  • Automatic node sharing. Use cases with a large number of complex constraints may run much faster without any changes to your code. In our benchmarks, we have seen improvements in score calculation speed of up to 100 % on some data sets.
  • Nearby Selection can now be enabled with a single switch in your configuration, as opposed to the cumbersome configuration of old. If you're still not using Nearby Selection for your large routing problems, you're missing out on cost savings coming from significantly improved solutions!

Going forward, we will be publishing an Upgrade Recipe to let you know of any things you may or may not run into when upgrading to the latest version of Timefold Solver. It's a good read!

February 13th, 2024

Timefold Solver Community Edition 1.7.0

In this release of Timefold Solver, we focused mostly on bugfixes, improvements to documentation and to the quickstarts. The release also brings the usual assortment of small tweaks and dependency upgrades.

Featured update: We've made it possible to inject more than one SolverManager in your Quarkus and Spring Boot applications, a feature often requested by the community.

January 10th, 2024

Timefold Solver Community Edition 1.6.0

New year, new release, new goodness!

Featured Update - Pinning on list variables, enhancing our support for real-time planning:

  • With a new @PlanningPinToIndex annotation, you can tell the solver that a certain portion of the list variable is pinned and shouldn't be moved.
  • For example, for a list of customers that a vehicle will visit, this allows you to model situations where certain visits have either already happened, or where the vehicle is already too far into the trip that it would not be practical for it to turn back.
  • Previously, pinning was only available for the chained variable. With this, we are ramping up our efforts to bring list variable, which is easier to both understand and implement, on par with the chain variable in terms of features. Stay tuned for more on this front!

Other Enhancements:

  • Solver termination can now be overridden without creating a new instance of Solver or SolverManager, look for the SolverConfigOverride class.
  • The usual assortment of bugfixes and performance improvements.
  • Improvements all over the documentation and quickstarts.
  • Dependency upgrades.
December 7th, 2023

Timefold Solver Community Edition 1.5.0

For our final release of 2023, we’ve prepared some exciting things!

Featured Update - Recommended Fit API, a game-changer for appointment scheduling.

  • Use case: Imagine you are an operator on a phone line, or an AI chatbot. A customer asks you for an appointment with a sales representative. Where do you put that appointment in their busy calendar?
  • Timefold Solver now provides superfast sub-second response times, while still taking all your constraints into account!
  • Result: Operators can receive a list of appointment choices, ranked from best fit to worst, for informed decision-making. Ensuring they can make an informed choice that has the least potential to disrupt the schedule as a whole.

Other Enhancements:

December 4th, 2023

Timefold Solver 0.8.42

End of life

Timefold Solver 0.8.42 is the final release in the 0.8.x line. As both Quarkus 2.x and Spring Boot 2.x reached their public end of life, Timefold can no longer guarantee timely resolution to any current and future security vulnerabilities. We ask users to upgrade to Timefold Solver 1.x, which is actively maintained and will continue so for many years to come.

OptaPlanner 8.x compatibility

At the time of Timefold Solver 0.8.42 release (December 4, 2023), the latest available release of OptaPlanner 8.x was 8.44.0.Final, released three months ago (September 6, 2023). Timefold Solver 0.8.42 is functionally identical with OptaPlanner 8.44.0.Final, but it brings additional bugfixes, performance improvements and dependency upgrades to fix security vulnerabilities.

November 8th, 2023

Timefold Solver Community Edition 1.4.0

It's time for another monthly release of Timefold Solver Community Edition!

Featured Update - JSON-friendly score explanations:

  • Even wondered what does a score of -3hard/-5soft actually mean? Wonder no more!
  • Timefold Solver can now break down the score all the way to individual constraint matches.
  • It can also compute differences between any two solutions.
  • And finally, it can easily send them over the wire from the backend to the frontend.

Furthermore you can now generate a Spring Boot app and include the Timefold Solver dependency without it failing if there's no @PlanningSolution or @PlanningEntity classes.

On top of that, we have the usual assortment of performance improvements, bug fixes and dependency upgrades.

October 18th, 2023

Timefold Solver Community Edition 1.3.0

Another release, another better version of Timefold Solver Community Edition!

Featured Update - Constraint Stream Concatenation:

  • Merge away! Combine multiple streams seamlessly.
  • Implement intricate constraints with ease.

Besides the usual bug fixes and dependency upgrades, we also have a smoother experience with improved support for Java’s record types.

October 10th, 2023

Timefold Solver 0.8.41

We've backported many bugfixes from Timefold Solver 1.x and also bumped several of our dependencies to address CVEs.

September 12th, 2023

Timefold Solver Community Edition 1.2.0

Timefold Solver Community Edition 1.2.0, is here, with a focus on enhancing your experience. In this update, we’ve resolved long-standing bugs to ensure a smoother Timefold journey. Upgrade now to enjoy a more seamless planning optimization experience!

August 14th, 2023

Timefold Solver Community Edition 1.1.0

We are proud to announce the general availability of Timefold Solver Community Edition 1.1.0! The highlights of this release include:

  • Significant improvements to constraint matching performance.
  • Several important bugfixes.
  • Documentation improvements and other minor tweaks.

To ensure Constraint Streams process data correctly in all cases, we unfortunately had to sacrifice some solver performance. (See bug #186.) Some use cases may see score calculation speeds drop by 5 % on average.

July 3rd, 2023

Timefold Solver Community Edition 1.0.0

No description provided.

June 15th, 2023

Timefold Solver 0.9.39

No description provided.

Stay In-The-Know

Sign Up for Our Newsletter

We care about the protection of your data. Read our Privacy Policy.

Timefold

Timefold is an AI planning optimization platform, built on powerful open-source solver technology, enabling software builders to tackle real-world, complex and high-impact operational planning problems. It delivers significant economic value in optimization operations like extended VRP, maintenance scheduling, field service routing, task sequencing, etc.

© 2024 Timefold BV