Skip to main content

GeneticAlgorithm

Struct GeneticAlgorithm 

Source
pub struct GeneticAlgorithm { /* private fields */ }
Expand description

A generational genetic algorithm.

Implementations§

Source§

impl GeneticAlgorithm

Source

pub fn new( space: SearchSpace, settings: GeneticSettings, objective: Objective, max_evaluations: u64, seed: u64, ) -> Result<Self, SearchSpecError>

Returns a genetic algorithm of max_evaluations evaluations over space, drawing from seed.

Note that generation 0 is smaller than the population when the space has fewer configs.

§Errors

Returns SearchSpecError when GeneticSettings::check rejects settings.

Trait Implementations§

Source§

impl Clone for GeneticAlgorithm

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GeneticAlgorithm

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Searcher for GeneticAlgorithm

Source§

fn ask(&mut self, max: usize) -> Vec<Candidate>

Returns up to max candidates to evaluate next. Read more
Source§

fn tell(&mut self, evaluations: &[Evaluation])

Accepts the evaluations of the candidates that the last ask returned, sorted by candidate id. Read more
Source§

fn is_done(&self) -> bool

Returns whether the search has issued its whole budget and been told every evaluation.
Source§

fn report(&self) -> SearchReport

Returns every candidate scored so far, best first, with the finished generations and the archive. Read more
Source§

fn best(&self) -> Option<RankingEntry>

Returns the best candidate so far, or None before any evaluation or for a Pattern Space Exploration.
Source§

fn ranking_entry(&self, candidate_id: u64) -> Option<RankingEntry>

Returns candidate candidate_id with its objective over every replicate it has, or None for a candidate never told or a Pattern Space Exploration.
Source§

fn generations(&self) -> &[GenerationSummary]

Finished generations of a genetic algorithm, in order, empty for any other search.
Source§

fn archive_entry(&self, _cell: PatternCell) -> Option<ArchiveEntry>

Returns the archive entry of cell, or None for an empty cell or a search other than a Pattern Space Exploration.
Source§

fn filled_cells(&self) -> u64

Number of filled cells in the archive of a Pattern Space Exploration, 0 for any other search.
Source§

fn pattern_settings(&self) -> Option<&PatternSpaceSettings>

Returns the settings that a Pattern Space Exploration uses to place outputs, each axis with its range, or None while an automatic range waits for the initial samples or for any other search.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WasmNotSend for T
where T: Send,

Source§

impl<T> WasmNotSync for T
where T: Sync,