Package | Description |
---|---|
org.jamesframework.core.exceptions |
Custom James runtime exceptions.
|
org.jamesframework.core.factory |
Miscellaneous factory interfaces.
|
org.jamesframework.core.problems |
High-level problem specification.
|
org.jamesframework.core.problems.constraints |
Constraint interfaces.
|
org.jamesframework.core.problems.objectives |
Interfaces of objectives and produced evaluations.
|
org.jamesframework.core.problems.sol |
Solution related components.
|
org.jamesframework.core.search |
High-level search templates.
|
org.jamesframework.core.search.algo |
Algorithm implementations.
|
org.jamesframework.core.search.algo.exh |
Exhaustive search and components.
|
org.jamesframework.core.search.algo.tabu |
Tabu search and components (including tabu memory specification).
|
org.jamesframework.core.search.algo.vns |
Variable neighbourhood searches and components.
|
org.jamesframework.core.search.listeners |
Search listeners.
|
org.jamesframework.core.search.neigh |
Neighbourhoods and components.
|
org.jamesframework.core.subset |
Predefined subset problem.
|
Modifier and Type | Method and Description |
---|---|
Solution |
SolutionModificationException.getSolution()
Returns the solution that was being modified when this exception occurred.
|
Constructor and Description |
---|
SolutionModificationException(Solution solution)
Creates a new instance without detail message.
|
SolutionModificationException(String msg,
Solution solution)
Constructs an instance with the specified detail message.
|
SolutionModificationException(String msg,
Throwable cause,
Solution solution)
Constructs an instance with the specified detail message and cause.
|
SolutionModificationException(Throwable cause,
Solution solution)
Constructs an instance with the specified cause.
|
Modifier and Type | Interface and Description |
---|---|
interface |
LocalSearchFactory<SolutionType extends Solution>
Factory used to create a local search given the problem to be solved.
|
interface |
MetropolisSearchFactory<SolutionType extends Solution>
Factory used to create a Metropolis search, given the problem to be solved, the applied
neighbourhood and the desired temperature.
|
interface |
SearchFactory<SolutionType extends Solution>
Factory used to create a search given the problem to be solved.
|
Modifier and Type | Class and Description |
---|---|
class |
GenericProblem<SolutionType extends Solution,DataType>
A generic problem is fully based on delegation of its responsabilities, by separating data from the objective,
constraints (if any) and random solution generation.
|
interface |
Problem<SolutionType extends Solution>
Interface of a problem with a generic solution type.
|
Modifier and Type | Interface and Description |
---|---|
interface |
Constraint<SolutionType extends Solution,DataType>
Interface of a constraint that can be imposed on the solutions of a problem.
|
interface |
PenalizingConstraint<SolutionType extends Solution,DataType>
Interface of a penalizing constraint that assigns a penalty to a solution's evaluation if it does not
satisfy the constraint.
|
Modifier and Type | Interface and Description |
---|---|
interface |
Objective<SolutionType extends Solution,DataType>
Interface of an objective function that evaluates solutions using underlying data.
|
Modifier and Type | Interface and Description |
---|---|
interface |
RandomSolutionGenerator<SolutionType extends Solution,DataType>
A random solution generator creates random solutions of a specific type, given some data.
|
Modifier and Type | Method and Description |
---|---|
static <T extends Solution> |
Solution.checkedCopy(T solution)
Creates a checked deep copy of the given solution with specific type
T
(a subclass of Solution ). |
Modifier and Type | Method and Description |
---|---|
abstract Solution |
Solution.copy()
Creates a deep copy of this solution.
|
Modifier and Type | Class and Description |
---|---|
class |
LocalSearch<SolutionType extends Solution>
Local searches are searches that start from an initial solution and modify this solution in an attempt to improve it.
|
class |
MultiNeighbourhoodSearch<SolutionType extends Solution>
Abstract neighbourhood search that uses multiple neighbourhoods to modify the current solution.
|
class |
NeighbourhoodSearch<SolutionType extends Solution>
A neighbourhood search is a specific kind of local search in which the current solution is repeatedly modified by
applying moves, generated by one or more neighbourhoods, that transform this solution into a similar, neighbouring
solution.
|
class |
Search<SolutionType extends Solution>
General abstract search used to solve a problem with the specified solution type.
|
class |
SingleNeighbourhoodSearch<SolutionType extends Solution>
Abstract neighbourhood search that uses a single neighbourhood to modify the current solution.
|
Modifier and Type | Class and Description |
---|---|
class |
BasicParallelSearch<SolutionType extends Solution>
A basic parallel search runs several (heterogeneous) searches in parallel and keeps track of the best solution found
by any of these searches.
|
class |
MetropolisSearch<SolutionType extends Solution>
Metropolis search (fixed temperature).
|
class |
ParallelTempering<SolutionType extends Solution>
The parallel tempering algorithm uses several Metropolis search replicas with different
temperatures in a given range, where good solutions are pushed towards cool replicas for
the sake of convergence, while bad solutions are pushed towards hot replicas in an attempt
to find further improvements.
|
class |
PipedLocalSearch<SolutionType extends Solution>
A piped local search consists of a composition of other local search \(S_1, ..., S_n\).
|
class |
RandomDescent<SolutionType extends Solution>
Basic random descent algorithm.
|
class |
RandomSearch<SolutionType extends Solution>
The random search algorithm iteratively samples a random solution and checks
whether a new best solution has been found, in every search step.
|
class |
SteepestDescent<SolutionType extends Solution>
Steepest descent algorithm, also referred to as hill climbing.
|
Modifier and Type | Class and Description |
---|---|
class |
ExhaustiveSearch<SolutionType extends Solution>
The exhaustive search algorithm evaluates every solution generated by the given solution iterator and selects the best one.
|
interface |
SolutionIterator<SolutionType extends Solution>
Interface of a generic solution iterator that iterates through a collection of solutions.
|
Modifier and Type | Class and Description |
---|---|
class |
FullTabuMemory<SolutionType extends Solution>
Full tabu memory that stores deeps copies of recently visited solutions and declares a move tabu if
applying it to the current solution yields a neighbouring solution which is currently contained in
the memory.
|
interface |
TabuMemory<SolutionType extends Solution>
Interface of tabu memory which is used by tabu search and keeps track of
recently visited solutions, properties of those solutions and/or recent
modifications made to the current solution.
|
class |
TabuSearch<SolutionType extends Solution>
Tabu search algorithm.
|
Modifier and Type | Class and Description |
---|---|
class |
ReducedVariableNeighbourhoodSearch<SolutionType extends Solution>
Reduced variable neighbourhood search (RVNS) algorithm.
|
class |
VariableNeighbourhoodDescent<SolutionType extends Solution>
Variable neighbourhood descent algorithm.
|
class |
VariableNeighbourhoodSearch<SolutionType extends Solution>
Variable neighbourhood search (VNS) algorithm.
|
Modifier and Type | Interface and Description |
---|---|
interface |
SearchListener<SolutionType extends Solution>
Interface of a search listener that can be attached to any search with the specified solution type (or a subtype).
|
Modifier and Type | Interface and Description |
---|---|
interface |
Move<SolutionType extends Solution>
Interface of a move that can be applied to a generic solution type.
|
interface |
Neighbourhood<SolutionType extends Solution>
Interface of a neighbourhood that generates moves to transform a given solution into a neighbouring solution.
|
Modifier and Type | Class and Description |
---|---|
class |
SubsetSolution
High-level subset solution modeled in terms of IDs of selected items.
|
Copyright © 2016. All rights reserved.