hermod

Who picks up whom, on Manhattan's streets

hermod is a ride-dispatch engine in Go. It finds the drivers nearest a rider on an OpenStreetMap road graph of Manhattan, times them by road, and matches riders to drivers one at a time or in batches with the Hungarian algorithm. It replays real 2010 New York taxi demand through a seeded simulator, runs live behind an HTTP API under load, and checks every run's event log against its invariants: no driver holds two riders, and every request ends exactly once.

The limits, first: there's no driver data, so the fleet is a model; the demand is from 2010, with static road speeds by the hour and no traffic; and every number comes from one laptop.