Prof. Dr. Tobias Friedrich

Nature-Inspired Algorithms (Summer Term 2017)


Many heuristic algorithms for search and optimization draw their inspiration from nature. Examples include simulated annealing and swarm intelligence algorithms, as well as evolutionary and genetic algorithms. The appeal of these algorithms is that they are in some sense general purpose and don't require detailed knowledge of the problem to be solved. This is useful in practical cases where time, money, and knowledge limit the development of problem-specific algorithm. However, it often makes their analysis much more challenging.

In this lecture we will learn how to design, analyze and apply some of these algorithms. During course time we will introduce different algorithms and example use cases; furthermore, we will formally analyze some of these algorithms from a performance perspective. The projects will try out these algorithms and test them experimentally. Finally, some theoretical homeworks and an algorithm engineering project will practice the analysis and implementation of heuristic optimization algorithms.


Due to material overlap, students who have taken Heuristic Optimization should not enroll.

The ability to understand and develop formal proofs will be beneficial for this course.

The seminar will be held in English.


The students are expected to perform the following tasks, which will determine the final grading:

  • Implementation of algorithms (three projects, each 20% of the total grade);
  • Small theoretical homeworks (20% of the total grade);
  • Algorithm engineering Project (20% of the total grade).

There is no final exam.


  • Monday: 11:00 at H 2.57


Course materials will be managed with Moodle.