#![cfg_attr(docsrs, feature(doc_cfg))]
#![deny(rustdoc::broken_intra_doc_links)]
#![doc = include_str!("../README.md")]
extern crate self as roma_lib;
pub mod algorithms;
pub mod experiment;
pub mod observer;
pub mod operator;
pub mod problem;
pub mod solution;
pub mod solution_set;
pub mod utils;
pub use algorithms::{
run_algorithm_instances_async, run_algorithms_async, spawn_algorithm_run, Algorithm,
DifferentialEvolution, DifferentialEvolutionParameters, ExecutionStateSnapshot,
GeneticAlgorithm, GeneticAlgorithmParameters, HillClimbing, HillClimbingParameters,
NSGAIIParameters, PSOParameters, SimulatedAnnealing, SimulatedAnnealingParameters,
TabuSearch, TabuSearchParameters, TerminationController, TerminationCriteria,
TerminationCriterion, TerminationReason, TerminationState, VNSParameters, NSGAII, PSO, VNS,
};
pub use experiment::Experiment;
pub use observer::{
AlgorithmEvent, AlgorithmObserver, ChartObserver, ConsoleObserver, HtmlReportObserver,
Observable,
};
pub use operator::{
BinaryTournamentSelection, BitFlipMutation, CrossoverOperator,
MultiObjectiveTournamentSelection, MutationOperator, Operator, OrderCrossover,
PolynomialMutation, RealPerturbationMutation, SBXCrossover, SelectionOperator,
SinglePointCrossover, SwapMutation,
};
pub use problem::{
build_knapsack_from_records, build_tsp_from_records, AckleyProblem, KnapsackBuilder,
KnapsackProblem, Problem, QapProblem, TspProblem, ZDT1Problem,
};
pub use solution::{
BinarySolutionBuilder, MultiObjectiveRealSolutionBuilder,
MultiObjectiveVectorRealSolutionBuilder, ParetoCrowdingDistanceQuality,
PermutationSolutionBuilder, RealSolutionBuilder, Solution, StringSolutionBuilder,
};
pub use solution_set::{DequeSolutionSet, SolutionSet, VectorSolutionSet};
pub use utils::{delete_snapshot_on_success, read_snapshot, write_snapshot};
pub mod prelude {
pub use crate::algorithms::{
run_algorithm_instances_async, run_algorithms_async, spawn_algorithm_run, Algorithm,
DifferentialEvolution, DifferentialEvolutionParameters, ExecutionStateSnapshot,
GeneticAlgorithm, GeneticAlgorithmParameters, HillClimbing, HillClimbingParameters,
NSGAIIParameters, PSOParameters, SimulatedAnnealing, SimulatedAnnealingParameters,
TabuSearch, TabuSearchParameters, TerminationController, TerminationCriteria,
TerminationCriterion, TerminationReason, VNSParameters, NSGAII, PSO, VNS,
};
pub use crate::operator::{
BinaryTournamentSelection, BitFlipMutation, CrossoverOperator,
MultiObjectiveTournamentSelection, MutationOperator, Operator, OrderCrossover,
PolynomialMutation, RealPerturbationMutation, SBXCrossover, SelectionOperator,
SinglePointCrossover, SwapMutation,
};
pub use crate::problem::{
build_knapsack_from_records, build_tsp_from_records, AckleyProblem, KnapsackBuilder,
KnapsackProblem, Problem, QapProblem, TspProblem, ZDT1Problem,
};
pub use crate::observer::{
AlgorithmEvent, AlgorithmObserver, ChartObserver, ConsoleObserver, HtmlReportObserver,
Observable,
};
pub use crate::experiment::Experiment;
pub use crate::solution::{
BinarySolutionBuilder, MultiObjectiveRealSolutionBuilder,
MultiObjectiveVectorRealSolutionBuilder, ParetoCrowdingDistanceQuality,
PermutationSolutionBuilder, RealSolutionBuilder, Solution, StringSolutionBuilder,
};
pub use crate::solution_set::{DequeSolutionSet, SolutionSet, VectorSolutionSet};
pub use crate::utils::{
delete_snapshot_on_success, read_snapshot, seed_from_cli_or, seed_from_time,
write_snapshot, Random,
};
}