Page 1 of 1

Prioritizing orders

Posted: Sat Jun 20, 2020 11:06 am
by jakubkurchan
Hello,

Is it possible to somehow prioritize certain orders above others in a planTours request? Let's say that we have around 20 locations that we want to visit, but we are not sure if that's possible, so we would like to assign high priority to a couple of them to make sure that they are always visited, and then the rest of them would be added depending on whether the vehicle can visit them or not.

I have tried looking for answer on the forum but couldn't find one.

Re: Prioritizing orders

Posted: Sun Jun 21, 2020 8:10 am
by Bernd Welter
Hello Jakub,

the v2 of xtour does not consider priorities at the moment and I am not sure whether this will be implemented soon or not. My thoughts about this requirement are:

1. how about trying to plan the prio A orders first and then use a second call with proper fixations and the output of call #1?
2. if your workload seems to be too high think about using xcluster.planVisits which offera a 'score' property. Not 100% the same as with xtour but at least you should be aware that there's an approach in the engine.

Get back to me 1:1 to discuss your individual requirement if approach #1 doesn't match.

Best regards
Bernd

Re: Prioritizing orders

Posted: Tue Jun 23, 2020 1:47 pm
by Bernd Welter
Hello Jakub,

Alex (DEV) also mentioned this:
Another iterative approach would be to do the opposite. You first set up a request with all orders. If some prio A orders remain unplanned, you kick out some nearby but planned prio B orders until all prio A orders fit in.
Best regards,
Bernd

Re: Prioritizing orders

Posted: Tue Jun 23, 2020 4:35 pm
by jakubkurchan
Thank you for response Bernd.

This isn't a real feature that we are trying to implement now, at least not yet. Our company was just interested whether your engine supports something like that directly or we would have to roll out our own implementation. I will keep what you wrote in mind when the time comes to implement that tho :D

Re: Prioritizing orders

Posted: Wed Jun 28, 2023 11:14 am
by Bernd Welter
in v2.25 we invented com.ptvgroup.xserver.xtour.Order.Priority
internally this is based on an iteration:

1 try to schedule all orders without prio.
If this works: done.
If not:
2. schedule the highest prio class orders.
Then try to add the next prio class. And so on.
Within each extension step there may be orders remaining. From that stop they won't be considered in future steps.