timefold-solver
timefold-solver copied to clipboard
The open source Solver AI for Java, Python and Kotlin to optimize scheduling and routing. Solve the vehicle routing problem, employee rostering, task assignment, maintenance scheduling and other plann...
**Describe the bug** Best solution consumer of solver manager is fired before deep clone of the planning solution has been completed. This lead to problems if you need to post-process...
When using the BenchmarkAggregatorFrame to unmarshall PlannerBenchmarkResult.xml with the problemStatisticType SCORE_CALCULATION_SPEED or MOVE_EVALUATION_SPEED the would result in null pointer exception due to empty JaxB noargs constructors calling the parameterized constructor...
Motivation: we know realize that the @PlanningSolution class itself is not boilerplate. But much of it's annotations are. Let's support this feature on quarkus too: ``` public @interface PlanningSolution {...
Consider a situation which occurs in the old implementation of CVRPTW: - `Customer` does not have `arrivalTime`. It doesn't need it, because it doesn't understand time windows. - `TimeWindowedCustomer` extends...
Convert all internal uses of Variable Listeners to the new mechanism, then deprecate Variable Listeners for removal. This should include deprecating any annotation which is implemented via a user providing...
For groups, we typically have to do things like Collections.max(). This requires us first to build a collection, and then to iterate over the collection to provide a result. Also,...
Design and implement APIs for filling in values of shadow variables. Testing those values can be left to user tools, such as AssertJ; we should not implement our own assertions....
- If we know the solution is invalid, why not terminate shadow var evaluation and set them all to null? Could help with performance. (ATM it looks as if we're...