public class SumWeight extends Constraint implements UsesQueueVariable, SatisfiedPresent, RemoveLevelLate
Use when number of variables is greater than 15, otherwise use LinearInt.
Modifier and Type  Field and Description 

protected long 
equalTo
It specifies value to which SumWeight is equal to.

protected IntVar[] 
list
It specifies a list of variables being summed.

protected long[] 
weights
It specifies a list of weights associated with the variables being summed.

atomicExecution, consistencyPruningEvents, constraintScope, earlyTerminationOK, increaseWeight, numberId, scope, trace
queueIndex
Constructor and Description 

SumWeight(IntVar[] list,
int[] weights,
int equalTo) 
SumWeight(IntVar[] list,
int[] weights,
IntVar sum) 
SumWeight(List<? extends IntVar> variables,
List<Integer> weights,
IntVar sum)
It constructs the constraint SumWeight.

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() 
void 
impose(Store store)
It imposes the constraint in a given store.

void 
queueVariable(int level,
Var var)
This is a function called to indicate which variable in a scope of
constraint has changed.

void 
removeLevelLate(int level)
This function is called in case of the backtrack.

boolean 
satisfied()
It checks if the constraint is satisfied.

String 
toString()
It produces a string representation of a constraint state.

afc, arguments, cleanAfterFailure, decompose, getConsistencyPruningEvent, getGuideConstraint, getGuideValue, getGuideVariable, grounded, grounded, id, impose, imposeDecomposition, increaseWeight, intArrayToString, 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
protected final IntVar[] list
protected final long[] weights
protected final long equalTo
public SumWeight(IntVar[] list, int[] weights, IntVar sum)
list
 the list of varibalesweights
 the list of weightssum
 the resulting sumpublic SumWeight(IntVar[] list, int[] weights, int equalTo)
list
 the list of varibalesweights
 the list of weightsequalTo
 the value to which SumWeight is equal to.public SumWeight(List<? extends IntVar> variables, List<Integer> weights, IntVar sum)
variables
 variables which are being multiplied by weights.weights
 weight for each variable.sum
 variable containing the sum of weighted variables.public void removeLevelLate(int level)
RemoveLevelLate
removeLevelLate
in interface RemoveLevelLate
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.public int getDefaultConsistencyPruningEvent()
getDefaultConsistencyPruningEvent
in class Constraint
public 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 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 String toString()
Constraint
toString
in class Constraint
Copyright © 2020. All rights reserved.