radiate
Library Listed
A Rust library for genetic algorithms and artificial evolution.
- Downloads
- 971
- Dependents
- 0
- Stars
- 257
- Forks
- 20
- Contributors
- 5
- Commits
- 2,963
- Latest release
- 1.3.2 ·
About

For more details check radiate.rs 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. Opt-in NEAT implementation.
- 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.
- Dynamic Expression DSL for dynamic rates & custom metrics
Radiate can evolve anything from a 15-character string match to an LSTM-topology search. The same Pipeline that evolves Vec<char> to spell "Hello, Radiate!" evolves NEAT-style neural network graphs and symbolic-regression trees.
Checkout the change log for recent updates.
Installation
Rust
Add this to your Cargo.toml:
Read the full README
[dependencies]
radiate = { version = "1.3.2", features = ["x"] }
Python
pip install radiate # --or-- uv add radiate
Examples
Lets see a simple 'Hello World' example of using radiate to evolve a simple string - Hello, Radiate!. See the examples directory for a much more comprehensive set of examples in both languages.
import radiate as rd
target = "Hello, Radiate!"
engine = (
rd.Engine.char(len(target))
.fitness(
lambda member: sum(1 for i in range(len(target)) if member[i] == target[i])
)
.limit(rd.Limit.score(len(target)))
)
result = engine.run(log=True)
print("Best solution:", "".join(result.value()))
Or in rust:
use radiate::prelude::*;
let target = "Hello, Radiate!";
let engine = GeneticEngine::builder()
.codec(CharCodec::vector(target.len()))
.fitness_fn(|geno: Vec<char>| {
geno.into_iter()
.zip(target.chars())
.filter(|(allele, targ)| allele == targ)
.count()
})
.build();
engine
.iter()
.logging()
.until_score(target.len())
.last()
.unwrap();
Building & running from source
git clone https://github.com/pkalivas/radiate.git
cd radiate
just release 3.13
Radiate uses Just as a build tool, you can install it from here.
The core build options are below, there are a few others that can be found through the just help command.
just developfaster build time for development with debug symbols and minimal optimizations.just releaseslower build time for optimized runtime performance.
Both the above have an optional argument py to build the python package for a specific python version (e.g. just develop 3.12, just develop 3.13t for free-threading interpreter).
just test-rsto run tests for rustjust test-pyto run tests for python packagejust testto run tests for both.just cleanto nuke the build artifacts
Run examples with just example to run a small python script which shows & runs selected examples.
Contributing
Contributions are welcome. Pull requests should target the develop branch.
If you use AI tools, disclose it in your PR or issue. See the AI usage policy.
Compatibility
- Runs on
- GPU support unknown
What shows it
- no dependency or feature matches a backend row
- Native code
- None found
- No native code found
- Python bindings
- Has Python bindings
- radiate-error needs Python only with feature python
- License
- MIT
Compare with similar projects
Order: strongest tier first, then most downloads, then name, with unmeasured values last. A library counts downloads over 30 days. An app counts binary downloads per release. An app with none counts its crate downloads over 30 days. ML Rust runs this catalogue, so its closest project always gets a row.
| Project | Downloads | Dependents | Stars | Latest release | Runs on (GPU) | Native code | License |
|---|---|---|---|---|---|---|---|
|
A Rust library for genetic algorithms and artificial evolution. Python bindings |
971 downloads over 30 days | 0 | 257 | 1.3.2 | GPU support unknown | No native code found | MIT |
|
Rust bindings for the liblinear C++ library |
922 downloads over 30 days | 1 | 10 | 1.0.0 | GPU support unknown | Binds native code: liblinear.a. Build uses a native toolchain: cc | MIT |
|
genevo provides building blocks to run simulations of optimization and search problems using genetic algorithms (GA). Execute genetic algorithm (GA) simulations in a customizable and extensible way. |
372 downloads over 30 days | 1 | 185 | 0.7.1 | GPU support unknown | No native code found | Apache-2.0 OR MIT |
|
Fast, parallel, extensible and adaptable genetic algorithm library. |
89 downloads over 30 days | 0 | 183 | 2.2.2 | GPU support unknown | No native code found | MPL-2.0 |
|
treeboost Listed
Gradient-boosted decision trees for tabular data: trains a baseline model in one call, with full control over boosting modes and configs, and Scalar, AVX-512, SVE2, WGPU and CUDA backends. Python bindings |
18 downloads over 30 days | 0 | 9 | 0.1.2 | CUDA, WebGPU | No native code found | Apache-2.0 |
|
Rust implementation of real-coded genetic algorithm for solving optimization problems and training of neural networks. The latter is also known as neuroevolution. |
9 downloads over 30 days | 0 | 20 | 0.2.1 | GPU support unknown | No native code found | GPL-3.0 |
|
Fast, large scale library for computing rankings and features based on various pairwise and graph algorithms |
Not measured | Not applicable | 10 | Not measured | Not measured | Not measured | Apache-2.0 |
Why ListedNo archive, New or Featured rule places it, so it is Listed.
What it lacks for Featured
- It has 1 active dependents and 1 new dependents in 365 days. Featured needs 11 active dependents or 9 new dependents in 365 days. The repository route reads 257 stars, 20 forks and 5 contributors. It needs 4,539 stars, 434 forks and 79 contributors together.
What else the check found
- The last activity is on 10 Oct 2026, 30 days ago. The rules expect an update within 365 days. Dormancy rule
Exact rules: Listed, Featured library. The check on applied thresholds version 9.
Every rule outcome, as the check records it
expected-interval: version 1.3.2 base 300, raised to the 365-day floor: E = 365 daysdormancy: last activity 2026-10-10, 30 days ago, E = 365: activefeatured: not featured: active_users 1 < 11 and new_adopters 1 < 9 and repository route stars 257 (needs 4539), forks 20 (needs 434), contributors 5 (needs 79)listed: listed: no archive, new or featured rule applies
Crates14 crates
Measurements and sources
Each signal row shows the raw value, its source and the fetch date. The Sources list gathers every distinct source on this page. Movement needs more history.
Sources6 sources
- Description: the crates.io description
- crates.io database dump, fetched
- RustSec advisory database, fetched
- GitHub repository, fetched
- crates.io package, fetched
- GitHub contributors, fetched
Adoption1 active dependents, 1 new dependents in 365 days1 not measured
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Active dependents | 1 | crates.io database dump | Yes | |
| New dependents (365 days) | 1 | crates.io database dump | Yes | |
| Peak active dependents | 1 | crates.io database dump | Yes | |
| Active dependents as a share of the peak | 1 | crates.io database dump | Yes | |
| Binary downloads per release | Not measured | Yes |
MaintenanceLatest human commit: 30 days ago3 not measured
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Latest human commit | 2026-10-10 | GitHub repository | Yes | |
| Latest release | 2026-09-27 | crates.io database dump | Yes | |
| First release | 2019-11-17 | crates.io database dump | Yes | |
| Latest version | 1.3.2 | crates.io database dump | Yes | |
| Days the oldest outside issue waits for a reply | 0 | GitHub repository | Yes | |
| Maintainer replies over 365 days | 18 | GitHub repository | Yes | |
| Repository archived | false | GitHub repository | Yes | |
| Repository gone | false | GitHub repository | Yes | |
| Release commit or manifest in the repo | true | crates.io package | Yes | |
| Published docs | true | crates.io database dump | Yes | |
| Latest release fails cargo check | Not measured | Yes | ||
| Build check date | Not measured | Yes | ||
| Build check toolchain | Not measured | Yes |
SecurityUnpatched vulnerabilities: none
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Unpatched vulnerabilities past the grace window | none | RustSec advisory database | Yes | |
| RustSec unmaintained advisory | none | RustSec advisory database | Yes | |
| Deprecation notice | none | crates.io database dump | Yes | |
| Deprecated requirement | none | crates.io database dump | Yes |
Distribution52 releases, 971 downloads over 30 days5 not measured
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| Releases | 52 | crates.io database dump | Yes | |
| Downloads over 30 days | 971 | crates.io database dump | Yes | |
| Binary downloads over the last 3 releases | Not measured | Yes | ||
| Homebrew installs on request over 365 days | Not measured | Yes | ||
| Repology repository families | Not measured | Yes | ||
| Docker pull growth over 90 days | Not measured | Yes | ||
| Docker pulls at the growth baseline | Not measured | Yes | ||
| Every version a prerelease | false | crates.io database dump | Yes | |
| Every version 0.0.x | false | crates.io database dump | Yes | |
| Every version yanked | false | crates.io database dump | Yes | |
| Crate deleted from crates.io | false | crates.io database dump | Yes |
Repository257 stars, 20 forks, 5 contributors, 2,963 commits. Stars alone never qualify a project.
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| GitHub stars | 257 | GitHub repository | Yes — one part of the repository route | |
| GitHub forks | 20 | GitHub repository | Yes — one part of the repository route | |
| Contributors with a GitHub account | 5 | GitHub contributors | Yes — one part of the repository route | |
| Commits on the default branch | 2963 | GitHub repository | No | |
| Repository's main crate left out of the entry | none | crates.io database dump | Yes |
Facts that never count
| Signal | Value | Source | Fetched | Counts |
|---|---|---|---|---|
| License | MIT | crates.io database dump | No | |
| Runs on, from listed crates and their direct dependencies | GPU support unknown | crates.io database dump | No | |
| What shows each backend | no dependency or feature matches a backend row | crates.io database dump | No | |
| Native code, from listed crates and their dependencies | No native code found | crates.io database dump | No | |
| Python bindings, from direct dependencies of listed crates | Has Python bindings: radiate-error needs Python only with feature python | crates.io database dump | No | |
| Crates that depend on a listed crate directly | 0 | crates.io database dump | No |
Corrections and review history
No correction applies to this entry.
Judgments
A judgment enters only through an approved issue and a merged pull request.
No judgment applies to this entry.