A B C D E F G H I L M N O P R S T U V W X Z 
All Classes All Packages

A

accept(double, double) - Method in class org.cicirello.search.sa.AcceptanceTracker
 
accept(double, double) - Method in interface org.cicirello.search.sa.AnnealingSchedule
Determine whether or not to accept a neighboring solution based on its cost and the current cost, both passed as parameters.
accept(double, double) - Method in class org.cicirello.search.sa.ExponentialCooling
 
accept(double, double) - Method in class org.cicirello.search.sa.LinearCooling
 
accept(double, double) - Method in class org.cicirello.search.sa.LogarithmicCooling
 
accept(double, double) - Method in class org.cicirello.search.sa.ModifiedLam
 
accept(double, double) - Method in class org.cicirello.search.sa.ModifiedLamOriginal
 
accept(double, double) - Method in class org.cicirello.search.sa.ParameterFreeExponentialCooling
 
accept(double, double) - Method in class org.cicirello.search.sa.ParameterFreeLinearCooling
 
AcceptanceBandSampling<T extends Copyable<T>> - Class in org.cicirello.search.ss
The AcceptanceBandSampling class implements a form of stochastic sampling search that uses a constructive heuristic to guide the random decisions.
AcceptanceBandSampling(ConstructiveHeuristic<T>) - Constructor for class org.cicirello.search.ss.AcceptanceBandSampling
Constructs an AcceptanceBandSampling search object.
AcceptanceBandSampling(ConstructiveHeuristic<T>, double) - Constructor for class org.cicirello.search.ss.AcceptanceBandSampling
Constructs an AcceptanceBandSampling search object.
AcceptanceBandSampling(ConstructiveHeuristic<T>, double, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.AcceptanceBandSampling
Constructs an AcceptanceBandSampling search object.
AcceptanceBandSampling(ConstructiveHeuristic<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.AcceptanceBandSampling
Constructs an AcceptanceBandSampling search object.
AcceptanceTracker - Class in org.cicirello.search.sa
An AcceptanceTracker can be used to extract fine-grained information about the behavior of an annealing schedule across several runs of simulated annealing.
AcceptanceTracker(AnnealingSchedule) - Constructor for class org.cicirello.search.sa.AcceptanceTracker
Constructs the AcceptanceTracker.
AdjacentSwapMutation - Class in org.cicirello.search.operators.permutations
This class implements an adjacent swap mutation on permutations, where one mutation consists in randomly swapping a pair of adjacent elements.
AdjacentSwapMutation() - Constructor for class org.cicirello.search.operators.permutations.AdjacentSwapMutation
Constructs an AdjacentSwapMutation mutation operator.
allOnes() - Method in class org.cicirello.search.representations.BitVector
Check if the BitVector contains all 1-bits.
allZeros() - Method in class org.cicirello.search.representations.BitVector
Check if the BitVector contains all 0-bits.
and(BitVector) - Method in class org.cicirello.search.representations.BitVector
Computes the bitwise AND of this BitVector and another BitVector.
AnnealingSchedule - Interface in org.cicirello.search.sa
This interface specifies the required functionality for implementations of annealing schedules.
anyOnes() - Method in class org.cicirello.search.representations.BitVector
Check if the BitVector contains any bits equal to a 1.
anyZeros() - Method in class org.cicirello.search.representations.BitVector
Check if the BitVector contains any bits equal to a 0.
ApparentTardinessCost - Class in org.cicirello.search.problems.scheduling
This is an implementation of the Apparent Tardiness Cost (ATC) heuristic.
ApparentTardinessCost(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.ApparentTardinessCost
Constructs an ApparentTardinessCost heuristic.
ApparentTardinessCost(SingleMachineSchedulingProblem, double) - Constructor for class org.cicirello.search.problems.scheduling.ApparentTardinessCost
Constructs an ApparentTardinessCost heuristic.
ApparentTardinessCostSetupAdjusted - Class in org.cicirello.search.problems.scheduling
This is an implementation of a variation of the Apparent Tardiness Cost (ATC) heuristic, with a simple adjustment for setup times for problems with sequence-dependent setups.
ApparentTardinessCostSetupAdjusted(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.ApparentTardinessCostSetupAdjusted
Constructs an ApparentTardinessCostSetupAdjusted heuristic.
ApparentTardinessCostSetupAdjusted(SingleMachineSchedulingProblem, double) - Constructor for class org.cicirello.search.problems.scheduling.ApparentTardinessCostSetupAdjusted
Constructs an ApparentTardinessCostSetupAdjusted heuristic.
ATCS - Class in org.cicirello.search.problems.scheduling
This is an implementation of the ATCS (Apparent Tardiness Cost with Setups) heuristic.
ATCS(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.ATCS
Constructs an ATCS heuristic.
ATCS(SingleMachineSchedulingProblem, double, double) - Constructor for class org.cicirello.search.problems.scheduling.ATCS
Constructs an ATCS heuristic.
AVERAGE_PROCESS_TIME - Static variable in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
Defines the average process time.

B

bias(double) - Method in interface org.cicirello.search.ss.ValueBiasedStochasticSampling.BiasFunction
This method is the bias function.
bias(int) - Method in interface org.cicirello.search.ss.HeuristicBiasedStochasticSampling.BiasFunction
This method is the bias function.
BitFlipMutation - Class in org.cicirello.search.operators.bits
This class implements Bit Flip Mutation, the mutation operator commonly used in genetic algorithms, but which can also be used with other metaheuristic search algorithms such as simulated annealing to generate random neighbors.
BitFlipMutation(double) - Constructor for class org.cicirello.search.operators.bits.BitFlipMutation
Constructs a BitFlipMutation operator with a specified mutation rate.
bitIterator() - Method in class org.cicirello.search.representations.BitVector
Creates a BitIterator to iterate over the bits of this BitVector, one bit at a time.
bitIterator(int) - Method in class org.cicirello.search.representations.BitVector
Creates a BitIterator to iterate over the bits of this BitVector.
BitVector - Class in org.cicirello.search.representations
A BitVector is an indexable vector of bits.
BitVector(int) - Constructor for class org.cicirello.search.representations.BitVector
Initializes the bit vector to a vector of all 0 bits.
BitVector(int, boolean) - Constructor for class org.cicirello.search.representations.BitVector
Initializes the bit vector.
BitVector(int, int[]) - Constructor for class org.cicirello.search.representations.BitVector
Initializes a bit vector from an array of ints.
BitVector.BitIterator - Class in org.cicirello.search.representations
The BitIterator class enables iterating over the bits of a BitVector.
BitVectorInitializer - Class in org.cicirello.search.operators.bits
Generates random BitVector objects for use in generating random initial solutions for simulated annealing and other metaheuristics.
BitVectorInitializer(int) - Constructor for class org.cicirello.search.operators.bits.BitVectorInitializer
Construct a BitVectorInitializer for creating random BitVectors of a specified length.
BlockInterchangeMutation - Class in org.cicirello.search.operators.permutations
This class implements a block interchange mutation on permutations, where one mutation consists in swapping two randomly chosen non-overlapping "blocks" (i.e., subsequences).
BlockInterchangeMutation() - Constructor for class org.cicirello.search.operators.permutations.BlockInterchangeMutation
Constructs a BlockInterchangeMutation mutation operator.
BlockMoveMutation - Class in org.cicirello.search.operators.permutations
This class implements a block move mutation on permutations, where one mutation consists in removing a randomly chosen "block" (i.e., subsequence) and reinserting it at a different randomly chosen index.
BlockMoveMutation() - Constructor for class org.cicirello.search.operators.permutations.BlockMoveMutation
Constructs a BlockMoveMutation mutation operator.
BoundedIntegerVector - Class in org.cicirello.search.representations
A class for representing the input to a multivariate function, with integer values that are bounded in some interval [min, max].
BoundedIntegerVector(int[], int, int) - Constructor for class org.cicirello.search.representations.BoundedIntegerVector
Initializes the vector to the specified values, subject to the given bounds [min, max].
BoundedIntegerVector(BoundedIntegerVector) - Constructor for class org.cicirello.search.representations.BoundedIntegerVector
Copies a BoundedIntegerVector.
BoundedRealVector - Class in org.cicirello.search.representations
A class for representing the input to a multivariate function, with real values (floating-point) that are bounded in some interval [min, max].
BoundedRealVector(double[], double, double) - Constructor for class org.cicirello.search.representations.BoundedRealVector
Initializes the vector to the specified values, subject to the given bounds [min, max].
BoundedRealVector(BoundedRealVector) - Constructor for class org.cicirello.search.representations.BoundedRealVector
Copies a BoundedRealVector.
BoundMax - Class in org.cicirello.search.problems
The BoundMax class is an implementation of a generalization of the well-known OneMax problem, often used in benchmarking genetic algorithms and other metaheuristics.
BoundMax(int, int) - Constructor for class org.cicirello.search.problems.BoundMax
Constructs an instance of the BoundMax problem.

C

CauchyMutation<T extends RealValued> - Class in org.cicirello.search.operators.reals
This class implements Cauchy mutation.
close() - Method in class org.cicirello.search.concurrent.ParallelMetaheuristic
Initiates an orderly shutdown of the thread pool used by this ParallelMetaheuristic.
close() - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
Initiates an orderly shutdown of the thread pool used by this TimedParallelMultistarter.
CommonDuedateScheduling - Class in org.cicirello.search.problems.scheduling
This class represents and generates instances of a common duedate scheduling problem, in which all jobs have both an earliness weight and a tardiness weight, and share a common duedate.
CommonDuedateScheduling(int, double) - Constructor for class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Constructs a random instance of common duedate scheduling using an implementation of a process based on that approach used to generate the instances from the OR-Library.
CommonDuedateScheduling(int, double, long) - Constructor for class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Constructs a random instance of common duedate scheduling using an implementation of a process based on that approach used to generate the instances from the OR-Library.
CommonDuedateScheduling(String, int, double) - Constructor for class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Constructs a common duedate scheduling problem instance by parsing an instance data file that follows the format specified in the OR-Library of J.E.
compareTo(SolutionCostPair<T>) - Method in class org.cicirello.search.SolutionCostPair
Compares this SolutionCostPair with the specified SolutionCostPair for order.
completeLength() - Method in interface org.cicirello.search.ss.ConstructiveHeuristic
Gets the required length of complete solutions to the problem instance for which this constructive heuristic is configured.
completeLength() - Method in class org.cicirello.search.ss.HybridConstructiveHeuristic
 
ConstantRestartSchedule - Class in org.cicirello.search.restarts
This is the basic constant run length restart schedule, such that every restart of the multistart metaheuristic is the same in length.
ConstantRestartSchedule(int) - Constructor for class org.cicirello.search.restarts.ConstantRestartSchedule
Constructs the restart schedule.
ConstructiveHeuristic<T extends Copyable<T>> - Interface in org.cicirello.search.ss
Classes implementing this interface are used as constructive heuristics for constructing heuristic solutions to optimization problems, as well as for certain stochastic sampling search algorithms.
containsIntCost() - Method in class org.cicirello.search.ProgressTracker
Checks whether the cost of the solution contained in this ProgressTracker is integer valued.
containsIntCost() - Method in class org.cicirello.search.SolutionCostPair
Checks whether the cost of the solution contained in this SolutionCostPair is integer valued.
copy() - Method in class org.cicirello.search.operators.integers.UndoableUniformMutation
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.operators.integers.UniformMutation
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.operators.reals.CauchyMutation
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.operators.reals.GaussianMutation
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.operators.reals.UndoableCauchyMutation
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.operators.reals.UndoableGaussianMutation
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.operators.reals.UndoableUniformMutation
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.operators.reals.UniformMutation
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.representations.BitVector
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.representations.BoundedIntegerVector
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.representations.BoundedRealVector
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.representations.IntegerVector
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.representations.RealVector
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.representations.SingleInteger
Creates an identical copy of this object.
copy() - Method in class org.cicirello.search.representations.SingleReal
Creates an identical copy of this object.
cost(Permutation) - Method in class org.cicirello.search.problems.PermutationInAHaystack
 
cost(Permutation) - Method in class org.cicirello.search.problems.scheduling.MinimizeMakespan
 
cost(Permutation) - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumFlowtime
 
cost(Permutation) - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumLateness
 
cost(Permutation) - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumTardiness
 
cost(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedEarlinessTardiness
 
cost(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedFlowtime
 
cost(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedLateness
 
cost(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedNumberTardyJobs
 
cost(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedSquaredTardiness
 
cost(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedTardiness
 
cost(BitVector) - Method in class org.cicirello.search.problems.Mix
 
cost(BitVector) - Method in class org.cicirello.search.problems.OneMax
 
cost(BitVector) - Method in class org.cicirello.search.problems.OneMaxAckley
 
cost(BitVector) - Method in class org.cicirello.search.problems.Plateaus
 
cost(BitVector) - Method in class org.cicirello.search.problems.Porcupine
 
cost(BitVector) - Method in class org.cicirello.search.problems.Trap
 
cost(BitVector) - Method in class org.cicirello.search.problems.TwoMax
 
cost(BitVector) - Method in class org.cicirello.search.problems.TwoMaxEqualPeaks
 
cost(IntegerVector) - Method in class org.cicirello.search.problems.BoundMax
 
cost(SingleReal) - Method in class org.cicirello.search.problems.PolynomialRootFinding
 
cost(T) - Method in class org.cicirello.search.problems.CostFunctionScaler
Computes the cost of a candidate solution to the problem instance.
cost(T) - Method in class org.cicirello.search.problems.IntegerCostFunctionScaler
Computes the cost of a candidate solution to the problem instance.
cost(T) - Method in interface org.cicirello.search.problems.IntegerCostOptimizationProblem
Computes the cost of a candidate solution to the problem instance.
cost(T) - Method in interface org.cicirello.search.problems.OptimizationProblem
Computes the cost of a candidate solution to the problem instance.
CostFunctionScaler<T extends Copyable<T>> - Class in org.cicirello.search.problems
This is a wrapper class for OptimizationProblem objects that enables scaling all cost values by a positive constant.
CostFunctionScaler(OptimizationProblem<T>, double) - Constructor for class org.cicirello.search.problems.CostFunctionScaler
Constructs the CostFunctionScaler.
countOnes() - Method in class org.cicirello.search.representations.BitVector
Counts the number of bits in the bit vector whose value is a 1.
countZeros() - Method in class org.cicirello.search.representations.BitVector
Counts the number of bits in the bit vector whose value is a 0.
createCandidateSolution() - Method in class org.cicirello.search.operators.bits.BitVectorInitializer
 
createCandidateSolution() - Method in class org.cicirello.search.operators.InitializeBySimpleMetaheuristic
 
createCandidateSolution() - Method in interface org.cicirello.search.operators.Initializer
Creates one candidate solution to a problem.
createCandidateSolution() - Method in class org.cicirello.search.operators.integers.IntegerValueInitializer
 
createCandidateSolution() - Method in class org.cicirello.search.operators.integers.IntegerVectorInitializer
 
createCandidateSolution() - Method in class org.cicirello.search.operators.permutations.PermutationInitializer
 
createCandidateSolution() - Method in class org.cicirello.search.operators.reals.RealValueInitializer
 
createCandidateSolution() - Method in class org.cicirello.search.operators.reals.RealVectorInitializer
 
createCauchyMutation() - Static method in class org.cicirello.search.operators.reals.CauchyMutation
Creates a Cauchy mutation operator with scale parameter equal to 1.
createCauchyMutation() - Static method in class org.cicirello.search.operators.reals.UndoableCauchyMutation
Creates a Cauchy mutation operator with scale parameter equal to 1 that supports the undo operation.
createCauchyMutation(double) - Static method in class org.cicirello.search.operators.reals.CauchyMutation
Creates a Cauchy mutation operator.
createCauchyMutation(double) - Static method in class org.cicirello.search.operators.reals.UndoableCauchyMutation
Creates a Cauchy mutation operator that supports the undo operation.
createCauchyMutation(double, double) - Static method in class org.cicirello.search.operators.reals.CauchyMutation
Create a Cauchy mutation operator.
createCauchyMutation(double, double) - Static method in class org.cicirello.search.operators.reals.UndoableCauchyMutation
Create a Cauchy mutation operator that supports the undo operation.
createCauchyMutation(double, int) - Static method in class org.cicirello.search.operators.reals.CauchyMutation
Create a Cauchy mutation operator.
createCauchyMutation(double, int) - Static method in class org.cicirello.search.operators.reals.UndoableCauchyMutation
Create a Cauchy mutation operator that supports the undo operation.
createExponentialBias(double) - Static method in class org.cicirello.search.ss.ValueBiasedStochasticSampling
Creates an exponential bias function of the form: exp(scale * value).
createGaussianMutation() - Static method in class org.cicirello.search.operators.reals.GaussianMutation
Creates a Gaussian mutation operator with standard deviation equal to 1.
createGaussianMutation() - Static method in class org.cicirello.search.operators.reals.UndoableGaussianMutation
Creates a Gaussian mutation operator with standard deviation equal to 1 that supports the undo operation.
createGaussianMutation(double) - Static method in class org.cicirello.search.operators.reals.GaussianMutation
Creates a Gaussian mutation operator.
createGaussianMutation(double) - Static method in class org.cicirello.search.operators.reals.UndoableGaussianMutation
Creates a Gaussian mutation operator that supports the undo operation.
createGaussianMutation(double, double) - Static method in class org.cicirello.search.operators.reals.GaussianMutation
Create a Gaussian mutation operator.
createGaussianMutation(double, double) - Static method in class org.cicirello.search.operators.reals.UndoableGaussianMutation
Create a Gaussian mutation operator that supports the undo operation.
createGaussianMutation(double, int) - Static method in class org.cicirello.search.operators.reals.GaussianMutation
Create a Gaussian mutation operator.
createGaussianMutation(double, int) - Static method in class org.cicirello.search.operators.reals.UndoableGaussianMutation
Create a Gaussian mutation operator that supports the undo operation.
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.ApparentTardinessCost
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.ApparentTardinessCostSetupAdjusted
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.ATCS
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.DynamicATCS
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.ExponentialEarlyTardyHeuristic
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.LinearEarlyTardyHeuristic
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.Montagne
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.WeightedCostOverTime
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.WeightedCostOverTimeSetupAdjusted
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.WeightedCriticalRatio
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.WeightedCriticalRatioSetupAdjusted
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.WeightedShortestProcessingPlusSetupTimeLateOnly
 
createIncrementalEvaluation() - Method in class org.cicirello.search.problems.scheduling.WeightedShortestProcessingTimeLateOnly
 
createIncrementalEvaluation() - Method in interface org.cicirello.search.ss.ConstructiveHeuristic
Creates an IncrementalEvaluation object corresponding to an initially empty Partial for use in incrementally constructing a solution to the problem for which this heuristic is designed.
createIncrementalEvaluation() - Method in class org.cicirello.search.ss.HybridConstructiveHeuristic
This method handles choosing the heuristic for the next iteration of the stochastic sampling search, and then delegates the usual function of this method to the chosen heuristic.
createPartial(int) - Method in interface org.cicirello.search.ss.ConstructiveHeuristic
Creates an empty Partial solution, which will be incrementally transformed into a complete solution of a specified length.
createPartial(int) - Method in class org.cicirello.search.ss.HybridConstructiveHeuristic
 
createRestartSchedules(int) - Static method in class org.cicirello.search.restarts.LubyRestarts
A convenience method for generating several identical and independent LubyRestarts objects, such as when needed for a parallel search (e.g., if each instance needs its own restart schedule).
createRestartSchedules(int) - Static method in class org.cicirello.search.restarts.ParallelVariableAnnealingLength
Creates a list of restart schedules that together follow the Parallel Variable Annealing Length (P-VAL) schedule of: Vincent A.
createRestartSchedules(int) - Static method in class org.cicirello.search.restarts.VariableAnnealingLength
This is a convenience method for use in generating several identical VAL annealing schedules, such as if needed for a parallel search.
createRestartSchedules(int, int) - Static method in class org.cicirello.search.restarts.ConstantRestartSchedule
A convenience method for generating several ConstantRestartSchedule objects, such as when needed for a parallel search (e.g., if each instance needs its own restart schedule).
createRestartSchedules(int, int) - Static method in class org.cicirello.search.restarts.LubyRestarts
A convenience method for generating several identical and independent LubyRestarts objects, such as when needed for a parallel search (e.g., if each instance needs its own restart schedule).
createRestartSchedules(int, int) - Static method in class org.cicirello.search.restarts.ParallelVariableAnnealingLength
Creates a list of restart schedules that together follow the Parallel Variable Annealing Length (P-VAL) schedule of: Vincent A.
createRestartSchedules(int, int) - Static method in class org.cicirello.search.restarts.VariableAnnealingLength
This is a convenience method for use in generating several identical VAL annealing schedules, such as if needed for a parallel search.
createUniformMutation() - Static method in class org.cicirello.search.operators.reals.UndoableUniformMutation
Creates a Uniform mutation operator with radius parameter equal to 1 that supports the undo operation.
createUniformMutation() - Static method in class org.cicirello.search.operators.reals.UniformMutation
Creates a Uniform mutation operator with radius parameter equal to 1.
createUniformMutation(double) - Static method in class org.cicirello.search.operators.reals.UndoableUniformMutation
Creates a Uniform mutation operator that supports the undo operation.
createUniformMutation(double) - Static method in class org.cicirello.search.operators.reals.UniformMutation
Creates a Uniform mutation operator.
createUniformMutation(double, double) - Static method in class org.cicirello.search.operators.reals.UndoableUniformMutation
Create a Uniform mutation operator that supports the undo operation.
createUniformMutation(double, double) - Static method in class org.cicirello.search.operators.reals.UniformMutation
Create a Uniform mutation operator.
createUniformMutation(double, int) - Static method in class org.cicirello.search.operators.reals.UndoableUniformMutation
Create a Uniform mutation operator that supports the undo operation.
createUniformMutation(double, int) - Static method in class org.cicirello.search.operators.reals.UniformMutation
Create a Uniform mutation operator.
createUniformMutation(int) - Static method in class org.cicirello.search.operators.integers.UndoableUniformMutation
Creates a Uniform mutation operator that supports the undo operation.
createUniformMutation(int) - Static method in class org.cicirello.search.operators.integers.UniformMutation
Creates a Uniform mutation operator.
createUniformMutation(int, double) - Static method in class org.cicirello.search.operators.integers.UndoableUniformMutation
Create a Uniform mutation operator that supports the undo operation.
createUniformMutation(int, double) - Static method in class org.cicirello.search.operators.integers.UniformMutation
Create a Uniform mutation operator.
createUniformMutation(int, int) - Static method in class org.cicirello.search.operators.integers.UndoableUniformMutation
Create a Uniform mutation operator that supports the undo operation.
createUniformMutation(int, int) - Static method in class org.cicirello.search.operators.integers.UniformMutation
Create a Uniform mutation operator.
CycleMutation - Class in org.cicirello.search.operators.permutations
This class implements a cycle mutation on permutations, where one mutation generates a random permutation cycle.
CycleMutation(int) - Constructor for class org.cicirello.search.operators.permutations.CycleMutation
Constructs an CycleMutation mutation operator.

D

DEFAULT_PRECISION - Static variable in class org.cicirello.search.problems.PolynomialRootFinding
The default for the precision of the result.
DefiniteBitFlipMutation - Class in org.cicirello.search.operators.bits
DefiniteBitFlipMutation implements a variation of Bit Flip Mutation.
DefiniteBitFlipMutation(int) - Constructor for class org.cicirello.search.operators.bits.DefiniteBitFlipMutation
Constructs a DefiniteBitFlipMutation operator.
didFindBest() - Method in class org.cicirello.search.ProgressTracker
Check whether the solution contained in the ProgressTracker has been marked as the best possible solution.
DynamicATCS - Class in org.cicirello.search.problems.scheduling
DynamicATCS is an implementation of a variation of the ATCS (Apparent Tardiness Cost with Setups) heuristic, which dynamically updates the average processing and setup times as it constructs the schedule.
DynamicATCS(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.DynamicATCS
Constructs an DynamicATCS heuristic.
DynamicATCS(SingleMachineSchedulingProblem, double, double) - Constructor for class org.cicirello.search.problems.scheduling.DynamicATCS
Constructs an DynamicATCS heuristic.

E

EarliestDueDate - Class in org.cicirello.search.problems.scheduling
This is an implementation of the earliest due date heuristic.
EarliestDueDate(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.EarliestDueDate
Constructs an EarliestDueDate heuristic.
elapsed() - Method in class org.cicirello.search.ProgressTracker
Gets the amount of time (nanoseconds precision) that elapsed between when this ProgressTracker was constructed and the most recent successful update of the best solution contained within the tracker.
equals(Object) - Method in class org.cicirello.search.operators.integers.IntegerValueInitializer
 
equals(Object) - Method in class org.cicirello.search.operators.integers.IntegerVectorInitializer
 
equals(Object) - Method in class org.cicirello.search.operators.integers.RandomValueChangeMutation
Indicates whether some other object is equal to this one.
equals(Object) - Method in class org.cicirello.search.operators.integers.UndoableRandomValueChangeMutation
 
equals(Object) - Method in class org.cicirello.search.operators.integers.UndoableUniformMutation
 
equals(Object) - Method in class org.cicirello.search.operators.integers.UniformMutation
Indicates whether some other object is equal to this one.
equals(Object) - Method in class org.cicirello.search.operators.reals.CauchyMutation
Indicates whether some other object is equal to this one.
equals(Object) - Method in class org.cicirello.search.operators.reals.GaussianMutation
Indicates whether some other object is equal to this one.
equals(Object) - Method in class org.cicirello.search.operators.reals.RealValueInitializer
 
equals(Object) - Method in class org.cicirello.search.operators.reals.RealVectorInitializer
 
equals(Object) - Method in class org.cicirello.search.operators.reals.UndoableCauchyMutation
 
equals(Object) - Method in class org.cicirello.search.operators.reals.UndoableGaussianMutation
 
equals(Object) - Method in class org.cicirello.search.operators.reals.UndoableUniformMutation
 
equals(Object) - Method in class org.cicirello.search.operators.reals.UniformMutation
Indicates whether some other object is equal to this one.
equals(Object) - Method in class org.cicirello.search.problems.BoundMax
 
equals(Object) - Method in class org.cicirello.search.representations.BitVector
Indicates whether some other object is equal to this one.
equals(Object) - Method in class org.cicirello.search.representations.BoundedIntegerVector
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in class org.cicirello.search.representations.BoundedRealVector
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in class org.cicirello.search.representations.IntegerVector
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in class org.cicirello.search.representations.RealVector
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in class org.cicirello.search.representations.SingleInteger
Indicates whether some other object is "equal to" this one.
equals(Object) - Method in class org.cicirello.search.representations.SingleReal
Indicates whether some other object is "equal to" this one.
ExponentialCooling - Class in org.cicirello.search.sa
This class implements the classic and most commonly encountered cooling schedule for simulated annealing, the annealing schedule known as exponential cooling (sometimes referred to as geometric cooling).
ExponentialCooling(double, double) - Constructor for class org.cicirello.search.sa.ExponentialCooling
Constructs an exponential cooling schedule for simulated annealing.
ExponentialCooling(double, double, int) - Constructor for class org.cicirello.search.sa.ExponentialCooling
Constructs an exponential cooling schedule for simulated annealing.
ExponentialEarlyTardyHeuristic - Class in org.cicirello.search.problems.scheduling
This class implements a constructive heuristic, known as EXPET, for scheduling problems involving minimizing the sum of weighted earliness plus weighted tardiness.
ExponentialEarlyTardyHeuristic(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.ExponentialEarlyTardyHeuristic
Constructs a ExponentialEarlyTardyHeuristic heuristic.
ExponentialEarlyTardyHeuristic(SingleMachineSchedulingProblem, double) - Constructor for class org.cicirello.search.problems.scheduling.ExponentialEarlyTardyHeuristic
Constructs a ExponentialEarlyTardyHeuristic heuristic.
extend(int) - Method in interface org.cicirello.search.ss.Partial
Extends the Partial by adding an element to the end of the Partial.
extend(int) - Method in class org.cicirello.search.ss.PartialIntegerVector
 
extend(int) - Method in class org.cicirello.search.ss.PartialPermutation
 
extend(Partial<T>, int) - Method in interface org.cicirello.search.ss.IncrementalEvaluation
Extends an incremental evaluation, to account for extending a Partial by the addition of one element.

F

FirstDescentHillClimber<T extends Copyable<T>> - Class in org.cicirello.search.hc
This class implements first descent hill climbing.
FirstDescentHillClimber(IntegerCostOptimizationProblem<T>, IterableMutationOperator<T>, Initializer<T>) - Constructor for class org.cicirello.search.hc.FirstDescentHillClimber
Constructs a first descent hill climber object for integer-valued optimization problem.
FirstDescentHillClimber(IntegerCostOptimizationProblem<T>, IterableMutationOperator<T>, Initializer<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.hc.FirstDescentHillClimber
Constructs a first descent hill climber object for integer-valued optimization problem.
FirstDescentHillClimber(OptimizationProblem<T>, IterableMutationOperator<T>, Initializer<T>) - Constructor for class org.cicirello.search.hc.FirstDescentHillClimber
Constructs a first descent hill climber object for real-valued optimization problem.
FirstDescentHillClimber(OptimizationProblem<T>, IterableMutationOperator<T>, Initializer<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.hc.FirstDescentHillClimber
Constructs a first descent hill climber object for real-valued optimization problem.
flip(int) - Method in class org.cicirello.search.representations.BitVector
Flips the value of the bit at the specified index (e.g., if it is a 0, then change to a 1; if it is a 1, change to a 0).

G

GaussianMutation<T extends RealValued> - Class in org.cicirello.search.operators.reals
This class implements Gaussian mutation.
get() - Method in class org.cicirello.search.representations.SingleInteger
Accesses the current value of this function input.
get() - Method in class org.cicirello.search.representations.SingleReal
Accesses the current value.
get(int) - Method in class org.cicirello.search.operators.integers.UniformMutation
Accesses the current value of radius.
get(int) - Method in class org.cicirello.search.operators.reals.CauchyMutation
Accesses the current value of scale.
get(int) - Method in class org.cicirello.search.operators.reals.GaussianMutation
Accesses the current value of sigma.
get(int) - Method in class org.cicirello.search.operators.reals.UniformMutation
Accesses the current value of radius.
get(int) - Method in interface org.cicirello.search.representations.IntegerValued
Accesses the current value of a specified parameter.
get(int) - Method in class org.cicirello.search.representations.IntegerVector
 
get(int) - Method in interface org.cicirello.search.representations.RealValued
Accesses the current value of a specified parameter.
get(int) - Method in class org.cicirello.search.representations.RealVector
 
get(int) - Method in class org.cicirello.search.representations.SingleInteger
Accesses the current value of this function input.
get(int) - Method in class org.cicirello.search.representations.SingleReal
Accesses the current value.
get(int) - Method in interface org.cicirello.search.ss.Partial
Gets the element in the Partial at position index.
get(int) - Method in class org.cicirello.search.ss.PartialIntegerVector
 
get(int) - Method in class org.cicirello.search.ss.PartialPermutation
 
get32(int) - Method in class org.cicirello.search.representations.BitVector
Gets a block of up to 32 bits.
getAcceptanceRate(int) - Method in class org.cicirello.search.sa.AcceptanceTracker
Computes the acceptance rate for a specific iteration number computed across all runs since either the last call to AcceptanceTracker.reset(int) or since the last run of simulated annealing with a different run length.
getBit(int) - Method in class org.cicirello.search.representations.BitVector
Gets the value of the bit at a designated index.
getCompletionTimes(Permutation) - Method in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Computes the completion times of all of the jobs if they were scheduled in the order defined by the specified Permutation.
getCompletionTimes(Permutation) - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Computes the completion times of all of the jobs if they were scheduled in the order defined by the specified Permutation.
getCompletionTimes(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
 
getCompletionTimes(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
 
getCost() - Method in class org.cicirello.search.ProgressTracker
Gets the cost of the current best solution stored in the ProgressTracker.
getCost() - Method in class org.cicirello.search.SolutionCostPair
Gets the cost contained in this solution cost pair as an int.
getCostDouble() - Method in class org.cicirello.search.ProgressTracker
Gets the cost of the current best solution stored in the ProgressTracker.
getCostDouble() - Method in class org.cicirello.search.SolutionCostPair
Gets the cost contained in this solution cost pair as a double.
getDueDate(int) - Method in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
 
getDueDate(int) - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Gets the due date of a job, for scheduling problems that have due dates.
getDueDate(int) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
 
getDueDate(int) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
 
getEarlyWeight(int) - Method in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
 
getEarlyWeight(int) - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Gets the early weight of a job, for weighted scheduling problems that have early weights.
getExtension(int) - Method in interface org.cicirello.search.ss.Partial
Gets the element in position index of the list of possible extensions.
getExtension(int) - Method in class org.cicirello.search.ss.PartialIntegerVector
 
getExtension(int) - Method in class org.cicirello.search.ss.PartialPermutation
 
getInstanceData() - Method in class org.cicirello.search.problems.scheduling.MinimizeMakespan
 
getInstanceData() - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumFlowtime
 
getInstanceData() - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumLateness
 
getInstanceData() - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumTardiness
 
getInstanceData() - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblem
Gets an object that encapsulates the data describing the scheduling problem instance, such as number of jobs, and the characteristics of the jobs, such as processing times, setup times, due dates, weights, etc.
getInstanceData() - Method in class org.cicirello.search.problems.scheduling.WeightedEarlinessTardiness
 
getInstanceData() - Method in class org.cicirello.search.problems.scheduling.WeightedFlowtime
 
getInstanceData() - Method in class org.cicirello.search.problems.scheduling.WeightedLateness
 
getInstanceData() - Method in class org.cicirello.search.problems.scheduling.WeightedNumberTardyJobs
 
getInstanceData() - Method in class org.cicirello.search.problems.scheduling.WeightedSquaredTardiness
 
getInstanceData() - Method in class org.cicirello.search.problems.scheduling.WeightedTardiness
 
getLast() - Method in interface org.cicirello.search.ss.Partial
Gets the element in the current last position of the Partial, i.e., the element at index: size()-1.
getLast() - Method in class org.cicirello.search.ss.PartialIntegerVector
 
getLast() - Method in class org.cicirello.search.ss.PartialPermutation
 
getProblem() - Method in class org.cicirello.search.concurrent.ParallelMetaheuristic
 
getProblem() - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
 
getProblem() - Method in class org.cicirello.search.restarts.Multistarter
 
getProblem() - Method in class org.cicirello.search.sa.SimulatedAnnealing
 
getProblem() - Method in interface org.cicirello.search.ss.ConstructiveHeuristic
Gets a reference to the instance of the optimization problem that is the subject of this heuristic.
getProblem() - Method in class org.cicirello.search.ss.HeuristicSolutionGenerator
 
getProblem() - Method in class org.cicirello.search.ss.HybridConstructiveHeuristic
 
getProblem() - Method in interface org.cicirello.search.TrackableSearch
Gets a reference to the problem that this search is solving.
getProcessingTime(int) - Method in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
 
getProcessingTime(int) - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Gets the processing time of a job, which is the amount of time required by the machine to process the job.
getProcessingTime(int) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
 
getProcessingTime(int) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
 
getProgressTracker() - Method in class org.cicirello.search.concurrent.ParallelMetaheuristic
 
getProgressTracker() - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
 
getProgressTracker() - Method in class org.cicirello.search.restarts.Multistarter
 
getProgressTracker() - Method in class org.cicirello.search.sa.SimulatedAnnealing
 
getProgressTracker() - Method in class org.cicirello.search.ss.HeuristicSolutionGenerator
 
getProgressTracker() - Method in interface org.cicirello.search.TrackableSearch
Gets the ProgressTracker object that is in use for tracking search progress.
getReleaseDate(int) - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Gets the release date of a job, for scheduling problems that have release dates.
getSearchHistory() - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
Gets a list of the best solution stored in this search's ProgressTracker at each time interval of the most recent call to the TimedParallelMultistarter.optimize(int) method, or null if TimedParallelMultistarter.optimize(int) has not been called.
getSetupTime(int) - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Gets the setup time of a job if it is the first job processed on the machine.
getSetupTime(int) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
 
getSetupTime(int, int) - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Gets the setup time of a job if it was to immediately follow a specified job on the machine, for problems that have sequence dependent setups.
getSetupTime(int, int) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
 
getSolution() - Method in class org.cicirello.search.ProgressTracker
Gets the current best solution stored in the ProgressTracker.
getSolution() - Method in class org.cicirello.search.SolutionCostPair
Gets the solution in this solution cost pair.
getSolutionCostPair() - Method in class org.cicirello.search.ProgressTracker
Gets the current best solution and its corresponding cost from the ProgressTracker.
getSolutionCostPair(T) - Method in interface org.cicirello.search.problems.IntegerCostOptimizationProblem
Computes the cost of a candidate solution to the problem instance.
getSolutionCostPair(T) - Method in interface org.cicirello.search.problems.OptimizationProblem
Computes the cost of a candidate solution to the problem instance.
getSolutionCostPair(T) - Method in interface org.cicirello.search.problems.Problem
Computes the cost of a candidate solution to the problem instance.
getTimeUnit() - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
Gets the unit of time used by the TimedParallelMultistarter.optimize(int) method.
getTotalRunLength() - Method in class org.cicirello.search.concurrent.ParallelMetaheuristic
Gets the total run length of all runs of all parallel instances of the underlying metaheuristics combined.
getTotalRunLength() - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
Gets the total run length of all restarts of all parallel instances of the underlying metaheuristics combined.
getTotalRunLength() - Method in class org.cicirello.search.restarts.Multistarter
Gets the total run length of all restarts of the underlying metaheuristic combined.
getTotalRunLength() - Method in class org.cicirello.search.sa.SimulatedAnnealing
Gets the total number of simulated annealing evaluations (iterations) performed by this SimulatedAnnealing object.
getTotalRunLength() - Method in class org.cicirello.search.ss.HeuristicSolutionGenerator
 
getTotalRunLength() - Method in interface org.cicirello.search.TrackableSearch
Gets the total run length of the metaheuristic.
getWeight(int) - Method in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
 
getWeight(int) - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Gets the weight of a job, for weighted scheduling problems, where a job's weight indicates its importance or priority (higher weight implies higher priority).
getWeight(int) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
 
getWeight(int) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
 

H

h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.ApparentTardinessCost
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.ApparentTardinessCostSetupAdjusted
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.ATCS
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.DynamicATCS
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.EarliestDueDate
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.ExponentialEarlyTardyHeuristic
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.LinearEarlyTardyHeuristic
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.MinimumSlackTime
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.Montagne
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.ShortestProcessingPlusSetupTime
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.ShortestProcessingPlusSetupTimePrecompute
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.ShortestProcessingTime
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.SmallestNormalizedSetup
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.SmallestSetup
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.SmallestSetupPrecompute
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.SmallestTwoJobSetup
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.WeightedCostOverTime
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.WeightedCostOverTimeSetupAdjusted
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.WeightedCriticalRatio
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.WeightedCriticalRatioSetupAdjusted
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.WeightedLongestProcessingTime
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.WeightedShortestProcessingPlusSetupTime
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.WeightedShortestProcessingPlusSetupTimeLateOnly
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.WeightedShortestProcessingPlusSetupTimePrecompute
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.WeightedShortestProcessingTime
 
h(Partial<Permutation>, int, IncrementalEvaluation<Permutation>) - Method in class org.cicirello.search.problems.scheduling.WeightedShortestProcessingTimeLateOnly
 
h(Partial<T>, int, IncrementalEvaluation<T>) - Method in interface org.cicirello.search.ss.ConstructiveHeuristic
Heuristically evaluates the possible addition of an element to the end of a Partial.
h(Partial<T>, int, IncrementalEvaluation<T>) - Method in class org.cicirello.search.ss.HybridConstructiveHeuristic
 
hasDueDates() - Method in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
 
hasDueDates() - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Checks whether this single machine scheduling instance has due dates.
hasDueDates() - Method in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
 
hasDueDates() - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
 
hasEarlyWeights() - Method in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
 
hasEarlyWeights() - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Checks whether this single machine scheduling instance has early weights.
hashCode() - Method in class org.cicirello.search.operators.integers.IntegerValueInitializer
 
hashCode() - Method in class org.cicirello.search.operators.integers.IntegerVectorInitializer
 
hashCode() - Method in class org.cicirello.search.operators.integers.RandomValueChangeMutation
Returns a hash code value for the object.
hashCode() - Method in class org.cicirello.search.operators.integers.UniformMutation
Returns a hash code value for the object.
hashCode() - Method in class org.cicirello.search.operators.reals.CauchyMutation
Returns a hash code value for the object.
hashCode() - Method in class org.cicirello.search.operators.reals.GaussianMutation
Returns a hash code value for the object.
hashCode() - Method in class org.cicirello.search.operators.reals.RealValueInitializer
 
hashCode() - Method in class org.cicirello.search.operators.reals.RealVectorInitializer
 
hashCode() - Method in class org.cicirello.search.operators.reals.UniformMutation
Returns a hash code value for the object.
hashCode() - Method in class org.cicirello.search.representations.BitVector
Returns a hash code value for the object.
hashCode() - Method in class org.cicirello.search.representations.BoundedIntegerVector
Returns a hash code value.
hashCode() - Method in class org.cicirello.search.representations.BoundedRealVector
Returns a hash code value.
hashCode() - Method in class org.cicirello.search.representations.IntegerVector
Returns a hash code value.
hashCode() - Method in class org.cicirello.search.representations.RealVector
Returns a hash code value for the function input object.
hashCode() - Method in class org.cicirello.search.representations.SingleInteger
Returns a hash code value.
hashCode() - Method in class org.cicirello.search.representations.SingleReal
Returns a hash code value for the function input object.
hasNext() - Method in interface org.cicirello.search.operators.MutationIterator
Checks whether there are any additional neighbors of the candidate solution.
hasNext() - Method in class org.cicirello.search.representations.BitVector.BitIterator
Verifies if there are more bits to get, and it is safe to call BitVector.BitIterator.nextBitBlock().
hasReleaseDates() - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Checks whether this single machine scheduling instance has release dates.
hasSetupTimes() - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Checks whether this single machine scheduling instance has setup times.
hasSetupTimes() - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
 
hasWeights() - Method in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
 
hasWeights() - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Checks whether this single machine scheduling instance has weights.
hasWeights() - Method in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
 
hasWeights() - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
 
HeuristicBiasedStochasticSampling<T extends Copyable<T>> - Class in org.cicirello.search.ss
Heuristic Biased Stochastic Sampling (HBSS) is a form of stochastic sampling search that uses a constructive heuristic to bias the random decisions.
HeuristicBiasedStochasticSampling(ConstructiveHeuristic<T>) - Constructor for class org.cicirello.search.ss.HeuristicBiasedStochasticSampling
Constructs a HeuristicBiasedStochasticSampling search object.
HeuristicBiasedStochasticSampling(ConstructiveHeuristic<T>, boolean) - Constructor for class org.cicirello.search.ss.HeuristicBiasedStochasticSampling
Constructs a HeuristicBiasedStochasticSampling search object.
HeuristicBiasedStochasticSampling(ConstructiveHeuristic<T>, boolean, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.HeuristicBiasedStochasticSampling
Constructs a HeuristicBiasedStochasticSampling search object.
HeuristicBiasedStochasticSampling(ConstructiveHeuristic<T>, double) - Constructor for class org.cicirello.search.ss.HeuristicBiasedStochasticSampling
Constructs a HeuristicBiasedStochasticSampling search object.
HeuristicBiasedStochasticSampling(ConstructiveHeuristic<T>, double, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.HeuristicBiasedStochasticSampling
Constructs a HeuristicBiasedStochasticSampling search object.
HeuristicBiasedStochasticSampling(ConstructiveHeuristic<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.HeuristicBiasedStochasticSampling
Constructs a HeuristicBiasedStochasticSampling search object.
HeuristicBiasedStochasticSampling(ConstructiveHeuristic<T>, HeuristicBiasedStochasticSampling.BiasFunction) - Constructor for class org.cicirello.search.ss.HeuristicBiasedStochasticSampling
Constructs a HeuristicBiasedStochasticSampling search object.
HeuristicBiasedStochasticSampling(ConstructiveHeuristic<T>, HeuristicBiasedStochasticSampling.BiasFunction, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.HeuristicBiasedStochasticSampling
Constructs a HeuristicBiasedStochasticSampling search object.
HeuristicBiasedStochasticSampling.BiasFunction - Interface in org.cicirello.search.ss
Implement this interface to implement the bias function used by HBSS.
HeuristicPermutationGenerator - Class in org.cicirello.search.ss
This class generates solutions to permutation optimization problems using a constructive heuristic.
HeuristicPermutationGenerator(ConstructiveHeuristic<Permutation>) - Constructor for class org.cicirello.search.ss.HeuristicPermutationGenerator
Constructs an HeuristicPermutationGenerator for generating solutions to an optimization problem using a constructive heuristic.
HeuristicPermutationGenerator(ConstructiveHeuristic<Permutation>, ProgressTracker<Permutation>) - Constructor for class org.cicirello.search.ss.HeuristicPermutationGenerator
Constructs an HeuristicPermutationGenerator for generating solutions to an optimization problem using a constructive heuristic.
HeuristicSolutionGenerator<T extends Copyable<T>> - Class in org.cicirello.search.ss
This class generates solutions to optimization problems using a constructive heuristic.
HeuristicSolutionGenerator(ConstructiveHeuristic<T>) - Constructor for class org.cicirello.search.ss.HeuristicSolutionGenerator
Constructs an HeuristicSolutionGenerator for generating solutions to an optimization problem using a constructive heuristic.
HeuristicSolutionGenerator(ConstructiveHeuristic<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.HeuristicSolutionGenerator
Constructs an HeuristicSolutionGenerator for generating solutions to an optimization problem using a constructive heuristic.
HybridConstructiveHeuristic<T extends Copyable<T>> - Class in org.cicirello.search.ss
A HybridConstructiveHeuristic maintains a list of ConstructiveHeuristic objects for a problem, for use in a multiheuristic stochastic sampling search, where each full iteration of the stochastic sampler uses a single heuristic for all decisions, but where a different heuristic is chosen for each iteration.
HybridConstructiveHeuristic(List<? extends ConstructiveHeuristic<T>>) - Constructor for class org.cicirello.search.ss.HybridConstructiveHeuristic
Constructs the HybridConstructiveHeuristic, where the heuristic is chosen uniformly at random at the start of each iteration of the stochastic sampler (i.e., each time HybridConstructiveHeuristic.createIncrementalEvaluation() is called).
HybridConstructiveHeuristic(List<? extends ConstructiveHeuristic<T>>, boolean) - Constructor for class org.cicirello.search.ss.HybridConstructiveHeuristic
Constructs the HybridConstructiveHeuristic, where the heuristic is either chosen uniformly at random at the start of each iteration of the stochastic sampler (i.e., each time HybridConstructiveHeuristic.createIncrementalEvaluation() is called), or using the round robin strategy.
HybridConstructiveHeuristic(List<? extends ConstructiveHeuristic<T>>, int[]) - Constructor for class org.cicirello.search.ss.HybridConstructiveHeuristic
Constructs the HybridConstructiveHeuristic, where the heuristic is chosen using a weighted random decision at the start of each iteration of the stochastic sampler (i.e., each time HybridConstructiveHeuristic.createIncrementalEvaluation() is called).
HybridMutation<T> - Class in org.cicirello.search.operators
A HybridMutation enables using multiple mutation operators for the search, such that each time the HybridMutation.mutate(T) method is called, a randomly chosen mutation operator is applied to the candidate solution.
HybridMutation(Collection<? extends MutationOperator<T>>) - Constructor for class org.cicirello.search.operators.HybridMutation
Constructs a HybridMutation from a Collection of MutationOperators.
HybridUndoableMutation<T> - Class in org.cicirello.search.operators
A HybridMutation enables using multiple mutation operators for the search, such that each time the HybridUndoableMutation.mutate(T) method is called, a randomly chosen mutation operator is applied to the candidate solution.
HybridUndoableMutation(Collection<? extends UndoableMutationOperator<T>>) - Constructor for class org.cicirello.search.operators.HybridUndoableMutation
Constructs a HybridUndoableMutation from a Collection of MutationOperators.

I

IncrementalEvaluation<T extends Copyable<T>> - Interface in org.cicirello.search.ss
The implementations of constructive heuristics and stochastic samplers biased by constructive heuristics in the library support incremental updates, as the solution is heuristically assembled, to problem and/or heuristic data utilized by the heuristic.
init(int) - Method in class org.cicirello.search.sa.AcceptanceTracker
 
init(int) - Method in interface org.cicirello.search.sa.AnnealingSchedule
Perform any initialization necessary for the annealing schedule at to the start of a run of simulated annealing.
init(int) - Method in class org.cicirello.search.sa.ExponentialCooling
 
init(int) - Method in class org.cicirello.search.sa.LinearCooling
 
init(int) - Method in class org.cicirello.search.sa.LogarithmicCooling
Perform any initialization necessary for the annealing schedule at to the start of a run of simulated annealing.
init(int) - Method in class org.cicirello.search.sa.ModifiedLam
 
init(int) - Method in class org.cicirello.search.sa.ModifiedLamOriginal
 
init(int) - Method in class org.cicirello.search.sa.ParameterFreeExponentialCooling
 
init(int) - Method in class org.cicirello.search.sa.ParameterFreeLinearCooling
 
InitializeBySimpleMetaheuristic<T extends Copyable<T>> - Class in org.cicirello.search.operators
This class implements the Initializer interface to provide metaheuristics and other search algorithms with a way to generate initial candidate solutions to a problem, that are themselves generated via a metaheuristic.
InitializeBySimpleMetaheuristic(SimpleMetaheuristic<T>) - Constructor for class org.cicirello.search.operators.InitializeBySimpleMetaheuristic
Constructs an Initializer that creates initial candidate solutions for metaheuristics by running another simpler metaheuristic, such as a hill climber, from a random initial solution, climbing to a local optima.
Initializer<T> - Interface in org.cicirello.search.operators
Implement the Initializer interface to provide metaheuristics and other search algorithms with a way to generate initial candidate solutions to a problem.
InsertionMutation - Class in org.cicirello.search.operators.permutations
This class implements an insertion mutation on permutations, where one mutation consists in removing a randomly chosen element and reinserting it at a different randomly chosen location.
InsertionMutation() - Constructor for class org.cicirello.search.operators.permutations.InsertionMutation
Constructs an InsertionMutation mutation operator.
IntegerCostFunctionScaler<T extends Copyable<T>> - Class in org.cicirello.search.problems
This is a wrapper class for IntegerCostOptimizationProblem objects that enables scaling all cost values by a positive constant.
IntegerCostFunctionScaler(IntegerCostOptimizationProblem<T>, int) - Constructor for class org.cicirello.search.problems.IntegerCostFunctionScaler
Constructs the IntegerCostFunctionScaler.
IntegerCostOptimizationProblem<T extends Copyable<T>> - Interface in org.cicirello.search.problems
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).
IntegerValued - Interface in org.cicirello.search.representations
An interface to define the parameters to a function, where the function parameters are represented as integers.
IntegerValueInitializer - Class in org.cicirello.search.operators.integers
Generates random SingleInteger objects for use in generating random initial solutions for simulated annealing and other metaheuristics, and for copying such objects.
IntegerValueInitializer(int, int) - Constructor for class org.cicirello.search.operators.integers.IntegerValueInitializer
Construct a IntegerValueInitializer that generates random solutions uniformly in the interval [a, b).
IntegerValueInitializer(int, int, int, int) - Constructor for class org.cicirello.search.operators.integers.IntegerValueInitializer
Construct a IntegerValueInitializer that generates random solutions uniformly in the interval [a, b), subject to bounds [min, max].
IntegerVector - Class in org.cicirello.search.representations
A simple class for representing the input to a multivariate function, with integer values.
IntegerVector(int) - Constructor for class org.cicirello.search.representations.IntegerVector
Initializes the vector to all 0 values.
IntegerVector(int[]) - Constructor for class org.cicirello.search.representations.IntegerVector
Initializes the vector to the specified values.
IntegerVector(IntegerVector) - Constructor for class org.cicirello.search.representations.IntegerVector
Initializes the vector as a copy of another.
IntegerVectorInitializer - Class in org.cicirello.search.operators.integers
Generating random IntegerVector objects for use in generating random initial solutions for simulated annealing and other metaheuristics, and for copying such objects.
IntegerVectorInitializer(int[], int[]) - Constructor for class org.cicirello.search.operators.integers.IntegerVectorInitializer
Construct a IntegerVectorInitializer that generates random solutions such that the values of variable i is chosen uniformly in the interval [a[i], b[i]).
IntegerVectorInitializer(int[], int[], int[], int[]) - Constructor for class org.cicirello.search.operators.integers.IntegerVectorInitializer
Construct a IntegerVectorInitializer that generates random solutions such that the values of variable i is chosen uniformly in the interval [a[i], b[i]), subject to bounds [min[i], max[i]].
IntegerVectorInitializer(int[], int[], int, int) - Constructor for class org.cicirello.search.operators.integers.IntegerVectorInitializer
Construct a IntegerVectorInitializer that generates random solutions such that the values of variable i is chosen uniformly in the interval [a[i], b[i]), subject to bounds [min, max].
IntegerVectorInitializer(int, int, int) - Constructor for class org.cicirello.search.operators.integers.IntegerVectorInitializer
Construct a IntegerVectorInitializer that generates random solutions such that the values of all n variables are chosen uniformly in the interval [a, b).
IntegerVectorInitializer(int, int, int, int, int) - Constructor for class org.cicirello.search.operators.integers.IntegerVectorInitializer
Construct a IntegerVectorInitializer that generates random solutions such that the values of all n variables are chosen uniformly in the interval [a, b), subject to bounds [min, max].
isClosed() - Method in class org.cicirello.search.concurrent.ParallelMetaheuristic
Checks whether the thread pool has been shutdown.
isClosed() - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
Checks whether the thread pool has been shutdown.
isComplete() - Method in interface org.cicirello.search.ss.Partial
Checks if the Partial is actually a complete T.
isComplete() - Method in class org.cicirello.search.ss.PartialIntegerVector
 
isComplete() - Method in class org.cicirello.search.ss.PartialPermutation
 
isMinCost(double) - Method in class org.cicirello.search.problems.Mix
 
isMinCost(double) - Method in interface org.cicirello.search.problems.OptimizationProblem
Checks if a given cost value is equal to the minimum theoretical cost across all possible solutions to the problem instance, where lower cost implies better solution.
isMinCost(double) - Method in class org.cicirello.search.problems.Plateaus
 
isMinCost(double) - Method in class org.cicirello.search.problems.PolynomialRootFinding
Checks if a given cost value is equal to the minimum theoretical cost across all possible solutions to the problem instance, where lower cost implies better solution.
isMinCost(double) - Method in class org.cicirello.search.problems.Trap
 
isMinCost(int) - Method in class org.cicirello.search.problems.BoundMax
 
isMinCost(int) - Method in interface org.cicirello.search.problems.IntegerCostOptimizationProblem
Checks if a given cost value is equal to the minimum theoretical cost across all possible solutions to the problem instance, where lower cost implies better solution.
isMinCost(int) - Method in class org.cicirello.search.problems.OneMax
 
isMinCost(int) - Method in class org.cicirello.search.problems.OneMaxAckley
 
isMinCost(int) - Method in class org.cicirello.search.problems.PermutationInAHaystack
 
isMinCost(int) - Method in class org.cicirello.search.problems.Porcupine
 
isMinCost(int) - Method in class org.cicirello.search.problems.TwoMax
 
isMinCost(int) - Method in class org.cicirello.search.problems.TwoMaxEqualPeaks
 
isOne(int) - Method in class org.cicirello.search.representations.BitVector
Checks if the bit at a designated index is equal to a 1.
isStopped() - Method in class org.cicirello.search.ProgressTracker
Checks whether a flag is set indicating that all searches sharing this ProgressTracker should stop.
isZero(int) - Method in class org.cicirello.search.representations.BitVector
Checks if the bit at a designated index is equal to a 0.
IterableMutationOperator<T> - Interface in org.cicirello.search.operators
Implement the IterableMutationOperator interface to define a mutation operator that enables iterating systematically over the neighbors of a candidate solution, like one would do in a hill climber.
IterativeSampling<T extends Copyable<T>> - Class in org.cicirello.search.ss
Iterative sampling is the simplest possible form of a stochastic sampling search.
IterativeSampling(IntegerCostOptimizationProblem<T>, Initializer<T>) - Constructor for class org.cicirello.search.ss.IterativeSampling
Constructs an iterative sampling search for a integer-valued optimization problem.
IterativeSampling(IntegerCostOptimizationProblem<T>, Initializer<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.IterativeSampling
Constructs an iterative sampling search for a integer-valued optimization problem.
IterativeSampling(OptimizationProblem<T>, Initializer<T>) - Constructor for class org.cicirello.search.ss.IterativeSampling
Constructs an iterative sampling search for a real-valued optimization problem.
IterativeSampling(OptimizationProblem<T>, Initializer<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.IterativeSampling
Constructs an iterative sampling search for a real-valued optimization problem.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.AdjacentSwapMutation
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.BlockInterchangeMutation
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.BlockMoveMutation
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.InsertionMutation
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.ReversalMutation
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.RotationMutation
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.SwapMutation
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.TwoChangeMutation
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.WindowLimitedBlockMoveMutation
 
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.WindowLimitedInsertionMutation
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.WindowLimitedReversalMutation
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.
iterator(Permutation) - Method in class org.cicirello.search.operators.permutations.WindowLimitedSwapMutation
 
iterator(BitVector) - Method in class org.cicirello.search.operators.bits.DefiniteBitFlipMutation
 
iterator(T) - Method in interface org.cicirello.search.operators.IterableMutationOperator
Creates and returns a MutationIterator that can be used to systematically iterate over all of the direct neighbors (i.e., a single mutation step away) of a candidate solution, as one might do in a hill climber.

L

length() - Method in class org.cicirello.search.operators.integers.UniformMutation
 
length() - Method in class org.cicirello.search.operators.reals.CauchyMutation
 
length() - Method in class org.cicirello.search.operators.reals.GaussianMutation
 
length() - Method in class org.cicirello.search.operators.reals.UniformMutation
 
length() - Method in class org.cicirello.search.representations.BitVector
Gets the length of the bit vector in number of bits.
length() - Method in interface org.cicirello.search.representations.IntegerValued
Gets the number of parameters.
length() - Method in class org.cicirello.search.representations.IntegerVector
 
length() - Method in interface org.cicirello.search.representations.RealValued
Gets the number of parameters.
length() - Method in class org.cicirello.search.representations.RealVector
 
length() - Method in class org.cicirello.search.representations.SingleInteger
 
length() - Method in class org.cicirello.search.representations.SingleReal
 
LinearCooling - Class in org.cicirello.search.sa
This class implements the linear cooling schedule for simulated annealing.
LinearCooling(double, double) - Constructor for class org.cicirello.search.sa.LinearCooling
Constructs a linear cooling schedule for simulated annealing.
LinearCooling(double, double, int) - Constructor for class org.cicirello.search.sa.LinearCooling
Constructs a linear cooling schedule for simulated annealing.
LinearEarlyTardyHeuristic - Class in org.cicirello.search.problems.scheduling
This class implements a constructive heuristic, known as LINET, for scheduling problems involving minimizing the sum of weighted earliness plus weighted tardiness.
LinearEarlyTardyHeuristic(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.LinearEarlyTardyHeuristic
Constructs a LinearEarlyTardyHeuristic heuristic.
LinearEarlyTardyHeuristic(SingleMachineSchedulingProblem, double) - Constructor for class org.cicirello.search.problems.scheduling.LinearEarlyTardyHeuristic
Constructs a LinearEarlyTardyHeuristic heuristic.
LogarithmicCooling - Class in org.cicirello.search.sa
This class implements logarithmic cooling, a classic annealing schedule.
LogarithmicCooling(double) - Constructor for class org.cicirello.search.sa.LogarithmicCooling
Constructs a logarithmic cooling schedule with a specified initial temperature.
LubyRestarts - Class in org.cicirello.search.restarts
The Luby restart schedule originated with constraint satisfaction search, and was originally used to control when to restart a backtracking constraint satisfaction search in number of backtracks.
LubyRestarts() - Constructor for class org.cicirello.search.restarts.LubyRestarts
Constructs a restart schedule that follows the Luby sequence of run lengths.
LubyRestarts(int) - Constructor for class org.cicirello.search.restarts.LubyRestarts
Constructs a restart schedule, such that the run lengths are equal to a*L, where L follows the Luby sequence.

M

MAX_EARLINESS_WEIGHT - Static variable in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Defines the maximum earliness weight.
MAX_PROCESS_TIME - Static variable in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Defines the maximum process times.
MAX_PROCESS_TIME - Static variable in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
Defines the maximum process times.
MAX_PROCESS_TIME - Static variable in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
Defines the maximum process times.
MAX_TARDINESS_WEIGHT - Static variable in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Defines the maximum tardiness weight.
MAX_WEIGHT - Static variable in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
Defines the maximum weight.
MAX_WEIGHT - Static variable in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
Defines the maximum weight.
Metaheuristic<T extends Copyable<T>> - Interface in org.cicirello.search
This interface defines the required methods for implementations of metaheuristics, in particular metaheuristics for which the maximum run length can be specified.
MIN_EARLINESS_WEIGHT - Static variable in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Defines the minimum earliness weight.
MIN_PROCESS_TIME - Static variable in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Defines the minimum process times.
MIN_PROCESS_TIME - Static variable in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
Defines the minimum process times.
MIN_PROCESS_TIME - Static variable in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
Defines the minimum process times.
MIN_TARDINESS_WEIGHT - Static variable in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Defines the minimum tardiness weight.
MIN_WEIGHT - Static variable in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
Defines the minimum weight.
MIN_WEIGHT - Static variable in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
Defines the minimum weight.
minCost() - Method in class org.cicirello.search.problems.BoundMax
 
minCost() - Method in class org.cicirello.search.problems.CostFunctionScaler
A lower bound on the minimum theoretical cost across all possible solutions to the problem instance, where lower cost implies better solution.
minCost() - Method in class org.cicirello.search.problems.IntegerCostFunctionScaler
A lower bound on the minimum theoretical cost across all possible solutions to the problem instance, where lower cost implies better solution.
minCost() - Method in interface org.cicirello.search.problems.IntegerCostOptimizationProblem
A lower bound on the minimum theoretical cost across all possible solutions to the problem instance, where lower cost implies better solution.
minCost() - Method in class org.cicirello.search.problems.Mix
 
minCost() - Method in class org.cicirello.search.problems.OneMax
 
minCost() - Method in class org.cicirello.search.problems.OneMaxAckley
 
minCost() - Method in interface org.cicirello.search.problems.OptimizationProblem
A lower bound on the minimum theoretical cost across all possible solutions to the problem instance, where lower cost implies better solution.
minCost() - Method in class org.cicirello.search.problems.PermutationInAHaystack
 
minCost() - Method in class org.cicirello.search.problems.Plateaus
 
minCost() - Method in class org.cicirello.search.problems.PolynomialRootFinding
 
minCost() - Method in class org.cicirello.search.problems.Porcupine
 
minCost() - Method in class org.cicirello.search.problems.scheduling.MinimizeMakespan
 
minCost() - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumFlowtime
 
minCost() - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumTardiness
 
minCost() - Method in class org.cicirello.search.problems.scheduling.WeightedEarlinessTardiness
 
minCost() - Method in class org.cicirello.search.problems.scheduling.WeightedFlowtime
 
minCost() - Method in class org.cicirello.search.problems.scheduling.WeightedNumberTardyJobs
 
minCost() - Method in class org.cicirello.search.problems.scheduling.WeightedSquaredTardiness
 
minCost() - Method in class org.cicirello.search.problems.scheduling.WeightedTardiness
 
minCost() - Method in class org.cicirello.search.problems.Trap
 
minCost() - Method in class org.cicirello.search.problems.TwoMax
 
minCost() - Method in class org.cicirello.search.problems.TwoMaxEqualPeaks
 
MinimizeMakespan - Class in org.cicirello.search.problems.scheduling
Implements the common scheduling cost function known as makespan.
MinimizeMakespan(SingleMachineSchedulingProblemData) - Constructor for class org.cicirello.search.problems.scheduling.MinimizeMakespan
Constructs a single machine scheduling problem for minimizing makespan.
MinimizeMaximumFlowtime - Class in org.cicirello.search.problems.scheduling
Implements the scheduling cost function known as maximum flowtime (which we want to minimize).
MinimizeMaximumFlowtime(SingleMachineSchedulingProblemData) - Constructor for class org.cicirello.search.problems.scheduling.MinimizeMaximumFlowtime
Constructs a single machine scheduling problem for minimizing maximum flowtime.
MinimizeMaximumLateness - Class in org.cicirello.search.problems.scheduling
Implements the scheduling cost function known as maximum lateness, which we want to minimize.
MinimizeMaximumLateness(SingleMachineSchedulingProblemData) - Constructor for class org.cicirello.search.problems.scheduling.MinimizeMaximumLateness
Constructs a single machine scheduling problem for minimizing maximum lateness.
MinimizeMaximumTardiness - Class in org.cicirello.search.problems.scheduling
Implements the scheduling cost function known as maximum tardiness, which we want to minimize.
MinimizeMaximumTardiness(SingleMachineSchedulingProblemData) - Constructor for class org.cicirello.search.problems.scheduling.MinimizeMaximumTardiness
Constructs a single machine scheduling problem for minimizing maximum tardiness.
MinimumSlackTime - Class in org.cicirello.search.problems.scheduling
This is an implementation of the minimum slack time (MST) heuristic.
MinimumSlackTime(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.MinimumSlackTime
Constructs an MinimumSlackTime heuristic.
Mix - Class in org.cicirello.search.problems
This class implements Ackley's Mix problem, an artificial landscape that is a mix of the OneMax, TwoMax, Trap, and Plateau problems, which provides for a landscape that combines all of the properties of these benchmarking problems.
Mix() - Constructor for class org.cicirello.search.problems.Mix
Constructs an instance of Ackley's Mix problem.
ModifiedLam - Class in org.cicirello.search.sa
This class implements an optimized variant of the Modified Lam annealing schedule.
ModifiedLam() - Constructor for class org.cicirello.search.sa.ModifiedLam
Default constructor.
ModifiedLamOriginal - Class in org.cicirello.search.sa
This class implements the Modified Lam annealing schedule, which dynamically adjusts simulated annealing's temperature parameter up and down to either decrease or increase the neighbor acceptance rate as necessary to attempt to match a theoretically determined ideal.
ModifiedLamOriginal() - Constructor for class org.cicirello.search.sa.ModifiedLamOriginal
Default constructor.
Montagne - Class in org.cicirello.search.problems.scheduling
This is an implementation of Montagne's heuristic heuristic.
Montagne(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.Montagne
Constructs an Montagne heuristic.
Multistarter<T extends Copyable<T>> - Class in org.cicirello.search.restarts
This class is used for implementing multistart metaheuristics.
Multistarter(Metaheuristic<T>, int) - Constructor for class org.cicirello.search.restarts.Multistarter
Constructs a multistart metaheuristic that executes multiple runs of a specified metaheuristic, whose runs are all the same in length.
Multistarter(Metaheuristic<T>, RestartSchedule) - Constructor for class org.cicirello.search.restarts.Multistarter
Constructs a multistart metaheuristic that executes multiple runs of a specified metaheuristic, whose run lengths follow a specified schedule.
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.AdjacentSwapMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.BlockInterchangeMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.BlockMoveMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.CycleMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.InsertionMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.ReversalMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.RotationMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.ScrambleMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.SwapMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.ThreeOptMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.TwoChangeMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.UndoableScrambleMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.UndoableUniformScrambleMutation
 
mutate(Permutation) - Method in class org.cicirello.search.operators.permutations.UniformScrambleMutation
 
mutate(BitVector) - Method in class org.cicirello.search.operators.bits.BitFlipMutation
 
mutate(BitVector) - Method in class org.cicirello.search.operators.bits.DefiniteBitFlipMutation
 
mutate(T) - Method in class org.cicirello.search.operators.HybridMutation
 
mutate(T) - Method in class org.cicirello.search.operators.HybridUndoableMutation
 
mutate(T) - Method in class org.cicirello.search.operators.integers.RandomValueChangeMutation
 
mutate(T) - Method in class org.cicirello.search.operators.integers.UndoableRandomValueChangeMutation
 
mutate(T) - Method in class org.cicirello.search.operators.integers.UndoableUniformMutation
 
mutate(T) - Method in class org.cicirello.search.operators.integers.UniformMutation
 
mutate(T) - Method in interface org.cicirello.search.operators.MutationOperator
Mutates a candidate solution to a problem, by randomly modifying its state.
mutate(T) - Method in class org.cicirello.search.operators.reals.CauchyMutation
 
mutate(T) - Method in class org.cicirello.search.operators.reals.GaussianMutation
 
mutate(T) - Method in class org.cicirello.search.operators.reals.UndoableCauchyMutation
 
mutate(T) - Method in class org.cicirello.search.operators.reals.UndoableGaussianMutation
 
mutate(T) - Method in class org.cicirello.search.operators.reals.UndoableUniformMutation
 
mutate(T) - Method in class org.cicirello.search.operators.reals.UniformMutation
 
mutate(T) - Method in class org.cicirello.search.operators.WeightedHybridMutation
 
mutate(T) - Method in class org.cicirello.search.operators.WeightedHybridUndoableMutation
 
MutationIterator - Interface in org.cicirello.search.operators
Defines an interface for iterating over all of the mutants (i.e., neighbors) of a candidate solution to a problem.
MutationOperator<T> - Interface in org.cicirello.search.operators
Implement the MutationOperator interface to implement a mutation operator for use in simulated annealing, and other metaheuristics, that require a way to generate random neighbors of a candidate solution.

N

nextBit() - Method in class org.cicirello.search.representations.BitVector.BitIterator
Gets the next bit from the BitVector.
nextBitBlock() - Method in class org.cicirello.search.representations.BitVector.BitIterator
Gets the next block of bits from the BitVector.
nextBitBlock(int) - Method in class org.cicirello.search.representations.BitVector.BitIterator
Gets the next block of bits from the BitVector.
nextGaussian() - Static method in class org.cicirello.math.rand.PolarGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation 1.
nextGaussian() - Static method in class org.cicirello.math.rand.ZigguratGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation 1.
nextGaussian(double) - Static method in class org.cicirello.math.rand.PolarGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation, sigma, or your choosing.
nextGaussian(double) - Static method in class org.cicirello.math.rand.ZigguratGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation, sigma, or your choosing.
nextGaussian(double, Random) - Static method in class org.cicirello.math.rand.PolarGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation, sigma, or your choosing.
nextGaussian(double, Random) - Static method in class org.cicirello.math.rand.ZigguratGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation, sigma, or your choosing.
nextGaussian(double, SplittableRandom) - Static method in class org.cicirello.math.rand.PolarGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation, sigma, or your choosing.
nextGaussian(double, SplittableRandom) - Static method in class org.cicirello.math.rand.ZigguratGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation, sigma, or your choosing.
nextGaussian(Random) - Static method in class org.cicirello.math.rand.PolarGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation 1.
nextGaussian(Random) - Static method in class org.cicirello.math.rand.ZigguratGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation 1.
nextGaussian(SplittableRandom) - Static method in class org.cicirello.math.rand.PolarGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation 1.
nextGaussian(SplittableRandom) - Static method in class org.cicirello.math.rand.ZigguratGaussian
Generates a random number from a Gaussian distribution with mean 0 and standard deviation 1.
nextLargeBitBlock(int) - Method in class org.cicirello.search.representations.BitVector.BitIterator
Gets the next block of bits from the BitVector.
nextMutant() - Method in interface org.cicirello.search.operators.MutationIterator
Mutates the candidate solution into its next neighbor.
nextRunLength() - Method in class org.cicirello.search.restarts.ConstantRestartSchedule
 
nextRunLength() - Method in class org.cicirello.search.restarts.LubyRestarts
 
nextRunLength() - Method in class org.cicirello.search.restarts.ParallelVariableAnnealingLength
 
nextRunLength() - Method in interface org.cicirello.search.restarts.RestartSchedule
Gets the next run length in the restart schedule's sequence of run lengths.
nextRunLength() - Method in class org.cicirello.search.restarts.VariableAnnealingLength
 
not() - Method in class org.cicirello.search.representations.BitVector
Computes the bitwise complement of this BitVector.
numberOfJobs() - Method in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
 
numberOfJobs() - Method in interface org.cicirello.search.problems.scheduling.SingleMachineSchedulingProblemData
Gets the number of jobs of this scheduling problem instance.
numberOfJobs() - Method in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
 
numberOfJobs() - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
 
numExtensions() - Method in interface org.cicirello.search.ss.Partial
Gets the number of elements not yet added to the Partial.
numExtensions() - Method in class org.cicirello.search.ss.PartialIntegerVector
 
numExtensions() - Method in class org.cicirello.search.ss.PartialPermutation
 
numRemainingBits() - Method in class org.cicirello.search.representations.BitVector.BitIterator
Gets the number of bits remaining in the iterator.

O

OneMax - Class in org.cicirello.search.problems
The OneMax class is an implementation of the well-known OneMax problem, often used in benchmarking genetic algorithms and other metaheuristics.
OneMax() - Constructor for class org.cicirello.search.problems.OneMax
Constructs a OneMax object for use in evaluating candidate solutions to the OneMax problem.
OneMaxAckley - Class in org.cicirello.search.problems
The OneMaxAckley class is an implementation of the well-known OneMax problem, often used in benchmarking genetic algorithms and other metaheuristics.
OneMaxAckley() - Constructor for class org.cicirello.search.problems.OneMaxAckley
Constructs a OneMaxAckley object for use in evaluating candidate solutions to the OneMax problem.
OptimizationProblem<T extends Copyable<T>> - Interface in org.cicirello.search.problems
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., real-valued function optimization, traveling salesperson, bin packing, etc).
optimize() - Method in interface org.cicirello.search.SimpleMetaheuristic
Executes a single run of a metaheuristic whose run length cannot be specified (e.g., a hill climber that terminates when it reaches a local optima, or a stochastic sampler that terminates when it constructs one solution, etc).
optimize() - Method in class org.cicirello.search.ss.HeuristicSolutionGenerator
 
optimize(int) - Method in class org.cicirello.search.concurrent.ParallelMetaheuristic
Executes a parallel metaheuristic search.
optimize(int) - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
Executes a parallel multistart search.
optimize(int) - Method in interface org.cicirello.search.Metaheuristic
Executes a run of the metaheuristic beginning at a randomly generated solution.
optimize(int) - Method in class org.cicirello.search.restarts.Multistarter
Executes a multistart search, calling the underlying metaheuristic the specified number of times, keeping track of the best solution across the multiple runs of the search.
optimize(int) - Method in class org.cicirello.search.sa.SimulatedAnnealing
Executes a run of simulated annealing beginning at a randomly generated solution.
optimize(int, T) - Method in class org.cicirello.search.sa.SimulatedAnnealing
Executes a run of simulated annealing beginning at a specified starting solution.
optimize(int, T) - Method in interface org.cicirello.search.SingleSolutionMetaheuristic
Executes a run of the metaheuristic beginning at a specified starting solution.
optimize(T) - Method in interface org.cicirello.search.SimpleLocalMetaheuristic
Executes a single run of a metaheuristic, whose run length cannot be specified (e.g., a hill climber that terminates when it reaches a local optima), beginning at a specified solution.
or(BitVector) - Method in class org.cicirello.search.representations.BitVector
Computes the bitwise OR of this BitVector and another BitVector.
org.cicirello.math.rand - package org.cicirello.math.rand
Classes related to random number generation.
org.cicirello.search - package org.cicirello.search
This package includes classes and interfaces related to implementing metaheuristic search algorithms in general, rather than specific to a particular metaheuristic.
org.cicirello.search.concurrent - package org.cicirello.search.concurrent
This package includes multithreaded search implementations, as well as classes and interfaces related to implementing multithreaded metaheuristics.
org.cicirello.search.hc - package org.cicirello.search.hc
This package includes classes and interfaces directly related to implementing hill climbers.
org.cicirello.search.operators - package org.cicirello.search.operators
This package includes classes and interfaces for defining various operators required by simulated annealing and other metaheuristics, such as mutation operators, along with other related classes and interfaces.
org.cicirello.search.operators.bits - package org.cicirello.search.operators.bits
This package includes classes that implement operators that create, mutate, etc, BitVectors.
org.cicirello.search.operators.integers - package org.cicirello.search.operators.integers
This package includes classes that implement operators that create, mutate, etc, integer valued representations.
org.cicirello.search.operators.permutations - package org.cicirello.search.operators.permutations
This package includes classes that implement mutation operators for permutations, and other operators required by simulated annealing and other related metaheuristics.
org.cicirello.search.operators.reals - package org.cicirello.search.operators.reals
This package includes classes that implement operators that create, mutate, etc, the the inputs to functions with real-valued input parameters (represented with type double), such as is required to solve function optimization problems using simulated annealing or other metaheuristics.
org.cicirello.search.problems - 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.
org.cicirello.search.problems.scheduling - package org.cicirello.search.problems.scheduling
Package of classes and interfaces related to representing and solving scheduling problems, which includes implementations of constructive heuristics for scheduling problems.
org.cicirello.search.representations - package org.cicirello.search.representations
This package includes classes related to representing solutions to optimization problems.
org.cicirello.search.restarts - package org.cicirello.search.restarts
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).
org.cicirello.search.sa - package org.cicirello.search.sa
This package includes classes and interfaces directly related to implementing simulated annealing.
org.cicirello.search.ss - package org.cicirello.search.ss
This package includes classes and interfaces directly related to implementing stochastic sampling algorithms.

P

ParallelMetaheuristic<T extends Copyable<T>> - Class in org.cicirello.search.concurrent
This class enables running multiple copies of a metaheuristic, or multiple metaheuristics, in parallel with multiple threads.
ParallelMetaheuristic(Collection<? extends Metaheuristic<T>>) - Constructor for class org.cicirello.search.concurrent.ParallelMetaheuristic
Constructs a parallel metaheuristic that executes multiple metaheuristics in parallel across multiple threads.
ParallelMetaheuristic(Metaheuristic<T>, int) - Constructor for class org.cicirello.search.concurrent.ParallelMetaheuristic
Constructs a parallel metaheuristic that executes multiple identical copies of a metaheuristic in parallel across multiple threads.
ParallelMultistarter<T extends Copyable<T>> - Class in org.cicirello.search.concurrent
This class is used for implementing parallel multistart metaheuristics.
ParallelMultistarter(Collection<? extends Metaheuristic<T>>, int) - Constructor for class org.cicirello.search.concurrent.ParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
ParallelMultistarter(Collection<? extends Metaheuristic<T>>, Collection<? extends RestartSchedule>) - Constructor for class org.cicirello.search.concurrent.ParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
ParallelMultistarter(Collection<? extends Multistarter<T>>) - Constructor for class org.cicirello.search.concurrent.ParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
ParallelMultistarter(Metaheuristic<T>, int, int) - Constructor for class org.cicirello.search.concurrent.ParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
ParallelMultistarter(Metaheuristic<T>, Collection<? extends RestartSchedule>) - Constructor for class org.cicirello.search.concurrent.ParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
ParallelMultistarter(Metaheuristic<T>, RestartSchedule, int) - Constructor for class org.cicirello.search.concurrent.ParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
ParallelMultistarter(Multistarter<T>, int) - Constructor for class org.cicirello.search.concurrent.ParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
ParallelReoptimizableMetaheuristic<T extends Copyable<T>> - Class in org.cicirello.search.concurrent
This class enables running multiple copies of a metaheuristic, or multiple metaheuristics, in parallel with multiple threads.
ParallelReoptimizableMetaheuristic(Collection<? extends ReoptimizableMetaheuristic<T>>) - Constructor for class org.cicirello.search.concurrent.ParallelReoptimizableMetaheuristic
Constructs a parallel metaheuristic that executes multiple metaheuristics in parallel across multiple threads.
ParallelReoptimizableMetaheuristic(ReoptimizableMetaheuristic<T>, int) - Constructor for class org.cicirello.search.concurrent.ParallelReoptimizableMetaheuristic
Constructs a parallel metaheuristic that executes multiple identical copies of a metaheuristic in parallel across multiple threads.
ParallelReoptimizableMultistarter<T extends Copyable<T>> - Class in org.cicirello.search.concurrent
This class is used for implementing parallel multistart metaheuristics.
ParallelReoptimizableMultistarter(Collection<? extends ReoptimizableMetaheuristic<T>>, int) - Constructor for class org.cicirello.search.concurrent.ParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
ParallelReoptimizableMultistarter(Collection<? extends ReoptimizableMetaheuristic<T>>, Collection<? extends RestartSchedule>) - Constructor for class org.cicirello.search.concurrent.ParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
ParallelReoptimizableMultistarter(Collection<ReoptimizableMultistarter<T>>) - Constructor for class org.cicirello.search.concurrent.ParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
ParallelReoptimizableMultistarter(ReoptimizableMetaheuristic<T>, int, int) - Constructor for class org.cicirello.search.concurrent.ParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
ParallelReoptimizableMultistarter(ReoptimizableMetaheuristic<T>, Collection<? extends RestartSchedule>) - Constructor for class org.cicirello.search.concurrent.ParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
ParallelReoptimizableMultistarter(ReoptimizableMetaheuristic<T>, RestartSchedule, int) - Constructor for class org.cicirello.search.concurrent.ParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
ParallelReoptimizableMultistarter(ReoptimizableMultistarter<T>, int) - Constructor for class org.cicirello.search.concurrent.ParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
ParallelVariableAnnealingLength - Class in org.cicirello.search.restarts
The Parallel Variable Annealing Length (P-VAL) restart schedule originated, as you would expect from the word "annealing" in its name, as a restart schedule for Simulated Annealing.
ParameterFreeExponentialCooling - Class in org.cicirello.search.sa
This class implements a parameter-free version of the classic cooling schedule for simulated annealing known as exponential cooling (sometimes referred to as geometric cooling).
ParameterFreeExponentialCooling() - Constructor for class org.cicirello.search.sa.ParameterFreeExponentialCooling
Constructs a exponential cooling schedule that uses first few samples to estimate cost difference between random neighbors, and then uses that estimate to set the initial temperature, alpha, and step size.
ParameterFreeLinearCooling - Class in org.cicirello.search.sa
This class implements a parameter-free version of the linear cooling schedule for simulated annealing.
ParameterFreeLinearCooling() - Constructor for class org.cicirello.search.sa.ParameterFreeLinearCooling
Constructs a linear cooling schedule that uses first few samples to estimate cost difference between random neighbors, and then uses that estimate to set the initial temperature, temperature delta, and step size.
Partial<T extends Copyable<T>> - Interface in org.cicirello.search.ss
A Partial represents a partial solution to a problem (e.g., a partial permutation or a partial integer vector) that is being iteratively constructed as a solution to an optimization problem.
PartialIntegerVector - Class in org.cicirello.search.ss
A PartialIntegerVector represents a vector of integers that is being iteratively constructed as a solution to an optimization problem over the space of integer vectors.
PartialIntegerVector(int, int, int) - Constructor for class org.cicirello.search.ss.PartialIntegerVector
Constructs a PartialIntegerVector of a specified length with specified min and max values for the integers it contains.
PartialIntegerVector(int, int, int, boolean) - Constructor for class org.cicirello.search.ss.PartialIntegerVector
Constructs a PartialIntegerVector.
PartialPermutation - Class in org.cicirello.search.ss
A PartialPermutation represents a permutation that is being iteratively constructed as a solution to an optimization problem over the space of permutations.
PartialPermutation(int) - Constructor for class org.cicirello.search.ss.PartialPermutation
Constructs a PartialPermutation that will iteratively be transformed into a Permutation.
PermutationInAHaystack - Class in org.cicirello.search.problems
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).
PermutationInAHaystack(PermutationDistanceMeasurer, int) - Constructor for class org.cicirello.search.problems.PermutationInAHaystack
Constructs an instance of the Permutation in a Haystack problem, for a given distance measure.
PermutationInAHaystack(PermutationDistanceMeasurer, Permutation) - Constructor for class org.cicirello.search.problems.PermutationInAHaystack
Constructs an instance of the Permutation in a Haystack problem, for a given distance measure, and given target permutation.
PermutationInitializer - Class in org.cicirello.search.operators.permutations
The PermutationInitializer provides metaheuristic implementations, such as of simulated annealing, etc, with a way to generate random initial solutions to a problem, as well as a way to make copies of current solution configurations.
PermutationInitializer(int) - Constructor for class org.cicirello.search.operators.permutations.PermutationInitializer
Constructs a PermutationInitializer.
Plateaus - Class in org.cicirello.search.problems
This class implements Ackley's Plateaus problem, an artificial search landscape over the space of bitstrings that is characterized by large flat regions known as plateaus.
Plateaus() - Constructor for class org.cicirello.search.problems.Plateaus
Constructs an instance of Ackley's Plateaus problem.
PolarGaussian - Class in org.cicirello.math.rand
This class provides methods for generating pseudorandom numbers from a Gaussian distribution using the classic Polar Method.
PolynomialRootFinding - Class in org.cicirello.search.problems
This class defines polynomial root finding as an optimization problem, enabling solving via simulated annealing or other metaheuristic optimization algorithms.
PolynomialRootFinding(double[]) - Constructor for class org.cicirello.search.problems.PolynomialRootFinding
Defines a problem for finding a root of a polynomial equation of the form: 0 = c0 + c1*x + c2*x2 + ...
PolynomialRootFinding(double[], double) - Constructor for class org.cicirello.search.problems.PolynomialRootFinding
Defines a problem for finding a root of a polynomial equation of the form: 0 = c0 + c1*x + c2*x2 + ...
PolynomialRootFinding(double, double, double) - Constructor for class org.cicirello.search.problems.PolynomialRootFinding
Defines a problem for finding a root of a quadratic equation of the form: 0 = a*x2 + b*x + c.
PolynomialRootFinding(double, double, double, double) - Constructor for class org.cicirello.search.problems.PolynomialRootFinding
Defines a problem for finding a root of a quadratic equation of the form: 0 = a*x2 + b*x + c.
Porcupine - Class in org.cicirello.search.problems
This class implements the Porcupine landscape (Ackley, 1985), which is a very rugged search landscape, with an exponential number of local optima.
Porcupine() - Constructor for class org.cicirello.search.problems.Porcupine
Constructs a Porcupine object for use in evaluating candidate solutions to the Porcupine problem.
Problem<T extends Copyable<T>> - Interface in org.cicirello.search.problems
Base interface for all interfaces defining types of problems supported by the library.
ProgressTracker<T extends Copyable<T>> - Class in org.cicirello.search
This class is used to track search algorithm progress, and supports multithreaded search algorithms.
ProgressTracker() - Constructor for class org.cicirello.search.ProgressTracker
Constructs a ProgressTracker.

R

RandomValueChangeMutation<T extends IntegerValued> - Class in org.cicirello.search.operators.integers
This mutation operator is for integer valued representations, and replaces an integer value with a different random integer value from the domain.
RandomValueChangeMutation(int, int) - Constructor for class org.cicirello.search.operators.integers.RandomValueChangeMutation
Constructs a RandomValueChangeMutation operator that always mutates exactly one integer from the IntegerValued.
RandomValueChangeMutation(int, int, double) - Constructor for class org.cicirello.search.operators.integers.RandomValueChangeMutation
Constructs a RandomValueChangeMutation operator.
RandomValueChangeMutation(int, int, double, int) - Constructor for class org.cicirello.search.operators.integers.RandomValueChangeMutation
Constructs a RandomValueChangeMutation operator.
RealValued - Interface in org.cicirello.search.representations
An interface to define the parameters to a function, where the function parameters are represented as type double (i.e., as double precision floating point numbers).
RealValueInitializer - Class in org.cicirello.search.operators.reals
Generating random SingleReal objects for use in generating random initial solutions for simulated annealing and other metaheuristics, and for copying such objects.
RealValueInitializer(double, double) - Constructor for class org.cicirello.search.operators.reals.RealValueInitializer
Construct a RealValueInitializer that generates random solutions uniformly in the interval [a, b).
RealValueInitializer(double, double, double, double) - Constructor for class org.cicirello.search.operators.reals.RealValueInitializer
Construct a RealValueInitializer that generates random solutions uniformly in the interval [a, b), subject to bounds [min, max].
RealVector - Class in org.cicirello.search.representations
A simple class for representing the parameters to a multivariate function.
RealVector(double[]) - Constructor for class org.cicirello.search.representations.RealVector
Initializes the vector to the specified values.
RealVector(int) - Constructor for class org.cicirello.search.representations.RealVector
Initializes this vector to all 0.0 values.
RealVector(RealVector) - Constructor for class org.cicirello.search.representations.RealVector
Initializes the vector as a copy of another.
RealVectorInitializer - Class in org.cicirello.search.operators.reals
Generates random RealVector objects for use in generating random initial solutions for simulated annealing and other metaheuristics, and for copying such objects.
RealVectorInitializer(double[], double[]) - Constructor for class org.cicirello.search.operators.reals.RealVectorInitializer
Construct a RealVectorInitializer that generates random solutions such that the values of variable i is chosen uniformly in the interval [a[i], b[i]).
RealVectorInitializer(double[], double[], double[], double[]) - Constructor for class org.cicirello.search.operators.reals.RealVectorInitializer
Construct a RealVectorInitializer that generates random solutions such that the values of variable i is chosen uniformly in the interval [a[i], b[i]), subject to bounds [min[i], max[i]].
RealVectorInitializer(double[], double[], double, double) - Constructor for class org.cicirello.search.operators.reals.RealVectorInitializer
Construct a RealVectorInitializer that generates random solutions such that the values of variable i is chosen uniformly in the interval [a[i], b[i]), subject to bounds [min, max].
RealVectorInitializer(int, double, double) - Constructor for class org.cicirello.search.operators.reals.RealVectorInitializer
Construct a RealVectorInitializer that generates random solutions such that the values of all n variables are chosen uniformly in the interval [a, b).
RealVectorInitializer(int, double, double, double, double) - Constructor for class org.cicirello.search.operators.reals.RealVectorInitializer
Construct a RealVectorInitializer that generates random solutions such that the values of all n variables are chosen uniformly in the interval [a, b), subject to bounds [min, max].
ReoptimizableMetaheuristic<T extends Copyable<T>> - Interface in org.cicirello.search
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.
ReoptimizableMultistarter<T extends Copyable<T>> - Class in org.cicirello.search.restarts
This class is used for implementing multistart metaheuristics, that can be restarted at previously found solutions.
ReoptimizableMultistarter(ReoptimizableMetaheuristic<T>, int) - Constructor for class org.cicirello.search.restarts.ReoptimizableMultistarter
Constructs a multistart metaheuristic that executes multiple runs of a specified metaheuristic, whose runs are all the same in length.
ReoptimizableMultistarter(ReoptimizableMetaheuristic<T>, RestartSchedule) - Constructor for class org.cicirello.search.restarts.ReoptimizableMultistarter
Constructs a multistart metaheuristic that executes multiple runs of a specified metaheuristic, whose run lengths follow a specified schedule.
reoptimize(int) - Method in class org.cicirello.search.concurrent.ParallelReoptimizableMetaheuristic
Executes a parallel metaheuristic search.
reoptimize(int) - Method in class org.cicirello.search.concurrent.TimedParallelReoptimizableMultistarter
Executes a parallel multistart search.
reoptimize(int) - Method in interface org.cicirello.search.ReoptimizableMetaheuristic
Executes a run of the metaheuristic beginning at the previously best found solution rather than from a random one.
reoptimize(int) - Method in class org.cicirello.search.restarts.ReoptimizableMultistarter
Executes a multistart search, calling the underlying metaheuristic the specified number of times, keeping track of the best solution across the multiple runs of the search.
reoptimize(int) - Method in class org.cicirello.search.sa.SimulatedAnnealing
Reaneals starting from the previous best found solution contained in the tracker object.
reset() - Method in class org.cicirello.search.restarts.ConstantRestartSchedule
 
reset() - Method in class org.cicirello.search.restarts.LubyRestarts
 
reset() - Method in class org.cicirello.search.restarts.ParallelVariableAnnealingLength
 
reset() - Method in interface org.cicirello.search.restarts.RestartSchedule
Resets the restart schedule to its initial conditions, such that the next call to RestartSchedule.nextRunLength() will return the initial run length of the schedule.
reset() - Method in class org.cicirello.search.restarts.VariableAnnealingLength
 
reset(int) - Method in class org.cicirello.search.sa.AcceptanceTracker
Resets the AcceptanceTracker.
RestartSchedule - Interface in org.cicirello.search.restarts
Multistart metaheuristics involve periodically restarting the metaheuristic from a new initial starting solution (often random).
ReversalMutation - Class in org.cicirello.search.operators.permutations
This class implements a reversal mutation on permutations, where one mutation consists in reversing the order of a randomly selected subpermutation.
ReversalMutation() - Constructor for class org.cicirello.search.operators.permutations.ReversalMutation
Constructs an ReversalMutation mutation operator.
rollback() - Method in interface org.cicirello.search.operators.MutationIterator
Reverts the candidate solution to its state as of the most recent call to the MutationIterator.setSavepoint() method, or its original state if that method has not been called.
RotationMutation - Class in org.cicirello.search.operators.permutations
This class implements a rotation mutation on permutations, where one mutation consists in a random circular rotation of the permutation.
RotationMutation() - Constructor for class org.cicirello.search.operators.permutations.RotationMutation
Constructs an RotationMutation mutation operator.

S

ScrambleMutation - Class in org.cicirello.search.operators.permutations
This class implements a scramble mutation on permutations, where one mutation consists in randomizing the order of a randomly selected subpermutation.
ScrambleMutation() - Constructor for class org.cicirello.search.operators.permutations.ScrambleMutation
Constructs a ScrambleMutation mutation operator.
set(double) - Method in class org.cicirello.search.representations.SingleReal
Sets to a specified value.
set(int) - Method in class org.cicirello.search.representations.SingleInteger
Sets this function input to a specified value.
set(int, double) - Method in class org.cicirello.search.operators.reals.CauchyMutation
Sets scale to a specified value.
set(int, double) - Method in class org.cicirello.search.operators.reals.GaussianMutation
Sets sigma to a specified value.
set(int, double) - Method in class org.cicirello.search.operators.reals.UniformMutation
Sets radius to a specified value.
set(int, double) - Method in class org.cicirello.search.representations.BoundedRealVector
Sets a parameter to a specified value, subject to the lower and upper bounds for this function input.
set(int, double) - Method in interface org.cicirello.search.representations.RealValued
Sets a function parameter to a specified value.
set(int, double) - Method in class org.cicirello.search.representations.RealVector
 
set(int, double) - Method in class org.cicirello.search.representations.SingleReal
Sets this function input to a specified value.
set(int, int) - Method in class org.cicirello.search.operators.integers.UniformMutation
Sets radius to a specified value.
set(int, int) - Method in class org.cicirello.search.representations.BoundedIntegerVector
Sets a parameter to a specified value, subject to the lower and upper bounds for this function input.
set(int, int) - Method in interface org.cicirello.search.representations.IntegerValued
Sets a function parameter to a specified value.
set(int, int) - Method in class org.cicirello.search.representations.IntegerVector
 
set(int, int) - Method in class org.cicirello.search.representations.SingleInteger
Sets this function input to a specified value.
set32(int, int) - Method in class org.cicirello.search.representations.BitVector
Sets a block of up to 32 bits.
setBit(int, int) - Method in class org.cicirello.search.representations.BitVector
Sets the value of the bit at a designated index.
setFoundBest() - Method in class org.cicirello.search.ProgressTracker
Record that the best solution contained in the ProgressTracker is the best possible solution to the problem.
setProgressTracker(ProgressTracker<T>) - Method in class org.cicirello.search.concurrent.ParallelMetaheuristic
 
setProgressTracker(ProgressTracker<T>) - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
 
setProgressTracker(ProgressTracker<T>) - Method in class org.cicirello.search.restarts.Multistarter
 
setProgressTracker(ProgressTracker<T>) - Method in class org.cicirello.search.sa.SimulatedAnnealing
 
setProgressTracker(ProgressTracker<T>) - Method in class org.cicirello.search.ss.HeuristicSolutionGenerator
 
setProgressTracker(ProgressTracker<T>) - Method in interface org.cicirello.search.TrackableSearch
Sets the ProgressTracker object that is in use for tracking search progress.
setSavepoint() - Method in interface org.cicirello.search.operators.MutationIterator
Records internally within the MutationIterator the current neighbor/mutant, enabling reverting back to this neighbor when the MutationIterator.rollback() method is called.
setTimeUnit(int) - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
Changes the unit of time used by the TimedParallelMultistarter.optimize(int) method.
shiftLeft(int) - Method in class org.cicirello.search.representations.BitVector
Performs a left shift of the bits of the BitVector, with 0s filling in on the right.
shiftRight(int) - Method in class org.cicirello.search.representations.BitVector
Performs a right shift of the bits of the BitVector, with 0s filling in on the left.
ShortestProcessingPlusSetupTime - Class in org.cicirello.search.problems.scheduling
This is an implementation of the shortest process time heuristic, adjusted to include setup time.
ShortestProcessingPlusSetupTime(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.ShortestProcessingPlusSetupTime
Constructs an ShortestProcessingPlusSetupTime heuristic.
ShortestProcessingPlusSetupTimePrecompute - Class in org.cicirello.search.problems.scheduling
This is an implementation of the shortest process time heuristic, adjusted to include setup time.
ShortestProcessingPlusSetupTimePrecompute(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.ShortestProcessingPlusSetupTimePrecompute
Constructs an ShortestProcessingPlusSetupTimePrecompute heuristic.
ShortestProcessingTime - Class in org.cicirello.search.problems.scheduling
This is an implementation of the shortest process time heuristic.
ShortestProcessingTime(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.ShortestProcessingTime
Constructs an ShortestProcessingTime heuristic.
SimpleLocalMetaheuristic<T extends Copyable<T>> - Interface in org.cicirello.search
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 self-determined, such as hill climbers that terminate upon reaching a local optima.
SimpleMetaheuristic<T extends Copyable<T>> - Interface in org.cicirello.search
This interface defines the required methods for implementations of simple metaheuristics whose run length is self-determined, such as hill climbers that terminate upon reaching a local optima.
SimulatedAnnealing<T extends Copyable<T>> - Class in org.cicirello.search.sa
This class is an implementation of the metaheuristic known as simulated annealing.
SimulatedAnnealing(IntegerCostOptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for integer-valued optimization problems, with a default annealing schedule of ModifiedLam, which is the Optimized Modified Lam of Cicirello (2020).
SimulatedAnnealing(IntegerCostOptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for integer-valued optimization problems, with a default annealing schedule of ModifiedLam, which is the Optimized Modified Lam of Cicirello (2020).
SimulatedAnnealing(IntegerCostOptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, ProgressTracker<T>, SimpleLocalMetaheuristic<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for integer-valued optimization problems, with a default annealing schedule of ModifiedLam, which is the Optimized Modified Lam of Cicirello (2020), and which runs a hill climber as a post-processing step.
SimulatedAnnealing(IntegerCostOptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, AnnealingSchedule) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for integer-valued optimization problems.
SimulatedAnnealing(IntegerCostOptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, AnnealingSchedule, ProgressTracker<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for integer-valued optimization problems.
SimulatedAnnealing(IntegerCostOptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, AnnealingSchedule, ProgressTracker<T>, SimpleLocalMetaheuristic<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for integer-valued optimization problems that runs a hill climber as a post-processing step.
SimulatedAnnealing(IntegerCostOptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, AnnealingSchedule, SimpleLocalMetaheuristic<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for integer-valued optimization problems that runs a hill climber as a post-processing step.
SimulatedAnnealing(IntegerCostOptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, SimpleLocalMetaheuristic<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for integer-valued optimization problems, with a default annealing schedule of ModifiedLam, which is the Optimized Modified Lam of Cicirello (2020), and which runs a hill climber as a post-processing step.
SimulatedAnnealing(OptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for real-valued optimization problems, with a default annealing schedule of ModifiedLam, which is the Optimized Modified Lam of Cicirello (2020).
SimulatedAnnealing(OptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for real-valued optimization problems, with a default annealing schedule of ModifiedLam, which is the Optimized Modified Lam of Cicirello (2020).
SimulatedAnnealing(OptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, ProgressTracker<T>, SimpleLocalMetaheuristic<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for real-valued optimization problems, with a default annealing schedule of ModifiedLam, which is the Optimized Modified Lam of Cicirello (2020), and which runs a hill climber as a post-processing step.
SimulatedAnnealing(OptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, AnnealingSchedule) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for real-valued optimization problems.
SimulatedAnnealing(OptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, AnnealingSchedule, ProgressTracker<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for real-valued optimization problems.
SimulatedAnnealing(OptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, AnnealingSchedule, ProgressTracker<T>, SimpleLocalMetaheuristic<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for real-valued optimization problems that runs a hill climber as a post-processing step.
SimulatedAnnealing(OptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, AnnealingSchedule, SimpleLocalMetaheuristic<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for real-valued optimization problems that runs a hill climber as a post-processing step.
SimulatedAnnealing(OptimizationProblem<T>, UndoableMutationOperator<T>, Initializer<T>, SimpleLocalMetaheuristic<T>) - Constructor for class org.cicirello.search.sa.SimulatedAnnealing
Creates a SimulatedAnnealing search instance for real-valued optimization problems, with a default annealing schedule of ModifiedLam, which is the Optimized Modified Lam of Cicirello (2020), and which runs a hill climber as a post-processing step.
SingleInteger - Class in org.cicirello.search.representations
A simple class for representing the input to a univariate function, such that the input is an integer.
SingleInteger() - Constructor for class org.cicirello.search.representations.SingleInteger
Initializes this function input to 0.
SingleInteger(int) - Constructor for class org.cicirello.search.representations.SingleInteger
Initializes this function input to a specified value.
SingleInteger(SingleInteger) - Constructor for class org.cicirello.search.representations.SingleInteger
Initializes this function input as a copy of another.
SingleMachineSchedulingProblem - Interface in org.cicirello.search.problems.scheduling
Implement this interface to define a single machine scheduling problem.
SingleMachineSchedulingProblemData - Interface in org.cicirello.search.problems.scheduling
Classes that implement single machine scheduling problems should implement this interface to enable heuristic, etc to interact with the data that defines the jobs of the scheduling instance, such as the process times, setup times (if any), due-dates, etc of the jobs.
SingleReal - Class in org.cicirello.search.representations
A simple class for representing the input to a univariate function.
SingleReal() - Constructor for class org.cicirello.search.representations.SingleReal
Initializes to 0.0.
SingleReal(double) - Constructor for class org.cicirello.search.representations.SingleReal
Initializes to a specified value.
SingleReal(SingleReal) - Constructor for class org.cicirello.search.representations.SingleReal
Initializes as a copy of another.
SingleSolutionMetaheuristic<T extends Copyable<T>> - Interface in org.cicirello.search
This interface defines the required methods for implementations of single-solution metaheuristics, i.e., metaheuristics such as simulated annealing that operate one a single candidate solution (as compared to population-based metaheuristics such as genetic algorithms.
size() - Method in interface org.cicirello.search.ss.Partial
Gets the size of the Partial, which is the number of elements that have already been added to it.
size() - Method in class org.cicirello.search.ss.PartialIntegerVector
 
size() - Method in class org.cicirello.search.ss.PartialPermutation
 
skip(int) - Method in class org.cicirello.search.representations.BitVector.BitIterator
Skips this BitIterator past a segment of bits.
SmallestNormalizedSetup - Class in org.cicirello.search.problems.scheduling
This heuristic is smallest normalized setup.
SmallestNormalizedSetup(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.SmallestNormalizedSetup
Constructs an SmallestNormalizedSetup heuristic.
SmallestSetup - Class in org.cicirello.search.problems.scheduling
This heuristic is the smallest setup first.
SmallestSetup(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.SmallestSetup
Constructs an SmallestSetup heuristic.
SmallestSetupPrecompute - Class in org.cicirello.search.problems.scheduling
This heuristic is the smallest setup first.
SmallestSetupPrecompute(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.SmallestSetupPrecompute
Constructs an SmallestSetupPrecompute heuristic.
SmallestTwoJobSetup - Class in org.cicirello.search.problems.scheduling
This heuristic is smallest two-job setup.
SmallestTwoJobSetup(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.SmallestTwoJobSetup
Constructs an SmallestTwoJobSetup heuristic.
SolutionCostPair<T extends Copyable<T>> - Class in org.cicirello.search
An object of this class encapsulates a solution with its corresponding cost value.
SolutionCostPair(T, double) - Constructor for class org.cicirello.search.SolutionCostPair
Constructs a SolutionCostPair with integer cost.
SolutionCostPair(T, int) - Constructor for class org.cicirello.search.SolutionCostPair
Constructs a SolutionCostPair with integer cost.
split() - Method in class org.cicirello.search.concurrent.ParallelMetaheuristic
 
split() - Method in class org.cicirello.search.concurrent.ParallelMultistarter
 
split() - Method in class org.cicirello.search.concurrent.ParallelReoptimizableMetaheuristic
 
split() - Method in class org.cicirello.search.concurrent.ParallelReoptimizableMultistarter
 
split() - Method in interface org.cicirello.search.concurrent.Splittable
Generates a functionally identical copy of this object, for use in multithreaded implementations of search algorithms.
split() - Method in class org.cicirello.search.concurrent.TimedParallelMultistarter
 
split() - Method in class org.cicirello.search.concurrent.TimedParallelReoptimizableMultistarter
 
split() - Method in class org.cicirello.search.hc.FirstDescentHillClimber
 
split() - Method in class org.cicirello.search.hc.SteepestDescentHillClimber
 
split() - Method in interface org.cicirello.search.Metaheuristic
 
split() - Method in class org.cicirello.search.operators.bits.BitFlipMutation
 
split() - Method in class org.cicirello.search.operators.bits.BitVectorInitializer
 
split() - Method in class org.cicirello.search.operators.bits.DefiniteBitFlipMutation
 
split() - Method in class org.cicirello.search.operators.HybridMutation
 
split() - Method in class org.cicirello.search.operators.HybridUndoableMutation
 
split() - Method in class org.cicirello.search.operators.InitializeBySimpleMetaheuristic
 
split() - Method in class org.cicirello.search.operators.integers.IntegerValueInitializer
 
split() - Method in class org.cicirello.search.operators.integers.IntegerVectorInitializer
 
split() - Method in class org.cicirello.search.operators.integers.RandomValueChangeMutation
 
split() - Method in class org.cicirello.search.operators.integers.UndoableRandomValueChangeMutation
 
split() - Method in class org.cicirello.search.operators.integers.UndoableUniformMutation
 
split() - Method in class org.cicirello.search.operators.integers.UniformMutation
 
split() - Method in interface org.cicirello.search.operators.IterableMutationOperator
 
split() - Method in class org.cicirello.search.operators.permutations.AdjacentSwapMutation
 
split() - Method in class org.cicirello.search.operators.permutations.BlockInterchangeMutation
 
split() - Method in class org.cicirello.search.operators.permutations.BlockMoveMutation
 
split() - Method in class org.cicirello.search.operators.permutations.CycleMutation
 
split() - Method in class org.cicirello.search.operators.permutations.InsertionMutation
 
split() - Method in class org.cicirello.search.operators.permutations.PermutationInitializer
 
split() - Method in class org.cicirello.search.operators.permutations.ReversalMutation
 
split() - Method in class org.cicirello.search.operators.permutations.RotationMutation
 
split() - Method in class org.cicirello.search.operators.permutations.ScrambleMutation
 
split() - Method in class org.cicirello.search.operators.permutations.SwapMutation
 
split() - Method in class org.cicirello.search.operators.permutations.ThreeOptMutation
 
split() - Method in class org.cicirello.search.operators.permutations.TwoChangeMutation
 
split() - Method in class org.cicirello.search.operators.permutations.UndoableScrambleMutation
 
split() - Method in class org.cicirello.search.operators.permutations.UndoableUniformScrambleMutation
 
split() - Method in class org.cicirello.search.operators.permutations.UniformScrambleMutation
 
split() - Method in class org.cicirello.search.operators.permutations.WindowLimitedBlockMoveMutation
 
split() - Method in class org.cicirello.search.operators.permutations.WindowLimitedInsertionMutation
 
split() - Method in class org.cicirello.search.operators.permutations.WindowLimitedReversalMutation
 
split() - Method in class org.cicirello.search.operators.permutations.WindowLimitedScrambleMutation
 
split() - Method in class org.cicirello.search.operators.permutations.WindowLimitedSwapMutation
 
split() - Method in class org.cicirello.search.operators.permutations.WindowLimitedUndoableScrambleMutation
 
split() - Method in class org.cicirello.search.operators.reals.CauchyMutation
 
split() - Method in class org.cicirello.search.operators.reals.GaussianMutation
 
split() - Method in class org.cicirello.search.operators.reals.RealValueInitializer
 
split() - Method in class org.cicirello.search.operators.reals.RealVectorInitializer
 
split() - Method in class org.cicirello.search.operators.reals.UndoableCauchyMutation
 
split() - Method in class org.cicirello.search.operators.reals.UndoableGaussianMutation
 
split() - Method in class org.cicirello.search.operators.reals.UndoableUniformMutation
 
split() - Method in class org.cicirello.search.operators.reals.UniformMutation
 
split() - Method in interface org.cicirello.search.operators.UndoableMutationOperator
 
split() - Method in class org.cicirello.search.operators.WeightedHybridMutation
 
split() - Method in class org.cicirello.search.operators.WeightedHybridUndoableMutation
 
split() - Method in interface org.cicirello.search.ReoptimizableMetaheuristic
 
split() - Method in class org.cicirello.search.restarts.ConstantRestartSchedule
 
split() - Method in class org.cicirello.search.restarts.LubyRestarts
 
split() - Method in class org.cicirello.search.restarts.Multistarter
 
split() - Method in class org.cicirello.search.restarts.ParallelVariableAnnealingLength
 
split() - Method in class org.cicirello.search.restarts.ReoptimizableMultistarter
 
split() - Method in class org.cicirello.search.restarts.VariableAnnealingLength
 
split() - Method in class org.cicirello.search.sa.AcceptanceTracker
 
split() - Method in class org.cicirello.search.sa.ExponentialCooling
 
split() - Method in class org.cicirello.search.sa.LinearCooling
 
split() - Method in class org.cicirello.search.sa.LogarithmicCooling
 
split() - Method in class org.cicirello.search.sa.ModifiedLam
 
split() - Method in class org.cicirello.search.sa.ModifiedLamOriginal
 
split() - Method in class org.cicirello.search.sa.ParameterFreeExponentialCooling
 
split() - Method in class org.cicirello.search.sa.ParameterFreeLinearCooling
 
split() - Method in class org.cicirello.search.sa.SimulatedAnnealing
 
split() - Method in interface org.cicirello.search.SimpleLocalMetaheuristic
 
split() - Method in interface org.cicirello.search.SimpleMetaheuristic
 
split() - Method in class org.cicirello.search.ss.AcceptanceBandSampling
 
split() - Method in class org.cicirello.search.ss.HeuristicBiasedStochasticSampling
 
split() - Method in class org.cicirello.search.ss.HeuristicPermutationGenerator
 
split() - Method in class org.cicirello.search.ss.HeuristicSolutionGenerator
 
split() - Method in class org.cicirello.search.ss.IterativeSampling
 
split() - Method in class org.cicirello.search.ss.ValueBiasedStochasticSampling
 
Splittable<T extends Splittable<T>> - Interface in org.cicirello.search.concurrent
The Splittable interface provides multithreaded search algorithms with the ability to generate functionally identical copies of operators, and even entire metaheuristics, at the point of spawning new search threads.
start() - Method in class org.cicirello.search.ProgressTracker
Resets the stop flag to false, essentially undoing a previous call to ProgressTracker.stop.
SteepestDescentHillClimber<T extends Copyable<T>> - Class in org.cicirello.search.hc
This class implements steepest descent hill climbing.
SteepestDescentHillClimber(IntegerCostOptimizationProblem<T>, IterableMutationOperator<T>, Initializer<T>) - Constructor for class org.cicirello.search.hc.SteepestDescentHillClimber
Constructs a steepest descent hill climber object for integer-valued optimization problem.
SteepestDescentHillClimber(IntegerCostOptimizationProblem<T>, IterableMutationOperator<T>, Initializer<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.hc.SteepestDescentHillClimber
Constructs a steepest descent hill climber object for integer-valued optimization problem.
SteepestDescentHillClimber(OptimizationProblem<T>, IterableMutationOperator<T>, Initializer<T>) - Constructor for class org.cicirello.search.hc.SteepestDescentHillClimber
Constructs a steepest descent hill climber object for real-valued optimization problem.
SteepestDescentHillClimber(OptimizationProblem<T>, IterableMutationOperator<T>, Initializer<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.hc.SteepestDescentHillClimber
Constructs a steepest descent hill climber object for real-valued optimization problem.
stop() - Method in class org.cicirello.search.ProgressTracker
Set a flag that indicates that all searches sharing this ProgressTracker should stop their search when able to (e.g., such as at the end of the next iteration.
SwapMutation - Class in org.cicirello.search.operators.permutations
This class implements a swap mutation on permutations, where one mutation selects two elements uniformly at random and swaps their locations.
SwapMutation() - Constructor for class org.cicirello.search.operators.permutations.SwapMutation
Constructs an SwapMutation mutation operator.

T

ThreeOptMutation - Class in org.cicirello.search.operators.permutations
This class implements the classic 3-Opt neighborhood as a mutation operator for permutations.
ThreeOptMutation() - Constructor for class org.cicirello.search.operators.permutations.ThreeOptMutation
Constructs a ThreeOptMutation operator.
TIME_UNIT_MS - Static variable in class org.cicirello.search.concurrent.TimedParallelMultistarter
The default unit of time in milliseconds.
TimedParallelMultistarter<T extends Copyable<T>> - Class in org.cicirello.search.concurrent
This class is used for implementing parallel multistart metaheuristics.
TimedParallelMultistarter(Collection<? extends Metaheuristic<T>>, int) - Constructor for class org.cicirello.search.concurrent.TimedParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
TimedParallelMultistarter(Collection<? extends Metaheuristic<T>>, Collection<? extends RestartSchedule>) - Constructor for class org.cicirello.search.concurrent.TimedParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
TimedParallelMultistarter(Collection<? extends Multistarter<T>>) - Constructor for class org.cicirello.search.concurrent.TimedParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
TimedParallelMultistarter(Metaheuristic<T>, int, int) - Constructor for class org.cicirello.search.concurrent.TimedParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
TimedParallelMultistarter(Metaheuristic<T>, Collection<? extends RestartSchedule>) - Constructor for class org.cicirello.search.concurrent.TimedParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
TimedParallelMultistarter(Metaheuristic<T>, RestartSchedule, int) - Constructor for class org.cicirello.search.concurrent.TimedParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
TimedParallelMultistarter(Multistarter<T>, int) - Constructor for class org.cicirello.search.concurrent.TimedParallelMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
TimedParallelReoptimizableMultistarter<T extends Copyable<T>> - Class in org.cicirello.search.concurrent
This class is used for implementing parallel multistart metaheuristics.
TimedParallelReoptimizableMultistarter(Collection<? extends ReoptimizableMetaheuristic<T>>, int) - Constructor for class org.cicirello.search.concurrent.TimedParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
TimedParallelReoptimizableMultistarter(Collection<? extends ReoptimizableMetaheuristic<T>>, Collection<? extends RestartSchedule>) - Constructor for class org.cicirello.search.concurrent.TimedParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
TimedParallelReoptimizableMultistarter(Collection<ReoptimizableMultistarter<T>>) - Constructor for class org.cicirello.search.concurrent.TimedParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a set of specified metaheuristics in parallel across multiple threads.
TimedParallelReoptimizableMultistarter(ReoptimizableMetaheuristic<T>, int, int) - Constructor for class org.cicirello.search.concurrent.TimedParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
TimedParallelReoptimizableMultistarter(ReoptimizableMetaheuristic<T>, Collection<? extends RestartSchedule>) - Constructor for class org.cicirello.search.concurrent.TimedParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
TimedParallelReoptimizableMultistarter(ReoptimizableMetaheuristic<T>, RestartSchedule, int) - Constructor for class org.cicirello.search.concurrent.TimedParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
TimedParallelReoptimizableMultistarter(ReoptimizableMultistarter<T>, int) - Constructor for class org.cicirello.search.concurrent.TimedParallelReoptimizableMultistarter
Constructs a parallel multistart metaheuristic that executes multiple runs of a specified metaheuristic in parallel across multiple threads.
toArray(double[]) - Method in class org.cicirello.search.operators.reals.CauchyMutation
Accesses the current value of scale as an array.
toArray(double[]) - Method in class org.cicirello.search.operators.reals.GaussianMutation
Accesses the current value of sigma as an array.
toArray(double[]) - Method in class org.cicirello.search.operators.reals.UniformMutation
Accesses the current value of radius as an array.
toArray(double[]) - Method in interface org.cicirello.search.representations.RealValued
Accesses the current values of all of the parameters.
toArray(double[]) - Method in class org.cicirello.search.representations.RealVector
 
toArray(double[]) - Method in class org.cicirello.search.representations.SingleReal
 
toArray(int[]) - Method in class org.cicirello.search.operators.integers.UniformMutation
Accesses the current value of radius as an array.
toArray(int[]) - Method in interface org.cicirello.search.representations.IntegerValued
Accesses the current values of all of the parameters.
toArray(int[]) - Method in class org.cicirello.search.representations.IntegerVector
 
toArray(int[]) - Method in class org.cicirello.search.representations.SingleInteger
 
toComplete() - Method in interface org.cicirello.search.ss.Partial
Generates a complete instance that is consistent with this Partial.
toComplete() - Method in class org.cicirello.search.ss.PartialIntegerVector
 
toComplete() - Method in class org.cicirello.search.ss.PartialPermutation
 
toFile(String) - Method in class org.cicirello.search.problems.scheduling.CommonDuedateScheduling
Outputs a description of the instance in the format described by the OR-Library of J.E.
toFile(String) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
Outputs a description of the instance data in the format described by the OR-Library of J.E.
toFile(String) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
Outputs a description of the instance data in the format based on that described in:
toFile(String, int) - Method in class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
Outputs a description of the instance data in the format based on that described in:
toString() - Method in class org.cicirello.search.representations.BitVector
 
TrackableSearch<T extends Copyable<T>> - Interface in org.cicirello.search
This interface defines the required functionality of search algorithm implementations that support tracking search progress across multiple runs, whether multiple sequential runs, or multiple concurrent runs in the case of a parallel metaheuristic.
Trap - Class in org.cicirello.search.problems
This class implements Ackley's Trap function, which defines a fitness landscape with a single global optima, and a single sub-optimal local optima, such that most of the search landscape is within the attraction basin of the local optima.
Trap() - Constructor for class org.cicirello.search.problems.Trap
Constructs an instance of Ackley's Trap function.
TwoChangeMutation - Class in org.cicirello.search.operators.permutations
This class implements the classic two-change operator as a mutation operator for permutations.
TwoChangeMutation() - Constructor for class org.cicirello.search.operators.permutations.TwoChangeMutation
Constructs an TwoChangeMutation mutation operator.
TwoMax - Class in org.cicirello.search.problems
This class implements the benchmarking problem known as TwoMax.
TwoMax() - Constructor for class org.cicirello.search.problems.TwoMax
Constructs a TwoMax object for use in evaluating candidate solutions to the TwoMax problem.
TwoMaxEqualPeaks - Class in org.cicirello.search.problems
This class implements a variation of the benchmarking problem known as TwoMax.
TwoMaxEqualPeaks() - Constructor for class org.cicirello.search.problems.TwoMaxEqualPeaks
Constructs a TwoMaxEqualPeaks object for use in evaluating candidate solutions to the TwoMaxEqualPeaks problem, a variation of the TwoMax problem but with two globally optimal solutions, rather than one global optima and a local optima.

U

undo(Permutation) - Method in class org.cicirello.search.operators.permutations.AdjacentSwapMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.BlockInterchangeMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.BlockMoveMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.CycleMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.InsertionMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.ReversalMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.RotationMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.SwapMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.ThreeOptMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.TwoChangeMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.UndoableScrambleMutation
 
undo(Permutation) - Method in class org.cicirello.search.operators.permutations.UndoableUniformScrambleMutation
 
undo(BitVector) - Method in class org.cicirello.search.operators.bits.BitFlipMutation
 
undo(BitVector) - Method in class org.cicirello.search.operators.bits.DefiniteBitFlipMutation
 
undo(T) - Method in class org.cicirello.search.operators.HybridUndoableMutation
 
undo(T) - Method in class org.cicirello.search.operators.integers.UndoableRandomValueChangeMutation
 
undo(T) - Method in class org.cicirello.search.operators.integers.UndoableUniformMutation
 
undo(T) - Method in class org.cicirello.search.operators.reals.UndoableCauchyMutation
 
undo(T) - Method in class org.cicirello.search.operators.reals.UndoableGaussianMutation
 
undo(T) - Method in class org.cicirello.search.operators.reals.UndoableUniformMutation
 
undo(T) - Method in interface org.cicirello.search.operators.UndoableMutationOperator
Returns a candidate solution to its previous state prior to the most recent mutation performed.
undo(T) - Method in class org.cicirello.search.operators.WeightedHybridUndoableMutation
 
UndoableCauchyMutation<T extends RealValued> - Class in org.cicirello.search.operators.reals
This class implements Cauchy mutation with support for the UndoableCauchyMutation.undo(T) method.
UndoableGaussianMutation<T extends RealValued> - Class in org.cicirello.search.operators.reals
This class implements Gaussian mutation with support for the UndoableGaussianMutation.undo(T) method.
UndoableMutationOperator<T> - Interface in org.cicirello.search.operators
Implement the UndoableMutationOperator interface to implement a mutation operator for use in simulated annealing, and other metaheuristics, that require a way to generate random neighbors of a candidate solution, and which supports an undo method.
UndoableRandomValueChangeMutation<T extends IntegerValued> - Class in org.cicirello.search.operators.integers
This mutation operator (supporting the undo operation) is for integer valued representations, and replaces an integer value with a different random integer value from the domain.
UndoableRandomValueChangeMutation(int, int) - Constructor for class org.cicirello.search.operators.integers.UndoableRandomValueChangeMutation
Constructs a UndoableRandomValueChangeMutation operator that always mutates exactly one integer from the IntegerValued.
UndoableRandomValueChangeMutation(int, int, double) - Constructor for class org.cicirello.search.operators.integers.UndoableRandomValueChangeMutation
Constructs a UndoableRandomValueChangeMutation operator.
UndoableRandomValueChangeMutation(int, int, double, int) - Constructor for class org.cicirello.search.operators.integers.UndoableRandomValueChangeMutation
Constructs a UndoableRandomValueChangeMutation operator.
UndoableScrambleMutation - Class in org.cicirello.search.operators.permutations
This class implements a scramble mutation on permutations, where one mutation consists in randomizing the order of a randomly selected subpermutation.
UndoableScrambleMutation() - Constructor for class org.cicirello.search.operators.permutations.UndoableScrambleMutation
Constructs an UndoableScrambleMutation mutation operator.
UndoableUniformMutation<T extends IntegerValued> - Class in org.cicirello.search.operators.integers
This class implements a uniform mutation on integer valued parameters, with support for the UndoableUniformMutation.undo(T) method.
UndoableUniformMutation<T extends RealValued> - Class in org.cicirello.search.operators.reals
This class implements a uniform mutation with support for the UndoableUniformMutation.undo(T) method.
UndoableUniformScrambleMutation - Class in org.cicirello.search.operators.permutations
This class implements a scramble mutation on permutations, where one mutation consists in randomizing the order of a non-contiguous subset of the permutation elements.
UndoableUniformScrambleMutation(double) - Constructor for class org.cicirello.search.operators.permutations.UndoableUniformScrambleMutation
Constructs a UndoableUniformScrambleMutation mutation operator.
UndoableUniformScrambleMutation(double, boolean) - Constructor for class org.cicirello.search.operators.permutations.UndoableUniformScrambleMutation
Constructs a UndoableUniformScrambleMutation mutation operator.
UniformMutation<T extends IntegerValued> - Class in org.cicirello.search.operators.integers
This class implements a uniform mutation for mutating integer values.
UniformMutation<T extends RealValued> - Class in org.cicirello.search.operators.reals
This class implements a uniform mutation.
UniformScrambleMutation - Class in org.cicirello.search.operators.permutations
This class implements a scramble mutation on permutations, where one mutation consists in randomizing the order of a non-contiguous subset of the permutation elements.
UniformScrambleMutation(double) - Constructor for class org.cicirello.search.operators.permutations.UniformScrambleMutation
Constructs a UniformScrambleMutation mutation operator.
UniformScrambleMutation(double, boolean) - Constructor for class org.cicirello.search.operators.permutations.UniformScrambleMutation
Constructs a UniformScrambleMutation mutation operator.
update(double, T) - Method in class org.cicirello.search.ProgressTracker
Updates the best solution contained in this progress tracker.
update(int, T) - Method in class org.cicirello.search.ProgressTracker
Updates the best solution contained in this progress tracker.

V

value(Permutation) - Method in class org.cicirello.search.problems.PermutationInAHaystack
 
value(Permutation) - Method in class org.cicirello.search.problems.scheduling.MinimizeMakespan
 
value(Permutation) - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumFlowtime
 
value(Permutation) - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumLateness
 
value(Permutation) - Method in class org.cicirello.search.problems.scheduling.MinimizeMaximumTardiness
 
value(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedEarlinessTardiness
 
value(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedFlowtime
 
value(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedLateness
 
value(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedNumberTardyJobs
 
value(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedSquaredTardiness
 
value(Permutation) - Method in class org.cicirello.search.problems.scheduling.WeightedTardiness
 
value(BitVector) - Method in class org.cicirello.search.problems.Mix
 
value(BitVector) - Method in class org.cicirello.search.problems.OneMax
 
value(BitVector) - Method in class org.cicirello.search.problems.OneMaxAckley
 
value(BitVector) - Method in class org.cicirello.search.problems.Plateaus
 
value(BitVector) - Method in class org.cicirello.search.problems.Porcupine
 
value(BitVector) - Method in class org.cicirello.search.problems.Trap
 
value(BitVector) - Method in class org.cicirello.search.problems.TwoMax
 
value(BitVector) - Method in class org.cicirello.search.problems.TwoMaxEqualPeaks
 
value(IntegerVector) - Method in class org.cicirello.search.problems.BoundMax
 
value(SingleReal) - Method in class org.cicirello.search.problems.PolynomialRootFinding
 
value(T) - Method in class org.cicirello.search.problems.CostFunctionScaler
 
value(T) - Method in class org.cicirello.search.problems.IntegerCostFunctionScaler
 
value(T) - Method in interface org.cicirello.search.problems.IntegerCostOptimizationProblem
Computes the value of the candidate solution within the usual constraints and interpretation of the problem.
value(T) - Method in interface org.cicirello.search.problems.OptimizationProblem
Computes the value of the candidate solution within the usual constraints and interpretation of the problem.
ValueBiasedStochasticSampling<T extends Copyable<T>> - Class in org.cicirello.search.ss
Value Biased Stochastic Sampling (VBSS) is a form of stochastic sampling search that uses a constructive heuristic to bias the random decisions.
ValueBiasedStochasticSampling(ConstructiveHeuristic<T>) - Constructor for class org.cicirello.search.ss.ValueBiasedStochasticSampling
Constructs a ValueBiasedStochasticSampling search object.
ValueBiasedStochasticSampling(ConstructiveHeuristic<T>, double) - Constructor for class org.cicirello.search.ss.ValueBiasedStochasticSampling
Constructs a ValueBiasedStochasticSampling search object.
ValueBiasedStochasticSampling(ConstructiveHeuristic<T>, double, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.ValueBiasedStochasticSampling
Constructs a ValueBiasedStochasticSampling search object.
ValueBiasedStochasticSampling(ConstructiveHeuristic<T>, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.ValueBiasedStochasticSampling
Constructs a ValueBiasedStochasticSampling search object.
ValueBiasedStochasticSampling(ConstructiveHeuristic<T>, ValueBiasedStochasticSampling.BiasFunction) - Constructor for class org.cicirello.search.ss.ValueBiasedStochasticSampling
Constructs a ValueBiasedStochasticSampling search object.
ValueBiasedStochasticSampling(ConstructiveHeuristic<T>, ValueBiasedStochasticSampling.BiasFunction, ProgressTracker<T>) - Constructor for class org.cicirello.search.ss.ValueBiasedStochasticSampling
Constructs a ValueBiasedStochasticSampling search object.
ValueBiasedStochasticSampling.BiasFunction - Interface in org.cicirello.search.ss
Implement this interface to implement the bias function used by VBSS.
VariableAnnealingLength - Class in org.cicirello.search.restarts
The Variable Annealing Length (VAL) restart schedule originated, as you would expect from the word "annealing" in its name, as a restart schedule for Simulated Annealing.
VariableAnnealingLength() - Constructor for class org.cicirello.search.restarts.VariableAnnealingLength
The default constructor constructs the original Variable Annealing Length (VAL) restart schedule of: Vincent A.
VariableAnnealingLength(int) - Constructor for class org.cicirello.search.restarts.VariableAnnealingLength
This constructor enables specifying the initial run length for the first run.

W

WeightedCostOverTime - Class in org.cicirello.search.problems.scheduling
This is an implementation of the weighted COVERT heuristic.
WeightedCostOverTime(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.WeightedCostOverTime
Constructs an WeightedCostOverTime heuristic.
WeightedCostOverTime(SingleMachineSchedulingProblem, double) - Constructor for class org.cicirello.search.problems.scheduling.WeightedCostOverTime
Constructs an WeightedCostOverTime heuristic.
WeightedCostOverTimeSetupAdjusted - Class in org.cicirello.search.problems.scheduling
This is an implementation of a variation of the weighted COVERT heuristic, adjusted to account for setup times for problems with sequence-dependent setups.
WeightedCostOverTimeSetupAdjusted(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.WeightedCostOverTimeSetupAdjusted
Constructs an WeightedCostOverTimeSetupAdjusted heuristic.
WeightedCostOverTimeSetupAdjusted(SingleMachineSchedulingProblem, double) - Constructor for class org.cicirello.search.problems.scheduling.WeightedCostOverTimeSetupAdjusted
Constructs an WeightedCostOverTimeSetupAdjusted heuristic.
WeightedCriticalRatio - Class in org.cicirello.search.problems.scheduling
This is an implementation of a variation of the weighted critical ratio heuristic.
WeightedCriticalRatio(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.WeightedCriticalRatio
Constructs an WeightedCriticalRatio heuristic.
WeightedCriticalRatioSetupAdjusted - Class in org.cicirello.search.problems.scheduling
This is an implementation of a variation of the weighted critical ratio heuristic, adjusted to account for setup times for problems with sequence-dependent setups.
WeightedCriticalRatioSetupAdjusted(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.WeightedCriticalRatioSetupAdjusted
Constructs an WeightedCriticalRatioSetupAdjusted heuristic.
WeightedEarlinessTardiness - Class in org.cicirello.search.problems.scheduling
Implements the scheduling cost function known as weighted earliness plus weighted tardiness.
WeightedEarlinessTardiness(SingleMachineSchedulingProblemData) - Constructor for class org.cicirello.search.problems.scheduling.WeightedEarlinessTardiness
Constructs a single machine scheduling problem for minimizing weighted earliness plus weighted tardiness.
WeightedFlowtime - Class in org.cicirello.search.problems.scheduling
Implements the scheduling cost function known as weighted flowtime.
WeightedFlowtime(SingleMachineSchedulingProblemData) - Constructor for class org.cicirello.search.problems.scheduling.WeightedFlowtime
Constructs a single machine scheduling problem for minimizing weighted flowtime.
WeightedHybridMutation<T> - Class in org.cicirello.search.operators
A WeightedHybridMutation enables using multiple mutation operators for the search, such that each time the WeightedHybridMutation.mutate(T) method is called, a randomly chosen mutation operator is applied to the candidate solution.
WeightedHybridMutation(Collection<? extends MutationOperator<T>>, int[]) - Constructor for class org.cicirello.search.operators.WeightedHybridMutation
Constructs a WeightedHybridMutation from a Collection of MutationOperators.
WeightedHybridUndoableMutation<T> - Class in org.cicirello.search.operators
A WeightedHybridMutation enables using multiple mutation operators for the search, such that each time the WeightedHybridUndoableMutation.mutate(T) method is called, a randomly chosen mutation operator is applied to the candidate solution.
WeightedHybridUndoableMutation(Collection<? extends UndoableMutationOperator<T>>, int[]) - Constructor for class org.cicirello.search.operators.WeightedHybridUndoableMutation
Constructs a WeightedHybridUndoableMutation from a Collection of UndoableMutationOperator.
WeightedLateness - Class in org.cicirello.search.problems.scheduling
Implements the scheduling cost function known as weighted lateness.
WeightedLateness(SingleMachineSchedulingProblemData) - Constructor for class org.cicirello.search.problems.scheduling.WeightedLateness
Constructs a single machine scheduling problem for minimizing weighted lateness.
WeightedLongestProcessingTime - Class in org.cicirello.search.problems.scheduling
This is an implementation of the weighted longest process time heuristic.
WeightedLongestProcessingTime(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.WeightedLongestProcessingTime
Constructs a WeightedLongestProcessingTime heuristic.
WeightedNumberTardyJobs - Class in org.cicirello.search.problems.scheduling
Implements the scheduling cost function known as weighted number of tardy jobs, which we want to minimize.
WeightedNumberTardyJobs(SingleMachineSchedulingProblemData) - Constructor for class org.cicirello.search.problems.scheduling.WeightedNumberTardyJobs
Constructs a single machine scheduling problem for minimizing weighted number of tardy jobs.
WeightedShortestProcessingPlusSetupTime - Class in org.cicirello.search.problems.scheduling
This class implements a variation the weighted shortest process time heuristic, but adjusted to incorporate setups times for problems with sequence-dependent setups.
WeightedShortestProcessingPlusSetupTime(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.WeightedShortestProcessingPlusSetupTime
Constructs an WeightedShortestProcessingPlusSetupTime heuristic.
WeightedShortestProcessingPlusSetupTimeLateOnly - Class in org.cicirello.search.problems.scheduling
This class implements a variation the weighted shortest process time heuristic with non-zero heuristic values only for late jobs, but adjusted to incorporate setups times for problems with sequence-dependent setups.
WeightedShortestProcessingPlusSetupTimeLateOnly(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.WeightedShortestProcessingPlusSetupTimeLateOnly
Constructs an WeightedShortestProcessingPlusSetupTimeLateOnly heuristic.
WeightedShortestProcessingPlusSetupTimePrecompute - Class in org.cicirello.search.problems.scheduling
This class implements a variation the weighted shortest process time heuristic, but adjusted to incorporate setups times for problems with sequence-dependent setups.
WeightedShortestProcessingPlusSetupTimePrecompute(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.WeightedShortestProcessingPlusSetupTimePrecompute
Constructs an WeightedShortestProcessingPlusSetupTimePrecompute heuristic.
WeightedShortestProcessingTime - Class in org.cicirello.search.problems.scheduling
This is an implementation of the weighted shortest process time heuristic.
WeightedShortestProcessingTime(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.WeightedShortestProcessingTime
Constructs an WeightedShortestProcessingTime heuristic.
WeightedShortestProcessingTimeLateOnly - Class in org.cicirello.search.problems.scheduling
This is an implementation of the weighted shortest process time heuristic.
WeightedShortestProcessingTimeLateOnly(SingleMachineSchedulingProblem) - Constructor for class org.cicirello.search.problems.scheduling.WeightedShortestProcessingTimeLateOnly
Constructs an WeightedShortestProcessingTimeLateOnly heuristic.
WeightedSquaredTardiness - Class in org.cicirello.search.problems.scheduling
Implements the scheduling cost function known as weighted squared tardiness.
WeightedSquaredTardiness(SingleMachineSchedulingProblemData) - Constructor for class org.cicirello.search.problems.scheduling.WeightedSquaredTardiness
Constructs a single machine scheduling problem for minimizing weighted squared tardiness.
WeightedStaticScheduling - Class in org.cicirello.search.problems.scheduling
This class provides a representation of, and means of generating, instances of single machine scheduling problems involving weights and due dates, but without release dates (i.e., all jobs are released at the start of the problem at time 0, thus, the term "static" in the class name).
WeightedStaticScheduling(int, double, double) - Constructor for class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
Generates random single machine scheduling problem instances.
WeightedStaticScheduling(int, double, double, long) - Constructor for class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
Generates random single machine scheduling problem instances.
WeightedStaticScheduling(String, int, int) - Constructor for class org.cicirello.search.problems.scheduling.WeightedStaticScheduling
Constructs a single machine scheduling problem instance by parsing an instance data file that follows the format specified in the OR-Library of J.E.
WeightedStaticSchedulingWithSetups - Class in org.cicirello.search.problems.scheduling
This class provides a representation of, and means of generating, instances of single machine scheduling problems involving weights, due dates, and sequence-dependent setup times, but without release dates (i.e., all jobs are released at the start of the problem at time 0, thus, the term "static" in the class name).
WeightedStaticSchedulingWithSetups(int, double, double, double) - Constructor for class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
Generates random single machine scheduling problem instances.
WeightedStaticSchedulingWithSetups(int, double, double, double, long) - Constructor for class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
Generates random single machine scheduling problem instances.
WeightedStaticSchedulingWithSetups(String) - Constructor for class org.cicirello.search.problems.scheduling.WeightedStaticSchedulingWithSetups
Constructs a single machine scheduling problem instance by parsing an instance data file that follows the format specified in the following paper, with instances available at the following link:
WeightedTardiness - Class in org.cicirello.search.problems.scheduling
Implements the scheduling cost function known as weighted tardiness.
WeightedTardiness(SingleMachineSchedulingProblemData) - Constructor for class org.cicirello.search.problems.scheduling.WeightedTardiness
Constructs a single machine scheduling problem for minimizing weighted tardiness.
WindowLimitedBlockMoveMutation - Class in org.cicirello.search.operators.permutations
This class implements a window-limited version of the BlockMoveMutation mutation operator on permutations.
WindowLimitedBlockMoveMutation() - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedBlockMoveMutation
Constructs a WindowLimitedBlockMoveMutation mutation operator with a default window limit of Integer.MAX_VALUE.
WindowLimitedBlockMoveMutation(int) - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedBlockMoveMutation
Constructs a WindowLimitedBlockMoveMutation mutation operator.
WindowLimitedInsertionMutation - Class in org.cicirello.search.operators.permutations
This class implements a window-limited version of the InsertionMutation mutation operator on permutations.
WindowLimitedInsertionMutation() - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedInsertionMutation
Constructs a WindowLimitedInsertionMutation mutation operator with a default window limit of Integer.MAX_VALUE.
WindowLimitedInsertionMutation(int) - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedInsertionMutation
Constructs a WindowLimitedInsertionMutation mutation operator.
WindowLimitedReversalMutation - Class in org.cicirello.search.operators.permutations
This class implements a window-limited version of the ReversalMutation mutation operator on permutations.
WindowLimitedReversalMutation() - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedReversalMutation
Constructs a WindowLimitedReversalMutation mutation operator with a default window limit of Integer.MAX_VALUE.
WindowLimitedReversalMutation(int) - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedReversalMutation
Constructs a WindowLimitedReversalMutation mutation operator.
WindowLimitedScrambleMutation - Class in org.cicirello.search.operators.permutations
This class implements a window-limited version of the ScrambleMutation mutation operator on permutations.
WindowLimitedScrambleMutation() - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedScrambleMutation
Constructs a WindowLimitedScrambleMutation mutation operator with a default window limit of Integer.MAX_VALUE.
WindowLimitedScrambleMutation(int) - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedScrambleMutation
Constructs a WindowLimitedScrambleMutation mutation operator.
WindowLimitedSwapMutation - Class in org.cicirello.search.operators.permutations
This class implements a window-limited version of the SwapMutation mutation operator on permutations.
WindowLimitedSwapMutation() - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedSwapMutation
Constructs a WindowLimitedSwapMutation mutation operator with a default window limit of Integer.MAX_VALUE.
WindowLimitedSwapMutation(int) - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedSwapMutation
Constructs a WindowLimitedSwapMutation mutation operator.
WindowLimitedUndoableScrambleMutation - Class in org.cicirello.search.operators.permutations
This class implements a window-limited version of the ScrambleMutation mutation operator on permutations.
WindowLimitedUndoableScrambleMutation() - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedUndoableScrambleMutation
Constructs a WindowLimitedUndoableScrambleMutation mutation operator with a default window limit of Integer.MAX_VALUE.
WindowLimitedUndoableScrambleMutation(int) - Constructor for class org.cicirello.search.operators.permutations.WindowLimitedUndoableScrambleMutation
Constructs a WindowLimitedUndoableScrambleMutation mutation operator with the undo method enabled.

X

xor(BitVector) - Method in class org.cicirello.search.representations.BitVector
Computes the bitwise XOR of this BitVector and another BitVector.

Z

ZigguratGaussian - Class in org.cicirello.math.rand
This class provides methods for generating pseudorandom numbers from a Gaussian distribution using the Ziggurat Algorithm.
A B C D E F G H I L M N O P R S T U V W X Z 
All Classes All Packages