Topic outline

  • Evolutionary Robotics

    The course offers an introduction to evolutionary computation, describes in detail the most widely used algorithms, and compares evolutionary algorithms to reinforcement learning. It also describes applications of evolutionary algorithms to neural networks, neural controllers of mobile robots, and body-brain co-design. Students will carry out exercises with selected evolutionary algorithms, and then engage in gradually more complex competitions to evolve neural controllers of mobile robots in physics-based simulations. Finally, students will carry out a project in simulation on the co-evolution of body and brains of robots. The course consists of ex-cathedra lectures, software exercises, and competitions in Python.

    Credits: 4

    Room: BS 160

    Thursday, 09:15-13:00

    Final exam: Date will be set and communicated by EPFL SAC in April 2026. Bring your student ID and an ink pen (not a pencil). Books, notes, personal devices are not allowed. Students with special arrangements from SAC, please email Fuda.vanDiggelen@epfl.ch for confirmation before the exam. Grade: 50% written exam (Multiple Choice Questions), 50% project presentation

    Suggested readings: 



  • 19 February 2026


    09:15-10:30

    Lecture 

    • Course introduction: objectives, contents, logistics
    • Introduction to Evolutionary Computation (simple Genetic Algorithm at work)

    10:30-13:00

    Practical (bring your own laptop):

  • 26 February 2026

    09PassiveDynamicWalker:15 - 11:00 

    Lecture: 

    • Operators of Evolutionary Algorithms
    • Evolutionary Strategies: OpenAI ES and CMA-ES

    11:15 - 13:00 

    Practical (bring your own laptop):

    •  Implementation of Evolutionary Strategies (ES) on a Passive Dynamic Walker

  • 5 March 2026

    09:15 - 11:00 NN

    Lecture

    • Evolution of Neural Controllers I
    • Evolution of Neural Controllers II


    11:15 - 13:00

    Practical (bring your own laptop)

    • Intro to OpenAI gymnasium-interface
    • Competition 1 kick-off: Flat terrain: Evolving controller

  • 12 March 2026

    flat terrain

    09:15 - 11:00

    Lecture:

    • Reinforcement learning
    • Evolutionary Algorithms vs. Reinforcement learning

    11:15 - 13:00 

    Practical
    (bring your own laptop)

    • Competition 1: Flat terrain: Comparison with RL

  • 19 March 2026

    ant in two terrains09:15 - 11:00 

    Lecture:

    • Multi-objective Optimization: simple methods
    • Multi-objective Optimization: NSGA I & II

    11:15 - 13:00 

    Practical (bring your own laptop)

    • Competition deadline 1: Flat terrain
    • Competition 2 kick-off: Multi-objective, two terrains: Build your own NSGA-II

  • 26 March 2026

    09:15 - 10:00 ant_iceant_flat_nsga2

    Lecture

    • Evolution and learning

    10:15 - 13:00

    Practical (bring your own laptop):

    • Competition 2: Multi-objective, two terrains: Pareto front analysis

  • 2 April 2026

    09:15 - 11:00 spider

    Lecture

    • Evolution of body morphologies
    • Co-evolution of brains and bodies

    11:15 - 13:00

    Practical (bring your own laptop):

    • Competition 2 Deadline: Multi-objective, two terrains
    • Competition 3 kick-off: Hill terrain: Co-evolution of brains and bodies

  • 16 April 2026

    9:15 – 11:00

    Lecture: 

    • Quality Diversity optimization I
    • Quality Diversity optimization II

    11:15 - 13:00

    Practical
     (bring you own laptop):

    • Competition 3: Hill terrain: Morphology analysis

  • 23 April 2026

    09:15 - 11:00 

    Lecture: 

    • Competitive coevolution
    • Cooperative coevolution


    11:15 - 13:00

    Practical (bring you own laptop): 

    • Competition 3 Deadline: Hill terrain
    • Final project introduction
    • Final project kick-off

  • 30 April 2026

    09:15 - 10:00 selfproducing

    Lecture

    • Towards Robot Self-Reproduction


    10:15 - 13:00

    Practical (bring you own laptop): 

    • Final project

  • 21 May 2025

    09:15 - 13:00

    Practical:

    • Final project

  • 28 May 2026

    09:15 - 13:00

    Graded Presentation of the final project