Skip to content
/ ecrs Public

ecrs - Evolutionary computation algorithms & tools for Rust

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

ecrs-org/ecrs

Repository files navigation

ECRS - Evolutionary Computation for Rust

Disclaimer Please note that this library is in early development phase and breaking changes may occur without any notice.

Evolutionary computation tools & algorithms.

The library provides:

For genetic algorithm there are various genetic operators & utility predefined:

  • Crossover operators:
    • SinglePoint
    • TwoPoint
    • MultiPoint
    • Uniform
    • Ordered
    • PMX
  • Selection operators:
    • RouletteWheel
    • Random
    • Rank
    • RankR
    • Tournament
    • StochasticUniversalSampling
    • Boltzmann
  • Mutation operators:
    • Identity
    • FlipBit
    • Interchange
    • Reversing
  • Population generatos
    • RandomPoints
    • BitStrings

Each operator can be used in plug-in style to alternate algorithm behaviour.

The library also offers highly customizable logging system based on "probing". You can check out our examples

Get started

Installation

To add ecrs to your project simply make use of cargo add command:

cargo add ecrs

Usage

Work in progess...

For now the best method to get started is checking out our examples

MSRV

During this stage of development there is not MSRV policy estabilished yet. Currently MSRV == 1.65.0 as there are some usages of syntax introduced in 1.65.0 in the codebase.

Clone & repo setup

# Clone the repository
git clone [email protected]:ecrs-org/ecrs.git ecrs

# Install the hooks
git config core.hooksPath .githooks

About

ecrs - Evolutionary computation algorithms & tools for Rust

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •