Studiegids

nl en

Data-driven optimisation for Real-World Applications

Vak
2025-2026

Admission requirements

Assumed/recommended prior knowledge
Programming experience in Python

Description

In this course, students will learn to design and implement optimization models that incorporate real-world complexity, uncertainty, and available data (including historical and real-time data). We will introduce theoretical foundations through practical applications. Students will explore how to model real-world problems and integrate learning methods into optimization to manage dynamic and uncertain environments, as well as to balance multiple, often conflicting objectives.
The course begins with foundational concepts in optimization, followed by real-world case studies in domains such as logistics, supply chains, and energy systems. Students will systematically learn to model and solve complex decision problems involving stochasticity, robustness, multi-objective trade-offs, and human behavioral considerations. Key topics include stochastic programming, robust optimization, multi-objective optimization, behavioral operations research, and learning-based optimization methods.
Throughout the course, students will work with real-world datasets and computational tools to develop scalable, interpretable solutions. Particular attention is given to practical relevance, computational efficiency, and critical evaluation of optimization strategies in uncertain and dynamic contexts. By the end of the course, students will be well-prepared to tackle complex, data-driven decision problems in both academic and applied settings.

Course objectives

By the end of the course, students will be able to:
1. Understand and explain core optimization methodologies, including linear, nonlinear, integer, stochastic, robust, and multi-objective optimization, and their relevance to solving complex, real-world problems.
2. Formulate and model practical decision-making problems as mathematical optimization models, capturing operational constraints, objectives, and system dynamics.
3. Integrate data and predictive models (such as those derived from machine learning) into optimization frameworks, particularly in real-world uncertain and dynamic environments.
4. Design, implement, and validate optimization algorithms and decision support systems using modern computational tools (e.g., Pyomo, Pymoo, Gurobi, and OR-Tools) and learning-based methods.
5. Communicate and justify modeling assumptions, solution approaches, and results to both technical and non-technical stakeholders, with attention to behavioral, ethical, and practical implications.
6. Critically assess and compare optimization solutions based on their performance, scalability, robustness, interpretability, and suitability for real-world deployment under uncertainty and competing objectives.

Timetable

The most recent timetable can be found at the Computer Science (MSc) student website.

In MyTimetable, you can find all course and programme schedules, allowing you to create your personal timetable. Activities for which you have enrolled via MyStudyMap will automatically appear in your timetable.

Additionally, you can easily link MyTimetable to a calendar app on your phone, and schedule changes will be automatically updated in your calendar. You can also choose to receive email notifications about schedule changes. You can enable notifications in Settings after logging in.

Questions? Watch the video, read the instructions, or contact the ISSC helpdesk.

Note: Joint Degree students from Leiden/Delft need to combine information from both the Leiden and Delft MyTimetables to see a complete schedule. This video explains how to do it.

Mode of instruction

Course load
In person lectures

Assessment method

  1. Individual assignments and group project assignments (presentation and peer-review): 50%
  2. Final exam on ans: 50%
    To pass the course, the grade of the final exam has to be at least 5.0

Reading list

  1. Birge, J. R., & Louveaux, F. (2011). Introduction to stochastic programming. Springer Science & Business Media.
  2. Deb, K. (2011). Multi-objective optimisation using evolutionary algorithms: an introduction. In Multi-objective evolutionary optimisation for product design and manufacturing (pp. 3-34). London: Springer London.
  3. Deb, K., & Jain, H. (2013). An evolutionary many-objective optimization algorithm using reference-point-based nondominated sorting approach, part I: solving problems with box constraints. IEEE transactions on evolutionary computation, 18(4), 577-601.
  4. Bengio, Y., Lodi, A., & Prouvost, A. (2021). Machine learning for combinatorial optimization: a methodological tour d’horizon. European Journal of Operational Research, 290(2), 405-421.
  5. Yilmaz, D., & Büyüktahtakın, İ. E. (2024). A deep reinforcement learning framework for solving two-stage stochastic programs. Optimization Letters, 18(9), 1993-2020.

Registration

As a student, you are responsible for enrolling on time through MyStudyMap.

In this short video, you can see step-by-step how to enrol for courses in MyStudyMap.
Extensive information about the operation of MyStudyMap can be found here.

There are two enrolment periods per year:

  • Enrolment for the fall opens in July

  • Enrolment for the spring opens in December

See this page for more information about deadlines and enrolling for courses and exams.

Note:

  • It is mandatory to enrol for all activities of a course that you are going to follow.

  • Your enrolment is only complete when you submit your course planning in the ‘Ready for enrolment’ tab by clicking ‘Send’.

  • Not being enrolled for an exam/resit means that you are not allowed to participate in the exam/resit.

Contact

Remarks

Software
Starting from the 2024/2025 academic year, the Faculty of Science will use the software distribution platform Academic Software. Through this platform, you can access the software needed for specific courses in your studies. For some software, your laptop must meet certain system requirements, which will be specified with the software. It is important to install the software before the start of the course. More information about the laptop requirements can be found on the student website.