{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,3,6]],"date-time":"2026-03-06T20:15:46Z","timestamp":1772828146873,"version":"3.50.1"},"reference-count":72,"publisher":"MDPI AG","issue":"10","license":[{"start":{"date-parts":[[2023,10,13]],"date-time":"2023-10-13T00:00:00Z","timestamp":1697155200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"funder":[{"name":"ULTRA OPTYMAL- Urban Logistics and sustainable TRAnsportation: OPtimization under uncertainty and MAchine Learning","award":["20207C8T9M"],"award-info":[{"award-number":["20207C8T9M"]}]},{"name":"Italian Ministry of University and Research","award":["20207C8T9M"],"award-info":[{"award-number":["20207C8T9M"]}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Algorithms"],"abstract":"<jats:p>Stochastic Programming is a powerful framework that addresses decision-making under uncertainties, which is a frequent occurrence in real-world problems. To effectively solve Stochastic Programming problems, scenario generation is one of the common practices that organizes realizations of stochastic processes with finite discrete distributions, which enables the use of mathematical programming models of the original problem. The quality of solutions is significantly influenced by the scenarios employed, necessitating a delicate balance between incorporating informative scenarios and preventing overfitting. Distributions-based scenario generation methodologies have been extensively studied over time, while a relatively recent concept of problem-driven scenario generation has emerged, aiming to incorporate the underlying problem\u2019s structure during the scenario generation process. This survey explores recent literature on problem-driven scenario generation algorithms and methodologies. The investigation aims to identify circumstances under which this approach is effective and efficient. The work provides a comprehensive categorization of existing literature, supplemented by illustrative examples. Additionally, the survey examines potential applications and discusses avenues for its integration with machine learning technologies. By shedding light on the effectiveness of problem-driven scenario generation and its potential for synergistic integration with machine learning, this survey contributes to enhanced decision-making strategies in the context of uncertainties.<\/jats:p>","DOI":"10.3390\/a16100479","type":"journal-article","created":{"date-parts":[[2023,10,13]],"date-time":"2023-10-13T10:04:39Z","timestamp":1697191479000},"page":"479","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":6,"title":["Problem-Driven Scenario Generation for Stochastic Programming Problems: A Survey"],"prefix":"10.3390","volume":"16","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-1491-9336","authenticated-orcid":false,"given":"Xiaochen","family":"Chou","sequence":"first","affiliation":[{"name":"Department of Informatics, Systems and Communication, University of Milano-Bicocca, 20125 Milano, Italy"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-4062-0824","authenticated-orcid":false,"given":"Enza","family":"Messina","sequence":"additional","affiliation":[{"name":"Department of Informatics, Systems and Communication, University of Milano-Bicocca, 20125 Milano, Italy"}]}],"member":"1968","published-online":{"date-parts":[[2023,10,13]]},"reference":[{"key":"ref_1","unstructured":"Shapiro, A., and Philpott, A.B. (2023, September 15). A Tutorial on Stochastic Programming. Available online: https:\/\/stoprog.org\/sites\/default\/files\/SPTutorial\/TutorialSP.pdf."},{"key":"ref_2","doi-asserted-by":"crossref","first-page":"3190","DOI":"10.1016\/j.cma.2007.03.003","article-title":"Robust optimization\u2014A comprehensive survey","volume":"196","author":"Beyer","year":"2007","journal-title":"Comput. Methods Appl. Mech. Eng."},{"key":"ref_3","doi-asserted-by":"crossref","first-page":"333","DOI":"10.1007\/BF02614323","article-title":"Decomposition methods in stochastic programming","volume":"79","year":"1997","journal-title":"Math. Program."},{"key":"ref_4","doi-asserted-by":"crossref","first-page":"97","DOI":"10.1007\/s10107-005-0673-5","article-title":"Hedging Uncertainty: Approximation Algorithms for Stochastic Optimization Problems","volume":"108","author":"Ravi","year":"2006","journal-title":"Math. Program."},{"key":"ref_5","doi-asserted-by":"crossref","first-page":"801","DOI":"10.1016\/j.ejor.2016.12.005","article-title":"The Benders decomposition algorithm: A literature review","volume":"259","author":"Rahmaniani","year":"2017","journal-title":"Eur. J. Oper. Res."},{"key":"ref_6","unstructured":"Mitra, S. (2006). Optirisk Systems: White Paper Series, OptiRisk Systems. Ref. No. OPT004."},{"key":"ref_7","first-page":"34","article-title":"A Review of Stochastic Programming Methods for Optimization of Process Systems Under Uncertainty","volume":"2","author":"Li","year":"2021","journal-title":"Front. Chem. Eng. Sec. Comput. Methods Chem. Eng."},{"key":"ref_8","first-page":"65","article-title":"Monte Carlo sampling approach to stochastic programming","volume":"13","author":"Shapiro","year":"2003","journal-title":"Proc. MODE-SMAI Conf."},{"key":"ref_9","doi-asserted-by":"crossref","first-page":"169","DOI":"10.1007\/978-3-030-00473-6_19","article-title":"Monte Carlo Sampling for the Probabilistic Orienteering Problem","volume":"Volume 1","author":"Daniele","year":"2018","journal-title":"New Trends in Emerging Complex Real Life Problems"},{"key":"ref_10","doi-asserted-by":"crossref","first-page":"105107","DOI":"10.1016\/j.cor.2020.105107","article-title":"A tabu search algorithm for the probabilistic orienteering problem","volume":"126","author":"Chou","year":"2021","journal-title":"Comput. Oper. Res."},{"key":"ref_11","doi-asserted-by":"crossref","first-page":"315","DOI":"10.1007\/s10107-015-0898-x","article-title":"Quasi-Monte Carlo methods for linear two-stage stochastic programming problems","volume":"151","year":"2015","journal-title":"Math. Program."},{"key":"ref_12","first-page":"379","article-title":"Hidden Markov models for scenario generation","volume":"19","author":"Messina","year":"2008","journal-title":"IMA J. Manag. Math."},{"key":"ref_13","doi-asserted-by":"crossref","first-page":"641","DOI":"10.1007\/s10589-015-9758-0","article-title":"Dynamic generation of scenario trees","volume":"62","author":"Pflug","year":"2015","journal-title":"Comput. Optim. Appl."},{"key":"ref_14","doi-asserted-by":"crossref","first-page":"169","DOI":"10.1023\/A:1021853807313","article-title":"A heuristic for moment-matching scenario generation","volume":"24","author":"Kaut","year":"2003","journal-title":"Comput. Optim. Appl."},{"key":"ref_15","doi-asserted-by":"crossref","first-page":"2428","DOI":"10.1016\/j.mcm.2011.05.054","article-title":"Use of Lagrangian decomposition in supply chain planning","volume":"54","author":"Lidestam","year":"2011","journal-title":"Math. Comput. Model."},{"key":"ref_16","doi-asserted-by":"crossref","first-page":"48","DOI":"10.1016\/j.cor.2015.09.005","article-title":"Cluster Lagrangean decomposition in multistage stochastic optimization","volume":"67","author":"Escudero","year":"2016","journal-title":"Comput. Oper. Res."},{"key":"ref_17","unstructured":"Murphy, J. (2013). Benders, Nested Benders and Stochastic Programming: An Intuitive Introduction. arXiv."},{"key":"ref_18","doi-asserted-by":"crossref","first-page":"219","DOI":"10.1007\/s12532-011-0026-8","article-title":"Pyomo: Modeling and solving mathematical programs in Python","volume":"3","author":"Hart","year":"2011","journal-title":"Math. Program. Comput."},{"key":"ref_19","doi-asserted-by":"crossref","unstructured":"Bynum, M.L., Hackebeil, G.A., Hart, W.E., Laird, C.D., Nicholson, B.L., Siirola, J.D., Watson, J.P., and Woodruff, D.L. (2021). Pyomo\u2013Optimization Modeling in Python, Springer. [3rd ed.].","DOI":"10.1007\/978-3-030-68928-5"},{"key":"ref_20","unstructured":"(2023, October 12). Python Programming Language. Available online: https:\/\/www.python.org\/."},{"key":"ref_21","unstructured":"(2023, October 12). JuMP. Available online: https:\/\/jump.dev\/."},{"key":"ref_22","unstructured":"(2023, October 12). The Julia Programming language. Available online: https:\/\/julialang.org\/."},{"key":"ref_23","unstructured":"Gay, D.M. (2023, October 12). Update on AMPL Extensions for Stochastic Programming. Available online: https:\/\/ampl.com\/wp-content\/uploads\/2010_08_Halifax_RC4.pdf."},{"key":"ref_24","unstructured":"(2023, October 12). AMPL. Available online: https:\/\/ampl.com\/."},{"key":"ref_25","unstructured":"(2023, October 12). Stochastic Programming in GAMS Documentation. Available online: https:\/\/www.gams.com\/latest\/docs\/UG_EMP_SP.html."},{"key":"ref_26","unstructured":"(2023, October 12). IBM ILOG CPLEX Optimization Studio. Available online: https:\/\/www.ibm.com\/products\/ilog-cplex-optimization-studio."},{"key":"ref_27","unstructured":"(2023, October 12). Gurobi Optimization. Available online: https:\/\/www.gurobi.com\/."},{"key":"ref_28","unstructured":"Gupta, S.D. (2023, September 15). Using Julia + JuMP for Optimization\u2014Benders Decomposition. Available online: https:\/\/www.juliaopt.org\/notebooks\/Shuvomoy%20-%20Benders%20decomposition.html."},{"key":"ref_29","doi-asserted-by":"crossref","first-page":"1885","DOI":"10.1287\/ijoc.2022.1158","article-title":"Efficient stochastic programming in Julia","volume":"34","author":"Biel","year":"2022","journal-title":"INFORMS J. Comput."},{"key":"ref_30","doi-asserted-by":"crossref","first-page":"277","DOI":"10.1007\/s10287-020-00369-2","article-title":"Scenario tree construction driven by heuristic solutions of the optimization problem","volume":"17","author":"Prochazka","year":"2020","journal-title":"Comput. Manag. Sci."},{"key":"ref_31","unstructured":"R\u00f6misch, W. (2023, September 15). Scenario Generation in Stochastic Programming. Available online: https:\/\/opus4.kobv.de\/opus4-matheon\/files\/665\/6733_wileyRoem.pdf."},{"key":"ref_32","doi-asserted-by":"crossref","first-page":"115","DOI":"10.1007\/BF02055193","article-title":"Stability and sensitivity-analysis for stochastic programming","volume":"27","year":"1990","journal-title":"Ann. Oper. Res."},{"key":"ref_33","doi-asserted-by":"crossref","first-page":"1193","DOI":"10.1287\/moor.2019.1043","article-title":"On the Scenario-Tree Optimal-Value Error for Stochastic Programming Problems","volume":"45","author":"Keutchayan","year":"2020","journal-title":"Math. Oper. Res."},{"key":"ref_34","doi-asserted-by":"crossref","first-page":"731","DOI":"10.1016\/j.orl.2006.12.008","article-title":"A note on scenario reduction for two-stage stochastic programs","volume":"35","author":"Heitsch","year":"2007","journal-title":"Oper. Res. Lett."},{"key":"ref_35","first-page":"395","article-title":"Scenario trees and policy selection for multistage stochastic programming using machine learning","volume":"25","author":"Defourny","year":"2013","journal-title":"NFORMS J. Comput."},{"key":"ref_36","doi-asserted-by":"crossref","first-page":"333","DOI":"10.1007\/s10287-017-0279-4","article-title":"Quality evaluation of scenario-tree generation methods for solving stochastic programming problems","volume":"14","author":"Keutchayan","year":"2017","journal-title":"Comput. Manag. Sci."},{"key":"ref_37","doi-asserted-by":"crossref","unstructured":"Galuzzi, B.G., Messina, E., Candelieri, A., and Archetti, F. (2020, January 19\u201323). Optimal Scenario-Tree Selection for Multistage Stochastic Programming. Proceedings of the Machine Learning, Optimization, and Data Science: 6th International Conference, LOD 2020, Siena, Italy.","DOI":"10.1007\/978-3-030-64583-0_31"},{"key":"ref_38","first-page":"3011","article-title":"Gaussian Processes for Machine Learning (GPML) Toolbox","volume":"11","author":"Rasmussen","year":"2010","journal-title":"J. Mach. Learn. Res."},{"key":"ref_39","doi-asserted-by":"crossref","first-page":"17","DOI":"10.1080\/00031305.1992.10475879","article-title":"An introduction to kernel and nearest-neighbor nonparametric regression","volume":"46","author":"Altman","year":"1992","journal-title":"Am. Stat."},{"key":"ref_40","doi-asserted-by":"crossref","first-page":"148","DOI":"10.1109\/JPROC.2015.2494218","article-title":"Taking the Human Out of the Loop: A Review of Bayesian Optimization","volume":"104","author":"Shahriari","year":"2016","journal-title":"Proc. IEEE"},{"key":"ref_41","unstructured":"Zaffalon, M., Antonucci, A., and Nas, R.C. (2020). Structural Causal Models Are (Solvable by) Credal Networks. arXiv."},{"key":"ref_42","unstructured":"Candelieri, A., Chou, X., Archetti, F., and Messina, E. (2023, January 4\u20137). Generating Informative Scenarios via Active Learning. Proceedings of the International Conference on Optimization and Decision Science, ODS2023, Ischia, Italy."},{"key":"ref_43","doi-asserted-by":"crossref","first-page":"99","DOI":"10.1007\/BF01582215","article-title":"Quantitative stability in stochastic programming","volume":"67","author":"Shapiro","year":"1994","journal-title":"Math. Program."},{"key":"ref_44","doi-asserted-by":"crossref","first-page":"1912","DOI":"10.21105\/joss.01912","article-title":"ScenTrees.jl: A Julia Package for Generating Scenario Trees and Scenario Lattices for Multistage Stochastic Programming","volume":"5","author":"Kirui","year":"2020","journal-title":"J. Open Source Softw."},{"key":"ref_45","first-page":"257","article-title":"Evaluation of Scenario-Generation Methods for Stochastic Programming","volume":"3","author":"Kaut","year":"2007","journal-title":"Pac. J. Optim."},{"key":"ref_46","unstructured":"Narum, B.S. (2023, September 15). Problem-Based Scenario Generation in Stochastic Programming with Binary Distributions\u2014Case Study in Air Traffic Flow Management. Available online: https:\/\/ntnuopen.ntnu.no\/ntnu-xmlui\/handle\/11250\/2777017."},{"key":"ref_47","first-page":"295","article-title":"Generating Scenario Trees for Multistage Decision Problems","volume":"47","author":"Wallace","year":"2001","journal-title":"Manag. Sci."},{"key":"ref_48","doi-asserted-by":"crossref","first-page":"29","DOI":"10.1007\/s10287-014-0220-z","article-title":"Solution sensitivity-based scenario reduction for stochastic unit commitment","volume":"13","author":"Feng","year":"2016","journal-title":"Comput. Manag. Sci."},{"key":"ref_49","doi-asserted-by":"crossref","first-page":"665","DOI":"10.1080\/00207543.2015.1030041","article-title":"Appraising redundancy in facility layout","volume":"54","author":"Zhao","year":"2016","journal-title":"Int. J. Prod. Res."},{"key":"ref_50","doi-asserted-by":"crossref","first-page":"871","DOI":"10.1016\/j.energy.2017.12.154","article-title":"An objective-based scenario selection method for transmission network expansion planning with multivariate stochasticity in load and renewable energy sources","volume":"145","author":"Sun","year":"2018","journal-title":"Energy"},{"key":"ref_51","doi-asserted-by":"crossref","first-page":"397","DOI":"10.1007\/s10287-018-0312-2","article-title":"Stochastic programs with binary distributions: Structural properties of scenario trees and algorithm","volume":"15","author":"Prochazka","year":"2018","journal-title":"Comput. Manag. Sci."},{"key":"ref_52","doi-asserted-by":"crossref","first-page":"472","DOI":"10.1287\/ijoc.2017.0790","article-title":"Scenario generation for single-period portfolio selection problems with tail risk measures: Coping with high dimensions and integer variables","volume":"30","author":"Fairbrother","year":"2018","journal-title":"INFORMS J. Comput."},{"key":"ref_53","doi-asserted-by":"crossref","first-page":"141","DOI":"10.1007\/s10107-019-01451-7","article-title":"Problem-driven scenario generation: An analytical approach for stochastic programs with tail risk measure","volume":"191","author":"Fairbrother","year":"2019","journal-title":"Math. Program."},{"key":"ref_54","doi-asserted-by":"crossref","first-page":"654","DOI":"10.1287\/ijoc.2019.0906","article-title":"Vehicle Routing with Space- and Time-Correlated Stochastic Travel Times: Evaluating the Objective Function","volume":"31","author":"Guo","year":"2019","journal-title":"INFORMS J. Comput."},{"key":"ref_55","unstructured":"Keutchayan, J., Ortmann, J., and Rei, W. (2021). Problem-Driven Scenario Clustering in Stochastic Optimization. arXiv."},{"key":"ref_56","doi-asserted-by":"crossref","first-page":"183","DOI":"10.1007\/s10107-018-1337-6","article-title":"Problem-based optimal scenario generation and reduction in stochastic programming","volume":"191","author":"Henrion","year":"2022","journal-title":"Math. Program."},{"key":"ref_57","doi-asserted-by":"crossref","first-page":"747","DOI":"10.1007\/s10479-020-03843-x","article-title":"Decision-based scenario clustering for decision-making under uncertainty","volume":"315","author":"Hewitt","year":"2022","journal-title":"Ann. Oper. Res."},{"key":"ref_58","doi-asserted-by":"crossref","first-page":"1343","DOI":"10.1287\/opre.2022.2265","article-title":"Optimization-Based Scenario Reduction for Data-Driven Two-Stage Stochastic Optimization","volume":"71","author":"Bertsimas","year":"2022","journal-title":"Oper. Res."},{"key":"ref_59","unstructured":"Narum, B.S., Fairbrother, J., and Wallace, S.W. (2023, September 15). Problem-Based Scenario Generation by Decomposing Output Distribution. Available online: https:\/\/www.researchgate.net\/publication\/361651159_Problem-based_scenario_generation_by_decomposing_output_distributions."},{"key":"ref_60","unstructured":"Fairbrother, J. (2023, September 15). Problem-Driven Scenario Generation for Stochastic Programs. Available online: https:\/\/eprints.lancs.ac.uk\/id\/document\/46997."},{"key":"ref_61","unstructured":"Kaut, M., and Lium, A.G. (2023, September 15). Scenario Generation: Property Matching with Distribution Functions. Available online: https:\/\/www.researchgate.net\/publication\/228424333_Scenario_generation_Property_matching_with_distribution_functions."},{"key":"ref_62","doi-asserted-by":"crossref","first-page":"69","DOI":"10.1007\/BF02060936","article-title":"Monte carlo (importance) sampling within a benders decomposition algorithm for stochastic linear programs","volume":"39","author":"Infanger","year":"1992","journal-title":"Ann. Oper. Res."},{"key":"ref_63","doi-asserted-by":"crossref","first-page":"50","DOI":"10.1016\/j.compchemeng.2014.03.019","article-title":"Optimal scenario reduction framework based on distance of uncertainty distribution and output performance: I. Single reduction via mixed integer linear optimization","volume":"70","author":"Li","year":"2014","journal-title":"Comput. Chem. Eng."},{"key":"ref_64","doi-asserted-by":"crossref","first-page":"1443","DOI":"10.1016\/S0378-4266(02)00271-6","article-title":"Conditional value-at-risk for general loss distributions","volume":"26","author":"Rockafellar","year":"2002","journal-title":"J. Bank. Financ."},{"key":"ref_65","doi-asserted-by":"crossref","unstructured":"Zhang, Y., Li, Y., Zhou, X., Kong, X., and Luo, J. (2020, January 15\u201317). Curb-GAN: Conditional Urban Traffic Estimation through Spatio-Temporal Generative Adversarial Networks. Proceedings of the 26th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining, Virtual Event.","DOI":"10.1145\/3394486.3403127"},{"key":"ref_66","doi-asserted-by":"crossref","first-page":"115992","DOI":"10.1016\/j.apenergy.2020.115992","article-title":"Review of wind power scenario generation methods for optimal operation of renewable energy systems","volume":"280","author":"Li","year":"2020","journal-title":"Appl. Energy"},{"key":"ref_67","doi-asserted-by":"crossref","first-page":"99","DOI":"10.1007\/978-3-030-58942-4_7","article-title":"A learning-based algorithm to quickly compute good primal solutions for stochastic integer programs","volume":"Volume 12296","author":"Hebrard","year":"2020","journal-title":"Integration of Constraint Programming, Artificial Intelligence, and Operations Research"},{"key":"ref_68","unstructured":"Wu, Y., Song, W., Cao, Z., and Zhang, J. (2023, September 15). Learning Scenario Pepresentation for Solving Two-Stage Stochastic Interger Programs. Available online: https:\/\/openreview.net\/forum?id=06Wy2BtxXrz."},{"key":"ref_69","unstructured":"Dumouchelle, J., Patel, R., Khalil, E.B., and Bodur, M. (2022). Neur2SP: Neural Two-Stage Stochastic Programming. arXiv."},{"key":"ref_70","unstructured":"Dai, H., Xue, Y., Syed, Z., and Dai, D.S.B. (2023, September 15). Neural Stochastic Dual Dynamic Programming. Available online: https:\/\/openreview.net\/forum?id=aisKPsMM3fg."},{"key":"ref_71","doi-asserted-by":"crossref","unstructured":"Larsen, E., Frejinger, E., Gendron, B., and Lodi, A. (2022). Fast continuous and integer L-shaped heuristics through supervised learning. arXiv.","DOI":"10.1287\/ijoc.2022.0175"},{"key":"ref_72","unstructured":"Nair, V., Dvijotham, D., Dunning, I., and Vinyals, O. (2018, January 6\u201310). Learning Fast Optimizers for Contextual Stochastic Integer Programs. Proceedings of the Conference on Uncertainty in Artifical Intelligence, UAI 2018, Montrery, CA, USA."}],"container-title":["Algorithms"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/1999-4893\/16\/10\/479\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,10]],"date-time":"2025-10-10T21:06:13Z","timestamp":1760130373000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/1999-4893\/16\/10\/479"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,10,13]]},"references-count":72,"journal-issue":{"issue":"10","published-online":{"date-parts":[[2023,10]]}},"alternative-id":["a16100479"],"URL":"https:\/\/doi.org\/10.3390\/a16100479","relation":{},"ISSN":["1999-4893"],"issn-type":[{"value":"1999-4893","type":"electronic"}],"subject":[],"published":{"date-parts":[[2023,10,13]]}}}