Species Evolution Prototype

Neural-network and genetic-algorithm prototype for simulated species.

SEP is a 2012 proof of concept that simulates species evolving in a 2D world, using XML configuration and optional OpenMP acceleration.

  • C++ prototype
  • Neural networks
  • Genetic algorithms
  • OpenMP
  • LGPL

Overview

Species Evolution Prototype is a proof of concept for learning neural networks and genetic algorithms. It simulates an environment where species must survive and develop a kind of collective behavior in a 2D world.

The neural-network and genetic-algorithm code is based on documentation created by Mat Buckland.

Screenshots

Species Evolution Prototype screenshot
Species Evolution Prototype XML configuration

Details

Simulation

  • Fully customizable through external XML files.
  • Supports OpenMP for faster evolution on multi-core systems.
  • Evolution can be rendered on screen or run in fast background mode with no visual output.
  • Includes basic and extended on-screen evolution statistics.
  • Runs with a world-description XML file, using SEP-World.xml by default.

Species Extension

  • New species can be added by deriving from the cSpecies base class.
  • Default project includes one fully customizable species named Minzoo.
  • New species require loader, updater, stats-printer and CSV-export hooks.

Platform and Build

  • Windows x86 binary package is available.
  • The historical code targets Linux, Mac OS X and Windows era systems.
  • Linux and Mac OS X makefiles are not included.
  • Developed in C++ using CRM32Pro.

Download

Latest version: v1.00 (16-February-2012)
ChangeLog | Roadmap | LGPL license

Binaries
32-bit binaries for supported operating systems.
Source code
Source code and project files for VS2008+.
Previous releases
Get access to all releases repository.