Questions tagged [timefold]

Questions about Timefold Solver and Timefold Quickstarts.

Timefold is the open source AI solver to optimize operations and scheduling in Java, Python or Kotlin code. It makes planning optimization easy.

Use cases include the vehicle routing problem, maintenance scheduling, employee shift scheduling, job shop scheduling and other planning problems.

45 questions
2
votes
1 answer

How do I upgrade from OptaPlanner to Timefold?

We forked OptaPlanner as Timefold some time ago. We often get this question: Timefold changes all import statements and dependencies. How do I migrate an OptaPlanner codebase to Timefold efficiently?
Geoffrey De Smet
  • 26,223
  • 11
  • 73
  • 120
1
vote
1 answer

upgrading Optaplanner to 8.25+ results in very slow performances

After a while, I'm working again on a side-project which was using Optaplanner 8.20. Since we now are in V8.42 (or 9.42 with quakus 3/java17) I tried to upgrade the app to the latest version (I would love to use quarkus 3) but I ran into multiple…
minioim
  • 556
  • 3
  • 18
1
vote
1 answer

Score Corruption when upgrading to Optaplanner 8.34.0.Final

When attempting to upgrade to Optaplanner 9 I encountered some changes in solutions. Running with full assert revealed some score corruption issues that had not previously been present. Tracing back it appears that the issue first appeared with…
1
vote
2 answers

Meeting scheduling example ignores changes to xml config file

The last few versions of OptaPlanner all seem to have a bug in locating the meetingSchedulingSolverConfig(.xml), as this file is seemingly ignored. If I'm supposed to be using a different file to set the parameter(s) instead of the xml now, I have…
1
vote
1 answer

OptaPlanner solution partitioning phase ends with all values assigned but doesnt trigger a score update

I've implemented a partitioned search phase with OptaPlanner. I've tried this on FAST_ASSERT and FULL_ASSERT. My problem includes overconstrained planning. My planning variable is nullable. On startup, all entities are initialized with a null…
Pezetter
  • 2,783
  • 2
  • 22
  • 40
0
votes
1 answer

How to enable nullable InverseRelationShadowVariable or prevent to assign a value to a PlanningListVariable

I have to plan a list of orders into machines. The relation order machine is by item code. If the machine has the order item code the machine can mange the order so the order can be assigned to the machine. It could happen that some orders have an…
StefanoM
  • 5
  • 2
0
votes
1 answer

Problem constraints in allocation problem

Im using Optaplanner/Timefold to solve a allocation problem. I must allocate orders in vehicles with certain restrictions. This part its very similar to the cloud process distributions and its working well with the following…
0
votes
1 answer

InverseRelationShadowVariable always null

I have to plan a list of orders into machines and I modeled the entities using TaskAssigning as sample. This is my code: @PlanningEntity public class Machine { private List m_plannedOrders; ... @PlanningListVariable public…
StefanoM
  • 5
  • 2
0
votes
0 answers
0
votes
1 answer

Creating a new SolverManager for each user request to enable timeout configuration

We have modelled a VRP with Optaplanner. One requirement is that API users should have the ability to configure timeouts for the solver. The documentations of both Optaplanner and Timefold suggest using a config template and adjusting that during…
greyhairredbear
  • 624
  • 3
  • 10
  • 27
0
votes
1 answer

ClassCastException during QuarkusTest with OptaPlanner and Kotlin

I'm using OptaPlanner 9.37.0.Final with quarkus 3.1.3.Final and Kotlin 1.8.21 to solve a VRP. When I run quarkusDev, my current setup runs just fine, but when I run a @QuarkusTest, I get the following ClassCastException, hinting that something with…
greyhairredbear
  • 624
  • 3
  • 10
  • 27
0
votes
1 answer

Handling recurrences from a template

I have MasterSchedule and LiveSchedule, TemplateShift, Shift and Employee domain models. But I'm my timefold code, I'm only using Schedule Shift and Employee. The planning variable here is an employee assigned to an shift. MasterSchedule and…
kurupt_89
  • 1,542
  • 8
  • 37
  • 65
0
votes
1 answer

Is built-in entity selection clever or uniformly random?

Are the entity selectors for the built in move selectors (primarily interested in swap move and change move) clever in any way, or always uniformly random? Do they for example take the indictment map into account? If it's uniformly random, are there…
aioobe
  • 413,195
  • 112
  • 811
  • 826
0
votes
1 answer

OptaPlanner Employee Rostering: Fill Priority 1 Shifts Before Priority 2 Shifts

I'm working on an employee rostering system using OptaPlanner, and I'm facing a scenario where I need to ensure that priority 1 shifts are filled before priority 2 shifts. The shifts are identified by a priority field in the Shift class, which…
0
votes
1 answer

Data of vehicle routing problem time windowed

I'm new to Timefold. I use the example that already exists in QuickStarts. My goal is to use this program to solve my own problem with capacity constraints, but the problem is that I don't know where I need to change the data properly. i try to…
1
2 3