Skip to main content

radiate_core/
lib.rs

1pub mod alter;
2pub mod codecs;
3pub mod diversity;
4pub mod domain;
5pub mod engine;
6pub mod error;
7pub mod evaluator;
8pub mod fitness;
9pub mod genome;
10pub mod lineage;
11pub mod objectives;
12pub mod problem;
13pub mod rate;
14pub mod replacement;
15pub mod selector;
16pub mod stats;
17
18use radiate_error::Result;
19pub use radiate_error::{RadiateError, ensure, radiate_err};
20
21pub use alter::{AlterResult, Alterer, Crossover, Mutate};
22pub use codecs::{
23    BitCodec, CharCodec, Codec, FloatCodec, FnCodec, IntCodec, PermutationCodec, SubSetCodec,
24};
25pub use diversity::{CosineDistance, Diversity, EuclideanDistance, HammingDistance};
26pub use domain::*;
27pub use engine::{Engine, EngineExt};
28pub use evaluator::{BatchFitnessEvaluator, Evaluator, FitnessEvaluator};
29pub use executor::Executor;
30pub use fitness::{BatchFitnessFunction, CompositeFitnessFn, FitnessFunction, NoveltySearch};
31pub use genome::*;
32pub use lineage::{Lineage, LineageEvent, LineageUpdate};
33pub use objectives::{Front, Objective, Optimize, Score, pareto};
34pub use problem::{BatchEngineProblem, EngineProblem, Problem};
35pub use rate::Rate;
36pub use replacement::{EncodeReplace, PopulationSampleReplace, ReplacementStrategy};
37pub use selector::Select;
38pub use stats::{
39    Distribution, Metric, MetricSet, MetricUpdate, Statistic, TimeStatistic, metric_names,
40    render_dashboard, render_full,
41};
42
43pub mod prelude {
44    pub use radiate_error::*;
45
46    pub use super::alter::{Alterer, Crossover, Mutate};
47    pub use super::codecs::{
48        BitCodec, CharCodec, Codec, FloatCodec, FnCodec, IntCodec, PermutationCodec, SubSetCodec,
49    };
50    pub use super::diversity::{CosineDistance, Diversity, EuclideanDistance, HammingDistance};
51    pub use super::domain::random_provider;
52    pub use super::engine::{Engine, EngineExt};
53    pub use super::evaluator::{BatchFitnessEvaluator, Evaluator, FitnessEvaluator};
54    pub use super::executor::Executor;
55    pub use super::fitness::{
56        BatchFitnessFunction, CompositeFitnessFn, FitnessFunction, NoveltySearch,
57    };
58    pub use super::genome::{
59        ArithmeticGene, BitChromosome, BitGene, BoundedGene, CharChromosome, CharGene, Chromosome,
60        FloatChromosome, FloatGene, Gene, IntChromosome, IntGene, Valid,
61    };
62    pub use super::objectives::{Front, Objective, Optimize, Score, pareto};
63    pub use super::problem::{BatchEngineProblem, EngineProblem, Problem};
64    pub use super::replacement::{EncodeReplace, PopulationSampleReplace, ReplacementStrategy};
65    pub use super::selector::Select;
66    pub use super::stats::{Distribution, Metric, MetricSet, Statistic, TimeStatistic};
67}