Problem Statement
Daily ground operations across airport β hotel, multi-stop activity chains, day trips, and both private and shared modes required complex routing optimization. The system needed to honor time windows, vehicle/driver constraints, "stay-with-client" blocks, and re-optimize day-of with live trafficβwhile improving unit economics across owned/leased/supplier vehicles with fixed and variable costs.
Solution Architecture
Architecture Overview
βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β Booking API βββββΆβ Normalizer βββββΆβ PostgresDB β β (JSON/Protobuf) β β (validation) β β (job store) β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β Driver GPS βββββΆβ Redis Cache βββββΆβ Route Optimizer β β (telemetry) β β (hot state) β β (LNS/TSPTW) β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β Maps Provider βββββΆβ ETA Cache βββββΆβ Vehicle Allocatorβ β (ETA/Traffic) β β (2-5 min TTL) β β (matching) β βββββββββββββββββββ βββββββββββββββββββ οΏ½ββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ β Flights/Delays βββββΆβ Live-Ops Loop βββββΆβ Driver App β β (dynamic ops) β β (re-optimize) β β (manifest/ETA) β βββββββββββββββββββ βββββββββββββββββββ βββββββββββββββββββ
Key Features & Components
π€ Intelligent Pooling
- β’ Time-space bucketing with H3/k-means clustering
- β’ Capacity and constraint feasibility filtering
- β’ Mini-TSPTW feasibility checks
- β’ Set packing for optimal bundle selection
β‘ Live Operations
- β’ ETA caching with 2-5 minute TTL
- β’ Predictive lateness detection via slack analysis
- β’ Zone-scoped re-optimization
- β’ Stability guards with churn caps
π― Route Optimization
- β’ Large Neighborhood Search (LNS) destroy/repair
- β’ Local moves: 2-opt, swap, relocate
- β’ Multi-objective scoring (wait/late/cost/rev)
- β’ Regret-k insertion for initial solutions
π Vehicle Allocation
- β’ Smart vehicle/driver matching
- β’ Duty hours and skill qualifications
- β’ Depot proximity considerations
- β’ 25-30 minute lock horizon protection
Technical Implementation
ποΈ Data Architecture
Core Entities
- β’ Bookings: Jobs with flags, time windows, service duration
- β’ Vehicles: Capacity, equipment, depot, cost profiles
- β’ Drivers: Duty schedules, skills, certifications
- β’ Routes: Sequences with ETAs and break placements
- β’ Telemetry: Real-time GPS and status updates
Storage Strategy
- β’ PostgreSQL/Timescale: Persistent job and vehicle data
- β’ Redis: Hot state cache for real-time operations
- β’ Kafka: Event streaming for change notifications
- β’ Filesystem: Query result caching and audit logs
π― Traffic-Aware Optimization
ETA Batch Processing
Batch ETA requests for all legs within lock horizon + buffer; write through cache with 2-5 minute TTL
Slack Analysis
Compute slack per upcoming stop; flag at-risk when slack < threshold for β₯90 seconds
Targeted Re-optimization
Re-optimize only in impacted zones; destroy nearby legs/bundles; repair with regret-k insertion
Update Distribution
Push new sequence/ETAs to driver app; optional customer SMS/WhatsApp; audit "why changed"
Results & Business Impact
π Operational Metrics
π° Economic Impact
Technology Stack
Backend
Optimization
Infrastructure
Ready to Optimize Your Fleet Operations?
See how intelligent routing can reduce costs, improve service levels, and scale your ground operations.