We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
Ryan ONeill | Order up! How do I deliver it? Build on-demand logistics apps | Pydata Global 2023
Learn how to build on-demand delivery apps using Python and OR-tools. Covers demand forecasting, worker scheduling, route optimization, and key considerations for logistics systems.
-
Python and OR-tools have become the de facto standard for optimization and logistics modeling
-
Three core components for on-demand delivery systems:
- Forecasting (predicting demand)
- Scheduling (matching supply/workers to demand)
- Route planning (optimizing delivery sequences)
-
LAD (Least Absolute Deviations) regression is preferred over least squares for forecasting because:
- More robust to outliers
- Can be customized through optimization modeling
- Implemented as a linear programming problem
-
Scheduling optimization aims to:
- Balance overstaffing and understaffing penalties
- Account for worker availability constraints
- Match economic targets like orders per driver hour
- Adapt to different time periods (morning/evening/etc.)
-
Route planning considerations:
- Vehicle capacity constraints
- Depot locations and delivery points
- Drive time and distance optimization
- Assignment and sequencing of stops
-
OR-tools provides multiple paradigms in one library:
- Linear programming
- Mixed integer programming
- Constraint programming
- Satisfiability solving
- Local search capabilities
-
Moving from manual/siloed processes to integrated technology platforms improves operational efficiency
-
Models can be customized based on business needs:
- Different penalties for over/undersupply
- Seasonal variations
- Economic conditions
- Geographic considerations