Skip to content

Commit

Permalink
Release 0.5.0 (#32)
Browse files Browse the repository at this point in the history
* Update changelog

* Use central difference for models derivatives

* Update changelog

* Bump 0.5.0

* Update CHANGELOG
  • Loading branch information
relf authored Oct 7, 2022
1 parent d31e12c commit 7f1e1d9
Show file tree
Hide file tree
Showing 8 changed files with 33 additions and 20 deletions.
13 changes: 11 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,14 @@
Unreleased
==========
Version 0.6.0 - unreleased
==========================

* Add `GpMix`/`Gpx` in Python `egobox` module wrapping `egobox-moe::Moe` (#31)

Version 0.5.0 - 2022-10-07
==========================

* Add Egor `minimize` interruption capability (Ctrl+C) from Python (#30)
* Minor performance improvement in moe clustering (#29)
* Improvements following JOSS submission review (#34, #36, #38, #39, #40, #42)

Changes
-------
Expand Down
10 changes: 5 additions & 5 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "egobox"
version = "0.4.0"
version = "0.5.0"
authors = ["Rémi Lafage <[email protected]>"]
edition = "2018"
description = "A toolbox for efficient global optimization"
Expand All @@ -25,10 +25,10 @@ persistent-ego = ["egobox-ego/persistent"]
blas = ["ndarray/blas", "egobox-gp/blas", "egobox-moe/blas", "egobox-ego/blas"]

[dependencies]
egobox-doe = { version = "0.4.0", path="./doe" }
egobox-gp = { version = "0.4.0", path="./gp" }
egobox-moe = { version = "0.4.0", path="./moe" }
egobox-ego = { version = "0.4.0", path="./ego" }
egobox-doe = { version = "0.5.0", path="./doe" }
egobox-gp = { version = "0.5.0", path="./gp" }
egobox-moe = { version = "0.5.0", path="./moe" }
egobox-ego = { version = "0.5.0", path="./ego" }

linfa = { version = "0.6.0", default-features = false }

Expand Down
2 changes: 1 addition & 1 deletion doe/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "egobox-doe"
version = "0.4.0"
version = "0.5.0"
authors = ["Rémi Lafage <[email protected]>"]
edition = "2018"
description = "A library for design of experiments"
Expand Down
8 changes: 4 additions & 4 deletions ego/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "egobox-ego"
version = "0.4.0"
version = "0.5.0"
authors = ["Rémi Lafage <[email protected]>"]
edition = "2018"
description = "A library for efficient global optimization"
Expand All @@ -16,9 +16,9 @@ persistent = ["serde", "typetag", "egobox-moe/persistent", "serde_json"]
blas = ["ndarray-linalg", "linfa/ndarray-linalg", "linfa-pls/blas"]

[dependencies]
egobox-doe = { version = "0.4.0", path="../doe" }
egobox-gp = { version = "0.4.0", path="../gp" }
egobox-moe = { version = "0.4.0", path="../moe" }
egobox-doe = { version = "0.5.0", path="../doe" }
egobox-gp = { version = "0.5.0", path="../gp" }
egobox-moe = { version = "0.5.0", path="../moe" }

linfa = { version = "0.6.0", default-features = false }
linfa-pls = { version = "0.6.0", default-features = false }
Expand Down
8 changes: 6 additions & 2 deletions ego/src/egor.rs
Original file line number Diff line number Diff line change
Expand Up @@ -813,7 +813,7 @@ impl<'a, O: GroupFunc, R: Rng + SeedableRng + Clone> Egor<'a, O, R> {
let f = |x: &Vec<f64>| -> f64 {
self.infill_eval(x, obj_model, *f_min, *scale_obj, *scale_wb2)
};
grad[..].copy_from_slice(&x.to_vec().forward_diff(&f));
grad[..].copy_from_slice(&x.to_vec().central_diff(&f));
}
self.infill_eval(x, obj_model, *f_min, *scale_obj, *scale_wb2)
};
Expand Down Expand Up @@ -855,9 +855,13 @@ impl<'a, O: GroupFunc, R: Rng + SeedableRng + Clone> Egor<'a, O, R> {

let scaling_points = sampling.sample(100 * self.xlimits.nrows());
let scale_obj = compute_obj_scale(&scaling_points.view(), obj_model);
info!("Acquisition function scaling is updated to {}", scale_obj);
let scale_cstr = compute_cstr_scales(&scaling_points.view(), cstr_models);
info!("Feasibility criterion scaling is updated to {}", scale_cstr);
let scale_wb2 = if self.infill == InfillStrategy::WB2S {
compute_wb2s_scale(&scaling_points.view(), obj_model, *f_min)
let scale = compute_wb2s_scale(&scaling_points.view(), obj_model, *f_min);
info!("WB2S scaling factor is updated to {}", scale);
scale
} else {
1.
};
Expand Down
4 changes: 2 additions & 2 deletions gp/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "egobox-gp"
version = "0.4.0"
version = "0.5.0"
authors = ["Rémi Lafage <[email protected]>"]
edition = "2018"
description = "A library for gaussian process modeling"
Expand All @@ -16,7 +16,7 @@ serializable = ["serde", "linfa/serde"]
blas = ["ndarray-linalg", "linfa/ndarray-linalg", "linfa-pls/blas"]

[dependencies]
egobox-doe = { version = "0.4.0", path="../doe" }
egobox-doe = { version = "0.5.0", path="../doe" }

linfa = { version = "0.6.0", default-features = false }
linfa-pls = { version = "0.6.0", default-features = false }
Expand Down
6 changes: 3 additions & 3 deletions moe/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "egobox-moe"
version = "0.4.0"
version = "0.5.0"
authors = ["Rémi Lafage <[email protected]>"]
edition = "2018"
description = "A library for mixture of expert gaussian processes"
Expand All @@ -16,8 +16,8 @@ persistent = ["serde", "typetag", "egobox-gp/serializable", "serde_json"]
blas = ["ndarray-linalg", "linfa/ndarray-linalg", "linfa-clustering/blas", "linfa-pls/blas"]

[dependencies]
egobox-doe = { version = "0.4.0", path = "../doe" }
egobox-gp = { version = "0.4.0", path = "../gp" }
egobox-doe = { version = "0.5.0", path = "../doe" }
egobox-gp = { version = "0.5.0", path = "../gp" }

linfa = { version = "0.6.0", default-features = false }
linfa-clustering = { version = "0.6.0", default-features = false }
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ requires = ["maturin>=0.12,<0.13", "poetry_core>=1.0.0"]

[tool.poetry]
name = "egobox"
version = "0.4.0"
version = "0.5.0"
description = "Python binding for egobox EGO optimizer written in Rust"
authors = ["Rémi Lafage <[email protected]>"]

Expand Down

0 comments on commit 7f1e1d9

Please sign in to comment.