choco.palm.benders.search
Class ApproximateMaster

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
                      extended by choco.palm.benders.search.MasterGlobalSearchSolver
                          extended by choco.palm.benders.search.ApproximateMaster
All Implemented Interfaces:
Entity

public class ApproximateMaster
extends MasterGlobalSearchSolver

Benders search with approximated (not independent) substructures in case of satisfaction problems.

Provide a specific implementation of the resolution of subproblems by fusionning branching of previous feasible subproblems. Otherwise, it attempts to derive disjoint cuts on each subproblem.


Field Summary
 
Fields inherited from class choco.palm.benders.search.MasterGlobalSearchSolver
bendersCut, cuts, decomposition, fail, feasible, logger, master, masterWorld, nbCutLearned, nbFeasibleProblems, partialSol, stop, subgoals, subproblems
 
Fields inherited from class choco.palm.cbj.search.JumpGlobalSearchSolver
currentFail
 
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
maxNbSolutionStored, solutions
 
Fields inherited from class choco.AbstractEntity
hook, problem
 
Constructor Summary
ApproximateMaster(AbstractProblem pb, int nbsub)
           
ApproximateMaster(AbstractProblem pb, int nbsub, MasterSlavesRelation relation)
           
 
Method Summary
 void solveSubProblems()
          Main iteration over the subproblems
 void storePartialSolution(int firstSpb, int lastSpb)
           
 
Methods inherited from class choco.palm.benders.search.MasterGlobalSearchSolver
addCuts, cleanPartialSolutions, getMaster, getNbCuts, getOptimumValue, getSubproblems, incrementalRun, logCuts, logSolution, manageCuts, nextMasterMove, nextSolution, restorePartialSolutions, setCutsConstraint, setMainGoal, setSubGoal, solutionFound, storeCuts, storePartialSolution, updateLimit
 
Methods inherited from class choco.search.AbstractGlobalSearchSolver
endTreeNode, endTreeSearch, getEncounteredLimit, 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
 

Constructor Detail

ApproximateMaster

public ApproximateMaster(AbstractProblem pb,
                         int nbsub,
                         MasterSlavesRelation relation)

ApproximateMaster

public ApproximateMaster(AbstractProblem pb,
                         int nbsub)
Method Detail

solveSubProblems

public void solveSubProblems()
Description copied from class: MasterGlobalSearchSolver
Main iteration over the subproblems

Overrides:
solveSubProblems in class MasterGlobalSearchSolver

storePartialSolution

public void storePartialSolution(int firstSpb,
                                 int lastSpb)