choco.palm.cbj.search
Class JumpGlobalSearchSolver

java.lang.Object
  extended by choco.AbstractEntity
      extended by choco.AbstractSolver
          extended by choco.search.AbstractGlobalSearchSolver
              extended by choco.search.Solve
                  extended by choco.palm.cbj.search.JumpGlobalSearchSolver
All Implemented Interfaces:
Entity
Direct Known Subclasses:
JumpAbstractOptimizer, MasterGlobalSearchSolver, SubSearchSolver

public class JumpGlobalSearchSolver
extends Solve

A solver based on backjumping algorithm. When a contradiction occurs, the latest responsible choice is found and all choice since his one are removed.


Field Summary
protected  Explanation currentFail
          An explanation justifying the current contradiction.
 
Fields inherited from class choco.search.AbstractGlobalSearchSolver
baseWorld, currentTraceIndex, DOWN_BRANCH, encounteredLimit, INIT_SEARCH, limits, loggingMaxDepth, mainGoal, nbSolutions, nextMove, OPEN_NODE, stopAtFirstSol, traceStack, UP_BRANCH
 
Fields inherited from class choco.AbstractSolver
logger, maxNbSolutionStored, solutions
 
Fields inherited from class choco.AbstractEntity
hook, problem
 
Constructor Summary
JumpGlobalSearchSolver(AbstractProblem pb)
          Builds a backjumping solver for the specified problem.
 
Method Summary
 java.lang.Boolean nextSolution()
          Browses the search tree until the next solution or until all the tree has been checked.
 
Methods inherited from class choco.search.AbstractGlobalSearchSolver
endTreeNode, endTreeSearch, getEncounteredLimit, incrementalRun, isEncounteredLimit, newTreeNode, newTreeSearch, popTrace, popTraceUntil, postDynamicCut, printRuntimeStatistics, pushTrace, recordSolution, run, setLoggingMaxDepth, topTrace
 
Methods inherited from class choco.AbstractSolver
existsSolution, makeSolutionFromCurrentState, restoreBestSolution, showSolution, storeSolution
 
Methods inherited from class choco.AbstractEntity
getProblem, pretty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

currentFail

protected Explanation currentFail
An explanation justifying the current contradiction.

Constructor Detail

JumpGlobalSearchSolver

public JumpGlobalSearchSolver(AbstractProblem pb)
Builds a backjumping solver for the specified problem.

Parameters:
pb - the problem to solve with this solver
Method Detail

nextSolution

public java.lang.Boolean nextSolution()
Browses the search tree until the next solution or until all the tree has been checked.

Overrides:
nextSolution in class AbstractGlobalSearchSolver
Returns:
Boolean.TRUE if a solution has been found, Boolean.FALSE if no solution has been found and null if the search has been interrupted by a limit