Changelog

All notable changes to fugue-evo will be documented here.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

Added

  • Comprehensive mdbook documentation
  • Getting Started guide
  • Tutorials for all major features
  • How-To guides for common tasks
  • Reference documentation for all modules
  • Architecture documentation

[0.1.0] - Initial Release

Added

Algorithms

  • SimpleGA: General-purpose genetic algorithm with builder pattern
  • CMA-ES: Covariance Matrix Adaptation Evolution Strategy
  • NSGA-II: Non-dominated Sorting Genetic Algorithm II for multi-objective optimization
  • Island Model: Parallel evolution with migration
  • EDA/UMDA: Estimation of Distribution Algorithm
  • Steady-State GA: Non-generational evolution
  • Evolution Strategy: (μ+λ) and (μ,λ) strategies
  • Interactive GA: Human-in-the-loop optimization

Genome Types

  • RealVector: Continuous optimization
  • BitString: Binary optimization
  • Permutation: Ordering problems
  • TreeGenome: Genetic programming
  • DynamicRealVector: Variable-length real vectors
  • Composite genomes

Operators

  • Selection: Tournament, Roulette Wheel, Rank-based
  • Crossover: SBX, Uniform, One-point, Two-point, Order (OX), PMX
  • Mutation: Polynomial, Gaussian, Bit-flip, Swap, Inversion

Fitness

  • Fitness trait with generic value types
  • ParetoFitness for multi-objective
  • Benchmark functions: Sphere, Rastrigin, Rosenbrock, Ackley, ZDT suite

Features

  • Checkpointing and recovery
  • Parallel evaluation via Rayon
  • Termination criteria combinators
  • Hyperparameter adaptation (schedules, Bayesian learning)
  • Fugue PPL integration for trace-based operators

WASM Support

  • fugue-evo-wasm package for browser/Node.js
  • JavaScript bindings via wasm-bindgen

Dependencies

  • nalgebra 0.33 for linear algebra
  • rand 0.8 for random number generation
  • rayon 1.10 for parallelism
  • serde for serialization
  • fugue-ppl 0.1.0 for probabilistic programming integration

Version History

VersionDateHighlights
0.1.0TBDInitial release

Upgrading

From Pre-release to 0.1.0

If you were using a pre-release version:

  1. Update Cargo.toml:

    fugue-evo = "0.1"
    
  2. Check for API changes in builders

  3. Update any custom operators to new trait signatures

Deprecations

None currently.

Security

No security advisories.