Welcome to the website for “061652 Robust Optimization” offered at Politecnico di Milano from February 27th to March 8th, 2024.

Introduction

Celebrating 20 years of renewed and flourishing interest in the robust optimization paradigm, this course will introduces students to the it is of hedging risks in large managerial decision problems where distributions assumptions can made. More specifically, the students will be with the main tools that are used in the application of the robust optimization paradigm: convex theory (duality theory, saddle point theorem, Karush-Kuhn-Tucker conditions), data-driven uncertaintyset design, decision decision manipulation, tractable reformulation and decomposition algorithms for problems of infinite size. In addition, the course will cover a set of practical applications where the use of such tools is called-for. Applications will be inspired from a diversified range of fields of such practice as logistics, finance, marketing, etc.

At the end of the course, the students should be able to:

  • recognize a business management or engineering situation presenting at robust optimization problem,
  • represent this problem under a mathematical suitable model,
  • exploit available historical observations to adequately characterize the uncertainty
  • identify robust solutions using cutting edge software and algorithms.

Instructor Information

Name: Erick Delage
Website: http://tintin.hec.ca/pages/erick.delage/
Email: erick.delage@hec.ca

Course Material

The course will be based on a my lecture notes which can be found (here).

Software

We will implement robust optimization using the RSOME package in Python in the Google Colab environment. In order to prepare for the course, please make sure that you are able to run the following example: Google Colab link.

Schedule

Tuesday 27/02, 9:30am - 12:30pm: Room Alpha, building 24
Readings: Why do robust optimization? (Ch.1) + Convex optimization (Ch.10.1)
Slides used during lecture: Intro.pdf and ConvexAnalysis.pdf
(New) Ipad notes: Ipad27022024.pdf

Wednesday 28/02, 9:30am - 12:30pm: Room 25.2.1, building 25
Readings: Robust Linear Programming (Ch.2)
Slides used during lecture: RobustLP.pdf
(New) Google Colab code written in class: Colab notebook
(New) Video recording

Thursday 29/02, 9:30am - 12:30pm: Room 25.2.1, building 25
Exercise: Deriving the reformulation of a robust LP
Lab: Implementing a robust linear program in Python
(New) Google Colab code written in class: Colab notebook
(New) Solutions to written exercises: ExercisesSolutions_Chap2.pdf
(New) Video recording

Friday 01/03, 9:30am - 12:30pm: Room 25.2.1, building 25
Readings: Uncertainty set design (Ch.3)
Slides used during lecture: UncertaintySets.pdf
(New) Solution to exercise: Google Colab
(New) Video recording

(New) Monday 04/03, 9:30am - 12:30pm: Room 21.6.2, building 21
Readings: Adjustable Robust Linear Programming - Part 1 (Ch.4)
(New) Slides used during lecture: ARC.pdf
(New) Video recording

(New) Tuesday 05/03/20, 9:30am - 12:30pm: Room 3.0.1, building 3
Readings: Adjustable Robust Linear Programming - Part 2 (Ch.5)
Lab: Implementing an adjustable robust linear program in Python
(New) Slides used during lecture: AARC.pdf
(New) Google Colab code written in class: Colab notebook
(New) Video recording

(New) Wednesday 06/03/20, 9:30am - 12:30pm: Room 25.2.1, building 25
Readings: Robust Non-linear programming (Ch.6)
Exercise: Deriving the reformulation of a robust NLP
(New) Slides used during lecture: RobustNLP.pdf
(New) Solution to exercise: Chap6_ExSolutions.pdf
(New) Video recording

(New) Thursday 07/03/20, 9:30am - 12:30pm: Room 26.0.2, building 26
Readings: Distributionally robust optimization - Part 1 (Ch.8)
Exercise: Deriving the reformulation of a distributionally robust optimization problem
(New) Slides used during lecture: DRO.pdf
(New) Video recording

(New) Friday 08/03/20, 9:30am - 12:30pm: Room 25.2.1, building 25
(New) Readings: Distributionally robust optimization - Part 2 (Ch.8 + Mohajerin Esfahani \& Kuhn, 2017)
(New) Slides used during lecture: Wasserstein_Talk.pdf
(New) Solution to exercise: Chap8_ExSolutions.pdf

Evaluation

Teams of two students
(Each team decides which member of the team submits which assignment.)

Assignment #1 (50%, individual): team member #1
Assignment #2 (50%, individual): team member #2

Project (50%): each team submits one report

To pass the course, a student must have successfully completed one of the assignment and the project.

Additional information

(New) Monday 04/03, 3:00pm - 4:00pm: DEIB - Alpha Room (Building 24)
Optional seminar: Data-driven Conditional Robust Optimization
Slides: Data_driven_RO_TALK.pdf

(New) Friday 08/03, 3:00pm - 4:00pm: Online
Optional seminar: M. Poursoltani and A. Chenreddy present on Data-driven CRO and Prescriptive optimization
Link: ROW webinar website