jopt.csp.spi.search
Class LocalSearchImpl

java.lang.Object
  extended byjopt.csp.spi.search.LocalSearchImpl
All Implemented Interfaces:
jopt.csp.search.LocalSearch

public class LocalSearchImpl
extends java.lang.Object
implements jopt.csp.search.LocalSearch

Creates and returns common local search objects that can be used to build searches

Version:
$Revision: 1.10 $
Author:
Nick Coleman

Constructor Summary
LocalSearchImpl(ConstraintStore store)
           
 
Method Summary
 jopt.csp.search.SearchAction browseNeighborhood(jopt.csp.solution.SolverSolution initial, jopt.csp.search.Neighborhood hood, jopt.csp.search.CurrentNeighbor current)
           
 jopt.csp.search.SearchAction browseNeighborhood(jopt.csp.solution.SolverSolution initial, jopt.csp.search.Neighborhood hood, jopt.csp.search.Metaheuristic meta, jopt.csp.search.CurrentNeighbor current)
           
 jopt.csp.search.SearchAction browseNeighbors(jopt.csp.solution.SolverSolution initial, jopt.csp.solution.SolverSolution[] neighbors)
           
 jopt.csp.search.Neighborhood flipNeighborhood(jopt.csp.variable.CspIntVariable[] vars)
           
 jopt.csp.search.SearchAction improve(jopt.csp.solution.SolverSolution solution, double step)
           
 jopt.csp.search.SearchAction improve(jopt.csp.solution.SolverSolution solution, float step)
           
 jopt.csp.search.SearchAction improve(jopt.csp.solution.SolverSolution solution, int step)
           
 jopt.csp.search.SearchAction improve(jopt.csp.solution.SolverSolution solution, long step)
           
 jopt.csp.search.SearchAction moveToNeighbor(jopt.csp.solution.SolverSolution initial, jopt.csp.solution.SolverSolution neighbor)
           
 jopt.csp.search.SearchAction neighborMove(jopt.csp.solution.SolverSolution solution, jopt.csp.search.Neighborhood hood)
           
 jopt.csp.search.SearchAction neighborMove(jopt.csp.solution.SolverSolution solution, jopt.csp.search.Neighborhood hood, jopt.csp.search.Metaheuristic meta)
           
 jopt.csp.search.SearchAction neighborMove(jopt.csp.solution.SolverSolution solution, jopt.csp.search.Neighborhood hood, jopt.csp.search.Metaheuristic meta, jopt.csp.search.SearchGoal goal)
           
 jopt.csp.search.SearchAction neighborMove(jopt.csp.solution.SolverSolution solution, jopt.csp.search.Neighborhood hood, jopt.csp.search.SearchGoal goal)
           
 jopt.csp.search.Neighborhood randomize(jopt.csp.search.Neighborhood neighborhood)
           
 jopt.csp.search.Neighborhood randomize(jopt.csp.search.Neighborhood[] neighborhoods)
           
 jopt.csp.search.SearchAction selectCurrentNeighbor(jopt.csp.solution.SolverSolution initial, jopt.csp.search.CurrentNeighbor current)
           
 jopt.csp.search.Neighborhood swapNeighborhood(jopt.csp.variable.CspIntVariable[] vars)
           
 jopt.csp.search.Metaheuristic tabu(int forbiddenUndoMoves)
           
 jopt.csp.search.Metaheuristic tabu(int forbiddenUndoMoves, double objectiveGap)
           
 jopt.csp.search.Metaheuristic tabu(int forbiddenUndoMoves, int forbiddenAlterMoves, double objectiveGap)
           
 jopt.csp.search.SearchAction tabuMove(jopt.csp.solution.SolverSolution solution, jopt.csp.search.Neighborhood hood, int numToCheck)
           
 jopt.csp.search.SearchAction tabuMove(jopt.csp.solution.SolverSolution solution, jopt.csp.search.Neighborhood hood, jopt.csp.search.Metaheuristic meta, int numToCheck)
           
 jopt.csp.search.SearchAction tabuMove(jopt.csp.solution.SolverSolution solution, jopt.csp.search.Neighborhood hood, jopt.csp.search.Metaheuristic meta, jopt.csp.search.SearchGoal goal, int numToCheck)
           
 jopt.csp.search.SearchAction tabuMove(jopt.csp.solution.SolverSolution solution, jopt.csp.search.Neighborhood hood, jopt.csp.search.SearchGoal goal, int numToCheck)
           
 jopt.csp.search.Neighborhood unifiedNeighborhood(jopt.csp.search.Neighborhood[] neighborhoods)
           
 jopt.csp.search.Neighborhood weightedRandomize(jopt.csp.search.Neighborhood[] neighborhoods, double[] weights)
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

