public class ExtensionalSupportVA extends Constraint
Modifier and Type | Field and Description |
---|---|
static int |
idNumber
It specifies the id of the constraint.
|
IntVar[] |
list
It stores variables within this extensional constraint, order does
matter.
|
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 |
---|
ExtensionalSupportVA(ArrayList<? extends IntVar> variables,
int[][] tuples)
The constructor does not create local copy of tuples array.
|
ExtensionalSupportVA(IntVar[] list)
Partial constructor which stores variables involved in a constraint but
does not get information about tuples yet.
|
ExtensionalSupportVA(IntVar[] variables,
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.
|
int[] |
findFirstAllowed(int varPosition,
int value,
int[] t)
It finds the first allowed tuple from the given tuple.
|
protected int |
findPosition(int value,
int[] values) |
static void |
fromXML(ExtensionalSupportVA 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.
|
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 gives the position of the variable for which current domain of this
variable does not hold the used value.
|
int[] |
seekSupportVA(int varPosition,
int value)
It seeks support for a given variable-value pair.
|
int[] |
setFirstValid(int varPosition,
int value)
It computes the first valid tuple for a given variable-value pair.
|
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 static int idNumber
public IntVar[] list
public static String[] xmlAttributes
public ExtensionalSupportVA(IntVar[] list)
list
- public ExtensionalSupportVA(ArrayList<? extends IntVar> variables, int[][] tuples)
variables
- the constraint scope.tuples
- the tuples which are supports for the constraint.public ExtensionalSupportVA(IntVar[] variables, int[][] tuples)
variables
- the constraint scope.tuples
- the tuples which are supports for the constraint.public int[] seekSupportVA(int varPosition, int value)
varPosition
- position of the variable for which the support is seek.value
- value for which the support is seek.public int[] setFirstValid(int varPosition, int value)
varPosition
- position of the variable.value
- value for which the fist valid tuple is seek.public int[] findFirstAllowed(int varPosition, int value, int[] t)
varPosition
- position of the variable.value
- value for which first allowed tuple is seek.t
- tuple from which the search commences.public int seekInvalidPosition(int[] t)
t
- tuple being checked.public 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(ExtensionalSupportVA 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.