# Problem-Driven Scenario Generation for Stochastic Programming Problems: A Survey
## 5 Potential Applications  
The literature summarized in Table 1 demonstrates that problem-driven scenario generation have a broad range of potential applications in Stochastic Programming. Past applications where these methods have been shown to be effective include portfolio optimization with specific risk measures, energy systems planning, network design, and allocation problems. Taking into account the aforementioned characteristics of problem-driven scenario generation, this approach shows the potential for situations wherein it is crucial to limit the number of scenarios. Additionally, it has been proposed in [30] that an area where problem-driven scenario generation may be particularly useful is in problems involving binary distributions, where traditional scenario generation methods based on fitting the scenario-tree and underlying distribution may not perform well. To optimize decision-making problems involving uncertainties in more complex environments, we also consider exploring potential combinations of Stochastic Programming and machine learning technologies to enhance the performance of the solving process. Within this context, we provide a concise examination of the existing literature in this field. Primarily, when confronted with intricate distributions that are generally hard to approximate, a direct and straightforward approach is to employ machine learning tools to approximate these distributions in SP models. An example can be found in [65] that estimates the conditional urban traffic through spatial and temporal aspects using generative adversarial networks. More specifically in the context of scenario generation in SP problems, machine learning technologies have been investigated for the purpose of generating more informative scenarios, as illustrated in the work [42]. Furthermore, machine learning technologies have proven valuable in facilitating scenario reduction and clustering procedures, as evidenced by the research conducted in [66; 67]. The computational complexity of the SP models can be significantly reduced, making it more practical for solving large-scale problems commonly encountered in real-world applications. Regarding the resolution of SP problems, a diverse array of studies have employed various machine learning techniques aimed at enhancing the effectiveness and efficiency of the solving process. A method involving a Conditional Variational Autoencoder (CVAE) has been introduced in [68]. This CVAE is designed to capture the dependencies between scenarios and their corresponding instances. As a result, it substantially improves the problem-solving performance, enabling the attainment of high-quality solutions within a short computational time and exhibits generalizability to larger-scale problems or those featuring a greater number of scenarios. Another work by [69] introduces a neural network that is trained to approximate the expected value function, thereby constructing a surrogate model that can be solved more efficiently compared to the traditional extensive formulation approach for two-stage Stochastic Programming problems with different structures. A similar work using a neural network can also be found in [70] for multi-stage optimization problems. Related works that employ supervised learning can be found in [71] for mixed-integer linear two-stage stochastic programs. A learnable local search solver for two-stage stochastic integer programming in a large-scale data setting via reinforcement learning is presented in [72]. It addresses the task by simultaneously learning two policies: one for generating an initial solution and another for iteratively refining it through local search moves. To enable learning across various problem instances and generalization to new ones, these policies utilize contextual features associated with each problem instance as input. Additionally, the study introduces an extra policy aimed at learning the computation of the objective bound via dual decomposition.