Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. genevo

genevo

NOASSERTIONRustv0.7.1

A flexible Rust framework for building and running genetic algorithm simulations for optimization and search problems.

Visit WebsiteGitHubGitHub
187 stars27 forks0 contributors

What is genevo?

Genevo is a Rust framework for implementing genetic algorithm simulations to solve optimization and search problems. It provides a modular, trait-based architecture that models the domain of genetic algorithms, allowing developers to customize every component while offering sensible defaults. The library enables experimentation with different selection, crossover, mutation, and termination strategies to find optimal solutions for problems like the knapsack problem or N-Queens.

Target Audience

Rust developers and researchers working on optimization, search problems, or evolutionary computation who need a flexible, extensible framework for genetic algorithm simulations. It's also suitable for educators and students learning about genetic algorithms through practical implementation.

Value Proposition

Developers choose Genevo for its extreme flexibility—every component is a trait that can be customized—combined with comprehensive built-in implementations that work out of the box. Its Rust foundation ensures performance and safety, while WASM support enables browser-based simulations, making it unique among GA libraries.

Overview

Execute genetic algorithm (GA) simulations in a customizable and extensible way.

Use Cases

Best For

  • Solving combinatorial optimization problems like the 0-1 knapsack problem
  • Educational projects demonstrating genetic algorithm concepts and implementations
  • Browser-based evolutionary simulations using WebAssembly
  • Research experiments requiring custom selection, crossover, or mutation operators
  • Prototyping genetic algorithms for search problems with modular components
  • Implementing heuristic solutions for NP-hard problems like the N-Queens puzzle

Not Ideal For

  • Developers needing a black-box optimizer without implementing custom fitness functions or domain models
  • Projects requiring integrated GUI tools or visualization for real-time simulation monitoring
  • Applications focused on multi-objective optimization that expect built-in support for Pareto fronts
  • Teams looking for out-of-the-box solutions for specific problem types like neural network training

Pros & Cons

Pros

Modular Trait-Based Architecture

All GA components are defined as traits, enabling extensive customization and extension, as highlighted in the README's philosophy of being 'flexible and greatly extensible.'

Pre-Built Operator Library

Includes common implementations for selection, crossover, mutation, and reinsertion operators, allowing rapid experimentation with different strategies without coding from scratch.

Flexible Termination System

Supports combining termination criteria via a trait-based system, enabling complex conditions like max iterations OR fitness thresholds, as described in the README.

WebAssembly Support

Can be compiled for WASM targets with the wasm-bindgen feature, facilitating GA simulations in browser environments, making it unique among Rust GA libraries.

Cons

Boilerplate for Problem Setup

Each application requires implementing Phenotype, Genotype, and FitnessFunction traits from scratch, adding overhead for simple or quick prototypes.

Limited High-Level Abstractions

Focuses on low-level building blocks; lacks built-in support for automated parameter tuning or common optimization problem templates beyond basic examples.

WASM Performance Limitations

Multithreading is disabled when targeting WebAssembly, as noted in the crate features, which can hinder parallel simulation performance in browser environments.

Frequently Asked Questions

Quick Stats

Stars187
Forks27
Contributors0
Open Issues11
Last commit2 years ago
CreatedSince 2017

Tags

#genetic-algorithms#library#search-algorithms#simulation-framework#heuristic-search#evolutionary-computation#evolutionary-algorithms#framework#genetic-algorithm#optimization-algorithms#wasm#rust-library#optimization#rust#machine-learning

Built With

w
wasm-bindgen
R
Rust
R
Rayon

Links & Resources

Website

Included in

Rust56.6k
Auto-fetched 19 hours ago

Related Projects

radiateradiate

A fast and flexible evolution engine for implementing artificial evolution and genetic programming techniques

Stars255
Forks20
Last commit23 hours ago
oxigenoxigen

Fast, parallel, extensible and adaptable genetic algorithms framework written in Rust

Stars184
Forks19
Last commit5 years ago
darwin-rsdarwin-rs

darwin-rs, evolutionary algorithms with rust

Stars129
Forks16
Last commit4 years ago
RsGeneticRsGenetic

Genetic Algorithm library in Rust

Stars79
Forks19
Last commit5 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub