Uses of Interface
org.cicirello.search.TrackableSearch
Package
Description
This package includes classes and interfaces related to implementing metaheuristic search
algorithms in general, rather than specific to a particular metaheuristic.
This package includes multithreaded search implementations, as well as classes and interfaces
related to implementing multithreaded metaheuristics.
This package includes classes and interfaces directly related to implementing evolutionary
algorithms.
This package includes classes and interfaces directly related to implementing hill climbers.
This package includes classes and interfaces related to implementing multistart metaheuristics
(i.e., metaheuristics that periodically restart, and return the best solution across a number of
such restarts).
This package includes classes and interfaces directly related to implementing simulated
annealing.
This package includes classes and interfaces directly related to implementing stochastic sampling
algorithms.

Uses of TrackableSearch in org.cicirello.search
Modifier and TypeInterfaceDescriptioninterface
Metaheuristic<T extends Copyable<T>>
This interface defines the required methods for implementations of metaheuristics, in particular metaheuristics for which the maximum run length can be specified.interface
ReoptimizableMetaheuristic<T extends Copyable<T>>
This interface defines the required methods for implementations of metaheuristics, for which the maximum run length can be specified, and which have the capability of restarting from a previously optimized solution.interface
SimpleLocalMetaheuristic<T extends Copyable<T>>
This interface defines the required methods for implementations of simple metaheuristics that locally optimize from some initial solution (random or otherwise) whose run length is selfdetermined, such as hill climbers that terminate upon reaching a local optima.interface
SimpleMetaheuristic<T extends Copyable<T>>
This interface defines the required methods for implementations of simple metaheuristics whose run length is selfdetermined, such as hill climbers that terminate upon reaching a local optima.interface
SingleSolutionMetaheuristic<T extends Copyable<T>>
This interface defines the required methods for implementations of singlesolution metaheuristics, i.e., metaheuristics such as simulated annealing that operate one a single candidate solution (as compared to populationbased metaheuristics such as genetic algorithms. 
Uses of TrackableSearch in org.cicirello.search.concurrent
Modifier and TypeClassDescriptionclass
ParallelMetaheuristic<T extends Copyable<T>>
This class enables running multiple copies of a metaheuristic, or multiple metaheuristics, in parallel with multiple threads.final class
ParallelMultistarter<T extends Copyable<T>>
This class is used for implementing parallel multistart metaheuristics.class
ParallelReoptimizableMetaheuristic<T extends Copyable<T>>
This class enables running multiple copies of a metaheuristic, or multiple metaheuristics, in parallel with multiple threads.final class
ParallelReoptimizableMultistarter<T extends Copyable<T>>
This class is used for implementing parallel multistart metaheuristics.class
TimedParallelMultistarter<T extends Copyable<T>>
This class is used for implementing parallel multistart metaheuristics.final class
TimedParallelReoptimizableMultistarter<T extends Copyable<T>>
This class is used for implementing parallel multistart metaheuristics. 
Uses of TrackableSearch in org.cicirello.search.evo
Modifier and TypeClassDescriptionclass
AdaptiveEvolutionaryAlgorithm<T extends Copyable<T>>
This class implements an evolutionary algorithm with adaptive control parameters (i.e., crossover rates and mutation rates that evolve during the search).class
AdaptiveMutationOnlyEvolutionaryAlgorithm<T extends Copyable<T>>
This class implements an mutationonly evolutionary algorithm with an adaptive mutation rate that evolves during the search.class
GenerationalEvolutionaryAlgorithm<T extends Copyable<T>>
This class implements an evolutionary algorithm with a generational model, such as is commonly used in genetic algorithms, where a population of children are formed by applying genetic operators to members of the parent population, and where the children replace the parents in the next generation.class
This class implements an evolutionary algorithm (EA) with a generational model, where a population of children are formed by applying genetic operators to members of the parent population, and where the children replace the parents in the next generation.class
GenerationalMutationOnlyEvolutionaryAlgorithm<T extends Copyable<T>>
This class implements an evolutionary algorithm (EA) with a generational model, such as is commonly used in genetic algorithms, where a population of children are formed by applying mutation to members of the parent population, and where the children replace the parents in the next generation.class
This class is an implementation of a genetic algorithm (GA) with the common bit vector representation of solutions to optimization problems, and the generational model where children replace their parents each generation.final class
This class is an implementation of a mutationonly genetic algorithm (GA) with the common bit vector representation of solutions to optimization problems, and the generational model where children replace their parents each generation.class
NaiveGenerationalEvolutionaryAlgorithm<T extends Copyable<T>>
Deprecated.IMPORTANT: This class is being introduced temporarily in support of research experiments.class
OnePlusOneEvolutionaryAlgorithm<T extends Copyable<T>>
This class implements a (1+1)EA.final class
This class implements a (1+1)GA, a special case of a (1+1)EA, where solutions are represented with a vector of bits.final class
This class is an implementation of the simple genetic algorithm (Simple GA) with the common bit vector representation of solutions to optimization problems, and the generational model where children replace their parents each generation. 
Uses of TrackableSearch in org.cicirello.search.hc
Modifier and TypeClassDescriptionfinal class
FirstDescentHillClimber<T extends Copyable<T>>
This class implements first descent hill climbing.final class
SteepestDescentHillClimber<T extends Copyable<T>>
This class implements steepest descent hill climbing. 
Uses of TrackableSearch in org.cicirello.search.restarts
Modifier and TypeClassDescriptionclass
Multistarter<T extends Copyable<T>>
This class is used for implementing multistart metaheuristics.final class
ReoptimizableMultistarter<T extends Copyable<T>>
This class is used for implementing multistart metaheuristics, that can be restarted at previously found solutions. 
Uses of TrackableSearch in org.cicirello.search.sa
Modifier and TypeClassDescriptionfinal class
SimulatedAnnealing<T extends Copyable<T>>
This class is an implementation of the metaheuristic known as simulated annealing. 
Uses of TrackableSearch in org.cicirello.search.ss
Modifier and TypeClassDescriptionfinal class
AcceptanceBandSampling<T extends Copyable<T>>
The AcceptanceBandSampling class implements a form of stochastic sampling search that uses a constructive heuristic to guide the random decisions.final class
HeuristicBiasedStochasticSampling<T extends Copyable<T>>
Heuristic Biased Stochastic Sampling (HBSS) is a form of stochastic sampling search that uses a constructive heuristic to bias the random decisions.final class
This class generates solutions to permutation optimization problems using a constructive heuristic.class
HeuristicSolutionGenerator<T extends Copyable<T>>
This class generates solutions to optimization problems using a constructive heuristic.final class
IterativeSampling<T extends Copyable<T>>
Iterative sampling is the simplest possible form of a stochastic sampling search.final class
ValueBiasedStochasticSampling<T extends Copyable<T>>
Value Biased Stochastic Sampling (VBSS) is a form of stochastic sampling search that uses a constructive heuristic to bias the random decisions.