Evolutionary Task Force

Included page "clone:symbrion-ec" does not exist (create it now)

Outline of Experiments - 31 Oct 2011 12:12

Introduction

Imagine an arena filled with Symbricator robots that move around, feed (charge their batteries), and evolve their controllers. This evolution is invisible from the outside, since the birth of a new controller takes place inside a robot. As time progresses, some robots aggregate into organisms, each consisting of several robot modules, and each with its own distinctive shape. These organisms move; some aptly, some only just starting to learn how to move their limbs. They also feed and evolve their shapes and controllers. This evolution is partly visible from the outside, since the birth of a new organism is a clearly observable event: we see individual robots aggregating into a new organism.

Under the hood, organisms carry a genome that encodes their shape and their controller. To reproduce, organisms need to find an ‘egg’ - an individual stationary robot module, perhaps a remnant of an old organism - which they can fertilise with their genome. An egg that has been fertilised by two different organisms performs crossover on the two genotypes and mutates the result. The new genotype is the basis for a new organism that will be born through a process of morphogenesis, initiated by the egg. The egg calls out to available modules, broadcasting the shape of the new organism and asking them to join to construct it. In response, modules in the vicinity move towards the egg to start a complicated dance, where more and more of them dock together to form the required shape. After a while the dance stops, and a new organism is born.

Meanwhile, an existing organism - maybe one of the parents of this new organism - has come to the end of its life: now it is time to disassemble. It lies down and its individual modules detach; some of them drive away in search of a forming organism that they will become part of, some drive away a small distance, spreading themselves out to become eggs to be fertilised, and some revert to their swarm behaviour.

As you can see, the idea is to use a swarm of robots to create a population of organisms and have these organisms evolve on a different level than the swarm. This constitutes two steps:

  1. The evolution of organisms from a swarm through some environmental pressure;
  2. The reproduction and evolution of organisms.

These two steps can be separated and step 1 can be - for now - replaced by a shortcut using a pre-programmed drive to create organisms. For the purposes of this task force, we propose to tackle these two steps separately, and focus first on organism reproduction and evolution, as this is the more exciting and challenging goal. In that case, there is no evolving swarm behaviour, but robots are hardwired to seek out and connect to forming organisms, or to become stationary and await fertilisation.
For the experiments, we want to implement an evolutionary process based on a “clean” reproductive advantage, without using an explicit fitness function. Such a reproductive advantage for organisms can stem from two sources in this scenario. Firstly, the ability to move: moving around, an organism can find more eggs to fertilise before its time runs out and it ‘dies’1. We propose that the fertilisation range is limited, so that moving really is a necessary skill to find eggs and so procreate. Secondly, it can stem from the ability to feed - to dock with and charge from sockets or batteries. Feeding allows an organism to walk about longer (because organisms die when their energy runs low) and so encounter more eggs to fertilise. In the first set of simulation experiments, we can decide to assume unlimited energy for the robots. This would simplify the problem and require only the evolution of moving skills.

Regarding moving skills two cases can be further distinguished: simple movement (gait) without any target and directed movement. The latter seems necessary for feeding, as organisms should detect power sources and go there to charge.
To be able to run these experiments, decisions need to be made about 1) the type of controller for the modules; 2) the type of controller for the organisms; 3) the genetic representation of organism shapes (body) and controllers (mind); 4) the environment of the experiment; and 5) the simulator.

For all these decisions we have to take into account that Symbrion adaptation has to embed on-line, on-board (OLOB) evolution. This is a technical necessity as well as the reviewers’ demand (cf. “without hands”). This means that the controllers for individual robots (in swarm mode) as well as the controllers of organisms and the shapes of organisms should be OLOB-evolvable: using only those reproduction, selection, and fitness evaluation mechanisms that are executable "in vivo" on/by the robots, without an external oracle.

Food for thought

Here are a few issues that need consideration for the success of this experiment; some may already have answers, while some are very open.

  • When deciding to use a certain type of robot controller, organism controller, and organism shape representation OLOB-evolvability is an essential evaluation criterion. In the extreme: if a certain type of robot controller, organism controller, or organism shape representation is not OLOB-evolvable, then it is not suitable for these experiments.
  • Is it important or even desirable to use the same controller for modules in swarm mode and organism mode?
  • What will be the representation of the robot body and mind?
    • Will these representations be part of the same genome, and thus undergo crossover and mutation at the same time?
  • Will the morphogenesis of organisms be a self-organising process, or will it be a predefined process guided by a shape defined (maybe indirectly) by the representation?
  • Will there be a task for modules in swarm mode?
  • Will the organism need to have lifetime learning? What kind?
  • Will the environment determine the emergence of organisms, or will this be pre-programmed?

Tags: | Comments: 0

York Meeting - 28 Oct 2011 14:02

Task Force

At the general assembly in York in October 2011 Guszti Eiben presented a plan for the evolutionary computing task force within the Symbrion project. The goal of this task force is the implementation of Grand Challenge 2 (GC2) of the Symbrion project: Origin of Species and the Emergence of Self-regulation through Open-ended Evolution

The plan is to leverage the expertise of the partners involved, to design the implementation of GC2 within the next few months. Realise this design in simulation a few months later, and realise it in real hardware a year later.

The general assembly agreed on the merrits of this plan and several partners have signed up to join this cause. The slides that Guszti Eiben presented during the general assembly can be found here.

Involved partners

Vrije Universiteit Amsterdam VU
Universität Graz GRAZ
Universität Stuttgart USTUTT
University of the West of England UWE
Eberhard Karls Universität Tübingen UT
Institut National de Recherche en Informatique et Automatique INRIA
Flanders Institute for Biotechnology VIB
Czech Technical University CVUT
Almende B.V. Almende


Tags: progress task-force | Comments: 0

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License