public class ExtensionalConflictVA extends Constraint
Modifier and Type | Field and Description |
---|---|
IntVar[] |
list
It stores variables within this extensional constraint, order does
matter.
|
int[][] |
tuplesFromConstructor
It specifies the tuples given in the constructor.
|
static 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.
|
atomicExecution, consistencyPruningEvents, earlyTerminationOK, id, increaseWeight, numberArgs, numberId, trace
queueIndex
Constructor and Description |
---|
ExtensionalConflictVA(ArrayList<? extends IntVar> variables,
int[][] tuples)
The constructor does not create local copy of tuples array.
|
ExtensionalConflictVA(IntVar[] list)
Partial constructor which stores variables involved in a constraint but
does not get information about tuples yet.
|
ExtensionalConflictVA(IntVar[] list,
int[][] tuples)
Constructor stores reference to tuples until imposition, any changes to
tuples parameter will be reflected in the constraint behavior.
|
Modifier and Type | Method and Description |
---|---|
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.
|
protected int |
findPosition(int value,
int[] values) |
static void |
fromXML(ExtensionalConflictVA object,
String content)
It updates the specified constraint with the information
stored in the string.
|
int |
getConsistencyPruningEvent(Var var)
It retrieves the pruning event which causes reevaluation of the
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.
|
int |
isDisallowed(int varPosition,
int value,
int[] t)
It returns the position of disallowed tuple in the array of tuples for a given variable-value pair.
|
void |
queueVariable(int level,
Var var)
This is a function called to indicate which variable in a scope of
constraint has changed.
|
void |
removeConstraint()
It removes the constraint by removing this constraint from all variables.
|
void |
removeLevel(int level)
It puts back tuples which have lost their support status at the level
which is being removed.
|
boolean |
satisfied()
It checks if the constraint is satisfied.
|
int |
seekInvalidPosition(int[] t)
It finds the position at which the tuple is invalid.
|
int[] |
seekSupportVA(int varPosition,
int value)
It seeks support tuple for a given variable and its value.
|
int[] |
setFirstValid(int varPosition,
int value)
It computes the first valid tuple given restriction that a variable will
be equal to a given value.
|
String |
toString()
It produces a string representation of a constraint state.
|
void |
toXML(TransformerHandler tf)
It writes the content of this object as the content of XML
element so later it can be used to restore the object from
XML.
|
cleanAfterFailure, decompose, getGuideConstraint, getGuideValue, getGuideVariable, id, impose, imposeDecomposition, numberArgs, removeLevelLate, requiresMonotonicity, setConsistencyPruningEvent, supplyGuideFeedback
auxiliaryVariables, derivative, imposeDecomposition
public int[][] tuplesFromConstructor
public IntVar[] list
public static String[] xmlAttributes
public ExtensionalConflictVA(IntVar[] list)
list
- public ExtensionalConflictVA(IntVar[] list, int[][] tuples)
list
- tuples
- public ExtensionalConflictVA(ArrayList<? extends IntVar> variables, int[][] tuples)
variables
- the scope of the extensional conflict constraint.tuples
- the conflict (forbidden) tuples for that constraint.public int[] seekSupportVA(int varPosition, int value)
varPosition
- variable for which the support is seeked.value
- value of the variable for which support is seeked.public int[] setFirstValid(int varPosition, int value)
varPosition
- the position of the variable.value
- the value of the variable.public int isDisallowed(int varPosition, int value, int[] t)
varPosition
- variable for which we search for the forbidden tuple.value
- value for which we search for the forbidden tuple.t
- tuple which we check for forbidness.public int seekInvalidPosition(int[] t)
t
- tuple being check for in-validitypublic ArrayList<Var> arguments()
Constraint
arguments
in class Constraint
public void removeLevel(int level)
removeLevel
in class Constraint
level
- the level which is being removed.public void consistency(Store store)
Constraint
consistency
in class Constraint
store
- constraint store within which the constraint consistency is being checked.protected int findPosition(int value, int[] values)
public int getConsistencyPruningEvent(Var var)
Constraint
getConsistencyPruningEvent
in class Constraint
var
- variable for which pruning event is retrievedpublic void impose(Store store)
Constraint
impose
in class Constraint
store
- the constraint store to which the constraint is imposed to.public void queueVariable(int level, Var var)
Constraint
queueVariable
in class Constraint
level
- the level of the store at which the change has occurred.var
- variable which has changed.public void removeConstraint()
Constraint
removeConstraint
in class Constraint
public boolean satisfied()
Constraint
satisfied
in class Constraint
public String toString()
Constraint
toString
in class Constraint
public void toXML(TransformerHandler tf) throws SAXException
tf
- a place to write the content of the object.SAXException
public static void fromXML(ExtensionalConflictVA object, String content)
object
- the constraint to be updated.content
- the information used for update.public void increaseWeight()
Constraint
increaseWeight
in class Constraint
Copyright © 2015. All rights reserved.