A single-SKU warehouse decides every morning how much to reorder. Holding stock costs money slowly; running out costs money fast, at roughly seventeen times the rate. Orders take two days to arrive, so today's decision is really a bet on the day after tomorrow, and demand doubles at weekends. You will build the simulator, search the space of restocking rules, then train a tabular Q-learning agent on the same environment and compare it honestly against the rules you already found.
Separate the two demand regimes and size the gap between them.
Implement explore_demand(train_df) returning a dict with:
weekend_multiple is the number that makes a single reorder point wrong. A rule tuned on overall_mean carries too much stock for five days a week and too little for two.
Evaluated server-side against a hidden test set.