Warehouse Problem with Multiple Vendors and Generalized Complementarity Constraints
Ishan Bansal, Oktay Günlük
TL;DR
The paper extends the warehouse problem to markets with multiple vendors and generalized complementarity constraints, enabling accurate modeling of practical conditions such as surge pricing, ramping, and batch pricing. It provides a structural extreme-point analysis and a dynamic-programming style network-flow formulation that reduces the problem to a longest-path problem on a DAG, with running time $O(T V^2 3^{2V}|S|^22^{2\hat{C}})$ under suitable conditions. The authors identify practical polynomial-time solvable cases (lattice-bounded inputs, logarithmic number of vendors, and logarithmic constraint-thickness) and prove NP-hardness when these conditions fail, including multi-vendor and arbitrary-bounds scenarios. They also demonstrate how the framework models various real-world constraints such as discounted costs, ramping, and batch pricing, and propose natural extensions to capture broader OR-constraints and inequalities. The results advance efficient optimization for energy markets and complex inventory-management problems where inter-temporal and cross-vendor effects are critical.
Abstract
We study the warehouse problem, arising in the area of inventory management and production planning. Here, a merchant wants to decide an optimal trading policy that computes quantities of a single commodity to purchase, store and sell during each time period of a finite discrete time horizon. Motivated by recent applications in energy markets, we extend the models by Wolsey and Yaman (2018) and Bansal and Günlük (2023) and consider markets with multiple vendors and a more general form of the complementarity constraints. We show that these extensions can capture various practical conditions such as surge pricing and discounted sales, ramp-up and ramp-down constraints and batch pricing. We analyze the extreme points of the underlying non-linear integer program and provide an algorithm that exactly solves the problem. Our algorithm runs in polynomial time under reasonable practical conditions. We also show that the absence of such conditions renders the problem NP-Hard.
