Files
heuropt/Cargo.toml
T
swaits 9ae1df68cb chore(release): roll up v0.3.0 — expensive-eval, gradient-free, multi-fidelity
CHANGELOG entry for the v0.3.0 cohort, version bump in Cargo.toml and
README. Theme: filling heuropt's expensive-evaluation and constraint-
handling gaps.

Algorithms (9 new): OnePlusOneEs, NelderMead, IpopCmaEs, BayesianOpt,
SeparableNes, Tpe, Hyperband.

Operators (1 new): LevyMutation. Repair operators (1 trait + 2 impls):
Repair<D> with ClampToBounds and ProjectToSimplex.

Selection helpers (1 new): stochastic_ranking_select.

Internal helpers: Cholesky factorization (used by BO).

API additions:
- CmaEsConfig.initial_mean: Option<Vec<f64>> (None preserves existing
  midpoint-of-bounds behavior; used by IpopCmaEs to inject restart
  diversity).
- New PartialProblem trait — multi-fidelity contract used by
  Hyperband.

No breaking changes to v0.2.0 public API.
2026-05-05 10:00:00 -06:00

26 lines
778 B
TOML

[package]
name = "heuropt"
version = "0.3.0"
edition = "2024"
rust-version = "1.85"
authors = ["Stephen Waits <steve@waits.net>"]
description = "A practical Rust toolkit for heuristic single-, multi-, and many-objective optimization."
license = "MIT"
readme = "README.md"
repository = "https://github.com/swaits/heuropt"
homepage = "https://github.com/swaits/heuropt"
documentation = "https://docs.rs/heuropt"
keywords = ["optimization", "evolutionary", "nsga", "pareto", "moead"]
categories = ["algorithms", "science", "mathematics", "simulation"]
[features]
default = []
serde = ["dep:serde"]
parallel = ["dep:rayon"]
[dependencies]
rand = "0.9"
rand_distr = "0.5"
rayon = { version = "1", optional = true }
serde = { version = "1", features = ["derive"], optional = true }