Installation
Add fugue-evo to your Rust project using Cargo.
Basic Installation
Add the following to your Cargo.toml:
[dependencies]
fugue-evo = "0.1"
rand = "0.8"
The rand crate is required for random number generation in evolutionary algorithms.
Feature Flags
Fugue-evo provides several optional features:
[dependencies]
fugue-evo = { version = "0.1", features = ["parallel", "checkpoint"] }
Available Features
| Feature | Default | Description |
|---|---|---|
std | Yes | Standard library support |
parallel | Yes | Rayon-based parallel fitness evaluation |
checkpoint | Yes | Save/restore evolution state to files |
Minimal Installation
For embedded or no-std environments:
[dependencies]
fugue-evo = { version = "0.1", default-features = false }
Full Installation
To enable all features:
[dependencies]
fugue-evo = { version = "0.1", features = ["std", "parallel", "checkpoint"] }
WASM Support
For browser-based optimization, use the WASM package:
[dependencies]
fugue-evo-wasm = "0.1"
Or install via npm for JavaScript projects:
npm install fugue-evo-wasm
See WASM & Browser Usage for detailed setup instructions.
Verifying Installation
Create a simple test program to verify your installation:
use fugue_evo::prelude::*;
fn main() {
// Create a simple real vector genome
let genome = RealVector::new(vec![1.0, 2.0, 3.0]);
println!("Genome: {:?}", genome.genes());
// Create bounds for optimization
let bounds = MultiBounds::symmetric(5.0, 3);
println!("Bounds: {:?}", bounds);
println!("fugue-evo is working!");
}
Run with:
cargo run
Development Installation
To work with the latest development version:
[dependencies]
fugue-evo = { git = "https://github.com/fugue-evo/fugue-evo" }
Next Steps
Now that fugue-evo is installed, continue to:
- Core Concepts - Understand the fundamental abstractions
- Quick Start - Run your first optimization