Playbook
Closing the Loop from Model to Dispatcher (Closing The Loop From Model To Dispatcher)
Closing the Loop from Model to Dispatcher — a production lesson from an ABC Logistics backend/data platform.
Fleet Route Intelligence ML (Machine Learning)
Part 10 of 10
EDA, scikit-learn/PyTorch, OSRM, and foundation-model APIs for wait hotspots, preferred routes, and fuel-waste analysis.
Closing the Loop from Model to Dispatcher
Without a feedback label from dispatcher actions, route intelligence is a slide deck, not a system.
insight → dispatcher action → outcome label
Aksiyon kaydı olmayan ML, operasyona bağlı değildir.
Concepts, defined where they first appear
📦 OSRM
Open-source road-network shortest-path engine used as the recommended-route baseline.
📦 Preferred Path
The path drivers actually take — recovered from telemetry traces.
📦 Km Extension
Extra kilometers of the preferred path versus the OSRM baseline.
📦 Wait Hotspot
Geographic cluster where waiting events concentrate.
Blurring these layers produces the wrong truth in analytics and on the map UI.
Shape of the problem
Without a feedback label from dispatcher actions, route intelligence is a slide deck, not a system.
insight → dispatcher action → outcome label
The split that works
Aksiyon kaydı olmayan ML, operasyona bağlı değildir.
insight → dispatcher action → outcome label
↓
explicit contract → frontend
Frontend bridge
Ops maps, wait-geofence UI, and MFEs consume these read models — they never bind to raw ERP/MySQL.
The mappings that get confused most often
❌ ERP MySQL = analytics database
✓ ERP is a write store; analytics lives in PostGIS
❌ Let the map trust public/vendor routers blindly
✓ Production needs your API/OSRM edge
❌ Log ML outputs with PII
✓ Evaluation and serving obey privacy boundaries
A checklist for auditing your own system
- Which store is source of truth for this surface?
- Which API contract does the frontend call?
- What happens if one cluster node dies?
- How is lag shown to operators?
- Deny-list: any client domain/vendor leakage?
What to take away from this part
- Polyglot stores exist for different workloads; one-DB fantasies are fragile.
- Frontends consume clean read models, not the ERP.
- ML/OSRM outputs need an API contract before they hit the map.
A beautiful map drawn from a dirty source is still a lie.
FAQ
Frequently asked questions
What is OSRM?
Open-source road-network shortest-path engine used as the recommended-route baseline.
What is Preferred Path?
The path drivers actually take — recovered from telemetry traces.
Is it true that "ERP MySQL = analytics database"?
ERP is a write store; analytics lives in PostGIS
What does this part lock in?
Aksiyon kaydı olmayan ML, operasyona bağlı değildir. Without a feedback label from dispatcher actions, route intelligence is a slide deck, not a system.
Engineering Principles Learned
- Separate the operational store from the analytics store.
- Telemetry, search, and relational GIS have different access patterns.
- Every read model is a frontend contract.
Continue reading
Continue reading
Next in series
Evaluating Models Without Leaking PII (Personally Identifiable Information)
Evaluating Models Without Leaking PII — a production lesson from an ABC Logistics backend/data platform.
Same series
Serving Route Intelligence to the Map UI (User Interface)
Serving Route Intelligence to the Map UI — a production lesson from an ABC Logistics backend/data platform.
Same series
Wait Region Ranking as an ML (Machine Learning) Product
Wait Region Ranking as an ML Product — a production lesson from an ABC Logistics backend/data platform.