radiate_core/
lib.rs

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