AY 25/26 - Evolutionary Robotics

This page is about the course named:

  • Evolutionary Robotics (456MI-2), for master programs IN23 and IN19, 3 CFUs, part of a larger course named “Machine Learning and Evolutionary Robotics”

Program, goals, requirements #

Detailed program #

  • 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; properties of the representation.
    • Examples of common EAs: GA, GP, GE.
  • Evolutionary Robotics.
    • Agent and environment.
    • Brief foundations of Artificial Neural Networks and EC.
      • EA for neuroevolution.
    • Significant examples.
      • Evolution of Soft Robots morphologies (body).
      • Evolution of robotic agents controllers (brain).
      • Simultaneous evolution of body and brain.
    • Choosing the task, the fitness; reality gap.

Goal of the course #

Knowledge and understanding #

  • Know and understand the main kinds of optimization problems which can be tackled with EC, in particular in the field of robotics.
  • Know the terminology and common mathematical notation for the key concepts of EC and ER.
  • Know and understand the main EAs.

Applying knowledge and understanding #

  • Formulate formally the statement of an optimization problem, using the proper terminology and mathematical notation, in order to tackle them with EC techniques.
  • Design and develop simple EAs.

Making judgements #

  • Judge if a problem can be tackled with EC, possibly re-using existing software libraries.
  • Judge the technical soundness of the application of EC techniques, in particular in the field of robotics.

Communication skills #

  • Describe, both in written and oral form, the main components of an EA and its application to a robotics problem, using the proper terminology.

Learning skills. #

  • Retrieve information from scientific publications about EC and ER techniques not explicitly presented in this course.

Requirements #

  • Basics of statistics: basic graphical tools of data exploration; summary measures of variable distribution (mean, variance, quantiles); fundamentals of probability.
  • Basics of linear algebra: vectors, matrices, matrix operations.
  • Basics of programming and data structures: algorithm, data types, loops, recursion, parallel execution, tree.
  • Familiarity with manipulation of mathematical notation.

Method, language, material #

Language of teaching #

English

Teaching method #

Frontal lectures with slide projection and live annotation; lab activities, under teacher supervision, in dealing with simple problems with ML techniques.

Course material #

Teacher slides and lab sketches #

The course material (teacher’s slides) is available online.

The slides might be updated during the course.

The recordings of the lectures will be available on the MS Teams team of the course (code bb7s7tx).

Lectures timetable and course calendar #

The course will start on September 24. Lectures will be held in:

  • Room D, building A, Piazzale Europa Campus on Wednesday, 9.00-12.00 (in practice, 9.00-11.30 without breaks)

The lectures will be given in person and I recommend being in the room. In compliance with the current regulation students might be required to book a place in the room.

The lectures will not be cast in streaming, but the recordings of the lectures will be available on the MS Teams team of the course (code bb7s7tx).

Short announcements about lectures schedule #

  • The lecture of 8/10/2025 is cancelled (i.e., all the subsequent lecture are shift by one week) because most of the students are involved in their Bachelor ceremony.

End-of-course test (exam) #

The exam is done together with the exam of Machine Learning with the same rules and dates. Obviously, the questions are about ER, not ML.