329. Chance Constraints
Constraints required to hold with high probability rather than always. Useful when:
- Always-feasibility is too expensive
- The data is uncertain and 100% reliability isn’t needed (or even possible)
- Service-level requirements are stated probabilistically (“95% of orders shipped on time”)
329.1. Formulation
For uncertain parameters :
The constraint must hold with probability at least . is the risk level — typically or .
Equivalent: violate the constraint with probability at most .
329.2. Joint vs individual chance constraints
Individual: each constraint holds with high probability, separately:
Joint: all constraints hold simultaneously with high probability:
Joint is stronger — and harder to handle. Often individual is what’s actually intended.
329.3. Reformulation under normality
If is normally distributed (with mean and variance ):
The chance constraint becomes a deterministic constraint involving — possibly convex (e.g., if is linear in and ). This is a second-order cone constraint, solvable by interior-point methods.
329.4. Reformulation via sampling
Without normality, use scenarios :
Enforcing the chance constraint on the sample becomes an MILP with binary indicators per scenario — exponential growth, manageable up to .
329.5. Equivalence to VaR / CVaR
In risk management, chance constraints relate to:
- Value at Risk (VaR): the -quantile of the loss distribution. The chance constraint is essentially .
- Conditional VaR (CVaR): expected loss beyond VaR. Tighter, convex, easier to optimize.
In practice, CVaR-based reformulations of chance constraints are more numerically tractable.
329.6. Where chance constraints matter
- Service-level inventory: 95% in-stock probability per cycle
- Robust facility location: feasible under high-probability demand realizations
- Portfolio optimization:
- Power systems: probabilistic generation-load balance
- Network design: links carry expected traffic with high probability
329.7. See also
- Stochastic Programming
- Two-stage Recourse
- SAA
- Cycle Service Level — inventory application