|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.ObjectJaCoP.constraints.DecomposedConstraint
JaCoP.constraints.Constraint
JaCoP.constraints.PrimitiveConstraint
JaCoP.constraints.NoGood
public class NoGood
NoGood constraints implements a constraint which disallows given combination of values for given variables. NoGoods are special constraints as they can be only triggered only when all variables except one are grounded and equal to disallow values. This allows efficient implementation based on watched literals idea from SAT community. Do not be fooled by watched literals, if you add thousands of no-goods then traversing even 1/10 of them if they are watched by variable which has been grounded can slow down search considerably. NoGoods constraints are imposed at all levels once added. Do not use in subsearches, as it will not take into account the assignments performed in master search.
| Field Summary | |
|---|---|
int[] |
listOfValues
It specifies a list of values in no-good constraint. |
IntVar[] |
listOfVars
It specifies a list of variables in no-good constraint. |
static java.lang.String[] |
xmlAttributes
It specifies the arguments required to be saved by an XML format as well as the constructor being called to recreate an object from an XML format. |
| Fields inherited from class JaCoP.constraints.PrimitiveConstraint |
|---|
notConsistencyPruningEvents |
| Fields inherited from class JaCoP.constraints.Constraint |
|---|
atomicExecution, consistencyPruningEvents, earlyTerminationOK, id, increaseWeight, numberArgs, numberId |
| Fields inherited from class JaCoP.constraints.DecomposedConstraint |
|---|
queueIndex |
| Constructor Summary | |
|---|---|
NoGood(java.util.ArrayList<? extends IntVar> listOfVars,
java.util.ArrayList<java.lang.Integer> listOfValues)
It creates a no-good constraint. |
|
NoGood(IntVar[] listOfVars,
int[] listOfValues)
It creates a no-good constraint. |
|
| Method Summary | |
|---|---|
java.util.ArrayList<Var> |
arguments()
It returns the variables in a scope of the constraint. |
void |
consistency(Store store)
It is a (most probably incomplete) consistency function which removes the values from variables domains. |
int |
getConsistencyPruningEvent(Var var)
It retrieves the pruning event which causes reevaluation of the constraint. |
int |
getNestedPruningEvent(Var var,
boolean mode)
It retrieves the pruning event for which any composed constraint which uses this constraint should be evaluated. |
int |
getNotConsistencyPruningEvent(Var var)
It retrieves the pruning event which causes reevaluation of the constraint notConsistency() function. |
java.lang.String |
id()
It gives the id string of a constraint. |
void |
impose(Store store)
It imposes the constraint in a given store. |
void |
increaseWeight()
It increases the weight of the variables in the constraint scope. |
void |
notConsistency(Store store)
It makes pruning in such a way that constraint is notConsistent. |
boolean |
notSatisfied()
It checks if constraint would be always not satisfied. |
void |
removeConstraint()
This function does nothing as constraints can not be removed for a given level. |
boolean |
satisfied()
First time consistency function does pruning is the last time it will be called. |
java.lang.String |
toString()
It produces a string representation of a constraint state. |
| Methods inherited from class JaCoP.constraints.PrimitiveConstraint |
|---|
setNotConsistencyPruningEvent |
| Methods inherited from class JaCoP.constraints.Constraint |
|---|
cleanAfterFailure, decompose, getGuideConstraint, getGuideValue, getGuideVariable, impose, imposeDecomposition, numberArgs, queueVariable, removeLevel, removeLevelLate, requiresMonotonicity, setConsistencyPruningEvent, supplyGuideFeedback |
| Methods inherited from class JaCoP.constraints.DecomposedConstraint |
|---|
auxiliaryVariables, imposeDecomposition |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public IntVar[] listOfVars
public int[] listOfValues
public static java.lang.String[] xmlAttributes
| Constructor Detail |
|---|
public NoGood(IntVar[] listOfVars,
int[] listOfValues)
listOfVars - the scope of the constraint.listOfValues - no-good values which all-together assignment to variables within constraint scope is a no-good.
public NoGood(java.util.ArrayList<? extends IntVar> listOfVars,
java.util.ArrayList<java.lang.Integer> listOfValues)
listOfVars - the scope of the constraint.listOfValues - no-good values which all-together assignment to variables within constraint scope is a no-good.| Method Detail |
|---|
public java.util.ArrayList<Var> arguments()
Constraint
arguments in class Constraintpublic void consistency(Store store)
Constraint
consistency in class Constraintstore - constraint store within which the constraint consistency is being checked.public int getConsistencyPruningEvent(Var var)
Constraint
getConsistencyPruningEvent in class Constraintvar - variable for which pruning event is retrieved
public java.lang.String id()
Constraint
id in class Constraintpublic void impose(Store store)
Constraint
impose in class Constraintstore - the constraint store to which the constraint is imposed to.public void removeConstraint()
removeConstraint in class Constraintpublic boolean satisfied()
satisfied in class Constraintpublic java.lang.String toString()
Constraint
toString in class Constraintpublic void increaseWeight()
Constraint
increaseWeight in class Constraintpublic boolean notSatisfied()
PrimitiveConstraint
notSatisfied in class PrimitiveConstraint
public int getNestedPruningEvent(Var var,
boolean mode)
PrimitiveConstraint
getNestedPruningEvent in class PrimitiveConstraintvar - for which pruning event is retrievedmode - decides if pruning event for consistency or nonconsistency is required.
public int getNotConsistencyPruningEvent(Var var)
PrimitiveConstraint
getNotConsistencyPruningEvent in class PrimitiveConstraintvar - for which pruning event is retrieved
public void notConsistency(Store store)
PrimitiveConstraint
notConsistency in class PrimitiveConstraintstore - the constraint store in which context the notConsistency technique is evaluated.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||