Examples


Retailer-Supplier Flexible Commitment Contracts

Problem Description

The retailer-supplier flexible commitment (RSFC) problem is due to Ben-Tal et. al. (2005). The RSFC problem is a single-product, multi-period inventory management problem with uncertain demand. At the beginning of the planning horizon, the retailer forecasts the quantity of the product they will order from the retailer at each period in the planning horizon and commits to these forecasts. At the beginning of each time period, and having observed the demand from their customers for the previous periods, the retailer decides on a quantity of the product to order from the supplier. At each time stage, the total cost includes the inventory holding and shortage costs, penalties due to the deviations between successive commitments, and between committed and actual orders. The retailer's goal is to select the commitments and quantities to order to minimize their total worst-case (maximum) cost.

Code

The RSFC problem is a multi-stage robust optimization problem involving only exogenous uncertain parameters, see Ben-Tal et. al. (2004). It can be modeled in ROC++ in a way that exactly parallels how deterministic optimization problems are modeled in C++. To solve this problem necessitates approximating the real-valued adaptive variables in the problem by linear decision rules, then robustifying the problem using duality theory, and finally solving it using an off-the-shelf deterministic solver. This process is streamlined in ROC++.

Check out our code for modeling, approximating, and solving the RSFC problem here.

Robust Pandora Box Problem

Problem Description

We consider a robust variant of the celebrated stochastic Pandora Box (PB) problem due to Weitzman (1979). This problem models selection from a set of unknown, alternative options, when evaluation is costly. For example, the problem of hiring a skilled worker, where only one hire can be made and where the evaluation of each candidate is an expensive procedure, can be cast as a Pandora's box problem.

Code

The PB problem is a multi-stage robust optimization problem involving uncertain parameters whose time of revelation is decision-dependent, see Vayanos et. al. (2019). It involves binary adaptive decision variables. It can be modeled in ROC++ in a way that exactly parallels how deterministic optimization problems are modeled in C++. This problem can be solved by approximating the binary-valued adaptive variables in the problem by a finite number of contingency plans, robustifying the problem using duality theory, and finally solving it using an off-the-shelf deterministic solver. This process is streamlined in ROC++.

Check out our code for modeling, approximating, and solving the PB problem here.

Stochastic Best Box Problem

Problem Description

We consider a variant of Pandora's Box problem, known as Best Box (BB), in which observation costs are subject to a budget constraint. Observation costs are uncertain and that the decision-maker is interested in maximizing the expected (rather than worst-case) value of the box kept. For example, the problem of searching for a home to buy where the time of visiting each home is uncertain and only limited time is available, can be cast as a best box problem with uncertain constraints.

Code

The Best Box problem is a multi-stage stochastic optimization problem with decision-dependent information discovery, see Vayanos et. al. (2011). It involves binary adaptive decision variables. It can be modeled in ROC++ in a way that exactly parallels how deterministic optimization problems are modeled in C++. This problem can be solved by approximating the binary-valued adaptive variables in the problem by decision rules that are piecewise constant on a preselected partitity of the uncertainty set, robustifying the problem using duality theory, and finally solving it using an off-the-shelf deterministic solver. This process is streamlined in ROC++.

Check out our code for modeling, approximating, and solving the BB problem here.