37 releases (breaking)

new 0.27.0 Mar 13, 2025
0.25.2 Feb 6, 2025
0.25.0 Dec 19, 2024
0.24.0 Nov 12, 2024
0.4.0 Jul 9, 2022

#316 in Machine learning

Download history 7/week @ 2024-11-22 2/week @ 2024-11-29 10/week @ 2024-12-06 72/week @ 2024-12-13 45/week @ 2024-12-20 26/week @ 2024-12-27 141/week @ 2025-01-03 8/week @ 2025-01-10 88/week @ 2025-01-31 67/week @ 2025-02-07 171/week @ 2025-02-14 6/week @ 2025-02-21 20/week @ 2025-02-28 59/week @ 2025-03-07

260 downloads per month
Used in egobox

Apache-2.0

615KB
12K 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