How to analyse unscheduled orders?

Questions refering to the Optiflow based API within PTV Developer (launched on 20.12.2023)
Post Reply
User avatar
Bernd Welter
Site Admin
Posts: 2887
Joined: Mon Apr 14, 2014 10:28 am
Contact:

How to analyse unscheduled orders?

Post by Bernd Welter »

Hi there,

sometimes dispatchers want to know why a certain order hasn't been scheduled. Let me explain how to approach this in Optiflow API.
Let me first define three categories of orders at the end of a given planning - just my personal approach:
Unscheduled.png
  • Category GREEN: an order has successfully been assigned to a vehicle
  • Category RED: an order is not assigned and there's an individual reason why such an order remains unscheduled, e.g. because
    • none of the vehicles has sufficient quantities
    • no driver is available at the time the order's tasks have to be served
    • no vehicle has the required equipment
    and to make it more complex: no vehicle is available that serves all the required constraints at the same time
  • Category YELLOW: a yellow order is not part of the output plan but the algorithm
    • either did not manage to schedule the order in the plan's the algorithm has evaluated (at least not yet!)
    • or the algorithm decided to sacrifice the order for the sake of another order (always cost driven)
    Chart shows the evolution of the categories in a 2 minute planning (gathered the status every 6-10 seconds): RED contribution is stable. RED/GREEN changes with the time: more and more yellow is getting transformed into green. (sideinfo: the difference between solid and transparent is: solid means a change in the KPI)
    Chart shows the evolution of the categories in a 2 minute planning (gathered the status every 6-10 seconds): RED contribution is stable. RED/GREEN changes with the time: more and more yellow is getting transformed into green. (sideinfo: the difference between solid and transparent is: solid means a change in the KPI)
    Unscheduled3.png (4.11 KiB) Viewed 17 times
So what can you derive from this?
  • Giving the algorithm more duration in the settings will definetly not convert a red order into a green/yellow one.
  • But there's a chance that increasing the duration / waiting longer will manage to transform a yellow into a green.
How to detect category...
  • RED: if an order appears in the warnings with ROUTE_OPTIMIZATION_NO_VEHICLE_FOR_ORDER this means he is RED.
    Unscheduled2.png
    BUT: at least today this is not an equivalence: it might happen that from a logical perspective should be seen as RED but the warnings do not report the order as RED.
  • GREEN: well, it appears in the output tours ...
  • YELLOW: appears in the input but is neither GREEN nor RED ;-)
    But you can also determine the "number of yellow" by checking the metric's "numberOfUnscheduledOrder" (=yellow+red) and subtract the red one's (based on the proper warnings)
    But you can also determine the "number of yellow" by checking the metric's "numberOfUnscheduledOrder" (=yellow+red) and subtract the red one's (based on the proper warnings)
Bernd Welter
Technical Partner Manager Developer Components
PTV Logistics - Germany

Bernd at... The Forum,LinkedIn, Youtube, StackOverflow
I like the smell of PTV Developer in the morning... :twisted:
Post Reply