nl en

Evolutionary Algorithms



The course gives a comprehensive overview of the field through a series of lectures and exercises. In addition, a practical application exercise of evolutionary computation is given to the students, who are expected to run experiments and write a short report about the experiment and the results obtained. This report will be written in scientific paper format, and we will encourage and help the authors of the best student paper, provided that the quality of the results is sufficient, to submit this paper to a scientific conference.


Evolutionary Computation is a field of computer science dealing with algorithms gleaned from the model of organic evolution – so-called evolutionary algorithms. The idea is to let the computer evolve solutions to problems rather than trying to “calculate” them.

Evolutionary algorithms do this by using the fundamental principles of evolution such as, for example, selection, mutation and recombination among a population of simulated individuals. The evolutionary approach is used today in a variety of application areas for solving problems that require intelligent behaviour, adaptive learning and optimization. These fields include e.g. engineering optimization, artificial life, automatic programming, autonomous agents, and evolutionary economics.

Due to the large diversity of the field, the course focuses on the fundamentals of biological evolution as the underlying motivation, the main variants of evolutionary algorithms (genetic algorithms and evolution strategies), application examples, and some outlook into related aspects of evolutionary computation.


No specific prerequisites required.


The following books are recommended but not mandatory for the course:
Th. Bäck: Evolutionary Algorithms in Theory and Practice, Oxford University Press, NY, 1996.
A.E. Eiben, J.E. Smith: Introduction to Evolutionary Computing, Springer, Berlin, 2003.

Table of Contents:

  1. Introduction
    a. Simple example of Monte-Carlo Search
    b. Simple example of Evolution
    c. Comparison and Motivation
    1. The Model of Biological Evolution
      a. Genotypes and Phenotypes
      b. Basics of the Neo-Darwinian Paradigm
    2. Optimization
    3. Evolutionary Algorithms – General Overview
    4. Genetic Algorithms
      a. Basic Algorithm
      b. Schema Processing Interpretation of Genetic Algorithms
      c. Schema Theorem
      d. Convergence Velocity Perspective
      e. Practical Applications: From Airline Crew Scheduling to Car Crash Optimization
    5. Evolution Strategies
      a. Basic Algorithm
      b. Convergence Velocity Perspective
      c. Practical Applications
      d. Advanced Techniques (mixed-integer, multi objective)
    6. Evolutionary Programming
      a. Basic Algorithm
    7. Genetic Programming
      a. Basic Algorithm


Slides will be provided to the students for download.


The final grade is a combination of grades for
(1) the written exam (60%) and
(2) the report about the practical assignment (40%).


A weekly werkcollege is a mandatory component of the course.


Evolutionary Algorithms