PythonOT/POT

How to conduct scenario reduction with this project?

Closed this issue ยท 0 comments

๐Ÿš€ Feature

I wanna carry out a scenario reduction task, which aims to reduce scenario numbers while keeping the wasserstein matric between original and reduced empirical distrition close to zero.

Motivation

In scenario-based stochastic optimization, the computational efficiency is highly related to the number of scenarios. It is important to counterbalance the description accuracy of distribution and the efficiency of later optimization.

Pitch

What I want is simple. The optimal transport problem between discrete distributions is often expressed as

$$
\begin{align}
\begin{aligned}
\gamma^* = arg\min_{\gamma \in \mathbb{R}+^{m\times n}} \quad \sum{i,j}\gamma_{i,j}M_{i,j}\
s.t. \gamma 1 = a; \gamma^T 1= b; \gamma\geq 0
\end{aligned}
\end{align}
$$

What if the target distribution is unknown with given number of scenarios? Then the problem becomes scenario reduction. But I don't know how to implement cause it is a non-convex problem then.