public class PropAllDiffAdaptative extends PropAllDiffAC
aCause, ACTIVE, constraint, LOGGER, NEW, PASSIVE, priority, reactToFineEvt, REIFIED, solver, vars
Constructor and Description |
---|
PropAllDiffAdaptative(IntVar[] variables)
AllDifferent constraint for integer variables
enables to control the cardinality of the matching
|
Modifier and Type | Method and Description |
---|---|
void |
duplicate(Solver solver,
gnu.trove.map.hash.THashMap<Object,Object> identitymap)
Duplicate the current propagator.
|
void |
propagate(int evtmask)
Call the main filtering algorithm to apply to the
Domain of the Variable objects. |
isEntailed
addVariable, advise, arity, compareTo, contradiction, decNbPendingEvt, defineIn, dynPriority, flushPendingEvt, forcePropagate, getConstraint, getId, getNbPendingEvt, getNbVars, getPriority, getPropagationConditions, getSolver, getVar, getVars, getVIndices, hashCode, incNbPendingEvt, isActive, isCompletelyInstantiated, isPassive, isReifiedAndSilent, isStateLess, propagate, reactToFineEvent, setActive, setPassive, setReifiedSilent, setReifiedTrue, setVIndices, toString, why
public PropAllDiffAdaptative(IntVar[] variables)
variables
- array of integer variablespublic void propagate(int evtmask) throws ContradictionException
Propagator
Domain
of the Variable
objects.
It considers the current state of this objects to remove some values from domains and/or instantiate some variables.
Calling this method is done from 2 (and only 2) steps:
propagate
in class PropAllDiffAC
evtmask
- type of propagation event this
must consider.ContradictionException
- when a contradiction occurs, like domain wipe out or other incoherencies.public void duplicate(Solver solver, gnu.trove.map.hash.THashMap<Object,Object> identitymap)
Propagator
duplicate
in class PropAllDiffAC
solver
- the target solveridentitymap
- a map to ensure uniqueness of objectsCopyright © 2015. All rights reserved.