choco.kernel.solver.propagation
Class ShavingTools

java.lang.Object
  extended by choco.kernel.solver.propagation.ShavingTools

public class ShavingTools
extends Object


Field Summary
 boolean detectLuckySolution
           
 boolean shaveLowerBound
           
 Solver solver
           
 IntDomainVar[] vars
           
 
Constructor Summary
ShavingTools(Solver solver, IntDomainVar[] vars)
           
 
Method Summary
 void destructiveLowerBound(IObjectiveManager objM)
           
protected  void detectLuckySolution()
           
 int getNbRemovals()
           
 Solver getSolver()
           
 IntDomainVar[] getVars()
           
 boolean isDetectingLuckySolution()
           
 boolean isShavingLowerBound()
           
 Boolean nextBottomUp(IObjectiveManager objM)
           
 void setDetectLuckySolution(boolean detectLuckySolution)
           
 void setShavingLowerBound(boolean b)
           
protected  void shaveBoundVar(IntDomainVar var)
           
protected  void shaveEnumVar(IntDomainVar var)
           
protected  boolean shaveObjective(IObjectiveManager objM)
           
protected  void shaveVars()
           
 void shaving()
           
protected  void shaving(IntDomainVar var, int val)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

solver

public final Solver solver

vars

public final IntDomainVar[] vars

shaveLowerBound

public boolean shaveLowerBound

detectLuckySolution

public boolean detectLuckySolution
Constructor Detail

ShavingTools

public ShavingTools(Solver solver,
                    IntDomainVar[] vars)
Parameters:
solver -
vars - The scope of shaving algorithm must not contain the objective.
Method Detail

isShavingLowerBound

public final boolean isShavingLowerBound()

setShavingLowerBound

public final void setShavingLowerBound(boolean b)

isDetectingLuckySolution

public final boolean isDetectingLuckySolution()

setDetectLuckySolution

public final void setDetectLuckySolution(boolean detectLuckySolution)

getSolver

public final Solver getSolver()

getVars

public final IntDomainVar[] getVars()

getNbRemovals

public final int getNbRemovals()

shaveVars

protected final void shaveVars()
                        throws ContradictionException,
                               choco.kernel.solver.propagation.ShavingTools.LuckySolutionException
Throws:
ContradictionException
choco.kernel.solver.propagation.ShavingTools.LuckySolutionException

shaving

public final void shaving()
                   throws ContradictionException
Throws:
ContradictionException

shaveEnumVar

protected void shaveEnumVar(IntDomainVar var)
                     throws choco.kernel.solver.propagation.ShavingTools.LuckySolutionException,
                            ContradictionException
Throws:
choco.kernel.solver.propagation.ShavingTools.LuckySolutionException
ContradictionException

shaveBoundVar

protected void shaveBoundVar(IntDomainVar var)
                      throws choco.kernel.solver.propagation.ShavingTools.LuckySolutionException,
                             ContradictionException
Throws:
choco.kernel.solver.propagation.ShavingTools.LuckySolutionException
ContradictionException

shaving

protected void shaving(IntDomainVar var,
                       int val)
                throws choco.kernel.solver.propagation.ShavingTools.LuckySolutionException,
                       ContradictionException
Throws:
choco.kernel.solver.propagation.ShavingTools.LuckySolutionException
ContradictionException

destructiveLowerBound

public final void destructiveLowerBound(IObjectiveManager objM)
                                 throws ContradictionException
Throws:
ContradictionException

shaveObjective

protected final boolean shaveObjective(IObjectiveManager objM)
                                throws ContradictionException,
                                       choco.kernel.solver.propagation.ShavingTools.LuckySolutionException
Throws:
ContradictionException
choco.kernel.solver.propagation.ShavingTools.LuckySolutionException

nextBottomUp

public Boolean nextBottomUp(IObjectiveManager objM)

detectLuckySolution

protected final void detectLuckySolution()
                                  throws choco.kernel.solver.propagation.ShavingTools.LuckySolutionException
Throws:
choco.kernel.solver.propagation.ShavingTools.LuckySolutionException


Copyright © 2012. All Rights Reserved.