cat ~/projects/Ecommerce_Warehouse_Optimization/README.md

E-Commerce Warehouse Optimizer

Supply chain optimization using linear programming to minimize warehouse costs and improve distribution efficiency.

Pythonpushed 2mo ago
Operations ResearchLinear ProgrammingNetwork FlowCost MinimizationScenario Analysis6 warehouses × 10 regions × 300+ productsTeam Lead — 5-person team
signal.overview

An e-commerce company with 6 warehouses, 10 delivery regions, and 300+ products was running at 45% order fulfillment — more than half of all orders resulted in stockouts. The root cause: inventory was allocated by gut feel, not math. This project formulates the allocation problem as a linear program and solves it to optimality.

The optimization model minimizes total system cost (transportation + holding + stockout penalties) subject to capacity, demand, and service-level constraints. The key insight was modeling inventory as continuous flow capacity rather than static stock — a 50,000-unit warehouse turning over 12× per year has 600,000 units of annual flow capacity, not 50,000.

The result: fulfillment jumped from 45% to 99%+, stockouts dropped below 5%, and annual profit improved by $44.9M. The system also identified a $3.7M transportation cost savings opportunity through carrier renegotiation. Nine scenario analyses (capacity expansion, cost changes, higher service targets) provide a decision playbook for the operations team.

run.simulation()
Ecommerce_Warehouse_Optimization — interactive demo
Capacity Scale100%
Transport Cost100%
Inventory Turnover12×/yr
Fulfillment Rate
100.0%
Total System Cost
$2118K
Stockout Cost
$0K
vs Baseline
-$0K
Warehouse Utilization
Region Fulfillment
Capacity Scenario Analysis
optimization.verdict()

At 100% capacity with 12× annual turnover, the network achieves 100.0% fulfillment at $2118K total cost. All regions are served at near-perfect fulfillment. Transport costs account for $734K (35% of total).

cat ARCHITECTURE.md
PythonPuLPpandasPlotlyStreamlitNumPy
  • Multi-commodity network flow LP: decision variables x[i,j,p] for shipments from warehouse i to region j for product p, with stockout slack variables.
  • Objective: minimize Σ transport_cost × shipments + Σ holding_cost × inventory + Σ penalty × stockouts. Solved with CBC (branch-and-cut) in ~2 seconds.
  • Scenario engine runs 9 variants (capacity ±10-30%, transport cost ±10-20%, service target 95-99%) and compares KPIs in a unified dashboard.
© 2026 Om Gorakhiasys.uptime: ∞