Combining Task Assignment with Vehicle Routing #80
marcuswalls
started this conversation in
General
Replies: 1 comment
-
Yes, we've seen cases like this before. I don't see any particular problem in what you're describing - to work around the nullable issue, you can use a dummy assignment. I don't see why you'd need to introduce elements of task assignment; each individual task can be a link in the chain. Is there perhaps an additional requirement which you did not mention? You may want to check out the list variable as opposed to the chained variable. It is a more modern, easier to understand functionality; there are some features not yet present in this implementation, but we will gradually be adding them. (Such as nullable support.) |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I am in the very early stages of looking into the feasibility of Optaplanner/Timefold in a "field service management" capacity to replace an "in-house" optimization solution. Looking at the examples, it would appear that to create some form of prototype to be able to progress the investigation, I would need to combine the "Vehicle Routing with Time Windows", and the "Task Assignment" examples.
Additionally, since we have more jobs than technicians we'll need to find a workaround for the lack of support for nullable in chained planning variables, and also employ continuous planning. Other complications are to do with volume; the solution needs to cope with >1000 technicians doing up to 10 jobs a day and to look ahead 1 or 2 weeks. Our current solution makes sub-optimal decisions prior to invoking the solver to cope with this volume (including clustering), and I'm hoping that we can limit the use of these techniques in a future solution.
But to start with, "simply" allowing us to build something that supports skills, urgency, time windows and travel time would be a first step, and then we can progressively add more complex constraints and compare the results with our existing solution. Building a prototype to cope with a few hundred technicians for a single day would be sufficient for a test, providing we can see how we'd be able to extend it to support the additional volume and time horizon, especially when we add all the other complex constraints that our current solution supports.
Has anybody attempted this combination before? Any thoughts, hints or tips on how to make a start? I realize that this is not a simple undertaking, and it'll be a lot harder if I go about it in the wrong way!
Beta Was this translation helpful? Give feedback.
All reactions