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 objectives;
11pub mod problem;
12pub mod rate;
13pub mod replacement;
14pub mod selector;
15pub mod stats;
16
17use radiate_error::Result;
18pub use radiate_error::{RadiateError, ensure, radiate_err};
19
20pub use alter::{AlterContext, AlterResult, Alterer, Crossover, Mutate};
21pub use codecs::{
22    BitCodec, CharCodec, Codec, FloatCodec, FnCodec, IntCodec, PermutationCodec, SubSetCodec,
23};
24pub use diversity::{CosineDistance, Diversity, EuclideanDistance, HammingDistance};
25pub use domain::*;
26pub use engine::{Engine, EngineExt};
27pub use evaluator::{BatchFitnessEvaluator, Evaluator, FitnessEvaluator};
28pub use executor::Executor;
29pub use fitness::{
30    BatchFitnessFunction, BatchedFn, CompositeFitnessFn, FitnessFunction, Novelty, NoveltySearch,
31};
32pub use genome::*;
33pub use objectives::{Front, Objective, Optimize, Score, pareto};
34pub use problem::Problem;
35pub use radiate_utils::{AnyValue, DataType, SmallStr, dtype, dtype_names, value};
36pub use rate::Rate;
37pub use replacement::{EncodeReplace, PopulationSampleReplace, ReplacementStrategy};
38pub use selector::Select;
39pub use stats::{
40    Evaluate, Expr, Metric, MetricQuery, MetricSet, MetricUpdate, SelectExpr, metric_names,
41    render_dashboard, render_full,
42};
43
44pub mod prelude {
45    pub use radiate_error::*;
46
47    pub use super::alter::{AlterContext, Alterer, Crossover, Mutate};
48    pub use super::codecs::{
49        BitCodec, CharCodec, Codec, FloatCodec, FnCodec, IntCodec, PermutationCodec, SubSetCodec,
50    };
51    pub use super::diversity::{CosineDistance, Diversity, EuclideanDistance, HammingDistance};
52    pub use super::domain::random_provider;
53    pub use super::engine::{Engine, EngineExt};
54    pub use super::evaluator::{BatchFitnessEvaluator, Evaluator, FitnessEvaluator};
55    pub use super::executor::Executor;
56    pub use super::fitness::{
57        BatchFitnessFunction, BatchedFn, CompositeFitnessFn, FitnessFunction, NoveltySearch,
58    };
59    pub use super::genome::{
60        ArithmeticGene, BitChromosome, BitGene, BoundedGene, CharChromosome, CharGene, Chromosome,
61        FloatChromosome, FloatGene, Gene, IntChromosome, IntGene, Valid,
62    };
63    pub use super::objectives::{Front, Objective, Optimize, Score, pareto};
64    pub use super::problem::Problem;
65    pub use super::replacement::{EncodeReplace, PopulationSampleReplace, ReplacementStrategy};
66    pub use super::selector::Select;
67    pub use super::stats::{
68        Evaluate, Expr, Metric, MetricQuery, MetricSet, SelectExpr, metric_names,
69    };
70}