Teaching‎ > ‎

Evolutionary Robotics (Master of Robotics) 2018-2019


The aim of the course is to briefly explore techniques and principles of Evolutionary Computation and, by means of a few interesting and relevant examples, see how they can be applied to automatically design the body and the mind of autonomous machines.
  • Foundations of Evolutionary Computation (EC).
    • High-level working scheme of an Evolutionary Algorithm (EA); terminology.
    • Generational model; selection criteria; exploration/exploitation trade-off; genetic operators with examples; fitness function; multi-objective optimization and Pareto dominance; debugging of an evolutionary search; EA issues (diversity, variational inheritance, expressiveness); fitness landscape.
    • Examples of common EAs: GA, GP, GE.
  • Applications to robotics


Basics of statistics: summary measures of variable distribution (mean, variance, quantiles).
Basics of linear algebra.
Basics of programming and data structures: algorithm, loops, parallel execution.

Timetable and course calendar

The course will start on March, 7th.
Lectures will be held in the Master in Robotics reserved room, 1st floor, C5 building, in Piazzale Europa campus.


Suggested textbooks

  • Kenneth A. De Jong. Evolutionary computation: a unified approach. MIT press, 2006.

Course material

The course material (slides) is attached at the bottom of this page.
The full pack of slides might be updated during the course.
Eric Medvet,
Mar 20, 2019, 4:39 AM