|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectchoco.kernel.solver.propagation.Propagator
choco.kernel.solver.constraints.AbstractSConstraint<IntDomainVar>
choco.kernel.solver.constraints.integer.AbstractIntSConstraint
choco.kernel.solver.constraints.integer.AbstractLargeIntSConstraint
choco.cp.solver.constraints.global.scheduling.precedence.AbstractPrecedenceSConstraint
public abstract class AbstractPrecedenceSConstraint
Field Summary | |
---|---|
protected static int |
BIDX
|
protected int |
k1
|
protected int |
k2
|
protected Boolean |
reuseBool
|
protected TaskVar |
task1
|
protected TaskVar |
task2
|
Fields inherited from class choco.kernel.solver.constraints.AbstractSConstraint |
---|
cIndices, constraintType, extensions, vars |
Fields inherited from class choco.kernel.solver.propagation.Propagator |
---|
active, constAwakeEvent, priority, propagationEngine |
Fields inherited from interface choco.cp.solver.constraints.global.scheduling.precedence.ITemporalSRelation |
---|
PRESERVED_PRECISION |
Fields inherited from interface choco.kernel.model.constraints.ITemporalRelation |
---|
BWD, FWD |
Fields inherited from interface choco.kernel.solver.constraints.SConstraint |
---|
LOGGER |
Constructor Summary | |
---|---|
AbstractPrecedenceSConstraint(IntDomainVar[] vars)
|
Method Summary | |
---|---|
void |
awakeOnBounds(int idx)
|
void |
awakeOnInf(int idx)
Default propagation on improved lower bound: propagation on domain revision. |
void |
awakeOnInst(int idx)
Default propagation on instantiation: full constraint re-propagation. |
void |
awakeOnRemovals(int idx,
DisposableIntIterator deltaDomain)
The default implementation of propagation when a variable has been modified consists in iterating all values that have been removed (the delta domain) and propagate them one after another, incrementally. |
void |
awakeOnSup(int idx)
Default propagation on improved upper bound: propagation on domain revision. |
int |
backwardSetup()
|
void |
filterOnP1P2TowardsB()
|
int |
forwardSetup()
|
double |
getBackwardPreserved()
|
TaskVar |
getDestination()
|
IntDomainVar |
getDirection()
|
int |
getDirVal()
|
int |
getFilteredEventMask(int idx)
|
double |
getForwardPreserved()
|
TaskVar |
getOrigin()
|
int |
getTotalSlack()
|
protected Boolean |
isEntailed(int idx1,
int idx2)
isEntailed vars[idx1] <= vars[idx2] |
protected Boolean |
isEntailed(int idx1,
int k1,
int idx2)
isEntailed vars[idx1] + k1 <= vars[idx2] |
boolean |
isFixed()
|
abstract Boolean |
isP1Entailed()
|
abstract Boolean |
isP2Entailed()
|
protected boolean |
isSatisfied(int idx1,
int idx2)
|
protected boolean |
isSatisfied(int idx1,
int k1,
int idx2)
|
protected String |
pretty(int idx1,
int idx2)
|
protected String |
pretty(int idx1,
int k1,
int idx2)
|
protected String |
pretty(String name,
String trueStr,
String falseStr)
|
void |
propagate()
Propagation: Propagating the constraint until local consistency is reached. |
protected void |
propagate(int idx1,
int idx2)
propagate vars[idx1] <= vars[idx2] |
protected void |
propagate(int idx1,
int k1,
int idx2)
propagate vars[idx1] + k1 <= vars[idx2] |
abstract void |
propagateP1()
|
abstract void |
propagateP2()
|
void |
setTasks(TaskVar t1,
TaskVar t2)
|
String |
toString()
|
Methods inherited from class choco.kernel.solver.constraints.integer.AbstractIntSConstraint |
---|
awakeOnRem, getConstraintType, isConsistent, isSatisfied, isSatisfied |
Methods inherited from class choco.kernel.solver.constraints.AbstractSConstraint |
---|
addExtension, addListener, clone, getAbstractSConstraintExtensionNumber, getConstraintIdx, getExtension, getFineDegree, getNbVarNotInst, getNbVars, getVar, getVarQuick, isCompletelyInstantiated, isEntailed, opposite, pretty, setConstraintIndex, setExtension, setVar |
Methods inherited from class choco.kernel.solver.propagation.Propagator |
---|
activate, awake, constAwake, fail, getEvent, getPriority, isActive, setActive, setActiveSilently, setEntailed, setPassive, setPropagationEngine |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
protected static final int BIDX
protected TaskVar task1
protected TaskVar task2
protected int k1
protected int k2
protected Boolean reuseBool
Constructor Detail |
---|
public AbstractPrecedenceSConstraint(IntDomainVar[] vars)
Method Detail |
---|
public int getFilteredEventMask(int idx)
getFilteredEventMask
in class Propagator
public final void setTasks(TaskVar t1, TaskVar t2)
public final TaskVar getOrigin()
getOrigin
in interface ITemporalRelation<TaskVar<?>,IntDomainVar>
public final TaskVar getDestination()
getDestination
in interface ITemporalRelation<TaskVar<?>,IntDomainVar>
public IntDomainVar getDirection()
getDirection
in interface ITemporalRelation<TaskVar<?>,IntDomainVar>
public final boolean isFixed()
isFixed
in interface ITemporalRelation<TaskVar<?>,IntDomainVar>
public int getDirVal()
getDirVal
in interface ITemporalRelation<TaskVar<?>,IntDomainVar>
public final int backwardSetup()
backwardSetup
in interface ITemporalRelation<TaskVar<?>,IntDomainVar>
public final int forwardSetup()
forwardSetup
in interface ITemporalRelation<TaskVar<?>,IntDomainVar>
protected final void propagate(int idx1, int idx2) throws ContradictionException
ContradictionException
protected final void propagate(int idx1, int k1, int idx2) throws ContradictionException
ContradictionException
public abstract void propagateP1() throws ContradictionException
ContradictionException
public abstract void propagateP2() throws ContradictionException
ContradictionException
protected final Boolean isEntailed(int idx1, int idx2)
protected final Boolean isEntailed(int idx1, int k1, int idx2)
public abstract Boolean isP1Entailed()
public abstract Boolean isP2Entailed()
protected final boolean isSatisfied(int idx1, int idx2)
protected final boolean isSatisfied(int idx1, int k1, int idx2)
public void awakeOnInst(int idx) throws ContradictionException
AbstractIntSConstraint
awakeOnInst
in interface IntPropagator
awakeOnInst
in class AbstractIntSConstraint
ContradictionException
public void filterOnP1P2TowardsB() throws ContradictionException
ContradictionException
public final void awakeOnRemovals(int idx, DisposableIntIterator deltaDomain) throws ContradictionException
AbstractIntSConstraint
awakeOnRemovals
in interface IntPropagator
awakeOnRemovals
in class AbstractIntSConstraint
ContradictionException
public final void awakeOnSup(int idx) throws ContradictionException
AbstractIntSConstraint
awakeOnSup
in interface IntPropagator
awakeOnSup
in class AbstractIntSConstraint
ContradictionException
public final void awakeOnInf(int idx) throws ContradictionException
AbstractIntSConstraint
awakeOnInf
in interface IntPropagator
awakeOnInf
in class AbstractIntSConstraint
ContradictionException
public void awakeOnBounds(int idx) throws ContradictionException
awakeOnBounds
in interface IntPropagator
awakeOnBounds
in class AbstractIntSConstraint
ContradictionException
public void propagate() throws ContradictionException
Propagator
propagate
in class Propagator
ContradictionException
- contradiction exceptionprotected final String pretty(int idx1, int k1, int idx2)
protected final String pretty(int idx1, int idx2)
protected final String pretty(String name, String trueStr, String falseStr)
public int getTotalSlack()
getTotalSlack
in interface ITemporalSRelation
public double getForwardPreserved()
getForwardPreserved
in interface ITemporalSRelation
public double getBackwardPreserved()
getBackwardPreserved
in interface ITemporalSRelation
public String toString()
toString
in class AbstractSConstraint<IntDomainVar>
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |