Skip to content

You are here: Home / XV Summer School 2022 / Courses / X-Heuristics: Concepts and applications in logistics, transportation, production and finance

X-Heuristics: Concepts and applications in logistics, transportation, production and finance


June 20 to 23. MORNING: 9 to 13h (June 20, 21, and 22) and 9 to 12h (June 23)


Not defined yet.


Prof. Dr. Angel A. Juan and Prof. Dr. Carles Serrat i Piè

ANGEL A. JUAN is a Full Professor at the Statistics and Operations Research Department at the Universitat Politècnica de València (Spain). Likewise, he is an Invited Full Professor at University College Dublin (Ireland) and at Universidade Aberta (Portugal). Dr. Juan holds a Ph.D. in Applied Mathematics and an M.Sc. in Mathematics. He completed a predoctoral internship at Harvard University and postdoctoral internships at Massachusetts Institute of Technology and Georgia Institute of Technology. His main research interests include applications of simheuristics and learnheuristics in computational logistics and transportation. He has published over 125 articles in JCR-indexed journals and over 300 papers indexed in Scopus. His website address is and his email address is
CARLES SERRAT is an Associate Professor at the Department of Mathematics at the Universitat Politècnica de Catalunya-BarcelonaTECH, at the Barcelona School of Building Construction (Catalonia, Spain). His areas or research include, but are not limited to, methodological and applied statistics as well as methaheuristics to fields like public health, construction, civil engineering, economy, logistics, and transport. Specifically he focuses on approaches based on survival analysis techniques, longitudinal data analysis, and missing data analysis. Professor Serrat has been granted for visiting scholarships at Harvard University and Hasselt University and visiting researcher stays at Open University of Catalonia, Trinity College Dublin, Universidad Nacional de Colombia, and Universidad de La Sabana. His website address is and his email address is





This course provides an overview of x-heuristics, both at a conceptual and at a technical level. X-heuristics refer to the combination of heuristic / metaheuristic optimization algorithms with other methodologies and techniques, including simulation (simheuristics), machine learning (learnheuristics), exact optimization (matheuristics), statistical sampling (biased-randomized heuristics), or parallel computing (agile optimization). The course is based on the research developed by the ICSO group (SGR Consolidated) during the last decade, and it includes the analysis of selected articles which illustrate both the concepts as well as a huge number of applications in different areas, among them: logistics and transportation, production, health care, smart cities, telecommunication systems, and finance. Python versions of different x-heuristic algorithms are provided to students, so they can understand the technical details and learn to build their own optimization algorithms by extending or modifying the base code, which also includes parameter setting in some cases. Statistical comparison of different approaches is also considered during the analysis of the results provided by different solving approaches.

An extended version of this course, including slides and videos, can be found at: 

Main References
* Calvet, L., de Armas, J., Masip, D., & Juan, A. A. (2017). Learnheuristics: hybridizing metaheuristics with machine learning for optimization with dynamic inputs. Open Mathematics, 15(1), 261-280.
* Juan, A. A., Faulin, J., Grasman, S. E., Rabe, M., & Figueira, G. (2015). A review of simheuristics: Extending metaheuristics to deal with stochastic combinatorial optimization problems. Operations Research Perspectives, 2, 62-72.
* Juan, A. A., Keenan, P., Martí, R., McGarraghy, S., Panadero, J., Carroll, P., & Oliva, D. (2021). A review of the role of heuristics in stochastic optimisation: From metaheuristics to learnheuristics. Annals of Operations Research, 1-31.
* Panadero, J., Ammouriova, M., Juan, A. A., Agustin, A., Nogal, M., & Serrat, C. (2021). Combining parallel computing and biased randomization for solving the team orienteering problem in real-time. Applied Sciences, 11(24), 12092.

Course goals

The main course goals are:

  • To learn the main concepts and techniques related to the following optimization topics: metaheuristics, biased-randomized algorithms, stochastic optimization, optimization under uncertainty, simulation-optimization, simheuristics, learnheuristics, agile optimization, and genetic algorithms.
  • To develop programming optimization skills in the aforementioned methodologies, using the Python programming language (optionally, students can also develop their programming skills in Julia).
  • To become familiar with realistic applications of optimization to logistics, transportation, production, finance, telecommunication systems, smart cities, health care, etc..To gain prosficiency in coding python, understand basic types


Course contents

  1. Intro to Optimization and X-Heuristics
  2. Genetic Algorithms in Python
  3. Biased-Randomized Algorithms (BRAs) in Python
  4. Metaheuristic Algorithms in Python
  5. Applications of BRAs in transport, logistics, production, finance, and marketing
  6. Simulation and Simheuristics
  7. Applications of Simheuristics in transport, logistics, production, finance, and health care
  8. Predictive Models and Machine Learning in Python
  9. Learnheuristics and their applications in transport and logistics
  10. Agile Optimization: concept and applications in smart cities and telecommunication


  • Python programming skills at a beginner-intermediate level.
  • Good reasoning / analytical capabilities.
  • Basic knowledge of applied optimization.
  • Capacity to read scientific papers and understand the main ideas included in them.
  • Interest in discovering applications of modern optimization-simulation-learning algorithms in transport, logistics, supply chain management, smart cities, computational finance, health care, etc.

Targeted at

MSc and PhD students in Operations Research, Applied Mathematics, Industrial Engineering, Data Science, and Computer Science programs.


  • Team assignment lab / homework (1 report to be completed in small teams of 1 to 3 students): 70%. Typical activity: solving lab problems with Python and / or other specific optimization software, analyzing selected articles, etc.
  • Individual class presentations and active participation in class, including quality of questions, etc.: 30%.
  • Resit strategy: in-course resit

Software requirements

  • Python 3
  • Python IDE (Spyder or PyCharm)