How to Evolve Life using Python

How to Evolve Life using Python

In this talk I will demonstrate how to create Artificial Life in a computer using Python and its wonderful libraries.

The Python program, called “Lenia”, is developed to discover/evolve new life species, using its interactive UI to facilitate Evolutionary Algorithms (EA). A video recorded from the program won the Virtual Creatures Contest in GECCO conference 2018, Kyoto.

It utilizes the following libraries:
– NumPy for matrix calculation
– PyOpenCL/PyCUDA and Reikna for GPU acceleration – SciPy and PIL/Pillow for image processing
– Tkinter (and potentially Matplotlib) for interactive UI – Subprocess and FFmpeg for real-time video

Lenia is now open source at

Buzzwords: Artificial intelligence, interactive UI
Level: Intermediate: Target audiences with intermediate experience in python programming
Requirements to Audiences: Nil
Language: English

Speaker: Bert Chan (Hong Kong)

Speaker Bio: Big data consultant at ASL, award-winning AI researcher & font designer