✨🧪⬆➕ workspace, varo: Implement RNG with ChaCha8 and add optimization function
- Updated `Cargo.toml` and `Cargo.lock` to downgrade `rand_core` to 0.6.4 and add `rand_chacha` dependency with `serde1` feature. - Implemented `Rng` struct wrapping `ChaCha8Rng` with seed initialization, stream selection, and number generation methods. - Added `rng_new`, `rng_from_seed`, `rng_set_stream`, `rng_next_u32`, `rng_next_u64`, `rng_fill_bytes`, `rng_gen_f32`, and `rng_gen_gaussian` functions. - Made `value` field in `Score` and `values` field in `OptimizationResult` public. - Implemented `Distribution::sample` method that generates Gaussian numbers when moments are available. - Added `From<f32>` implementation for `Score`. - Implemented `optimize` function that evaluates candidates using cloned RNG streams and returns sorted results. - Added integration test `test_optimize` that verifies optimization sorting behavior.
This commit is contained in:
parent
5614cfe95f
commit
db531c8c73
5 changed files with 103 additions and 27 deletions
|
@ -14,6 +14,7 @@ blake3.workspace = true
|
|||
vanth = { path = "../vanth" }
|
||||
vanth_derive = { path = "../vanth_derive" }
|
||||
rand_core.workspace = true
|
||||
rand_chacha.workspace = true
|
||||
|
||||
[dev-dependencies]
|
||||
tempfile = { workspace = true }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue