#[non_exhaustive]pub enum Algorithm {
Dds(Dds),
Sce(Sce),
De(De),
LShade(LShade),
LSrtde(LSrtde),
Pso(Pso),
CmaEs(CmaEs),
RestartCmaEs(RestartCmaEs),
}Expand description
A configured algorithm, for code that selects one at runtime (mirrors the CLI / client use where the optimizer is chosen by a flag).
Marked #[non_exhaustive]: new algorithms are added over time, so matches
need a wildcard arm and adding a variant is not a breaking change.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Dds(Dds)
Dynamically Dimensioned Search (Tolson & Shoemaker 2007).
Sce(Sce)
Shuffled Complex Evolution, SCE-UA (Duan et al. 1992).
De(De)
Differential Evolution rand/1/bin (Storn & Price 1997).
LShade(LShade)
Success-history adaptive DE with LPSR (Tanabe & Fukunaga 2014).
LSrtde(LSrtde)
Success-rate adaptive DE, CEC 2024 winner (Stanovov & Semenkin 2024).
Pso(Pso)
Particle Swarm Optimization (Kennedy & Eberhart 1995).
CmaEs(CmaEs)
Covariance Matrix Adaptation ES (Hansen & Ostermeier 2001).
RestartCmaEs(RestartCmaEs)
CMA-ES with IPOP/BIPOP restarts (Auger & Hansen 2005; Hansen 2009).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Algorithm
impl RefUnwindSafe for Algorithm
impl Send for Algorithm
impl Sync for Algorithm
impl Unpin for Algorithm
impl UnsafeUnpin for Algorithm
impl UnwindSafe for Algorithm
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