pub struct AdaptiveTreeMutation {
pub point_prob: f64,
pub subtree_prob: f64,
pub hoist_prob: f64,
pub shrink_prob: f64,
}Expand description
Adaptive mutation for tree genomes (genetic programming)
Combines multiple tree mutations with configurable probabilities.
Fields§
§point_prob: f64Probability of point mutation
subtree_prob: f64Probability of subtree mutation
hoist_prob: f64Probability of hoist mutation
shrink_prob: f64Probability of shrink mutation
Implementations§
Trait Implementations§
Source§impl Clone for AdaptiveTreeMutation
impl Clone for AdaptiveTreeMutation
Source§fn clone(&self) -> AdaptiveTreeMutation
fn clone(&self) -> AdaptiveTreeMutation
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 AdaptiveTreeMutation
impl Debug for AdaptiveTreeMutation
Source§impl Default for AdaptiveTreeMutation
impl Default for AdaptiveTreeMutation
Source§impl<T: Terminal, F: Function> MutationOperator<TreeGenome<T, F>> for AdaptiveTreeMutation
impl<T: Terminal, F: Function> MutationOperator<TreeGenome<T, F>> for AdaptiveTreeMutation
Source§fn mutate<R: Rng>(&self, genome: &mut TreeGenome<T, F>, rng: &mut R)
fn mutate<R: Rng>(&self, genome: &mut TreeGenome<T, F>, rng: &mut R)
Apply mutation to a genome in place
Source§fn mutation_probability(&self) -> f64
fn mutation_probability(&self) -> f64
Get the mutation probability per gene
Auto Trait Implementations§
impl Freeze for AdaptiveTreeMutation
impl RefUnwindSafe for AdaptiveTreeMutation
impl Send for AdaptiveTreeMutation
impl Sync for AdaptiveTreeMutation
impl Unpin for AdaptiveTreeMutation
impl UnsafeUnpin for AdaptiveTreeMutation
impl UnwindSafe for AdaptiveTreeMutation
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.