Telecom Paris
Dep. Informatique & Réseaux

J-L. DessallesHome page

November 2020

Module Athens TPT-09

    Emergence in Complex Systems
     From nature to engineering

                                other AI courses



Lab work sessions are based on Evolife.
This software has been developed at Telecom ParisTech by Jean-Louis Dessalles for this course.
Evolife is written in Python. The package contains a documentation, which can also be found there.
Evolife‘s latest sources may be downloaded from there.
To execute Evolife on your machine, see ‘How to execute Evolife in the documentation.

Evolife implements various aspects of evolutionary simulation, including:

These aspects will be illustrated during the various Lab Work sessions.

First contact with Evolife

Get Evolife and install it, as explained.
Note: if your are using a unix or Linux machine, don’t forget to run the command "python" once, as explained in the documentation.

Run Starter (in the Evolife directory). It opens the Configuration Editor. There are a number of pre-stored configuration files (*.evo files) that can be loaded with the [Load] button. Most of these files are located in the folder Expe. You may click on parameter values in the Configuration Editor to change them (alternatively, you can navigate using arrows and use the [F2] key to edit values). Contextual documentation is given in the bottom panel.

Example: Load the SumBits.evo configuration file from Starter. Press [Run] (shortcut Alt-R). The Evolife window should open. Click its [Run] button to run the simulation (this experiment will be studied in the section "Genetic Algorithms").


[Genome]:    Displays the genomes of the population

[Photo]:    Enters Photo Mode: [Run]:    Runs the simulation in continuous mode
[Step]:    Runs the simulation stepwise
[T]:    Displays trajectories when applicable
[N]:    Displays social links (network) when applicable
[F]:    Displays agents’ positions on a 2-D field
[L]:    Log messages (not implemented)
[Help]:    Displays help file


Various shortcuts are available in the Evolife window.
(shortcuts also work from satellite windows)

Each configuration file XXX.evo corresponds to a scenario, implemented in a file named located in the Scnenarii directory. Try to locate the Open it in your favourite editor. You can observe that its main class, the class Scenario, inherits Default_Scenario defined in the file This is the main way you will be using Evolife. A particular scenario is defined by redefining some of the default functions defined in Default_Scenario. For instance, the scenario corresponding to redefines functions such as genemap or evaluation.

In case of error: Errors may occur, as you will be asked to change the program. Most errors will be displayed in the text window. However, in case of python crash, use a terminal window, go to the Evolife directory and execute The python error will be displayed.

Forum: Improvements
Please express your thoughts, remarks, suggestions to improve Evolife.



Back to the main page