janjagusch / digital-species

Content of my presentation 'On the Origin of Digital Species' at Tedx IST Alameda 2018 in Lisbon, Portugal.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

On the Origin of Digital Species

This repository contains the intelligent agent for the Atari game Breakout, presented at Tedx IST Alamdeda 2018 in Lisbon, Portugal. In my talk, I explained the analogy between natural evolution and simulated evolution. I illustrated, how humanity has bred wolves into dogs and how we can use the same principles in computer science to develop artificial intelligence that excels at playing video games from the 1970s.

Getting Started

If you want to run the code on your personal machine, please follow these instructions.

Prerequisites

The backbone of the program in the OpenAI Gym. Please follow the official installation guidelines. If you work on a Windows machine, please follow the instruction here.

The underlying algorithm is Neuroevolution of Augmenting Topologies. We use the Python implementation of this algorithm. The installation guidelines can be found here.

Additional third party dependencies are numpy, matplotlib and tqdm. They can be installed as follows, using Anaconda:

conda install numpy
conda install matplotlib
pip install tqdm

Running the program

The evolve.py module in the src folder is the central module for this program. From there, you can start new runs and continue from an existing checkpoint.

Starting a new run.

If you want to start with a new run, call the start_run() function. This creates a new NEAT population, based on the defined configuration.

Continuing from existing checkpoint.

If you want to continue from an existing checkpoint, call the continue_run(filename) function. This continues an existing run from a checkpoint file, described in filename.

Authors

License

This project is licensed under the MIT License - see the LICENSE.md file for details

About

Content of my presentation 'On the Origin of Digital Species' at Tedx IST Alameda 2018 in Lisbon, Portugal.

License:MIT License


Languages

Language:Python 100.0%