Least Used Vehicle Policy
Send whichever available vehicle has completed the fewest tasks so far.
A workload-balancing rule rather than a travel-minimising one, and the two genuinely conflict: the nearest vehicle is often the one that has just finished something nearby, so nearest-vehicle tends to concentrate work on whichever vehicles are already busy in the active part of the layout. Which is right depends on whether the cost being managed is time or wear.
Ties break on declaration order, which for an untouched fleet at the start of a replication means every vehicle is tied and the first is chosen -- so early in a run this behaves like PullFromBoardPolicy and only separates once the counts diverge.
Functions
Link copied to clipboard
open suspend override fun KSLProcessBuilder.assign(context: DispatchContext): List<AssignmentProposal>