Parisian Master of Research in Computer Science
Master Parisien de Recherche en Informatique (MPRI)

Solving Optimization Problems with Search Heuristics

Update for 2022/23:

This year, the course will be held in the Thursday noon slot, in the second half of the first semester, i.e., starting at 12:45 on December 8, 2022.

We offer internships on the topic of this course. Simply reach out to us if you are interested in topics around optimization, local and non-local search, and similar.

Responsible of the course:

Teachers for 2022-23:

In previous years (from 2015 until 2020), the course was taught by Carola Doerr and Christoph Dürr.


This course will be held in English. Exam answers and project reports can be answered in English or French.

Objectives of the course:

The current MPRI offer contains courses on different algorithmic problems, for which solutions are designed that are tailored to the problem at hand. These solutions are often exact, and their optimization times ideally (close to being) best possible. In this course we want to give a complementary view on algorithmics in computer science. We present general purpose heuristics which are widely applied to solve real-world optimization challenges, such as local search algorithms and randomizes search heuristics like Simulated Annealing and evolutionary algorithms. Our course focuses on the theoretical aspects of this area. Runtime bounds, complexity statements, and approximation ratios are rigorously proven in the course.


Some background on algorithms and probability theory (e.g., expected value, binomial distribution).

Outline of the course:

The course starts with a summary of solution techniques and problems that the students might have seen in their studies, for example local search algorithms for facility location. Then we introduce formally a few different popular heuristic approaches, such as random sampling, local search, simulated annealing, genetic algorithms. Theoretical background from both deterministic and randomized algorithm analysis will be introduced. Students will see how to apply them to show lower bounds and upper bounds on the performance of the different heuristics. Finally, we given an illustrative example, highlighting how to use insights from this course to design new efficient problem solvers.

Course Material

For the first part of the lecture, a slide deck and relevant papers will be communicated by e-mail after each lecture. For the second part of the lecture, relevant papers will be either listed here or send around by e-mail.

The lecture itself will be mostly on the black board, the slide decks are not guaranteed to cover all content discussed in the course.

In-class exercises will help students (and the teachers ;)) identify topics that may require more discussion.

For the first part of the lecture, you can find some references here:

For the second part of the lecture, the following book is the main reference: Jon Kleinberg, Eva Tardos, Algorithm Design, Addison Wesley.


Below is a summary of the course in 2021/22. You can expect a similar outline this year, with some small changes to reflect the fact that Benjamin has joined our course.

9.12.2021 [Carola] Introduction to heuristic search, motivation, applications. The Mastermind game, upper and lower bounds.

16.12.2021 (no lecture, sick leave)

6.1.2022 [Carola] Analysis of iterative optimization heuristics: general lower and upper bounds for the (1+1) Evolutionary Algorithm.

13.1.2022 (no lecture, sick leave)

20.1.2022 [Carola] Drift analysis, potential functions, the linear functions problem.

27.1.2022 [Evripidis] Local Search for Max-Cut, Hopfield Neural Networks and Local Search, Best response dynamics and Nash Equilibria for multicast under the fair share assumption

3.2.2022 [Evripidis] Modified Local Search for Max-Cut, Image Segmentation problem, Classification via Local Search

10.2.2022 [Evripidis] Classification via Local Search (continued), scheduling and local search, non-oblivious local search (max-k-sat)

17.2.2022 [Carola + Evripidis] Presentation of the reading assignments

24.2.2020 (no lecture)

10.3.2020 exam

Grading and Homework

There will be one extended homework and a final written exam. Final grading will combine these two grades.

Internships (“Stages”)

Internships, also in collaboration with international colleagues, will be proposed during the lectures. Students interested in an internship are invited to contact the instructors for more information. We will be happy to share and discuss potential internship projects

Universités partenaires Université Paris-Diderot
Université Paris-Saclay
ENS Cachan École polytechnique Télécom ParisTech
Établissements associés Université Pierre-et-Marie-Curie CNRS INRIA CEA