#[non_exhaustive]pub struct Parameters {
pub mu: usize,
pub weights: Vec<f64>,
pub mu_eff: f64,
pub c_sigma: f64,
pub d_sigma: f64,
pub c_c: f64,
pub c_1: f64,
pub c_mu: f64,
pub chi_n: f64,
}Expand description
The strategy’s parameters for n variables and population λ: the tutorial’s Table 1 with
the negative weights set to zero. Run::parameters gives a run’s; they serialize, but
aren’t read back, as nothing takes them in.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.mu: usizeμ = ⌊λ/2⌋, the candidates that move the mean.
weights: Vec<f64>wᵢ ∝ ln((λ + 1)/2) − ln i, i = 1 … μ, summing to 1.
mu_eff: f64μ_eff = 1/Σwᵢ², the selection’s variance-effective size.
c_sigma: f64c_σ = (μ_eff + 2)/(n + μ_eff + 5).
d_sigma: f64d_σ = 1 + 2 max(0, √((μ_eff − 1)/(n + 1)) − 1) + c_σ.
c_c: f64c_c = (4 + μ_eff/n)/(n + 4 + 2 μ_eff/n).
c_1: f64c₁ = 2/((n + 1.3)² + μ_eff).
c_mu: f64c_μ = min(1 − c₁, 2 (1/4 + μ_eff + 1/μ_eff − 2)/((n + 2)² + μ_eff)).
chi_n: f64E‖N(0, I)‖ ≈ √n (1 − 1/(4n) + 1/(21n²)).
Trait Implementations§
Source§impl Clone for Parameters
impl Clone for Parameters
Source§fn clone(&self) -> Parameters
fn clone(&self) -> Parameters
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for Parameters
impl Debug for Parameters
Source§impl PartialEq for Parameters
impl PartialEq for Parameters
Source§fn eq(&self, other: &Parameters) -> bool
fn eq(&self, other: &Parameters) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for Parameters
impl Serialize for Parameters
impl StructuralPartialEq for Parameters
Auto Trait Implementations§
impl Freeze for Parameters
impl RefUnwindSafe for Parameters
impl Send for Parameters
impl Sync for Parameters
impl Unpin for Parameters
impl UnsafeUnpin for Parameters
impl UnwindSafe for Parameters
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more