choco.kernel.solver.branch
Interface IntBranching

All Superinterfaces:
BranchingStrategy
All Known Implementing Classes:
AbstractAssignOrForbidBranching, AbstractBinIntBranching, AbstractBinIntBranchingStrategy, AbstractDomOverWDegBinBranching, AbstractDomOverWDegBranching, AbstractIntBranching, AbstractIntBranchingStrategy, AbstractLargeIntBranching, AbstractLargeIntBranchingStrategy, AbstractSetBranchingStrategy, AssignInterval, AssignOrForbidIntVarVal, AssignOrForbidIntVarValPair, AssignSetVar, AssignVar, BranchingWithLoggingStatements, DomOverWDegBinBranching, DomOverWDegBinBranchingNew, DomOverWDegBranching, DomOverWDegBranchingNew, ImpactBasedBranching, NSPBranching, PackDynRemovals, SetTimes, TaskOverWDegBinBranching

public interface IntBranching
extends BranchingStrategy

IntBranching objects are specific branching objects where each branch is labeled with an integer. This is typically useful for choice points in search trees.


Field Summary
 
Fields inherited from interface choco.kernel.solver.branch.BranchingStrategy
LOGGER
 
Method Summary
 boolean finishedBranching(IntBranchingDecision decision)
          Checks whether all branches have already been explored at the current choice point.
 String getDecisionLogMessage(IntBranchingDecision decision)
          The logging message associated with the current decision.
 void goDownBranch(IntBranchingDecision decision)
          Performs the action, so that we go down a branch from the current choice point.
 void goUpBranch(IntBranchingDecision decision)
          Performs the action, so that we go up the current branch to the father choice point.
 void setFirstBranch(IntBranchingDecision decision)
          compute the first decision by setting a branching value or modifying the branching object
 void setNextBranch(IntBranchingDecision decision)
          compute the next decision by setting a branching value or modifying the branching object
 
Methods inherited from interface choco.kernel.solver.branch.BranchingStrategy
selectBranchingObject
 

Method Detail

goDownBranch

void goDownBranch(IntBranchingDecision decision)
                  throws ContradictionException
Performs the action, so that we go down a branch from the current choice point.

Parameters:
decision - the decision to apply.
Throws:
ContradictionException - if a domain empties or a contradiction is infered

goUpBranch

void goUpBranch(IntBranchingDecision decision)
                throws ContradictionException
Performs the action, so that we go up the current branch to the father choice point.

Parameters:
decision - the decision that has been set at the father choice point
Throws:
ContradictionException - if a domain empties or a contradiction is infered

setFirstBranch

void setFirstBranch(IntBranchingDecision decision)
compute the first decision by setting a branching value or modifying the branching object

Parameters:
x - the current decision

setNextBranch

void setNextBranch(IntBranchingDecision decision)
compute the next decision by setting a branching value or modifying the branching object

Parameters:
x - the current decision

finishedBranching

boolean finishedBranching(IntBranchingDecision decision)
Checks whether all branches have already been explored at the current choice point.

Parameters:
decision - the last decision applied
Returns:
true if no more branches can be generated

getDecisionLogMessage

String getDecisionLogMessage(IntBranchingDecision decision)
The logging message associated with the current decision.

Parameters:
decision - current decision
Returns:
logging message.


Copyright © 2012. All Rights Reserved.