pub struct TerminationCriteria { /* private fields */ }Expand description
Termination criteria for evolutionary algorithms
Implementations§
Source§impl TerminationCriteria
impl TerminationCriteria
Sourcepub fn require_all() -> Self
pub fn require_all() -> Self
Create criteria where all must be satisfied
Sourcepub fn add(self, criterion: TerminationCriterion) -> Self
pub fn add(self, criterion: TerminationCriterion) -> Self
Add a criterion
Sourcepub fn max_generations(self, generations: usize) -> Self
pub fn max_generations(self, generations: usize) -> Self
Add max generations criterion
Sourcepub fn max_evaluations(self, evaluations: usize) -> Self
pub fn max_evaluations(self, evaluations: usize) -> Self
Add max evaluations criterion
Sourcepub fn target_fitness(self, target: f64, tolerance: f64) -> Self
pub fn target_fitness(self, target: f64, tolerance: f64) -> Self
Add target fitness criterion
Sourcepub fn stagnation(self, generations: usize, threshold: f64) -> Self
pub fn stagnation(self, generations: usize, threshold: f64) -> Self
Add stagnation criterion
Sourcepub fn diversity_threshold(self, threshold: f64) -> Self
pub fn diversity_threshold(self, threshold: f64) -> Self
Add diversity threshold criterion
Sourcepub fn time_limit(self, seconds: f64) -> Self
pub fn time_limit(self, seconds: f64) -> Self
Add time limit criterion
Sourcepub fn should_terminate(
&self,
generation: usize,
evaluations: usize,
best_fitness: f64,
diversity: f64,
stagnation_generations: usize,
elapsed_seconds: f64,
) -> Option<ConvergenceReason>
pub fn should_terminate( &self, generation: usize, evaluations: usize, best_fitness: f64, diversity: f64, stagnation_generations: usize, elapsed_seconds: f64, ) -> Option<ConvergenceReason>
Check if termination criteria are met
Sourcepub fn criteria(&self) -> &[TerminationCriterion]
pub fn criteria(&self) -> &[TerminationCriterion]
Get all criteria
Trait Implementations§
Source§impl Clone for TerminationCriteria
impl Clone for TerminationCriteria
Source§fn clone(&self) -> TerminationCriteria
fn clone(&self) -> TerminationCriteria
Returns a duplicate of the value. Read more
1.0.0 · 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 TerminationCriteria
impl Debug for TerminationCriteria
Auto Trait Implementations§
impl Freeze for TerminationCriteria
impl RefUnwindSafe for TerminationCriteria
impl Send for TerminationCriteria
impl Sync for TerminationCriteria
impl Unpin for TerminationCriteria
impl UnsafeUnpin for TerminationCriteria
impl UnwindSafe for TerminationCriteria
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§impl<T> Pointable for T
impl<T> Pointable for T
§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.