pub struct NSGAII<C, M, Sel>where
C: CrossoverOperator<f64, ParetoCrowdingDistanceQuality>,
M: MutationOperator<f64, ParetoCrowdingDistanceQuality>,
Sel: SelectionOperator<f64, ParetoCrowdingDistanceQuality>,{ /* private fields */ }Trait Implementations§
Source§impl<C, M, Sel> Algorithm<f64, ParetoCrowdingDistanceQuality> for NSGAII<C, M, Sel>
impl<C, M, Sel> Algorithm<f64, ParetoCrowdingDistanceQuality> for NSGAII<C, M, Sel>
type SolutionSet = VectorSolutionSet<f64, ParetoCrowdingDistanceQuality>
type Parameters = NSGAIIParameters<C, M, Sel>
type StepState = NSGAIIState
fn new(parameters: NSGAIIParameters<C, M, Sel>) -> Self
Source§fn algorithm_name(&self) -> &str
fn algorithm_name(&self) -> &str
Human-readable algorithm name used by observers and runtime reports.
Source§fn termination_criteria(&self) -> TerminationCriteria
fn termination_criteria(&self) -> TerminationCriteria
Termination criteria configured for this algorithm instance.
Source§fn observers_mut(
&mut self,
) -> &mut Vec<Box<dyn AlgorithmObserver<f64, ParetoCrowdingDistanceQuality>>>
fn observers_mut( &mut self, ) -> &mut Vec<Box<dyn AlgorithmObserver<f64, ParetoCrowdingDistanceQuality>>>
Mutable access to registered observers.
Source§fn set_solution_set(&mut self, solution_set: Self::SolutionSet)
fn set_solution_set(&mut self, solution_set: Self::SolutionSet)
Stores the last solution set produced by
run.Source§fn validate_parameters(&self) -> Result<(), String>
fn validate_parameters(&self) -> Result<(), String>
Returns
Ok(()) when parameters are valid, or Err(message) otherwise.fn get_solution_set(&self) -> Option<&Self::SolutionSet>
fn initialize_step_state( &self, problem: &(impl Problem<f64, ParetoCrowdingDistanceQuality> + Sync), ) -> Self::StepState
fn step( &self, problem: &(impl Problem<f64, ParetoCrowdingDistanceQuality> + Sync), state: &mut Self::StepState, _context: &ExecutionContext<f64, ParetoCrowdingDistanceQuality>, )
fn build_snapshot( &self, _problem: &(impl Problem<f64, ParetoCrowdingDistanceQuality> + Sync), state: &Self::StepState, ) -> ExecutionStateSnapshot<f64, ParetoCrowdingDistanceQuality>
fn finalize_step_state(&self, state: Self::StepState) -> Self::SolutionSet
Source§fn run<P>(&mut self, problem: &P) -> Result<Self::SolutionSet, String>
fn run<P>(&mut self, problem: &P) -> Result<Self::SolutionSet, String>
Runs the optimization algorithm on the given problem. Read more
Source§fn checkpoint_algorithm_parameters(&self) -> String
fn checkpoint_algorithm_parameters(&self) -> String
Returns a string used to fingerprint algorithm checkpoint compatibility.
Source§impl<C, M, Sel> Observable<f64, ParetoCrowdingDistanceQuality> for NSGAII<C, M, Sel>
impl<C, M, Sel> Observable<f64, ParetoCrowdingDistanceQuality> for NSGAII<C, M, Sel>
Source§fn add_observer(
&mut self,
observer: Box<dyn AlgorithmObserver<f64, ParetoCrowdingDistanceQuality>>,
)
fn add_observer( &mut self, observer: Box<dyn AlgorithmObserver<f64, ParetoCrowdingDistanceQuality>>, )
Adds an observer to this observable
Source§fn clear_observers(&mut self)
fn clear_observers(&mut self)
Removes all observers
Auto Trait Implementations§
impl<C, M, Sel> Freeze for NSGAII<C, M, Sel>
impl<C, M, Sel> !RefUnwindSafe for NSGAII<C, M, Sel>
impl<C, M, Sel> Send for NSGAII<C, M, Sel>
impl<C, M, Sel> !Sync for NSGAII<C, M, Sel>
impl<C, M, Sel> Unpin for NSGAII<C, M, Sel>
impl<C, M, Sel> UnsafeUnpin for NSGAII<C, M, Sel>
impl<C, M, Sel> !UnwindSafe for NSGAII<C, M, Sel>
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