LocalSearchImpl

public LocalSearchImpl(ConstraintStore store)
Method Detail

browseNeighbors

public jopt.csp.search.SearchAction browseNeighbors(jopt.csp.solution.SolverSolution initial,
                                                    jopt.csp.solution.SolverSolution[] neighbors)
Specified by:
browseNeighbors in interface jopt.csp.search.LocalSearch

moveToNeighbor

public jopt.csp.search.SearchAction moveToNeighbor(jopt.csp.solution.SolverSolution initial,
                                                   jopt.csp.solution.SolverSolution neighbor)
Specified by:
moveToNeighbor in interface jopt.csp.search.LocalSearch

flipNeighborhood

public jopt.csp.search.Neighborhood flipNeighborhood(jopt.csp.variable.CspIntVariable[] vars)
Specified by:
flipNeighborhood in interface jopt.csp.search.LocalSearch

swapNeighborhood

public jopt.csp.search.Neighborhood swapNeighborhood(jopt.csp.variable.CspIntVariable[] vars)
Specified by:
swapNeighborhood in interface jopt.csp.search.LocalSearch

browseNeighborhood

public jopt.csp.search.SearchAction browseNeighborhood(jopt.csp.solution.SolverSolution initial,
                                                       jopt.csp.search.Neighborhood hood,
                                                       jopt.csp.search.CurrentNeighbor current)
Specified by:
browseNeighborhood in interface jopt.csp.search.LocalSearch

unifiedNeighborhood

public jopt.csp.search.Neighborhood unifiedNeighborhood(jopt.csp.search.Neighborhood[] neighborhoods)
Specified by:
unifiedNeighborhood in interface jopt.csp.search.LocalSearch

randomize

public jopt.csp.search.Neighborhood randomize(jopt.csp.search.Neighborhood[] neighborhoods)
Specified by:
randomize in interface jopt.csp.search.LocalSearch

randomize

public jopt.csp.search.Neighborhood randomize(jopt.csp.search.Neighborhood neighborhood)
Specified by:
randomize in interface jopt.csp.search.LocalSearch

weightedRandomize

public jopt.csp.search.Neighborhood weightedRandomize(jopt.csp.search.Neighborhood[] neighborhoods,
                                                      double[] weights)
Specified by:
weightedRandomize in interface jopt.csp.search.LocalSearch

browseNeighborhood

public jopt.csp.search.SearchAction browseNeighborhood(jopt.csp.solution.SolverSolution initial,
                                                       jopt.csp.search.Neighborhood hood,
                                                       jopt.csp.search.Metaheuristic meta,
                                                       jopt.csp.search.CurrentNeighbor current)
Specified by:
browseNeighborhood in interface jopt.csp.search.LocalSearch

selectCurrentNeighbor

public jopt.csp.search.SearchAction selectCurrentNeighbor(jopt.csp.solution.SolverSolution initial,
                                                          jopt.csp.search.CurrentNeighbor current)
Specified by:
selectCurrentNeighbor in interface jopt.csp.search.LocalSearch

improve

