Package org.cicirello.search.problems
Package of classes and interfaces related to representing
computational problems, as well as classes implementing
a variety of specific computational problems.

Interface Summary Interface Description IntegerCostOptimizationProblem<T extends Copyable<T>> The IntegerCostOptimizationProblem interface provides search algorithms with a way to interact with an instance of an optimization problem without the need to know the specifics of the problem (e.g., traveling salesperson, bin packing, etc).OptimizationProblem<T extends Copyable<T>> The OptimizationProblem interface provides search algorithms with a way to interact with an instance of an optimization problem without the need to know the specifics of the problem (e.g., realvalued function optimization, traveling salesperson, bin packing, etc).Problem<T extends Copyable<T>> Base interface for all interfaces defining types of problems supported by the library. 
Class Summary Class Description BoundMax The BoundMax class is an implementation of a generalization of the wellknown OneMax problem, often used in benchmarking genetic algorithms and other metaheuristics.CostFunctionScaler<T extends Copyable<T>> This is a wrapper class forOptimizationProblem
objects that enables scaling all cost values by a positive constant.IntegerCostFunctionScaler<T extends Copyable<T>> This is a wrapper class forIntegerCostOptimizationProblem
objects that enables scaling all cost values by a positive constant.OneMax The OneMax class is an implementation of the wellknown OneMax problem, often used in benchmarking genetic algorithms and other metaheuristics.PermutationInAHaystack The Permutation in a Haystack is a family of optimization problems that can be parameterized to the various types of permutation problem (e.g., absolute versus relative positioning).PolynomialRootFinding This class defines polynomial root finding as an optimization problem, enabling solving via simulated annealing or other metaheuristic optimization algorithms.