This service enables MOOVE to create pools of geo-similar riders.
It is written in Google’s
The goal of the auto clustering algorithm is to maximize utilization of vehicles based on multiple constraints such as on-time arrival, maximum capacity of a vehicle, maximum time and distance that is acceptable for a ride (and each individual rider), deviation from the route / axis, etc.
The service looks at the queue of scheduled riders and computes geo-hashes for their locations. The queue is then sorted on the basis of distance from the Enterprise’s office location for rides picking-up riders from Home to Office journeys.
The algorithm clusters locations that have similar geo-hashes in the first pass. It starts by taking the farthest employee (Employee E in the diagram below) and checks compliances – can this employee be picked up using a vehicle such that the employee will arrive
Once all the employees from the pick-up queue are assigned to these plausible clusters, the algorithm makes a third pass at optimizing. It does trade-offs between clusters to reach overall minima and then starts to convert the optimized clusters into manifests that can be assigned to Drivers.
Members: please use the Link(s) below to access the GODOC generated documentation of the MOOVE’s Auto Clustering Service developed in Go Lang.
Don’t see the Link(s) above? Please Sign-in / Register as a Member.