38 releases (25 breaking)

new 0.27.1 Apr 2, 2025
0.27.0 Mar 13, 2025
0.26.0 Feb 14, 2025
0.25.0 Dec 19, 2024
0.4.0 Jul 9, 2022

#1217 in Machine learning

Download history 116/week @ 2024-12-17 160/week @ 2024-12-31 14/week @ 2025-01-07 1/week @ 2025-01-14 151/week @ 2025-02-04 153/week @ 2025-02-11 23/week @ 2025-02-18 20/week @ 2025-02-25 5/week @ 2025-03-04 140/week @ 2025-03-11 15/week @ 2025-03-18 2/week @ 2025-03-25 143/week @ 2025-04-01

300 downloads per month
Used in egobox

Apache-2.0

635KB
13K SLoC

Efficient global optimization

crates.io docs

egobox-ego provides a Rust implementation of efficient global optimization algorithm. It is a Rust port of EGO of the SMT Python library.

The big picture

egobox-ego is a library crate in the top-level package egobox.

Current state

egobox-ego currently implements EGO using egobox-moe with the following features:

  • Mixture of gausian processes
  • Infill criteria: EI, WB2, WB2S
  • Handling of negative constraints: actual constraint functions or surrogates
  • Mixed integer optimization available through continuous relaxation
  • Trust region EGO algorithm

Examples

There is some usage examples in the examples/ directory. To run, use:

cargo run --release --example ackley

License

Licensed under the Apache License, Version 2.0 http://www.apache.org/licenses/LICENSE-2.0

Dependencies

~19–38MB
~574K SLoC