/mutable

Evolution simulator written in rust

Primary LanguageRust

Mutable

An evolution simulator written in Rust. Each organism is represented as a tree of different nodes with different jobs, and can use those nodes to sense events in the world and react to them with a neural network. The evolution of plants, detritivores, and herbivores has been observed.

Inspired by and based on:

Usage

git clone https://github.com/Ashwagandhae/mutable.git
cd mutable
cargo run --release

Note: I hope to support WebAssembly at some point, but for now you'll need to run it locally.

Why?

Plenty of evolution simulators exist, but most make an arbitrary distinction between plants and animals, usually manifesting in circles of "food" spawning around the world for the evolving animals to eat. I wanted to make a simulator where the distinction between plants and animals is blurred, allowing both to evolve both together in a single world.

Prerequisites

Windows

  1. Download Microsoft C++ Build Tools.
  2. Install Rust.

MacOS

  1. Install CLang and macOS Development Dependencies.
xcode-select --install
  1. Install Rust.

Linux

  1. Install a C compiler, depending on the distro.
  2. Install Rust.