ZenariStart a conversation

← All case studies

Research — 2017

Making two robots reproduce

The first end-to-end demonstration of a robot life cycle in real hardware: two parent robots, a new body derived from both, and a controller learned to fit it.

Role
PhD researcher, VU Amsterdam
Duration
2015 — 2019
Outcome
Published in Artificial Life; open-sourced as the Revolve framework

Stack

Evolutionary algorithmsCPPN-NEATCentral pattern generatorsGazeboC++Python3D printing

The question

Evolutionary robotics had almost always evolved robot brains while keeping the body fixed. The Robot Baby Project asked what happens when the body evolves too — and whether the whole cycle can be closed in physical hardware rather than simulation.

The hard part

A newborn robot inherits traits from both parents, so it has a body neither parent had. Its parents’ controllers do not fit it. It has to learn to move in the body it was born with, quickly, with no reset button and no simulator to fall back on.

The approach combined two encodings: a central pattern generator producing the rhythmic output that actually drives the joints, and a compositional pattern producing network generating the CPG’s parameters from the robot’s morphology. Because the CPPN is morphology-independent, it can be inherited across differently shaped robots — which makes a Lamarckian setup possible, where a child starts from its parents’ learned controller instead of from scratch.

That turned out to matter a great deal. Lamarckian inheritance converged substantially faster than learning from scratch, and it also changed which body shapes evolution converged on — measurable as a shift in symmetry, size and proportion across an eight-dimensional space of morphological descriptors.

Why it is on a consulting site

Because it is the same problem enterprises have, wearing a different costume: a system that must adapt to a body — an organisation, a data estate, a hardware constraint — that it did not get to choose. And because the discipline it teaches is useful. In evolutionary robotics you cannot argue with the result. Either the robot moved, or it did not.

The simulator built for this work, Revolve, is open source and still used by the group.