algen 0.2.0

A parallelized genetic algorithm runner
Documentation
# algen

Algen is a platform, written in rust, for running genetic algorithms.

## Installation

Add the dependency to your crates

```toml
[package]
name = "my-app"
version = "0.1.0"
edition = "2021"

[dependencies]
algen = "0.1.2"
```

And then you can run cargo to fetch it.

```bash
cargo build
```

## Usage

Algen provides an abstraction on top of genetic algorithms. On its own, it
does not provide a working implementation. That's up to you! So here are the
traits you need to implement in order to use Algen:

- **Algorithm** to define how input data is manipulated to solve a particular
  problem.
- **Analyzer** to score the result of the algorithm and produce a numeric
  value representing how well it did.

In addition to these traits, you need to provide [TestParameters](https://docs.rs/algen/latest/algen/models/test_parameters/index.html) and
some kind of **Input Data** which is fed to your algorithm.

See the example in the examples folder for more details.

```rust
    run_algorithm(
        &parameters,
        test_data,
        algo,
        analyzer,
        Some(after_generation),
    );
```

## Features

Optionally, you can include the tracing feature if you would like the library
to emit traces using the [tracing](https://crates.io/crates/tracing) crate.

```toml
[dependencies]
algen = { version = "0.1.2", features = ["tracing"] }
```

## Contributing

Pull requests are welcome. For major changes, please open an issue first
to discuss what you would like to change.

Please make sure to update tests as appropriate.

## License

[MIT](https://choosealicense.com/licenses/mit/)