pub struct MapElitesEvolution<G, F>{ /* private fields */ }Expand description
MAP-Elites evolution engine.
Unlike traditional evolution, MAP-Elites maintains a grid of cells where each cell can hold at most one individual. Individuals compete for cells based on their behavior descriptor, and only the fittest individual in each cell survives.
Implementations§
Source§impl<G, F> MapElitesEvolution<G, F>
impl<G, F> MapElitesEvolution<G, F>
Sourcepub fn new(
archive: MapElitesArchive<G>,
fitness: F,
config: MapElitesConfig,
) -> Self
pub fn new( archive: MapElitesArchive<G>, fitness: F, config: MapElitesConfig, ) -> Self
Create a new MAP-Elites evolution instance.
Sourcepub fn initialize(&mut self)
pub fn initialize(&mut self)
Seed the archive with random individuals.
Sourcepub fn run(&mut self, generations: usize) -> MapElitesResult<G>
pub fn run(&mut self, generations: usize) -> MapElitesResult<G>
Run MAP-Elites for a number of generations.
Sourcepub fn archive(&self) -> &MapElitesArchive<G>
pub fn archive(&self) -> &MapElitesArchive<G>
Get a reference to the current archive.
Sourcepub fn total_evaluations(&self) -> usize
pub fn total_evaluations(&self) -> usize
Get the total number of evaluations performed.
Sourcepub fn coverage(&self) -> ArchiveCoverage
pub fn coverage(&self) -> ArchiveCoverage
Get coverage statistics.
Auto Trait Implementations§
impl<G, F> Freeze for MapElitesEvolution<G, F>where
F: Freeze,
impl<G, F> RefUnwindSafe for MapElitesEvolution<G, F>where
F: RefUnwindSafe,
G: RefUnwindSafe,
impl<G, F> Send for MapElitesEvolution<G, F>
impl<G, F> Sync for MapElitesEvolution<G, F>
impl<G, F> Unpin for MapElitesEvolution<G, F>
impl<G, F> UnsafeUnpin for MapElitesEvolution<G, F>where
F: UnsafeUnpin,
impl<G, F> UnwindSafe for MapElitesEvolution<G, F>where
F: UnwindSafe,
G: UnwindSafe,
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