Assortment Space Optimization
Lead Data Scientist & MLOps · H-E-B
Response-curve forecasting plus mixed-integer optimization that decides how much shelf each product section gets in every store.
- runtime (9 h → 75 min)
- −86%
- compute cost (approx.)
- −90%
The problem
Every store has a fixed amount of aisle space. Deciding how wide each product section should be — including widths a store has never tried — is a forecasting and an optimization problem at once.
What I built and led
- Led a two-stage hierarchical XGBoost model (segment to store, monotonic constraints) that forecasts response curves for every candidate width.
- Formulated a PuLP mixed-integer optimizer that reallocates each store's space to the highest-return sections under merchandising constraints, solved in parallel across stores on Databricks/Spark.
- Delivered it through a self-service Streamlit dashboard, and rebuilt the preprocessing, feature engineering and compute layers.
Results
- −86% runtime (9 h → 75 min)
- −90% compute cost (approx.)