public class Linear extends PrimitiveConstraint implements UsesQueueVariable
Modifier and Type | Field and Description |
---|---|
static byte |
eq
Defines relations
|
static byte |
ge
Defines relations
|
static byte |
gt
Defines relations
|
static byte |
le
Defines relations
|
FloatVar[] |
list
It specifies a list of variables being summed.
|
static byte |
lt
Defines relations
|
static byte |
ne
Defines relations
|
byte |
relationType
It specifies what relations is used by this constraint
|
double |
sum
It specifies variable for the overall sum.
|
double[] |
weights
It specifies a list of weights associated with the variables being summed.
|
notConsistencyPruningEvents
atomicExecution, consistencyPruningEvents, constraintScope, earlyTerminationOK, increaseWeight, numberId, scope, trace
queueIndex
Constructor and Description |
---|
Linear(Store store,
FloatVar[] list,
double[] weights,
String rel,
double sum) |
Linear(Store store,
FloatVar[] list,
double[] weights,
String rel,
FloatVar sum) |
Linear(Store store,
List<? extends FloatVar> variables,
List<Double> weights,
String rel,
double sum)
It constructs the constraint Linear.
|
Modifier and Type | Method and Description |
---|---|
void |
consistency(Store store)
It is a (most probably incomplete) consistency function which removes the
values from variables domains.
|
int |
getDefaultConsistencyPruningEvent() |
protected int |
getDefaultNestedConsistencyPruningEvent() |
protected int |
getDefaultNestedNotConsistencyPruningEvent() |
protected int |
getDefaultNotConsistencyPruningEvent() |
void |
impose(Store store)
It imposes the constraint in a given store.
|
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 |
queueVariable(int level,
Var var)
This is a function called to indicate which variable in a scope of
constraint has changed.
|
String |
rel2String() |
byte |
relation(String r) |
boolean |
satisfied()
It checks if the constraint is satisfied.
|
String |
toString()
It produces a string representation of a constraint state.
|
getNestedPruningEvent, getNotConsistencyPruningEvent, include, setNotConsistencyPruningEvent
afc, arguments, cleanAfterFailure, decompose, getConsistencyPruningEvent, getGuideConstraint, getGuideValue, getGuideVariable, grounded, grounded, id, impose, imposeDecomposition, increaseWeight, intArrayToString, long2int, numberArgs, removeConstraint, requiresMonotonicity, setConsistencyPruningEvent, setConstraintScope, setScope, setScope, setScope, setScope, setScope, setWatchedVariableGrounded, supplyGuideFeedback, updateAFC, watchedVariableGrounded
auxiliaryVariables, checkInput, checkInput, checkInputForDuplication, checkInputForDuplicationSkipSingletons, checkInputForNullness, checkInputForNullness, checkInputForNullness, derivative, getDubletonsSkipSingletons, imposeDecomposition
public static final byte eq
public static final byte lt
public static final byte le
public static final byte ne
public static final byte gt
public static final byte ge
public byte relationType
public FloatVar[] list
public double[] weights
public double sum
public Linear(Store store, FloatVar[] list, double[] weights, String rel, double sum)
store
- current storelist
- variables which are being multiplied by weights.weights
- weight for each variable.rel
- the relation, one of "==", "<", ">", "<=", ">=", "!="sum
- the sum of weighted variables.public Linear(Store store, FloatVar[] list, double[] weights, String rel, FloatVar sum)
store
- current storelist
- variables which are being multiplied by weights.weights
- weight for each variable.rel
- the relation, one of "==", "<", ">", "<=", ">=", "!="sum
- variable containing the sum of weighted variables.public Linear(Store store, List<? extends FloatVar> variables, List<Double> weights, String rel, double sum)
store
- current storevariables
- variables which are being multiplied by weights.weights
- weight for each variable.rel
- the relation, one of "==", "<", ">", "<=", ">="sum
- variable containing the sum of weighted variables.public void consistency(Store store)
Constraint
consistency
in class Constraint
store
- constraint store within which the constraint consistency is being checked.public void notConsistency(Store store)
PrimitiveConstraint
notConsistency
in class PrimitiveConstraint
store
- the constraint store in which context the notConsistency technique is evaluated.public int getDefaultConsistencyPruningEvent()
getDefaultConsistencyPruningEvent
in class Constraint
protected int getDefaultNestedNotConsistencyPruningEvent()
getDefaultNestedNotConsistencyPruningEvent
in class PrimitiveConstraint
protected int getDefaultNestedConsistencyPruningEvent()
getDefaultNestedConsistencyPruningEvent
in class PrimitiveConstraint
protected int getDefaultNotConsistencyPruningEvent()
getDefaultNotConsistencyPruningEvent
in class PrimitiveConstraint
public void impose(Store store)
Constraint
impose
in class PrimitiveConstraint
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 boolean satisfied()
SatisfiedPresent
Implementations of this interface for constraints that are not PrimitiveConstraint may require constraint imposition and consistency check as a requirement to work correctly.
satisfied
in interface SatisfiedPresent
public boolean notSatisfied()
PrimitiveConstraint
notSatisfied
in class PrimitiveConstraint
public byte relation(String r)
public String rel2String()
public String toString()
Constraint
toString
in class Constraint
Copyright © 2022. All rights reserved.