Thanks to visit codestin.com
Credit goes to github.com

Skip to content

pkalivas/radiate

Repository files navigation

Radiate

Radiate Logo

master branch checks Crates.io pypi.org Crates.io License Static badge

For more details check radiate's user guide or cargo docs.

Radiate is a powerful library for implementing genetic algorithms and artificial evolution techniques. It provides a fast and flexible framework for creating, evolving, and optimizing solutions to complex problems using principles inspired by natural selection and genetics. The core is written in Rust and is available for Python.

  • Traditional genetic algorithm implementation.
  • Single & Multi-objective optimization support.
  • Neuroevolution (graph-based representation - evolving neural networks) support. Simmilar to NEAT.
  • Genetic programming support (tree-based representation)
  • Built-in support for parallelism.
  • Extensive selection, crossover, and mutation operators.
  • Opt-in speciation for maintaining diversity.
  • Novelty search support.
  • First-class metric tracking.

Installation

Rust

Add this to your Cargo.toml:

[dependencies]
radiate = { version = "1.2.18", features = ["x"] }

Python

pip install radiate # --or-- uv add radiate

Building from source

git clone https://github.com/pkalivas/radiate.git
cd radiate

The core build options are below, there are a few others that can be found through the make help command.

  • make build to build both Rust and Python packages in develop mode

    • add ARGS="--release" to build both packages in release mode
    • add PY=3.x to build python package for specific python version (e.g. PY=3.12, PY=3.13t for free-threading interpreter)
  • make test-rs to run tests for rust

  • make test-py to run tests for python package