Skip to main content

CmaEsSampler

Struct CmaEsSampler 

Source
pub struct CmaEsSampler { /* private fields */ }
Expand description

A Sampler driven by CMA-ES over the study’s numeric parameters.

Construct with CmaEsSampler::new (OS-seeded) or CmaEsSampler::seeded (reproducible). The population size λ defaults to the CMA-ES rule 4 + ⌊3·ln n⌋ and can be overridden with CmaEsSampler::population_size; the first generation is sampled at random as warmup (see CmaEsSampler::n_startup_trials).

Implementations§

Source§

impl CmaEsSampler

Source

pub fn new() -> CmaEsSampler

A CMA-ES sampler seeded from OS entropy (non-deterministic across runs).

Source

pub fn seeded(seed: u64) -> CmaEsSampler

A CMA-ES sampler with a fixed seed — reproducible for tests/benchmarks.

Source

pub fn population_size(self, lambda: usize) -> CmaEsSampler

Override the population size λ (default 4 + ⌊3·ln n⌋).

Source

pub fn n_startup_trials(self, n: usize) -> CmaEsSampler

Number of initial trials drawn at random before CMA-ES takes over (default: one population, λ). A full generation of spread-out points makes the first covariance estimate meaningful.

Source

pub fn sigma0(self, sigma0: f64) -> CmaEsSampler

Initial step size σ₀, as a fraction of the normalized [0, 1] range (default 0.2).

Source

pub fn bound_handling(self, handling: BoundHandling) -> CmaEsSampler

How to repair out-of-box draws (default BoundHandling::Reflect).

Trait Implementations§

Source§

impl Default for CmaEsSampler

Source§

fn default() -> CmaEsSampler

Returns the “default value” for a type. Read more
Source§

impl Sampler for CmaEsSampler

Source§

fn suggest( &mut self, study_state: &StudyState, trial: &Trial, param_name: &str, distribution: &Distribution, ) -> Value

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.