 GeneralSubsetMove  Class in org.jamesframework.core.subset.neigh.moves

A general subset move may simultaneously add and/or remove
several IDs to/from the current selection of a subset solution.
 GeneralSubsetMove(Set<Integer>, Set<Integer>)  Constructor for class org.jamesframework.core.subset.neigh.moves.GeneralSubsetMove

Creates a general subset move, indicating which IDs are to be added to and deleted from
the current selection when being applied to a given subset solution.
 generateRandomInitialSolution()  Method in class org.jamesframework.core.search.algo.tabu.TabuSearch

Updates the tabu memory if a random initial solution is generated.
 generateRandomInitialSolution()  Method in class org.jamesframework.core.search.LocalSearch

Generates a random initial solution.
 GenericProblem<SolutionType extends Solution,DataType>  Class in org.jamesframework.core.problems

A generic problem is fully based on delegation of its responsabilities, by separating data from the objective,
constraints (if any) and random solution generation.
 GenericProblem(DataType, Objective<? super SolutionType, ? super DataType>, RandomSolutionGenerator<? extends SolutionType, ? super DataType>)  Constructor for class org.jamesframework.core.problems.GenericProblem

Creates a new generic problem with given data, objective and random solution generator.
 getAddCandidates(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.SubsetNeighbourhood

Infer the set of IDs that may be added to the selection in the given subset solution.
 getAddedID()  Method in class org.jamesframework.core.subset.neigh.moves.AdditionMove

Returns the added ID.
 getAddedID()  Method in class org.jamesframework.core.subset.neigh.moves.SwapMove

Returns the added ID.
 getAddedIDs()  Method in class org.jamesframework.core.subset.neigh.moves.AdditionMove

Returns an unmodifiable singleton containing the only added ID.
 getAddedIDs()  Method in class org.jamesframework.core.subset.neigh.moves.DeletionMove

Returns an unmodifiable empty set, as no IDs are added.
 getAddedIDs()  Method in class org.jamesframework.core.subset.neigh.moves.GeneralSubsetMove

Returns an unmodifiable view of the set of IDs added to the selection when applying
this move to a subset solution.
 getAddedIDs()  Method in interface org.jamesframework.core.subset.neigh.moves.SubsetMove

Get the set of IDs that are added to the selection when applying this move to a subset solution.
 getAddedIDs()  Method in class org.jamesframework.core.subset.neigh.moves.SwapMove

Returns an unmodifiable singleton containing the only added ID.
 getAllIDs()  Method in class org.jamesframework.core.subset.SubsetSolution

Returns an unmodifiable view of the set of all IDs.
 getAllMoves(SolutionType)  Method in interface org.jamesframework.core.search.neigh.Neighbourhood

Get a list of all moves that can be applied to the given solution to transform
it into each of the neighbouring solutions contained in this specific neighbourhood.
 getAllMoves(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiAdditionNeighbourhood

Generates the list of all possible moves that perform \(k\) additions, where \(k\) is the fixed number
specified at construction.
 getAllMoves(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiDeletionNeighbourhood

Generates the list of all possible moves that perform \(k\) deletions, where \(k\) is the fixed number
specified at construction.
 getAllMoves(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiSwapNeighbourhood

Generates the list of all possible moves that perform exactly \(k\) swaps, where \(k\) is the desired number
of swaps specified at construction.
 getAllMoves(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.adv.MultiAdditionNeighbourhood

Generates the list of all possible moves that perform 1 up to \(k\) additions, where \(k\) is the maximum number
of additions specified at construction.
 getAllMoves(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.adv.MultiDeletionNeighbourhood

Generates the list of all possible moves that perform 1 up to \(k\) deletions, where \(k\) is the maximum number
of deletions specified at construction.
 getAllMoves(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.adv.MultiSwapNeighbourhood

Generates the list of all possible moves that perform 1 up to \(k\) swaps, where \(k\) is the maximum number
of swaps specified at construction.
 getAllMoves(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.SingleAdditionNeighbourhood

Generates a list of all possible addition moves that add a single ID to the selection of a given
subset solution.
 getAllMoves(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.SingleDeletionNeighbourhood

Generates a list of all possible deletion moves that remove a single ID from the selection of a given
subset solution.
 getAllMoves(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.SinglePerturbationNeighbourhood

Generate all valid swap, deletion and addition moves that transform the given subset solution into
a neighbour within the minimum and maximum allowed subset size.
 getAllMoves(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.SingleSwapNeighbourhood

Generates a list of all possible swap moves that transform the given subset solution by removing a single ID from
the current selection and replacing it with a new ID which is currently not selected.
 getBestMove(Collection<? extends Move<? super SolutionType>>, boolean, Predicate<? super Move<? super SolutionType>>...)  Method in class org.jamesframework.core.search.NeighbourhoodSearch

Get the best valid move among a collection of possible moves.
 getBestSolution()  Method in class org.jamesframework.core.search.Search

Returns the best solution found so far.
 getBestSolutionEvaluation()  Method in class org.jamesframework.core.search.Search

Get the evaluation of the best solution found so far.
 getBestSolutionValidation()  Method in class org.jamesframework.core.search.Search

Get the validation of the best solution found so far.
 getCachedMoveEvaluation(Move<?>)  Method in interface org.jamesframework.core.search.cache.EvaluatedMoveCache

Retrieve the cached evaluation (see
Problem.evaluate(Solution)
) of the neighbouring
solution which is obtained by applying the given move to the current solution, if available.
 getCachedMoveEvaluation(Move<?>)  Method in class org.jamesframework.core.search.cache.SingleEvaluatedMoveCache

Retrieve a cached evaluation, if still available.
 getCachedMoveValidation(Move<?>)  Method in interface org.jamesframework.core.search.cache.EvaluatedMoveCache

Retrieve the cached validation (see
Problem.validate(Solution)
) of the neighbouring
solution which is obtained by applying the given move to the current solution, if available.
 getCachedMoveValidation(Move<?>)  Method in class org.jamesframework.core.search.cache.SingleEvaluatedMoveCache

Retrieve a cached validation, if still available.
 getConstraintValidation()  Method in class org.jamesframework.core.subset.validations.SubsetValidation

Get the validation object produced when checking the general mandatory constraints (may be null
).
 getCurrentSolution()  Method in class org.jamesframework.core.search.LocalSearch

Get the current solution.
 getCurrentSolutionEvaluation()  Method in class org.jamesframework.core.search.LocalSearch

Get the evaluation of the current solution.
 getCurrentSolutionValidation()  Method in class org.jamesframework.core.search.LocalSearch

Get the validation of the current solution.
 getData()  Method in class org.jamesframework.core.problems.GenericProblem

Get the underlying data.
 getDeletedID()  Method in class org.jamesframework.core.subset.neigh.moves.DeletionMove

Returns the deleted ID.
 getDeletedID()  Method in class org.jamesframework.core.subset.neigh.moves.SwapMove

Returns the deleted ID.
 getDeletedIDs()  Method in class org.jamesframework.core.subset.neigh.moves.AdditionMove

Returns an unmodifiable empty set, as no IDs are deleted by this move.
 getDeletedIDs()  Method in class org.jamesframework.core.subset.neigh.moves.DeletionMove

Returns an unmodifiable singleton, containing the only deleted ID.
 getDeletedIDs()  Method in class org.jamesframework.core.subset.neigh.moves.GeneralSubsetMove

Returns an unmodifiable view of the set of IDs removed from the selection when applying
this move to a subset solution.
 getDeletedIDs()  Method in interface org.jamesframework.core.subset.neigh.moves.SubsetMove

Get the set of IDs that are removed from the selection when applying this move to a subset solution.
 getDeletedIDs()  Method in class org.jamesframework.core.subset.neigh.moves.SwapMove

Returns an unmodifiable singleton containing the only deleted ID.
 getEvaluation()  Method in class org.jamesframework.core.problems.objectives.evaluations.PenalizedEvaluation

Get the original unpenalized evaluation.
 getID()  Method in class org.jamesframework.core.search.Search

Get the unique ID that has been assigned to this search.
 getIDs()  Method in interface org.jamesframework.core.problems.datatypes.IntegerIdentifiedData

Get the set of all integer IDs corresponding to an item in the data set.
 getL()  Method in class org.jamesframework.core.subset.algo.LRSubsetSearch

Get \(L\): the number of additions performed in every search step.
 getLocalSearchFactory()  Method in class org.jamesframework.core.search.algo.vns.VariableNeighbourhoodSearch

Get the factory used to create instances of the local search algorithm which is applied to modify
solutions obtained after shaking.
 getMandatoryConstraints()  Method in class org.jamesframework.core.problems.GenericProblem

Get mandatory constraints (unmodifiable view).
 getMaxAdditions()  Method in class org.jamesframework.core.subset.neigh.adv.MultiAdditionNeighbourhood

Get the maximum number of additions performed by generated moves.
 getMaxDeletions()  Method in class org.jamesframework.core.subset.neigh.adv.MultiDeletionNeighbourhood

Get the maximum number of deletions performed by generated moves.
 getMaxSubsetSize()  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiAdditionNeighbourhood

Get the maximum subset size specified at construction.
 getMaxSubsetSize()  Method in class org.jamesframework.core.subset.neigh.adv.MultiAdditionNeighbourhood

Get the maximum subset size specified at construction.
 getMaxSubsetSize()  Method in class org.jamesframework.core.subset.neigh.SingleAdditionNeighbourhood

Get the maximum subset size.
 getMaxSubsetSize()  Method in class org.jamesframework.core.subset.neigh.SinglePerturbationNeighbourhood

Get the maximum subset size specified at construction.
 getMaxSubsetSize()  Method in class org.jamesframework.core.subset.SubsetProblem

Get the maximum subset size.
 getMaxSwaps()  Method in class org.jamesframework.core.subset.neigh.adv.MultiSwapNeighbourhood

Get the maximum number of swaps performed by generated moves.
 getMinDelta()  Method in class org.jamesframework.core.search.Search

Get the minimum improvement in evaluation of a new best known solution over the previous best known solution,
found during the current (or last) run.
 getMinSubsetSize()  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiDeletionNeighbourhood

Get the minimum subset size specified at construction.
 getMinSubsetSize()  Method in class org.jamesframework.core.subset.neigh.adv.MultiDeletionNeighbourhood

Get the minimum subset size specified at construction.
 getMinSubsetSize()  Method in class org.jamesframework.core.subset.neigh.SingleDeletionNeighbourhood

Get the minimum subset size.
 getMinSubsetSize()  Method in class org.jamesframework.core.subset.neigh.SinglePerturbationNeighbourhood

Get the minimum subset size specified at construction.
 getMinSubsetSize()  Method in class org.jamesframework.core.subset.SubsetProblem

Get the minimum subset size.
 getName()  Method in class org.jamesframework.core.search.Search

Get the name that has been assigned to this search.
 getNeighbourhood()  Method in class org.jamesframework.core.search.SingleNeighbourhoodSearch

Get the neighbourhood used to modify the current solution.
 getNeighbourhoods()  Method in class org.jamesframework.core.search.MultiNeighbourhoodSearch

Get list of applied neighbourhoods (unmodifiable).
 getNumAcceptedMoves()  Method in class org.jamesframework.core.search.NeighbourhoodSearch

Get the number of moves accepted during the current (or last) run.
 getNumAdded()  Method in class org.jamesframework.core.subset.neigh.moves.AdditionMove

Always return 1, as a single ID is added.
 getNumAdded()  Method in class org.jamesframework.core.subset.neigh.moves.DeletionMove

Always returns 0, as no IDs are added.
 getNumAdded()  Method in class org.jamesframework.core.subset.neigh.moves.GeneralSubsetMove

Returns the number of added IDs.
 getNumAdded()  Method in interface org.jamesframework.core.subset.neigh.moves.SubsetMove

Returns the number of added IDs, possibly 0.
 getNumAdded()  Method in class org.jamesframework.core.subset.neigh.moves.SwapMove

Always returns 1.
 getNumAdditions()  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiAdditionNeighbourhood

Get the fixed number of additions performed by generated moves.
 getNumDeleted()  Method in class org.jamesframework.core.subset.neigh.moves.AdditionMove

Always returns 0, as no IDs are deleted.
 getNumDeleted()  Method in class org.jamesframework.core.subset.neigh.moves.DeletionMove

Always returns 1, as a single ID is deleted.
 getNumDeleted()  Method in class org.jamesframework.core.subset.neigh.moves.GeneralSubsetMove

Returns the number of removed IDs.
 getNumDeleted()  Method in interface org.jamesframework.core.subset.neigh.moves.SubsetMove

Returns the number of deleted IDs, possibly 0.
 getNumDeleted()  Method in class org.jamesframework.core.subset.neigh.moves.SwapMove

Always return 1.
 getNumDeletions()  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiDeletionNeighbourhood

Get the fixed number of deletions performed by generated moves.
 getNumRejectedMoves()  Method in class org.jamesframework.core.search.NeighbourhoodSearch

Get the number of moves rejected during the current (or last) run.
 getNumSelectedIDs()  Method in class org.jamesframework.core.subset.SubsetSolution

Get the number of IDs which are currently selected.
 getNumSwaps()  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiSwapNeighbourhood

Get the fixed number of swaps performed by generated moves.
 getNumUnselectedIDs()  Method in class org.jamesframework.core.subset.SubsetSolution

Get the number of IDs which are currently unselected.
 getObjective()  Method in class org.jamesframework.core.problems.GenericProblem

Get the objective function.
 getOrderOfIDs()  Method in class org.jamesframework.core.subset.SubsetSolution

Get the comparator according to which the IDs are ordered, as specified at construction.
 getPenalizingConstraints()  Method in class org.jamesframework.core.problems.GenericProblem

Get penalizing constraints (unmodifiable view).
 getPenalizingValidation(Object)  Method in class org.jamesframework.core.problems.objectives.evaluations.PenalizedEvaluation

Retrieve the penalizing validation object corresponding to the given key.
 getPenalty()  Method in interface org.jamesframework.core.problems.constraints.validations.PenalizingValidation

Get the assigned penalty.
 getPenalty()  Method in class org.jamesframework.core.problems.constraints.validations.SimplePenalizingValidation

Get the assigned penalty.
 getProblem()  Method in class org.jamesframework.core.search.Search

Get the problem being solved, as specified at construction.
 getProblem()  Method in class org.jamesframework.core.subset.algo.LRSubsetSearch

Returns the subset problem that is being solved.
 getR()  Method in class org.jamesframework.core.subset.algo.LRSubsetSearch

Get \(R\): the number of deletions performed in every search step.
 getRandom()  Method in class org.jamesframework.core.search.Search

Get the dedicated random generator used by this search.
 getRandomElement(Set<? extends T>, Random)  Static method in class org.jamesframework.core.util.SetUtilities

Select a random element from a given set (uniformly distributed).
 getRandomMove(SolutionType, Random)  Method in interface org.jamesframework.core.search.neigh.Neighbourhood

Generates a move that transforms the given solution into a random neighbour
contained in this specific neighbourhood.
 getRandomMove(SolutionType)  Method in interface org.jamesframework.core.search.neigh.Neighbourhood

Generates a random move, using a default source of randomness.
 getRandomMove(SubsetSolution, Random)  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiAdditionNeighbourhood

Generates a move for the given subset solution that selects a random subset of currently unselected IDs.
 getRandomMove(SubsetSolution, Random)  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiDeletionNeighbourhood

Generates a move for the given subset solution that deselects a random subset of currently selected IDs.
 getRandomMove(SubsetSolution, Random)  Method in class org.jamesframework.core.subset.neigh.adv.DisjointMultiSwapNeighbourhood

Generates a move for the given subset solution that removes a random subset of \(k\) IDs from the current
selection and replaces them with an equally large random subset of the currently unselected IDs, where
\(k\) is the number of swaps specified at construction.
 getRandomMove(SubsetSolution, Random)  Method in class org.jamesframework.core.subset.neigh.adv.MultiAdditionNeighbourhood

Generates a move for the given subset solution that adds a random subset of currently unselected IDs to the
selection.
 getRandomMove(SubsetSolution, Random)  Method in class org.jamesframework.core.subset.neigh.adv.MultiDeletionNeighbourhood

Generates a move for the given subset solution that deselects a random subset of currently selected IDs.
 getRandomMove(SubsetSolution, Random)  Method in class org.jamesframework.core.subset.neigh.adv.MultiSwapNeighbourhood

Generates a move for the given subset solution that removes a random subset of IDs from the current selection
and replaces them with an equally large random subset of the currently unselected IDs.
 getRandomMove(SubsetSolution, Random)  Method in class org.jamesframework.core.subset.neigh.SingleAdditionNeighbourhood

Generates a random addition move for the given subset solution that adds a single ID to the selection.
 getRandomMove(SubsetSolution, Random)  Method in class org.jamesframework.core.subset.neigh.SingleDeletionNeighbourhood

Generates a random deletion move for the given subset solution that removes a single ID from the selection.
 getRandomMove(SubsetSolution, Random)  Method in class org.jamesframework.core.subset.neigh.SinglePerturbationNeighbourhood

Generates a random swap, deletion or addition move that transforms the given subset solution into
a neighbour within the minimum and maximum allowed subset size.
 getRandomMove(SubsetSolution, Random)  Method in class org.jamesframework.core.subset.neigh.SingleSwapNeighbourhood

Generates a random swap move for the given subset solution that removes a single ID from the set of currently selected IDs,
and replaces it with a random ID taken from the set of currently unselected IDs.
 getRandomSolutionGenerator()  Method in class org.jamesframework.core.problems.GenericProblem

Get the random solution generator.
 getRandomSubset(Set<? extends T>, int, Random, Collection<T>)  Static method in class org.jamesframework.core.util.SetUtilities

Selects a random subset of a specific size from a given set (uniformly distributed).
 getRandomSubset(Set<? extends T>, int, Random)  Static method in class org.jamesframework.core.util.SetUtilities

Selects a random subset of a specific size from a given set (uniformly distributed).
 getRemoveCandidates(SubsetSolution)  Method in class org.jamesframework.core.subset.neigh.SubsetNeighbourhood

Infer the set of IDs that may be removed from the selection in the given subset solution.
 getReplicaSteps()  Method in class org.jamesframework.core.search.algo.ParallelTempering

Get the number of steps performed by each replica in every iteration of the global parallel
tempering algorithm, before considering solution swaps.
 getRuntime()  Method in class org.jamesframework.core.search.Search

Get the runtime of the current (or last) run, in milliseconds.
 getSearches()  Method in class org.jamesframework.core.search.algo.BasicParallelSearch

Get an unmodifiable view of the list of all searches that
have been added to this parallel search for concurrent execution.
 getSearchListeners()  Method in class org.jamesframework.core.search.Search

Retrieve search listeners (unmodifiable view).
 getSelectedIDs()  Method in class org.jamesframework.core.subset.SubsetSolution

Returns an unmodifiable view of the set of currently selected IDs.
 getSolution()  Method in exception org.jamesframework.core.exceptions.SolutionModificationException

Returns the solution that was being modified when this exception occurred.
 getStatus()  Method in class org.jamesframework.core.search.Search

Get the current search status.
 getStatusLock()  Method in class org.jamesframework.core.search.Search

Returns a lock to be acquired when executing blocks of code that can not be interrupted by a status update.
 getSteps()  Method in class org.jamesframework.core.search.Search

Get the number of completed steps during the current (or last) run.
 getStepsWithoutImprovement()  Method in class org.jamesframework.core.search.Search

Get the number of consecutive steps completed during the current (or last) run, without finding
any further improvement.
 getTabuMemory()  Method in class org.jamesframework.core.search.algo.tabu.TabuSearch

Get the tabu memory.
 getTemperature()  Method in class org.jamesframework.core.search.algo.MetropolisSearch

Get the temperature \(T\) of the system.
 getTimeWithoutImprovement()  Method in class org.jamesframework.core.search.Search

Get the amount of time elapsed during the current (or last) run, without finding any further improvement
(in milliseconds).
 getTotalNumIDs()  Method in class org.jamesframework.core.subset.SubsetSolution

Get the total number of IDs.
 getUnselectedIDs()  Method in class org.jamesframework.core.subset.SubsetSolution

Returns an unmodifiable view of the set of currently non selected IDs.
 getValidation(Object)  Method in class org.jamesframework.core.problems.constraints.validations.UnanimousValidation

Retrieve the validation object corresponding to the given key.
 getValue()  Method in interface org.jamesframework.core.problems.objectives.evaluations.Evaluation

Get the double value of this evaluation, expressing the solution quality.
 getValue()  Method in class org.jamesframework.core.problems.objectives.evaluations.PenalizedEvaluation

Get the penalized value.
 getValue()  Method in class org.jamesframework.core.problems.objectives.evaluations.SimpleEvaluation

Get the double value specified at construction.
 getViolatedConstraints(SolutionType)  Method in class org.jamesframework.core.problems.GenericProblem

Returns a collection of all violated constraints (both mandatory and penalizing).
 IDBasedSubsetTabuMemory  Class in org.jamesframework.core.subset.algo.tabu

An ID based subset tabu memory keeps track of recently added and deleted IDs (recently applied moves) and does not
allow that these IDs are added nor deleted to/from the current solution as long as they are contained in the limited
size tabu memory.
 IDBasedSubsetTabuMemory(int)  Constructor for class org.jamesframework.core.subset.algo.tabu.IDBasedSubsetTabuMemory

Creates an ID based subset tabu memory with specified size.
 incNumAcceptedMoves(long)  Method in class org.jamesframework.core.search.NeighbourhoodSearch

Increase the number of accepted moves with the given value.
 incNumRejectedMoves(long)  Method in class org.jamesframework.core.search.NeighbourhoodSearch

Increase the number of rejected moves with the given value.
 IncompatibleDeltaEvaluationException  Exception in org.jamesframework.core.exceptions

Exception thrown when a delta evaluation is not compatible with the
type of moves generated by the applied neighbourhood(s).
 IncompatibleDeltaEvaluationException()  Constructor for exception org.jamesframework.core.exceptions.IncompatibleDeltaEvaluationException

Creates a new instance without detail message.
 IncompatibleDeltaEvaluationException(String)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleDeltaEvaluationException

Constructs an instance with the specified detail message.
 IncompatibleDeltaEvaluationException(Throwable)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleDeltaEvaluationException

Constructs an instance with the specified cause.
 IncompatibleDeltaEvaluationException(String, Throwable)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleDeltaEvaluationException

Constructs an instance with the specified detail message and cause.
 IncompatibleDeltaValidationException  Exception in org.jamesframework.core.exceptions

Exception thrown when a delta validation is not compatible with the
type of moves generated by the applied neighbourhood(s).
 IncompatibleDeltaValidationException()  Constructor for exception org.jamesframework.core.exceptions.IncompatibleDeltaValidationException

Creates a new instance without detail message.
 IncompatibleDeltaValidationException(String)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleDeltaValidationException

Constructs an instance with the specified detail message.
 IncompatibleDeltaValidationException(Throwable)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleDeltaValidationException

Constructs an instance with the specified cause.
 IncompatibleDeltaValidationException(String, Throwable)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleDeltaValidationException

Constructs an instance with the specified detail message and cause.
 IncompatibleSearchListenerException  Exception in org.jamesframework.core.exceptions

Exception thrown when an incompatible search listener is attached to a search.
 IncompatibleSearchListenerException()  Constructor for exception org.jamesframework.core.exceptions.IncompatibleSearchListenerException

Creates a new instance without detail message.
 IncompatibleSearchListenerException(String)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleSearchListenerException

Constructs an instance with the specified detail message.
 IncompatibleSearchListenerException(Throwable)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleSearchListenerException

Constructs an instance with the specified cause.
 IncompatibleSearchListenerException(String, Throwable)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleSearchListenerException

Constructs an instance with the specified detail message and cause.
 IncompatibleStopCriterionException  Exception in org.jamesframework.core.exceptions

Exception thrown when an incompatible stop criterion is attached to a search.
 IncompatibleStopCriterionException()  Constructor for exception org.jamesframework.core.exceptions.IncompatibleStopCriterionException

Creates a new instance without detail message.
 IncompatibleStopCriterionException(String)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleStopCriterionException

Constructs an instance with the specified detail message.
 IncompatibleStopCriterionException(Throwable)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleStopCriterionException

Constructs an instance with the specified cause.
 IncompatibleStopCriterionException(String, Throwable)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleStopCriterionException

Constructs an instance with the specified detail message and cause.
 IncompatibleTabuMemoryException  Exception in org.jamesframework.core.exceptions

Exception thrown when an incompatible tabu memory is used for tabu search.
 IncompatibleTabuMemoryException()  Constructor for exception org.jamesframework.core.exceptions.IncompatibleTabuMemoryException

Creates a new instance without detail message.
 IncompatibleTabuMemoryException(String)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleTabuMemoryException

Constructs an instance with the specified detail message.
 IncompatibleTabuMemoryException(Throwable)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleTabuMemoryException

Constructs an instance with the specified cause.
 IncompatibleTabuMemoryException(String, Throwable)  Constructor for exception org.jamesframework.core.exceptions.IncompatibleTabuMemoryException

Constructs an instance with the specified detail message and cause.
 init()  Method in class org.jamesframework.core.search.algo.BasicParallelSearch

When the search is initialized, it is verified whether at least one subsearch
has been added and all subsearches are initialized as well (in parallel).
 init()  Method in class org.jamesframework.core.search.algo.ParallelTempering

When initializing a parallel tempering search, the replicas are initialized as well (in parallel).
 init()  Method in class org.jamesframework.core.search.LocalSearch

When the search is initialized, a random initial solution is generated if none has been specified
or generated before.
 init()  Method in class org.jamesframework.core.search.NeighbourhoodSearch

When a neighbourhood search is initialized, the number of accepted and rejected moves is (re)set to zero.
 init()  Method in class org.jamesframework.core.search.Search

Initializes and/or validates the search.
 init()  Method in class org.jamesframework.core.subset.algo.LRSubsetSearch

When the search is initialized, and no custom initial solution has been set,
an empty or full subset solution is created depending on whether \(L \gt R\)
or \(R \gt L\), respectively.
 IntegerIdentifiedData  Interface in org.jamesframework.core.problems.datatypes

Interface of a data set in which each item is identified using a unique integer ID.
 INVALID_DELTA  Static variable in interface org.jamesframework.core.util.JamesConstants

Indicates an invalid delta (amount of improvement).
 INVALID_MOVE_COUNT  Static variable in interface org.jamesframework.core.util.JamesConstants

Indicates an invalid number of moves.
 INVALID_STEP_COUNT  Static variable in interface org.jamesframework.core.util.JamesConstants

Indicates an invalid number of steps.
 INVALID_TIME_SPAN  Static variable in interface org.jamesframework.core.util.JamesConstants

Used to indicate an invalid time span.
 INVALID_TIMESTAMP  Static variable in interface org.jamesframework.core.util.JamesConstants

Used to indicate an invalid timestamp, for example belonging to an event which has not yet occurred.
 isImprovement(Move<? super SolutionType>)  Method in class org.jamesframework.core.search.NeighbourhoodSearch

Checks whether applying the given move to the current solution yields a valid improvement.
 isMinimizing()  Method in class org.jamesframework.core.problems.GenericProblem

Indicates whether the underlying objective is minimizing.
 isMinimizing()  Method in interface org.jamesframework.core.problems.objectives.Objective

Check whether the produced evaluations are to be minimized.
 isMinimizing()  Method in interface org.jamesframework.core.problems.Problem

Indicates whether scores are being minimized or maximized.
 isTabu(Move<? super SolutionType>, SolutionType)  Method in class org.jamesframework.core.search.algo.tabu.FullTabuMemory

Verifies whether the given move is tabu by applying it to the current solution and checking if the obtained
neighbour is currently contained in the tabu memory.
 isTabu(Move<? super SolutionType>, SolutionType)  Method in interface org.jamesframework.core.search.algo.tabu.TabuMemory

Indicates whether the given move is tabu, considering the current solution to which it will be applied
and the current state of the tabu memory.
 isTabu(Move<? super SubsetSolution>, SubsetSolution)  Method in class org.jamesframework.core.subset.algo.tabu.IDBasedSubsetTabuMemory

A move is considered tabu if any involved ID (added or deleted) is currently contained in the tabu memory.
 MaxRuntime  Class in org.jamesframework.core.search.stopcriteria

Stop criterion that limits runtime of a search run.
 MaxRuntime(long, TimeUnit)  Constructor for class org.jamesframework.core.search.stopcriteria.MaxRuntime

Create a stop criterion to limit the runtime of a search run.
 MaxSteps  Class in org.jamesframework.core.search.stopcriteria

Stop criterion that limits the number of steps of a search run.
 MaxSteps(long)  Constructor for class org.jamesframework.core.search.stopcriteria.MaxSteps

Create a stop criterion to limit the number of steps of a search run.
 MaxStepsWithoutImprovement  Class in org.jamesframework.core.search.stopcriteria

Stop criterion that limits the number of steps without finding any improvement during a search run.
 MaxStepsWithoutImprovement(long)  Constructor for class org.jamesframework.core.search.stopcriteria.MaxStepsWithoutImprovement

Create a stop criterion to limit the number of steps without finding any improvement during a search run.
 MaxTimeWithoutImprovement  Class in org.jamesframework.core.search.stopcriteria

Stop criterion that limits the time without finding any improvement during a search run.
 MaxTimeWithoutImprovement(long, TimeUnit)  Constructor for class org.jamesframework.core.search.stopcriteria.MaxTimeWithoutImprovement

Create a stop criterion to limit the time without finding any improvement during a search run.
 MetropolisSearch<SolutionType extends Solution>  Class in org.jamesframework.core.search.algo

Metropolis search (fixed temperature).
 MetropolisSearch(Problem<SolutionType>, Neighbourhood<? super SolutionType>, double)  Constructor for class org.jamesframework.core.search.algo.MetropolisSearch

Creates a new Metropolis search, specifying the problem to solve, the applied neighbourhood and the temperature.
 MetropolisSearch(String, Problem<SolutionType>, Neighbourhood<? super SolutionType>, double)  Constructor for class org.jamesframework.core.search.algo.MetropolisSearch

Creates a new Metropolis search, specifying the problem to solve, the applied neighbourhood and temperature,
and a custom search name.
 MetropolisSearchFactory<SolutionType extends Solution>  Interface in org.jamesframework.core.factory

Factory used to create a Metropolis search, given the problem to be solved, the applied
neighbourhood and the desired temperature.
 MinDelta  Class in org.jamesframework.core.search.stopcriteria

Stop criterion that imposes a minimum delta (amount of improvement in evaluation)
when finding a new best solution during a search run, compared to the previous
best known solution.
 MinDelta(double)  Constructor for class org.jamesframework.core.search.stopcriteria.MinDelta

Create a stop criterion that imposes a minimum evaluation delta when
finding a new best solution during a search run.
 Move<SolutionType extends Solution>  Interface in org.jamesframework.core.search.neigh

Interface of a move that can be applied to a generic solution type.
 MultiAdditionNeighbourhood  Class in org.jamesframework.core.subset.neigh.adv

A subset neighbourhood that generates moves which simultaneously add up to \(k\) items to the selection,
where \(k\) is specified at construction (or unlimited).
 MultiAdditionNeighbourhood()  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiAdditionNeighbourhood

Creates a multi addition neighbourhood that may add an unlimited number of IDs to the selection.
 MultiAdditionNeighbourhood(int)  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiAdditionNeighbourhood

Creates a multi addition neighbourhood that may simultaneously add up to the specified number of
IDs to the selection.
 MultiAdditionNeighbourhood(int, int)  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiAdditionNeighbourhood

Creates a multi addition neighbourhood that may simultaneously add up to the specified number of
IDs to the selection, taking into account that the given maximum subset size can not be exceeded.
 MultiAdditionNeighbourhood(int, int, Set<Integer>)  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiAdditionNeighbourhood

Creates a multi addition neighbourhood that may simultaneously add up to the specified number of
IDs to the selection, taking into account that the given maximum subset size can not be exceeded
and that the given set of fixed IDs are not allowed to be selected.
 MultiDeletionNeighbourhood  Class in org.jamesframework.core.subset.neigh.adv

A subset neighbourhood that generates moves which simultaneously remove up to \(k\) items from the selection,
where \(k\) is specified at construction (or unlimited).
 MultiDeletionNeighbourhood()  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiDeletionNeighbourhood

Creates a multi deletion neighbourhood that may remove an unlimited number of IDs from the selection.
 MultiDeletionNeighbourhood(int)  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiDeletionNeighbourhood

Creates a multi deletion neighbourhood that may simultaneously remove up to the specified number of
IDs from the selection.
 MultiDeletionNeighbourhood(int, int)  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiDeletionNeighbourhood

Creates a multi deletion neighbourhood that may simultaneously remove up to the specified number of
IDs from the selection, taking into account that the subset size may not drop below the given minimum.
 MultiDeletionNeighbourhood(int, int, Set<Integer>)  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiDeletionNeighbourhood

Creates a multi deletion neighbourhood that may simultaneously remove up to the specified number of
IDs from the selection, taking into account that the subset size may not drop below the given minimum
and that the given set of fixed IDs are not allowed to be deselected.
 MultiNeighbourhoodSearch<SolutionType extends Solution>  Class in org.jamesframework.core.search

Abstract neighbourhood search that uses multiple neighbourhoods to modify the current solution.
 MultiNeighbourhoodSearch(Problem<SolutionType>, List<? extends Neighbourhood<? super SolutionType>>)  Constructor for class org.jamesframework.core.search.MultiNeighbourhoodSearch

Create a new multi neighbourhood search, specifying the problem to be solved and the neighbourhoods used to
modify the current solution.
 MultiNeighbourhoodSearch(String, Problem<SolutionType>, List<? extends Neighbourhood<? super SolutionType>>)  Constructor for class org.jamesframework.core.search.MultiNeighbourhoodSearch

Create a new multi neighbourhood search, specifying the problem to be solved, the neighbourhoods used to
modify the current solution, and a custom search name.
 MultiSwapNeighbourhood  Class in org.jamesframework.core.subset.neigh.adv

A subset neighbourhood that generates moves performing up to \(k\) simultaneous swaps of selected and
unselected IDs, where \(k\) is specified when creating the neighbourhood (or unlimited).
 MultiSwapNeighbourhood()  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiSwapNeighbourhood

Creates a multi swap neighbourhood that may perform an unlimited number of swaps.
 MultiSwapNeighbourhood(int)  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiSwapNeighbourhood

Creates a multi swap neighbourhood without fixed IDs, indicating the desired maximum number
of (simultaneous) swaps performed by any generated move.
 MultiSwapNeighbourhood(int, Set<Integer>)  Constructor for class org.jamesframework.core.subset.neigh.adv.MultiSwapNeighbourhood

Creates a multi swap neighbourhood with a given set of fixed IDs which are not allowed to be swapped.
 Search<SolutionType extends Solution>  Class in org.jamesframework.core.search

General abstract search used to solve a problem with the specified solution type.
 Search(Problem<SolutionType>)  Constructor for class org.jamesframework.core.search.Search

Creates a search to solve the given problem, with default search name "Search".
 Search(String, Problem<SolutionType>)  Constructor for class org.jamesframework.core.search.Search

Creates a search to solve the given problem, with a custom search name.
 searchDisposed()  Method in class org.jamesframework.core.search.algo.BasicParallelSearch

When disposing a basic parallel search, each of the searches that have been added to the parallel
algorithm are disposed and the thread pool used for concurrent search execution is released.
 searchDisposed()  Method in class org.jamesframework.core.search.algo.ParallelTempering

When disposing a parallel tempering search, it will dispose each contained Metropolis replica and will
shut down the thread pool used for concurrent execution of replicas.
 searchDisposed()  Method in class org.jamesframework.core.search.algo.PipedLocalSearch

When disposing a piped local search, all searches in the pipeline are also disposed.
 searchDisposed()  Method in class org.jamesframework.core.search.Search

This method is called when a search is disposed, immediately before the search status is updated.
 SearchException  Exception in org.jamesframework.core.exceptions

Exception thrown during search, whenever a fatal error occurs.
 SearchException()  Constructor for exception org.jamesframework.core.exceptions.SearchException

Creates a new instance without detail message.
 SearchException(String)  Constructor for exception org.jamesframework.core.exceptions.SearchException

Constructs an instance with the specified detail message.
 SearchException(Throwable)  Constructor for exception org.jamesframework.core.exceptions.SearchException

Constructs an instance with the specified cause.
 SearchException(String, Throwable)  Constructor for exception org.jamesframework.core.exceptions.SearchException

Constructs an instance with the specified detail message and cause.
 SearchFactory<SolutionType extends Solution>  Interface in org.jamesframework.core.factory

Factory used to create a search given the problem to be solved.
 SearchListener<SolutionType extends Solution>  Interface in org.jamesframework.core.search.listeners

Interface of a search listener that can be attached to any search with the specified solution type (or a subtype).
 searchShouldStop(Search<?>)  Method in class org.jamesframework.core.search.stopcriteria.MaxRuntime

Checks whether the maximum runtime has been reached for the given search.
 searchShouldStop(Search<?>)  Method in class org.jamesframework.core.search.stopcriteria.MaxSteps

Checks whether the maximum number of steps has been reached for the given search.
 searchShouldStop(Search<?>)  Method in class org.jamesframework.core.search.stopcriteria.MaxStepsWithoutImprovement

Checks whether the maximum number of steps without finding improvement has been reached for the given search.
 searchShouldStop(Search<?>)  Method in class org.jamesframework.core.search.stopcriteria.MaxTimeWithoutImprovement

Checks whether the maximum time without finding improvements has been reached for the given search.
 searchShouldStop(Search<?>)  Method in class org.jamesframework.core.search.stopcriteria.MinDelta

Checks whether the minimum delta observed during the current run of the given
search is still above the required minimum.
 searchShouldStop(Search<?>)  Method in interface org.jamesframework.core.search.stopcriteria.StopCriterion

Checks the stop condition for a given search.
 searchStarted(Search<? extends SolutionType>)  Method in interface org.jamesframework.core.search.listeners.SearchListener

Fired when the search has started.
 searchStarted()  Method in class org.jamesframework.core.search.Search

This method is called when a search run is started.
 SearchStatus  Enum in org.jamesframework.core.search.status

Enumeration of possible search statuses.
 searchStep()  Method in class org.jamesframework.core.search.algo.BasicParallelSearch

This algorithm consists of a single search step only, in which (1) the contained subsearches are executed in
parallel, (2) the main search waits until they terminate and (3) the main search stops.
 searchStep()  Method in class org.jamesframework.core.search.algo.exh.ExhaustiveSearch

In every search step it is verified whether there are more solution to be generated using the solution iterator.
 searchStep()  Method in class org.jamesframework.core.search.algo.MetropolisSearch

Creates a random neighbour of the current solution and accepts it as the new current solution
if it is valid and either improves the current solution or
\[
e^{\frac{\Delta E}{T}} > R(0,1)
\]
where \(\Delta E\) is the difference between the evaluation of the neighbour and that of the
current solution, \(T\) is the temperature, and \(R(0,1)\) is a random number in the interval
\([0,1]\) sampled using the search's dedicated random generator.
 searchStep()  Method in class org.jamesframework.core.search.algo.ParallelTempering

In each search step, every replica performs several steps after which solutions of adjacent
replicas may be swapped.
 searchStep()  Method in class org.jamesframework.core.search.algo.PipedLocalSearch

Executes all local searches in the pipeline, where the best solution of the previous search is used as initial
solution for the next search.
 searchStep()  Method in class org.jamesframework.core.search.algo.RandomDescent

Creates a random neighbour of the current solution and accepts it if it improves over the current solution.
 searchStep()  Method in class org.jamesframework.core.search.algo.RandomSearch

In every search step, a random solution is created and the best solution might be updated accordingly.
 searchStep()  Method in class org.jamesframework.core.search.algo.SteepestDescent

Investigates all neighbours of the current solution and adopts the best one as the new current solution,
if it is an improvement.
 searchStep()  Method in class org.jamesframework.core.search.algo.tabu.TabuSearch

In every step, all neighbours of the current solution are inspected and the best valid, non tabu neighbour is
adopted as the new current solution, if any.
 searchStep()  Method in class org.jamesframework.core.search.algo.vns.ReducedVariableNeighbourhoodSearch

Samples a random neighbour of the current solution, using the kth neighbourhood, and accepts it as the new
current solution if it is an improvement.
 searchStep()  Method in class org.jamesframework.core.search.algo.vns.VariableNeighbourhoodDescent

Investigates all neighbours of the current solution, using the kth neighbourhood, and adopts the best one
as the new current solution, if it is an improvement.
 searchStep()  Method in class org.jamesframework.core.search.algo.vns.VariableNeighbourhoodSearch

Performs a step of VNS.
 searchStep()  Method in class org.jamesframework.core.search.Search

This method is iteratively called while the search is running and should be implemented in every specific
search according to the corresponding search strategy.
 searchStep()  Method in class org.jamesframework.core.subset.algo.LRSubsetSearch

In every search step, the \(L\) best additions and \(R\) best deletions of a single item are performed.
 searchStopped(Search<? extends SolutionType>)  Method in interface org.jamesframework.core.search.listeners.SearchListener

Fired when the search has stopped.
 searchStopped()  Method in class org.jamesframework.core.search.Search

This method is called when a search run has completed.
 select(int)  Method in class org.jamesframework.core.subset.SubsetSolution

Select the given ID.
 select(List<E>, List<Double>, Random)  Static method in class org.jamesframework.core.util.RouletteSelector

Select an item from a given list by roulette selection, where each item has a weight expressing
the size of its section of the roulette wheel.
 selectAll(Collection<Integer>)  Method in class org.jamesframework.core.subset.SubsetSolution

Select all IDs contained in the given collection.
 selectAll()  Method in class org.jamesframework.core.subset.SubsetSolution

Select all IDs.
 setCurrentSolution(SolutionType)  Method in class org.jamesframework.core.search.algo.ParallelTempering

Set a custom current solution, of which a copy is set as the current solution in each replica.
 setCurrentSolution(SolutionType)  Method in class org.jamesframework.core.search.algo.tabu.TabuSearch

Updates the tabu memory when a custom current/initial solution is set.
 setCurrentSolution(SolutionType)  Method in class org.jamesframework.core.search.LocalSearch

Sets the current solution prior to execution or in between search runs.
 setCurrentSolution(SolutionType, Evaluation, Validation)  Method in class org.jamesframework.core.search.LocalSearch

Sets the current solution given that it has already been evaluated and validated.
 setCycleNeighbourhoods(boolean)  Method in class org.jamesframework.core.search.algo.vns.ReducedVariableNeighbourhoodSearch

Indicates whether neighbourhoods should be applied cyclically or not, when all neighbourhoods have been
successively applied without finding any improvements.
 setData(DataType)  Method in class org.jamesframework.core.problems.GenericProblem

Set new underlying data.
 setData(DataType)  Method in class org.jamesframework.core.subset.SubsetProblem

Set new data.
 setEvaluatedMoveCache(EvaluatedMoveCache)  Method in class org.jamesframework.core.search.NeighbourhoodSearch

Sets a custom evaluated move cache, which is used to avoid repeated evaluation or validation of the same move
from the same current solution.
 setLocalSearchFactory(LocalSearchFactory<SolutionType>)  Method in class org.jamesframework.core.search.algo.vns.VariableNeighbourhoodSearch

Set a custom factory to create instances of the local search algorithm to be applied to modify solutions
obtained after shaking.
 setMaxSubsetSize(int)  Method in class org.jamesframework.core.subset.SubsetProblem

Set the maximum subset size.
 setMinSubsetSize(int)  Method in class org.jamesframework.core.subset.SubsetProblem

Set the minimum subset size.
 setNeighbourhood(Neighbourhood<? super SolutionType>)  Method in class org.jamesframework.core.search.algo.ParallelTempering

Set the same neighbourhood for each replica.
 setNeighbourhood(Neighbourhood<? super SolutionType>)  Method in class org.jamesframework.core.search.SingleNeighbourhoodSearch

Sets the neighbourhood used to modify the current solution.
 setNeighbourhoods(List<? extends Neighbourhood<? super SolutionType>>)  Method in class org.jamesframework.core.search.MultiNeighbourhoodSearch

Sets the list of neighbourhoods used to modify the current solution.
 setObjective(Objective<? super SolutionType, ? super DataType>)  Method in class org.jamesframework.core.problems.GenericProblem

Set the objective function.
 setPeriod(long, TimeUnit)  Method in class org.jamesframework.core.search.stopcriteria.StopCriterionChecker

Set the period between consecutive stop criterion checks.
 setRandom(Random)  Method in class org.jamesframework.core.search.Search

Set custom random generator.
 setRandomSolutionGenerator(RandomSolutionGenerator<? extends SolutionType, ? super DataType>)  Method in class org.jamesframework.core.problems.GenericProblem

Set random solution generator.
 setReplicaSteps(long)  Method in class org.jamesframework.core.search.algo.ParallelTempering

Sets the number of steps performed by each replica in every iteration of the global parallel tempering
algorithm, before considering solution swaps.
 setStopCriterionCheckPeriod(long, TimeUnit)  Method in class org.jamesframework.core.search.Search

Instructs the search to check its stop criteria at regular intervals separated by the given period.
 setTabuMemory(TabuMemory<SolutionType>)  Method in class org.jamesframework.core.search.algo.tabu.TabuSearch

Set the tabu memory.
 setTemperature(double)  Method in class org.jamesframework.core.search.algo.MetropolisSearch

Set the temperature (\(T > 0\)).
 SetUtilities  Class in org.jamesframework.core.util

Contains some utility functions for manipulating sets.
 SetUtilities()  Constructor for class org.jamesframework.core.util.SetUtilities

 SimpleEvaluation  Class in org.jamesframework.core.problems.objectives.evaluations

A simple evaluation object that wraps a double value.
 SimpleEvaluation(double)  Constructor for class org.jamesframework.core.problems.objectives.evaluations.SimpleEvaluation

Create a simple evaluation with given double value.
 SimplePenalizingValidation  Class in org.jamesframework.core.problems.constraints.validations

A simple penalizing validation object that wraps a boolean value,
indicating whether the corresponding solution passed validation,
and a double value, indicating the assigned penalty if the solution
did not pass validation.
 SimplePenalizingValidation(boolean, double)  Constructor for class org.jamesframework.core.problems.constraints.validations.SimplePenalizingValidation

Create a simple penalizing validation with a given boolean value, indicating
whether the corresponding solution passed validation, and an assigned penalty.
 SimpleValidation  Class in org.jamesframework.core.problems.constraints.validations

A simple validation object that merely wraps a boolean value
indicating whether the corresponding solution passed validation.
 SimpleValidation(boolean)  Constructor for class org.jamesframework.core.problems.constraints.validations.SimpleValidation

Create a simple validation with a given boolean value, indicating
whether the corresponding solution passed validation.
 SingleAdditionNeighbourhood  Class in org.jamesframework.core.subset.neigh

A subset neighbourhood that generates addition moves only (see
AdditionMove
).
 SingleAdditionNeighbourhood()  Constructor for class org.jamesframework.core.subset.neigh.SingleAdditionNeighbourhood

Create a single addition neighbourhood without maximum subset size.
 SingleAdditionNeighbourhood(int)  Constructor for class org.jamesframework.core.subset.neigh.SingleAdditionNeighbourhood

Create a single addition neighbourhood with a given limit on the number of selected items
(maximum subset size).
 SingleAdditionNeighbourhood(int, Set<Integer>)  Constructor for class org.jamesframework.core.subset.neigh.SingleAdditionNeighbourhood

Create a single addition neighbourhood with a limit on the number of selected
items (subset size) and a given set of fixed IDs which are not allowed to be
selected.
 SingleDeletionNeighbourhood  Class in org.jamesframework.core.subset.neigh

A subset neighbourhood that generates deletion moves only (see
DeletionMove
).
 SingleDeletionNeighbourhood()  Constructor for class org.jamesframework.core.subset.neigh.SingleDeletionNeighbourhood

Create a single deletion neighbourhood without minimum subset size.
 SingleDeletionNeighbourhood(int)  Constructor for class org.jamesframework.core.subset.neigh.SingleDeletionNeighbourhood

Create a single deletion neighbourhood with a given minimum subset size.
 SingleDeletionNeighbourhood(int, Set<Integer>)  Constructor for class org.jamesframework.core.subset.neigh.SingleDeletionNeighbourhood

Create a single deletion neighbourhood with a given minimum subset size
and a set of fixed IDs which are not allowed to be deselected.
 SingleEvaluatedMoveCache  Class in org.jamesframework.core.search.cache

A single move cache only stores the last evaluation and validation that were offered to the cache.
 SingleEvaluatedMoveCache()  Constructor for class org.jamesframework.core.search.cache.SingleEvaluatedMoveCache

Create an empty single evaluated move cache.
 SingleNeighbourhoodSearch<SolutionType extends Solution>  Class in org.jamesframework.core.search

Abstract neighbourhood search that uses a single neighbourhood to modify the current solution.
 SingleNeighbourhoodSearch(Problem<SolutionType>, Neighbourhood<? super SolutionType>)  Constructor for class org.jamesframework.core.search.SingleNeighbourhoodSearch

Create a new single neighbourhood search, specifying the problem to be solved and the neighbourhood used to
modify the current solution.
 SingleNeighbourhoodSearch(String, Problem<SolutionType>, Neighbourhood<? super SolutionType>)  Constructor for class org.jamesframework.core.search.SingleNeighbourhoodSearch

Create a new single neighbourhood search, specifying the problem to be solved, the neighbourhood used to
modify the current solution, and a custom search name.
 SinglePerturbationNeighbourhood  Class in org.jamesframework.core.subset.neigh

 SinglePerturbationNeighbourhood()  Constructor for class org.jamesframework.core.subset.neigh.SinglePerturbationNeighbourhood

Creates a new single perturbation neighbourhood without size limits.
 SinglePerturbationNeighbourhood(int, int)  Constructor for class org.jamesframework.core.subset.neigh.SinglePerturbationNeighbourhood

Creates a new single perturbation neighbourhood with given minimum and maximum subset size.
 SinglePerturbationNeighbourhood(int, int, Set<Integer>)  Constructor for class org.jamesframework.core.subset.neigh.SinglePerturbationNeighbourhood

Creates a new single perturbation neighbourhood with given minimum and maximum subset size,
providing a set of fixed IDs which are not allowed to be added, deleted nor swapped.
 SingleSwapNeighbourhood  Class in org.jamesframework.core.subset.neigh

A subset neighbourhood that generates swap moves only (see
SwapMove
).
 SingleSwapNeighbourhood()  Constructor for class org.jamesframework.core.subset.neigh.SingleSwapNeighbourhood

Creates a basic single swap neighbourhood.
 SingleSwapNeighbourhood(Set<Integer>)  Constructor for class org.jamesframework.core.subset.neigh.SingleSwapNeighbourhood

Creates a single swap neighbourhood with a given set of fixed IDs which are not allowed to be swapped.
 size()  Method in class org.jamesframework.core.util.FastLimitedQueue

Get the number of items contained in the queue.
 sizeLimit()  Method in class org.jamesframework.core.util.FastLimitedQueue

Get the size limit of the queue.
 Solution  Class in org.jamesframework.core.problems.sol

Represents an abstract solution.
 Solution()  Constructor for class org.jamesframework.core.problems.sol.Solution

 SolutionCopyException  Exception in org.jamesframework.core.exceptions

Exception thrown when failing to create a deep copy of a solution.
 SolutionCopyException()  Constructor for exception org.jamesframework.core.exceptions.SolutionCopyException

Creates a new instance without detail message.
 SolutionCopyException(String)  Constructor for exception org.jamesframework.core.exceptions.SolutionCopyException

Constructs an instance with the specified detail message.
 SolutionCopyException(Throwable)  Constructor for exception org.jamesframework.core.exceptions.SolutionCopyException

Constructs an instance with the specified cause.
 SolutionCopyException(String, Throwable)  Constructor for exception org.jamesframework.core.exceptions.SolutionCopyException

Constructs an instance with the specified detail message and cause.
 SolutionIterator<SolutionType extends Solution>  Interface in org.jamesframework.core.search.algo.exh

Interface of a generic solution iterator that iterates through a collection of solutions.
 SolutionModificationException  Exception in org.jamesframework.core.exceptions

Exception thrown when trying to apply an invalid modification to a solution.
 SolutionModificationException(Solution)  Constructor for exception org.jamesframework.core.exceptions.SolutionModificationException

Creates a new instance without detail message.
 SolutionModificationException(String, Solution)  Constructor for exception org.jamesframework.core.exceptions.SolutionModificationException

Constructs an instance with the specified detail message.
 SolutionModificationException(Throwable, Solution)  Constructor for exception org.jamesframework.core.exceptions.SolutionModificationException

Constructs an instance with the specified cause.
 SolutionModificationException(String, Throwable, Solution)  Constructor for exception org.jamesframework.core.exceptions.SolutionModificationException

Constructs an instance with the specified detail message and cause.
 start()  Method in class org.jamesframework.core.search.algo.PipedLocalSearch

General start method is overriden so that search is automatically disposed when
Search.start()
returns.
 start()  Method in class org.jamesframework.core.search.Search

Starts a search run and returns when this run has finished.
 startChecking()  Method in class org.jamesframework.core.search.stopcriteria.StopCriterionChecker

Start checking the stop criteria, in a separate background thread.
 statusChanged(Search<? extends SolutionType>, SearchStatus)  Method in interface org.jamesframework.core.search.listeners.SearchListener

Fired when the search enters a new status.
 SteepestDescent<SolutionType extends Solution>  Class in org.jamesframework.core.search.algo

Steepest descent algorithm, also referred to as hill climbing.
 SteepestDescent(Problem<SolutionType>, Neighbourhood<? super SolutionType>)  Constructor for class org.jamesframework.core.search.algo.SteepestDescent

Creates a new steepest descent search, specifying the problem to solve and the neighbourhood used to
modify the current solution.
 SteepestDescent(String, Problem<SolutionType>, Neighbourhood<? super SolutionType>)  Constructor for class org.jamesframework.core.search.algo.SteepestDescent

Creates a new steepest descent search, specifying the problem to solve, the neighbourhood used to
modify the current solution, and a custom search name.
 stepCompleted(Search<? extends SolutionType>, long)  Method in interface org.jamesframework.core.search.listeners.SearchListener

Fired when the search has completed a step.
 stop()  Method in class org.jamesframework.core.search.algo.BasicParallelSearch

When requesting to stop a basic parallel search, this request is propagated to each contained search.
 stop()  Method in class org.jamesframework.core.search.algo.PipedLocalSearch

When requesting to stop a piped local search, this request is propagated to each search in the pipeline.
 stop()  Method in class org.jamesframework.core.search.Search

Requests the search to stop.
 stopChecking()  Method in class org.jamesframework.core.search.stopcriteria.StopCriterionChecker

Instructs the stop criterion checker to stop checking.
 StopCriterion  Interface in org.jamesframework.core.search.stopcriteria

Interface of a stop criterion that may be attached to a search to terminate it when a certain condition is met.
 StopCriterionChecker  Class in org.jamesframework.core.search.stopcriteria

A stop criterion checker is responsible for checking the stop criteria of a given search, while this
search is running.
 StopCriterionChecker(Search<?>)  Constructor for class org.jamesframework.core.search.stopcriteria.StopCriterionChecker

Create a stop criterion checker dedicated to checking the stop criteria of the given search.
 stopCriterionSatisfied()  Method in class org.jamesframework.core.search.stopcriteria.StopCriterionChecker

Check whether at least one stop criterion is satisfied.
 SubsetIterator<T>  Class in org.jamesframework.core.util

A subset iterator generates all possible subsets of a given set, within the imposed size range.
 SubsetIterator(Set<T>, int, int)  Constructor for class org.jamesframework.core.util.SubsetIterator

Create a subset iterator that generates all subsets of the given set, within the imposed size range.
 SubsetIterator(Set<T>, int)  Constructor for class org.jamesframework.core.util.SubsetIterator

Create a subset iterator that generates all subsets of the given set, with a fixed size.
 SubsetMove  Interface in org.jamesframework.core.subset.neigh.moves

General interface of a subset move that adds a number of IDs to the selection and/or
removes a number of IDs.
 SubsetNeighbourhood  Class in org.jamesframework.core.subset.neigh

Abstract subset neighbourhood.
 SubsetNeighbourhood(Set<Integer>)  Constructor for class org.jamesframework.core.subset.neigh.SubsetNeighbourhood

Initialize abstract subset neighbourhood with a given set of fixed IDs that are not allowed to
be selected or deselected.
 SubsetProblem<DataType extends IntegerIdentifiedData>  Class in org.jamesframework.core.subset

Highlevel subset problem consisting of data, an objective and possibly some constraints (see
GenericProblem
).
 SubsetProblem(DataType, Objective<? super SubsetSolution, ? super DataType>, int, int, Comparator<Integer>)  Constructor for class org.jamesframework.core.subset.SubsetProblem

Creates a new subset problem with given data, objective and minimum/maximum subset size.
 SubsetProblem(DataType, Objective<? super SubsetSolution, ? super DataType>, int, int, boolean)  Constructor for class org.jamesframework.core.subset.SubsetProblem

Creates a new subset problem with given data, objective and minimum/maximum subset size.
 SubsetProblem(DataType, Objective<? super SubsetSolution, ? super DataType>, int, int)  Constructor for class org.jamesframework.core.subset.SubsetProblem

Creates a new subset problem with given data, objective and minimum/maximum subset size.
 SubsetProblem(DataType, Objective<? super SubsetSolution, ? super DataType>, int)  Constructor for class org.jamesframework.core.subset.SubsetProblem

Creates a subset problem with fixed subset size.
 SubsetProblem(DataType, Objective<? super SubsetSolution, ? super DataType>)  Constructor for class org.jamesframework.core.subset.SubsetProblem

Creates a subset problem without subset size limits.
 SubsetSolution  Class in org.jamesframework.core.subset

Highlevel subset solution modeled in terms of IDs of selected items.
 SubsetSolution(Set<Integer>)  Constructor for class org.jamesframework.core.subset.SubsetSolution

Creates a new subset solution given the set of all IDs, each corresponding to an underlying entity,
from which a subset is to be selected.
 SubsetSolution(Set<Integer>, Set<Integer>)  Constructor for class org.jamesframework.core.subset.SubsetSolution

Creates a new subset solution given the set of all IDs, and the set of currently selected IDs.
 SubsetSolution(Set<Integer>, boolean)  Constructor for class org.jamesframework.core.subset.SubsetSolution

Creates a new subset solution given the set of all IDs, each corresponding to an underlying entity,
from which a subset is to be selected.
 SubsetSolution(Set<Integer>, Set<Integer>, boolean)  Constructor for class org.jamesframework.core.subset.SubsetSolution

Creates a new subset solution given the set of all IDs, and the set of currently selected IDs.
 SubsetSolution(Set<Integer>, Comparator<Integer>)  Constructor for class org.jamesframework.core.subset.SubsetSolution

Creates a new subset solution given the set of all IDs, each corresponding to an underlying entity,
from which a subset is to be selected.
 SubsetSolution(Set<Integer>, Set<Integer>, Comparator<Integer>)  Constructor for class org.jamesframework.core.subset.SubsetSolution

Creates a new subset solution given the set of all IDs, and the set of currently selected IDs.
 SubsetSolution(SubsetSolution)  Constructor for class org.jamesframework.core.subset.SubsetSolution

Copy constructor.
 SubsetSolutionIterator  Class in org.jamesframework.core.subset.algo.exh

A subset solution iterator generates all possible subsets within a given size range, given a
set of IDs from which to select.
 SubsetSolutionIterator(Set<Integer>, int, int)  Constructor for class org.jamesframework.core.subset.algo.exh.SubsetSolutionIterator

Create a subset solution iterator that generates all subsets within the given size range,
sampled from the given set of IDs.
 SubsetSolutionIterator(Set<Integer>, int)  Constructor for class org.jamesframework.core.subset.algo.exh.SubsetSolutionIterator

Create a subset solution iterator that generates all subsets with a fixed size,
sampled from the given set of IDs.
 SubsetValidation  Class in org.jamesframework.core.subset.validations

Represents a validation of a subset solution.
 SubsetValidation(boolean, Validation)  Constructor for class org.jamesframework.core.subset.validations.SubsetValidation

Create a subset validation.
 SwapMove  Class in org.jamesframework.core.subset.neigh.moves

Simple subset move that removes a single ID from the current selection
and replaces it with a new ID which was previously not selected.
 SwapMove(int, int)  Constructor for class org.jamesframework.core.subset.neigh.moves.SwapMove

Creates a new swap move with specified IDs to add to and remove from the current selection
when being applied to a given subset solution.