public jopt.csp.search.SearchAction improve(jopt.csp.solution.SolverSolution solution,
                                            int step)
Specified by:
improve in interface jopt.csp.search.LocalSearch

improve

public jopt.csp.search.SearchAction improve(jopt.csp.solution.SolverSolution solution,
                                            float step)
Specified by:
improve in interface jopt.csp.search.LocalSearch

improve

public jopt.csp.search.SearchAction improve(jopt.csp.solution.SolverSolution solution,
                                            long step)
Specified by:
improve in interface jopt.csp.search.LocalSearch

improve

public jopt.csp.search.SearchAction improve(jopt.csp.solution.SolverSolution solution,
                                            double step)
Specified by:
improve in interface jopt.csp.search.LocalSearch

neighborMove

public jopt.csp.search.SearchAction neighborMove(jopt.csp.solution.SolverSolution solution,
                                                 jopt.csp.search.Neighborhood hood,
                                                 jopt.csp.search.SearchGoal goal)
Specified by:
neighborMove in interface jopt.csp.search.LocalSearch

neighborMove

public jopt.csp.search.SearchAction neighborMove(jopt.csp.solution.SolverSolution solution,
                                                 jopt.csp.search.Neighborhood hood,
                                                 jopt.csp.search.Metaheuristic meta,
                                                 jopt.csp.search.SearchGoal goal)
Specified by:
neighborMove in interface jopt.csp.search.LocalSearch

neighborMove

public jopt.csp.search.SearchAction neighborMove(jopt.csp.solution.SolverSolution solution,
                                                 jopt.csp.search.Neighborhood hood)
Specified by:
neighborMove in interface jopt.csp.search.LocalSearch

neighborMove

public jopt.csp.search.SearchAction neighborMove(jopt.csp.solution.SolverSolution solution,
                                                 jopt.csp.search.Neighborhood hood,
                                                 jopt.csp.search.Metaheuristic meta)
Specified by:
neighborMove in interface jopt.csp.search.LocalSearch

tabuMove

public jopt.csp.search.SearchAction tabuMove(jopt.csp.solution.SolverSolution solution,
                                             jopt.csp.search.Neighborhood hood,
                                             jopt.csp.search.SearchGoal goal,
                                             int numToCheck)
Specified by:
tabuMove in interface jopt.csp.search.LocalSearch

tabuMove

public jopt.csp.search.SearchAction tabuMove(jopt.csp.solution.SolverSolution solution,
                                             jopt.csp.search.Neighborhood hood,
                                             jopt.csp.search.Metaheuristic meta,
                                             jopt.csp.search.SearchGoal goal,
                                             int numToCheck)
Specified by:
tabuMove in interface jopt.csp.search.LocalSearch

tabuMove

public jopt.csp.search.SearchAction tabuMove(jopt.csp.solution.SolverSolution solution,
                                             jopt.csp.search.Neighborhood hood,
                                             int numToCheck)
Specified by:
tabuMove in interface jopt.csp.search.LocalSearch

tabuMove

public jopt.csp.search.SearchAction tabuMove(jopt.csp.solution.SolverSolution solution,
                                             jopt.csp.search.Neighborhood hood,
                                             jopt.csp.search.Metaheuristic meta,
                                             int numToCheck)
Specified by:
tabuMove in interface jopt.csp.search.LocalSearch

tabu

public jopt.csp.search.Metaheuristic tabu(int forbiddenUndoMoves,
                                          int forbiddenAlterMoves,
                                          double objectiveGap)
Specified by:
tabu in interface jopt.csp.search.LocalSearch

tabu

public jopt.csp.search.Metaheuristic tabu(int forbiddenUndoMoves,
                                          double objectiveGap)
Specified by:
tabu in interface jopt.csp.search.LocalSearch

tabu

public jopt.csp.search.Metaheuristic tabu(int forbiddenUndoMoves)
Specified by:
tabu in interface jopt.csp.search.LocalSearch