Routing, scheduling, and proof for mobile teams

Optimise visit order, score reachable jobs from each tech, clean GPS into proof-of-visit records.

Field service is a daily routing problem with constraints. Each tech has a region, a schedule, and a vehicle. Each job has an SLA and a customer waiting. Dispatch decisions happen continuously, and increasingly an LLM is in the loop.

Footstep gives the dispatcher (human or agent) the routing primitives. optimize_stops handles end-of-day route ordering. get_matrix powers job assignment by computing travel-time grids between technicians and open jobs. snap_trace cleans the day's GPS log into segmented road-attributed traces for proof of visit and time-on-site reporting.

find_and_route handles the in-day case: a new urgent job comes in as free text from the customer, the dispatcher needs the closest available tech and the route to send.

Patterns

What this looks like in practice

Common shapes mapped to the tools you'd reach for.

End-of-day route optimisation

Pass each tech's job list. optimize_stops returns the optimal visit order and the savings versus the input order. The cost surface respects road network and travel mode.

Travel-time-aware assignment

Compute an N by M matrix between available technicians and unassigned jobs. Pick the lowest-time match per job, factoring in current-job overrun and break schedules.

Proof of visit

Run the day's GPS log through snap_trace. Each matched edge carries road class, surface, speed, and timestamp. Use it for time-on-site reporting and dispute resolution.

Other use cases

Search, rescue, and crisis response

Research Preview

Score where a missing person is most likely to be found. Direct ground teams to the highest-density hexes first.

Read →

Logistics and autonomous fleets

Multi-stop optimisation, OD matrices, and corridor search for the agents and backends that move things.

Read →

Environmental and field operations

Terrain profiles, reachability polygons, and GPS map matching for ESG reporting, conservation, and field research.

Read →

Real estate and property

Geocode listings, model commute reach, score nearby amenities, and overlay terrain risk. The toolkit behind agent-led property search.

Read →

Travel and itinerary planning

Find places, route between them, fit them into a time budget, and surface what's on the way. The geospatial layer behind agentic trip planners.

Read →

Customer-input cleanup

Fix typos, expand abbreviations, validate before geocoding. The reliable pre-step for agents handling user-typed addresses.

Read →

Insurance and risk underwriting

Anchor addresses, layer terrain and elevation, assess access from emergency services. Bulk-process portfolios in one call.

Read →

Healthcare access and equity

Compute drive-time and walk-time access to facilities, model coverage gaps, place ambulances with travel-time matrices.

Read →

Sales and territory planning

Build OD matrices between reps and accounts, draw catchments around offices, normalise lead addresses at scale.

Read →

Outdoor and fitness apps

Plan walking, hiking, and cycling routes with explicit difficulty. Snap noisy GPS into clean traces with surface and grade per edge.

Read →

Public-sector planning

Model who can reach what, where the gaps are, how transit changes the answer. Reachability and matrix tools for civic planning.

Read →