Taco ==== Taco is a python toolbox aimed at solving chance-constrained problems. For more details, we refer to our companion paper (to appear very soon!). Overview -------- This toolbox is aimed at solving optimization problems of the form: .. math:: \left\{ \begin{array}{ll} \min_{x \in \mathbb{R}^d} & f(x) \\ \text{ s.t. } & \mathbb{P}[g(x, \xi) \leq 0] \geq p \end{array} \right. where :math:`f:\mathbb{R}^d \mapsto \mathbb{R}` and :math:`g:\mathbb{R}^d \times \mathbb{R}^m \mapsto \mathbb{R}` are two functions provided by the user together with a dataset :math:`D` from which :math:`\xi:\Omega \rightarrow \mathbb{R}^m` is sampled. Taco implements a penalization procedure based on a bilevel reformulation of the above problem. Each penalized problem turns out to be a Difference of Convex problem that we solve with a recent `bundle procedure `_. .. raw:: html

centered image
Example of solving for a quadratic toy problem (see the companion paper)
The non-convex red region delimited by the black dashed-line is the chance constraint.
The blue oval shapes are the contour lines of the objective function.

Taco routines rely on just-in-time compilation supported by `Numba `_. The routines are optimized to provide fast performances on reasonably large datasets. Table of Contents ----------------- .. toctree:: :caption: Table of Contents :maxdepth: 2 Getting Started The Optimization Framework The Oracles The Bundle Method The Problems Authors ------- * `Yassine Laguel `_ * `Jerome Malick `_ * `Wim Van Ackooij `_