ScenarioTheory.jl
Violation probability bounds from scenario theory
ScenarioTheory.jl is a Julia library for computing bounds from Scenario Theory (Campi & Garatti). Given the number of samples, the desired confidence, and the number of decision variables/support constraints/compressed size, it computes the violation probability — i.e. the probability of a change of compression.
Note: the package does not solve scenario optimization or compression problems itself; it provides the theoretical bounds needed to interpret their solutions.
Supported Theory Types
- Scenario Optimization — classical bounds based on sample count and decision variables
- Wait-and-Judge Scenario Optimization — bounds based on the number of support constraints
- One-Tail Change of Compression — generalized compression-based bounds
- Two-Tail Change of Compression — two-sided bounds on violation probability
Motivation
Computing these bounds is numerically unstable (large binomial coefficients, large exponents of values in [0, 1]). This package handles the numerics robustly so you don’t have to.