EVOLUTIONARY ROBOTICS

[456MI]
a.a. 2025/2026

2° Year of course - First semester

Frequency Not mandatory

  • 3 CFU
  • 24 hours
  • INGLESE
  • Trieste
  • Obbligatoria
  • Oral Exam
  • SSD ING-INF/05
Curricula: SISTEMI

Is part of:

Syllabus

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.

- 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.

- 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.
- Evolutionary Robotics.
- Brief foundations of Artificial Neural Networks and EC.
- EA for neuroevolution; NEAT.
- Significant examples.
- Evolution of Soft Robots morphologies (body).
- Evolution of robotic agents controllers (brain).
- Simultaneous evolution of body and brain.
- Simulation, tools, and benchmark tasks.

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

- 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.
- Evolutionary Robotics.
- Brief foundations of Artificial Neural Networks and EC.
- EA for neuroevolution; NEAT.
- Significant examples.
- Evolution of Soft Robots morphologies (body).
- Evolution of robotic agents controllers (brain).
- Simultaneous evolution of body and brain.
- Simulation, tools, and benchmark tasks.

Approx. 80% of lectures: frontal lessons with projection and explanation of teacher’s slides (which are publicly available). Approx. 20%: exercises, under teacher’s supervision, in dealing with simple problems with EC techniques: the students will work in small groups and their laptops to design, implement, and assess solutions to small EC problems assigned by the teacher.

The exam consists of a written test.
Students must register for the exam session of their interest using the online system (esse3). Note that there are deadlines for registration (usually 1 week before the session date).
Written test: questions on theory and application with short open answers. Each test consists of approx 1 question with a longer answer and 1 question with a short answer. Some of the questions are on the “theory”: they require to give the definition of a key concept, to tell the differences between a few key concepts, or list the suitable options for some given case. Some of the questions are on the “practice”: they require to describe an algorithm, possibly in the form of pseudocode, sketch a design of an ML system for a given case, solve some simple numerical problem involving quantities. The grade of the written test is the weighted average of the grades obtained for each question, with "long questions" weighting double the "short questions".
In the final overall grade, honors (lode) are awarded if and only if the grade for every part is greater of equal to 30/30 and the average of all the parts exceeds 30/30.

In any type of content produced by the student for admission to or participation in an exam (projects, reports, exercises, tests), the use of Large Language Model tools (such as ChatGPT and the like) must be explicitly declared. This requirement must be met even in the case of partial use.
Regardless of the method of assessment, the teacher reserves the right to further investigate the student's actual contribution with an oral exam for any type of content produced.

This course explores topics closely related to one or more goals of the United Nations 2030 Agenda for Sustainable Development (SDGs).

icona 4 icona  9