Scenario tree construction for multi-stage stochastic optimization problems