Modifier and Type | Method and Description |
---|---|
void |
Solver.postTemp(Constraint c)
Post a constraint temporary, that is, it will be unposted upon backtrack.
|
void |
Solver.propagate()
Propagate constraints and related events through the constraint network until a fix point is find, or a contradiction
is detected.
|
Modifier and Type | Method and Description |
---|---|
void |
ReificationConstraint.activate(int idx) |
void |
Propagator.contradiction(Variable variable,
String message)
Throws a contradiction exception based on
|
void |
Propagator.forcePropagate(PropagatorEventType evt)
Schedules a coarse propagation to filter all variables at once.
|
abstract void |
Propagator.propagate(int evtmask)
Call the main filtering algorithm to apply to the
Domain of the Variable objects. |
void |
Propagator.propagate(int idxVarInProp,
int mask)
Incremental filtering algorithm defined within the
Propagator , called whenever the variable
of index idxVarInProp has changed. |
Modifier and Type | Method and Description |
---|---|
protected void |
PropElement.filter(boolean startWithIndex,
int nbRules) |
void |
PropDistanceXYC.filterFromVarToVar(IntVar var1,
IntVar var2)
Initial propagation in case of EQ and enumerated domains
|
void |
PropDistanceXYC.filterGT()
In case of a GT
|
void |
PropDistanceXYC.filterGTonVar(IntVar v0,
IntVar v1)
In case of a GT, due to a modification on v0 domain
|
void |
PropDistanceXYC.filterLT()
In case of a LT
|
void |
PropDistanceXYC.filterLTonVar(IntVar v0,
IntVar v1)
In case of a LT, due to a modification on v0 domain
|
void |
PropDistanceXYC.filterNeq() |
void |
PropDistanceXYC.filterOnInf(IntVar v0,
IntVar v1)
In case of a EQ, due to a modification of the lower bound of v0
|
void |
PropDistanceXYC.filterOnInst(IntVar v,
int val)
In case of a EQ, due to the instantion to one variable to val
|
void |
PropDistanceXYC.filterOnSup(IntVar v0,
IntVar v1)
In case of a EQ, due to a modification of the upper bound of v0
|
void |
PropSquare.propagate(int evtmask) |
void |
PropScale.propagate(int evtmask) |
void |
PropNotEqualXY_C.propagate(int evtmask) |
void |
PropNotEqualX_YC.propagate(int evtmask) |
void |
PropNotEqualX_Y.propagate(int evtmask) |
void |
PropLessOrEqualXY_C.propagate(int evtmask) |
void |
PropGreaterOrEqualXY_C.propagate(int evtmask) |
void |
PropGreaterOrEqualX_YC.propagate(int evtmask) |
void |
PropGreaterOrEqualX_Y.propagate(int evtmask) |
void |
PropEqualXY_C.propagate(int evtmask) |
void |
PropEqualX_YC.propagate(int evtmask) |
void |
PropEqualX_Y.propagate(int evtmask) |
void |
PropElement.propagate(int evtmask) |
void |
PropDistanceXYC.propagate(int evtmask) |
void |
PropAbsolute.propagate(int evtmask) |
void |
PropSquare.propagate(int varIdx,
int mask) |
void |
PropNotEqualXY_C.propagate(int varIdx,
int mask) |
void |
PropNotEqualX_YC.propagate(int varIdx,
int mask) |
void |
PropLessOrEqualXY_C.propagate(int idxVarInProp,
int mask) |
void |
PropGreaterOrEqualXY_C.propagate(int idxVarInProp,
int mask) |
void |
PropGreaterOrEqualX_YC.propagate(int idxVarInProp,
int mask) |
void |
PropGreaterOrEqualX_Y.propagate(int varIdx,
int mask) |
void |
PropEqualXY_C.propagate(int varIdx,
int mask) |
void |
PropEqualX_YC.propagate(int varIdx,
int mask) |
void |
PropEqualX_Y.propagate(int varIdx,
int mask) |
void |
PropElement.propagate(int varIdx,
int mask) |
void |
PropDistanceXYC.propagate(int varIdx,
int mask) |
void |
PropAbsolute.propagate(int varIdx,
int mask) |
protected void |
PropSquare.updateHoleinX(int remVal) |
protected void |
PropSquare.updateHoleinY(int remVal) |
protected void |
PropSquare.updateHolesinX() |
protected void |
PropSquare.updateHolesinY() |
protected boolean |
PropElement.updateIndexFromValue() |
protected void |
PropSquare.updateLowerBoundofX() |
protected void |
PropSquare.updateLowerBoundofY() |
protected void |
PropSquare.updateUpperBoundofX() |
protected void |
PropSquare.updateUpperBoundofY() |
protected boolean |
PropElement.updateValueFromIndex() |
Modifier and Type | Method and Description |
---|---|
void |
PropBinAC3rm.initProp() |
void |
PropBinAC3rm.onInstantiationOf(int idx) |
void |
PropBinFC.propagate(int evtmask) |
void |
PropBinAC3rm.propagate(int evtmask) |
void |
PropBinAC3bitrm.propagate(int evtmask) |
void |
PropBinAC3.propagate(int evtmask) |
void |
PropBinAC2001.propagate(int evtmask) |
void |
PropBinFC.propagate(int idxVarInProp,
int mask) |
void |
PropBinAC3rm.propagate(int idxVarInProp,
int mask) |
void |
PropBinAC3bitrm.propagate(int idxVarInProp,
int mask) |
void |
PropBinAC3.propagate(int idxVarInProp,
int mask) |
void |
PropBinAC2001.propagate(int idxVarInProp,
int mask) |
void |
PropBinAC3rm.reviseV0()
updates the support for all values in the domain of v0, and remove unsupported values for v0
|
void |
PropBinAC3rm.reviseV1()
updates the support for all values in the domain of v1, and remove unsupported values for v1
|
Modifier and Type | Method and Description |
---|---|
void |
PropLargeGACSTRPos.filter() |
protected void |
PropLargeFC.filter() |
protected void |
PropLargeGAC3rmPositive.filter(int idx) |
void |
PropLargeGAC2001Positive.filter(int idx) |
void |
PropLargeGAC2001.filter(int idx) |
void |
PropLargeGACSTRPos.gacstr()
Main propagation loop.
|
void |
PropLargeGAC3rm.initializeSupports(int indexVar)
initialize the supports of each value of indexVar
|
protected void |
PropLargeGAC3rmPositive.initSupports()
initialize the residual supports of each pair to their
first allowed tuple
|
protected void |
PropLargeMDDC.mddc() |
void |
PropTableStr2.propagate(int evtmask) |
void |
PropLargeMDDC.propagate(int evtmask) |
void |
PropLargeGACSTRPos.propagate(int evtmask) |
void |
PropLargeGAC3rmPositive.propagate(int evtmask) |
void |
PropLargeGAC3rm.propagate(int evtmask) |
void |
PropLargeGAC2001Positive.propagate(int evtmask) |
void |
PropLargeGAC2001.propagate(int evtmask) |
void |
PropLargeFC.propagate(int evtmask) |
void |
PropLargeGACSTRPos.propagate(int idxVarInProp,
int mask) |
void |
PropLargeGAC3rmPositive.propagate(int vIdx,
int mask) |
void |
PropLargeGAC3rm.propagate(int idxVarInProp,
int mask) |
void |
PropLargeGAC2001Positive.propagate(int idxVarInProp,
int mask) |
void |
PropLargeGAC2001.propagate(int idxVarInProp,
int mask) |
void |
PropLargeFC.propagate(int idxVarInProp,
int mask) |
void |
PropLargeGACSTRPos.pruningPhase() |
protected void |
PropLargeGAC3rmPositive.reviseVar(int indexVar)
updates the support for all values in the domain of variable
and remove unsupported values for variable
|
void |
PropLargeGAC3rm.reviseVar(int indexVar) |
void |
PropLargeGAC2001Positive.reviseVar(int indexVar)
updates the support for all values in the domain of variable
and remove unsupported values for variable
|
void |
PropLargeGAC2001.reviseVar(int indexVar,
boolean fromScratch) |
Modifier and Type | Method and Description |
---|---|
protected void |
PropDiffN.filterFromBox(int i) |
void |
PropSort.propagate(int evtmask) |
void |
PropKnapsack.propagate(int evtmask) |
void |
PropKLoops.propagate(int evtmask) |
void |
PropDiffN.propagate(int evtmask) |
void |
PropKnapsack.propagate(int idxVarInProp,
int mask) |
void |
PropKLoops.propagate(int idV,
int mask) |
void |
PropDiffN.propagate(int varIdx,
int mask) |
Modifier and Type | Method and Description |
---|---|
protected void |
PropAllDiffInst.fixpoint() |
void |
PropAllDiffInst.propagate(int evtmask) |
void |
PropAllDiffBC.propagate(int evtmask) |
void |
PropAllDiffAdaptative.propagate(int evtmask) |
void |
PropAllDiffAC.propagate(int evtmask) |
void |
PropAllDiffInst.propagate(int varIdx,
int mask) |
Modifier and Type | Method and Description |
---|---|
void |
AlgoAllDiffBC.filter() |
protected void |
AlgoAllDiffAC.filter() |
protected boolean |
AlgoAllDiffBC.filterLower() |
protected boolean |
AlgoAllDiffBC.filterUpper() |
protected void |
AlgoAllDiffAC.findMaximumMatching() |
void |
AlgoAllDiffAC.propagate() |
Modifier and Type | Method and Description |
---|---|
protected void |
PropCondAllDiffInst.fixpoint() |
void |
PropCondAllDiff_AC.propagate(int evtmask) |
void |
PropCondAllDiff_AC.propagate(int varIdx,
int mask) |
Modifier and Type | Method and Description |
---|---|
protected void |
PropAmongGAC_GoodImpl.backPropForcePoss() |
protected void |
PropAmongGAC_GoodImpl.backPropRemPoss() |
protected void |
PropAmongGAC_GoodImpl.filter() |
protected void |
PropAmongGAC.filter() |
void |
PropAmongGAC_GoodImpl.propagate(int evtmask) |
void |
PropAmongGAC.propagate(int evtmask) |
void |
PropAmongGAC_GoodImpl.propagate(int vidx,
int evtmask) |
void |
PropAmongGAC.propagate(int varIdx,
int mask) |
Modifier and Type | Method and Description |
---|---|
protected void |
PropMultiCostRegular.checkWorld() |
void |
PropMultiCostRegular.computeSharpBounds()
Iteratively compute upper and lower bound for the underlying RCSPP
|
protected void |
PropMultiCostRegular.delayedGraphUpdate()
Updates the graphs w.r.t. the caught event during event-based propagation
|
protected void |
PropMultiCostRegular.filterDown(double realsp)
Filters w.r.t. a given lower bound.
|
protected void |
PropMultiCostRegular.filterUp(double reallp)
Filters w.r.t. a given upper bound.
|
void |
PropMultiCostRegular.forcePathRecomputation() |
protected void |
PropMultiCostRegular.initialize()
Build internal structure of the propagator, if necessary
|
protected void |
PropCostRegular.initialize()
Build internal structure of the propagator, if necessary
|
protected boolean |
PropMultiCostRegular.prefilter()
Performs cost based filtering w.r.t. each cost dimension.
|
void |
PropRegular.propagate(int evtmask) |
void |
PropMultiCostRegular.propagate(int evtmask) |
void |
PropCostRegular.propagate(int evtmask) |
void |
PropRegular.propagate(int varIdx,
int mask) |
void |
PropMultiCostRegular.propagate(int varIdx,
int mask) |
void |
PropCostRegular.propagate(int varIdx,
int mask) |
void |
PropMultiCostRegular.rebuildCostRegInfo() |
protected void |
PropMultiCostRegular.updateLowerBound()
Performs a lagrangian relaxation to compute a new Lower bound of the underlying RCSPP problem
Each built subproblem is a shortest path one can use to perform cost based filtering
|
protected void |
PropMultiCostRegular.updateUpperBound()
Performs a lagrangian relaxation to compute a new Upper bound of the underlying RCSPP problem
Each built subproblem is a longest path one can use to perform cost based filtering
|
Modifier and Type | Method and Description |
---|---|
void |
StoredValuedDirectedMultiGraph.removeArc(int arcId,
gnu.trove.stack.TIntStack toRemove,
Propagator<IntVar> propagator,
ICause aCause) |
Modifier and Type | Method and Description |
---|---|
void |
FastPathFinder.computeLongestPath(gnu.trove.stack.TIntStack removed,
double lb,
double[] u,
boolean lagrange,
boolean max,
int resource,
PropMultiCostRegular propagator) |
void |
FastPathFinder.computeShortestAndLongestPath(IStateIntVector removed,
int lb,
int ub,
double[] u,
boolean lagrange,
boolean max,
int resource,
PropMultiCostRegular propagator) |
boolean[] |
FastPathFinder.computeShortestAndLongestPath(gnu.trove.stack.TIntStack removed,
IntVar[] z,
PropMultiCostRegular propagator) |
void |
FastPathFinder.computeShortestPath(gnu.trove.stack.TIntStack removed,
double ub,
double[] u,
boolean lagrange,
boolean max,
int resource,
PropMultiCostRegular propagator) |
boolean |
StoredDirectedMultiGraph.removeArc(int arcId,
gnu.trove.stack.TIntStack toRemove,
gnu.trove.stack.TIntStack[] updateLeft,
gnu.trove.stack.TIntStack[] updateRight,
Propagator<IntVar> propagator) |
void |
StoredDirectedMultiGraph.updateLeft(gnu.trove.stack.TIntStack updateLeft,
gnu.trove.stack.TIntStack toRemove,
int dim,
boolean[] modBound,
Propagator<IntVar> propagator) |
void |
StoredDirectedMultiGraph.updateRight(gnu.trove.stack.TIntStack updateRight,
gnu.trove.stack.TIntStack toRemove,
int dim,
boolean[] modBound,
Propagator<IntVar> propagator) |
Modifier and Type | Method and Description |
---|---|
void |
StoredDirectedMultiGraph.clearSupports(int idxVar,
int val,
Propagator p) |
protected void |
StoredDirectedMultiGraph.clearSupports(StoredIndexedBipartiteSet supports,
Propagator p) |
protected void |
StoredDirectedMultiGraph.removeArc(Propagator<IntVar> propagator) |
Modifier and Type | Method and Description |
---|---|
void |
PropInverseChannelBC.propagate(int evtmask) |
void |
PropInverseChannelAC.propagate(int evtmask) |
void |
PropEnumDomainChanneling.propagate(int evtmask) |
void |
PropClauseChanneling.propagate(int evtmask) |
void |
PropBitChanneling.propagate(int evtmask) |
void |
PropInverseChannelBC.propagate(int varIdx,
int mask) |
void |
PropInverseChannelAC.propagate(int varIdx,
int mask) |
void |
PropEnumDomainChanneling.propagate(int varIdx,
int mask) |
void |
PropClauseChanneling.propagate(int vidx,
int mask) |
void |
PropBitChanneling.propagate(int idxVarInProp,
int mask) |
Modifier and Type | Method and Description |
---|---|
protected void |
PropCircuit_ArboFiltering.filterFromDom(int duplicatedNode) |
protected void |
PropCircuit_AntiArboFiltering.filterFromDom(int duplicatedNode) |
void |
PropSubCircuitSCC.filterFromSource(int source) |
void |
PropCircuitSCC.filterFromSource(int source) |
void |
PropSubCircuitSCC.propagate(int evtmask) |
void |
PropSubcircuit_AntiArboFiltering.propagate(int evtmask) |
void |
PropSubcircuit.propagate(int evtmask) |
void |
PropNoSubtour.propagate(int evtmask) |
void |
PropCircuitSCC.propagate(int evtmask) |
void |
PropCircuit_ArboFiltering.propagate(int evtmask) |
void |
PropSubcircuit.propagate(int idxVarInProp,
int mask) |
void |
PropNoSubtour.propagate(int idxVarInProp,
int mask) |
Modifier and Type | Method and Description |
---|---|
void |
PropTrue.propagate(int evtmask) |
void |
PropSat.propagate(int evtmask) |
void |
PropNogoods.propagate(int evtmask) |
void |
PropFalse.propagate(int evtmask) |
void |
PropClause.propagate(int evtmask)
Deprecated.
|
void |
PropSat.propagate(int idxVarInProp,
int mask) |
void |
PropNogoods.propagate(int idxVarInProp,
int mask) |
void |
PropFalse.propagate(int idxVarInProp,
int mask) |
void |
PropClause.propagate(int varIdx,
int mask)
Deprecated.
|
Modifier and Type | Method and Description |
---|---|
void |
PropCountVar.propagate(int evtmask) |
void |
PropCount_AC.propagate(int evtmask) |
void |
PropCount_AC.propagate(int varIdx,
int mask) |
Modifier and Type | Method and Description |
---|---|
void |
TimeCumulFilter.filter(IntVar[] s,
IntVar[] d,
IntVar[] e,
IntVar[] h,
IntVar capa,
ISet tasks) |
void |
SweepHeiSortCumulFilter.filter(IntVar[] s,
IntVar[] d,
IntVar[] e,
IntVar[] h,
IntVar capa,
ISet tasks) |
void |
SweepCumulFilter.filter(IntVar[] s,
IntVar[] d,
IntVar[] e,
IntVar[] h,
IntVar capa,
ISet tasks) |
void |
NRJCumulFilter.filter(IntVar[] s,
IntVar[] d,
IntVar[] e,
IntVar[] h,
IntVar capa,
ISet tasks) |
abstract void |
CumulFilter.filter(IntVar[] s,
IntVar[] d,
IntVar[] e,
IntVar[] h,
IntVar capa,
ISet tasks)
Filters the cumulative constraint over the subset of tasks induced by tasks
|
void |
PropFullCumulative.filter(ISet tasks) |
protected void |
PropGraphCumulative.filterAround(int taskIndex) |
protected void |
TimeCumulFilter.filterInf(IntVar start,
int dlb,
int hlb,
int min,
int max,
int[] time,
int capaMax) |
protected void |
TimeCumulFilter.filterSup(IntVar end,
int dlb,
int hlb,
int min,
int max,
int[] time,
int capaMax) |
void |
PropGraphCumulative.propagate(int evtmask) |
void |
PropFullCumulative.propagate(int evtmask) |
void |
PropGraphCumulative.propagate(int varIdx,
int mask) |
void |
PropFullCumulative.propagate(int varIdx,
int mask) |
protected void |
PropFullCumulative.propIni() |
protected void |
SweepCumulFilter.pruneMax(IntVar[] e) |
protected void |
HeightCumulFilter.pruneMax(IntVar[] e) |
protected void |
SweepCumulFilter.pruneMin(IntVar[] s) |
protected void |
HeightCumulFilter.pruneMin(IntVar[] s) |
protected boolean |
SweepHeiSortCumulFilter.sweep(IntVar capamax,
IntVar[] h,
int nbT) |
protected boolean |
SweepCumulFilter.sweep(IntVar capamax,
IntVar[] h,
int nbT) |
protected boolean |
HeightCumulFilter.sweep(IntVar capamax,
IntVar[] h,
int nbT) |
protected void |
PropFullCumulative.updateMaxCapa() |
Modifier and Type | Method and Description |
---|---|
void |
PropElementV_fast.propagate(int evtmask) |
Modifier and Type | Method and Description |
---|---|
void |
PropFastGCC.propagate(int evtmask) |
void |
PropFastGCC.propagate(int varIdx,
int mask) |
Modifier and Type | Method and Description |
---|---|
void |
PropLex.ACleq(int i) |
void |
PropLex.ACless(int i) |
void |
PropLexChain.boundsLex(int[] a,
IntVar[] x,
int[] b)
Filtering algorithm for between(a,x,b)
Ensures that x is lexicographically greater than a and less than b if strict is false
otherwise x is lexicographically greater than or equal to a and less than or equal to b
|
int |
PropLexChain.computeAlpha(IntVar[] x,
int[] b)
computes alpha for use in computing lexicographically largest feasible upper bound of x in
computUB |
int |
PropLexChain.computeBeta(IntVar[] x,
int[] a)
computes beta for use in computing lexicographically smallest feasible lower bound of x in
computeLB |
void |
PropLexChain.computeLB(IntVar[] x,
int[] a,
int[] lower)
Computes the lexicographically smallest feasible lower bound vector of integers of x .
|
void |
PropLexChain.computeUB(IntVar[] x,
int[] b,
int[] u)
Computes the lexicographically largest feasible upper bound vector of integers of x .
|
void |
PropLex.gacLexLeq(int i) |
protected void |
PropLex.initialize()
Build internal structure of the propagator, if necessary
|
void |
PropLexChain.propagate(int evtmask) |
void |
PropLex.propagate(int evtmask) |
void |
PropLexChain.propagate(int idxVarInProp,
int mask) |
void |
PropLex.propagate(int vIdx,
int mask) |
void |
PropLex.updateAlpha(int i) |
void |
PropLex.updateBeta(int i) |
Modifier and Type | Method and Description |
---|---|
void |
PropBoolMin.filter() |
void |
PropBoolMax.filter() |
void |
PropMin.propagate(int evtmask) |
void |
PropMax.propagate(int evtmask) |
void |
PropBoolMin.propagate(int evtmask) |
void |
PropBoolMax.propagate(int evtmask) |
void |
PropBoolMin.propagate(int idxVarInProp,
int mask) |
void |
PropBoolMax.propagate(int idxVarInProp,
int mask) |
Modifier and Type | Method and Description |
---|---|
void |
PropAtMostNValues_BC.propagate(int evtmask) |
void |
PropAtMostNValues.propagate(int evtmask) |
void |
PropAtLeastNValues_AC.propagate(int evtmask) |
void |
PropAtLeastNValues.propagate(int evtmask) |
void |
PropAMNV.propagate(int evtmask) |
void |
PropAtLeastNValues_AC.propagate(int varIdx,
int mask) |
void |
PropAMNV.propagate(int idxVarInProp,
int mask) |
Modifier and Type | Method and Description |
---|---|
protected void |
R3.enforceEq(int i,
int j,
IntVar[] vars,
Propagator aCause) |
void |
R4.filter(IntVar[] vars,
UndirectedGraph graph,
F heur,
Propagator aCause) |
void |
R3.filter(IntVar[] vars,
UndirectedGraph graph,
F heur,
Propagator aCause) |
void |
R2.filter(IntVar[] vars,
UndirectedGraph graph,
F heur,
Propagator aCause) |
void |
R1.filter(IntVar[] vars,
UndirectedGraph graph,
F heur,
Propagator aCause) |
void |
R.filter(IntVar[] vars,
UndirectedGraph graph,
F heur,
Propagator aCause) |
Modifier and Type | Method and Description |
---|---|
protected void |
PropScalarEq.filter(boolean startWithLeq,
int nbRules) |
void |
PropSumEq.propagate(int evtmask) |
void |
PropScalarEq.propagate(int evtmask) |
void |
PropBoolSumIncremental.propagate(int evtmask) |
void |
PropBoolSumCoarse.propagate(int evtmask) |
void |
PropBoolSumIncremental.propagate(int idxVarInProp,
int mask) |
Modifier and Type | Method and Description |
---|---|
void |
PropAntiArborescences.propagate(int evtmask) |
Modifier and Type | Method and Description |
---|---|
void |
RealPropagator.propagate(int evtmask) |
Modifier and Type | Method and Description |
---|---|
void |
PropReif.propagate(int evtmask) |
void |
PropOpposite.propagate(int evtmask) |
void |
PropConditionnal.propagate(int evtmask) |
Modifier and Type | Method and Description |
---|---|
void |
PropNbEmpty.filter() |
void |
PropUnion.propagate(int evtmask) |
void |
PropSymmetric.propagate(int evtmask) |
void |
PropSumOfElements.propagate(int evtmask) |
void |
PropSubsetEq.propagate(int evtmask) |
void |
PropSetIntValuesUnion.propagate(int evtmask) |
void |
PropOffSet.propagate(int evtmask) |
void |
PropNotMemberSetInt.propagate(int evtmask) |
void |
PropNotMemberIntSet.propagate(int evtmask) |
void |
PropNotEmpty.propagate(int evtmask) |
void |
PropNbEmpty.propagate(int evtmask) |
void |
PropMinElement.propagate(int evtmask) |
void |
PropMaxElement.propagate(int evtmask) |
void |
PropInverse.propagate(int evtmask) |
void |
PropIntersection.propagate(int evtmask) |
void |
PropIntEnumMemberSet.propagate(int evtmask) |
void |
PropIntChannel.propagate(int evtmask) |
void |
PropIntBoundedMemberSet.propagate(int evtmask) |
void |
PropElement.propagate(int evtmask) |
void |
PropCardinality.propagate(int evtmask) |
void |
PropBoolChannel.propagate(int evtmask) |
void |
PropAtMost1Empty.propagate(int evtmask) |
void |
PropAllEqual.propagate(int evtmask) |
void |
PropAllDisjoint.propagate(int evtmask) |
void |
PropAllDiff.propagate(int evtmask) |
void |
PropUnion.propagate(int idxVarInProp,
int mask) |
void |
PropSymmetric.propagate(int idxVarInProp,
int mask) |
void |
PropSumOfElements.propagate(int i,
int mask) |
void |
PropSubsetEq.propagate(int i,
int mask) |
void |
PropOffSet.propagate(int v,
int mask) |
void |
PropNotMemberSetInt.propagate(int idxVarInProp,
int mask) |
void |
PropNotMemberIntSet.propagate(int vidx,
int evtmask) |
void |
PropNbEmpty.propagate(int v,
int mask) |
void |
PropInverse.propagate(int idxVarInProp,
int mask) |
void |
PropIntersection.propagate(int idxVarInProp,
int mask) |
void |
PropIntEnumMemberSet.propagate(int i,
int mask) |
void |
PropIntChannel.propagate(int idxVarInProp,
int mask) |
void |
PropIntBoundedMemberSet.propagate(int i,
int mask) |
void |
PropBoolChannel.propagate(int i,
int mask) |
void |
PropAtMost1Empty.propagate(int v,
int mask) |
void |
PropAllEqual.propagate(int idxVarInProp,
int mask) |
void |
PropAllDisjoint.propagate(int idxVarInProp,
int mask) |
void |
PropAllDiff.propagate(int idx,
int mask) |
Modifier and Type | Method and Description |
---|---|
boolean |
PropDistanceXYZ.filterEQFromXZToY() |
boolean |
PropDistanceXYZ.filterEQFromYZToX() |
void |
PropDistanceXYZ.filterFixPoint() |
boolean |
PropDistanceXYZ.filterFromXYtoLBZ() |
boolean |
PropDistanceXYZ.filterFromXYtoUBZ() |
boolean |
PropDistanceXYZ.filterGTFromXZtoY() |
boolean |
PropDistanceXYZ.filterGTFromYZtoX() |
boolean |
PropDistanceXYZ.filterLTFromXZtoY() |
boolean |
PropDistanceXYZ.filterLTFromYZtoX() |
protected boolean |
PropDivXYZ.oppSign(IntVar a,
IntVar b)
A take the opposite signs of B
|
void |
PropTimesZ.propagate(int evtmask) |
void |
PropTimesXY.propagate(int evtmask) |
void |
PropTimesNaive.propagate(int evtmask) |
void |
PropMinBC.propagate(int evtmask) |
void |
PropMaxBC.propagate(int evtmask) |
void |
PropDivXYZ.propagate(int evtmask)
The main propagation method that filters according to the constraint defintion
|
void |
PropDistanceXYZ.propagate(int evtmask) |
void |
PropTimesZ.propagate(int varIdx,
int mask) |
void |
PropTimesXY.propagate(int varIdx,
int mask) |
void |
PropMinBC.propagate(int varIdx,
int mask) |
void |
PropMaxBC.propagate(int varIdx,
int mask) |
void |
PropDistanceXYZ.propagate(int idxVarInProp,
int mask) |
protected boolean |
PropDivXYZ.sameSign(IntVar a,
IntVar b)
A take the signs of B
|
Modifier and Type | Method and Description |
---|---|
void |
PropNotMemberEnum.propagate(int evtmask) |
void |
PropNotMemberBound.propagate(int evtmask) |
void |
PropNotEqualXC.propagate(int evtmask) |
void |
PropMemberEnum.propagate(int evtmask) |
void |
PropMemberBound.propagate(int evtmask) |
void |
PropLessOrEqualXC.propagate(int evtmask) |
void |
PropGreaterOrEqualXC.propagate(int evtmask) |
void |
PropEqualXC.propagate(int evtmask) |
void |
PropNotMemberEnum.propagate(int varIdx,
int mask) |
void |
PropNotMemberBound.propagate(int varIdx,
int mask) |
void |
PropMemberEnum.propagate(int varIdx,
int mask) |
Modifier and Type | Method and Description |
---|---|
ContradictionException |
ContradictionException.set(ICause c,
Variable v,
String s)
Throws the unique
ContradictionException filled with the specified parameters. |
Modifier and Type | Method and Description |
---|---|
Explanation |
ExplanationEngine.explain(ContradictionException cex)
Compute the explanation of the last event from the event store (naturally, the one that leads to a conflict),
and return the explanation of the failure, that is, the (sub-)set of decisions and propagators explaining the conflict.
|
Modifier and Type | Method and Description |
---|---|
void |
ConflictBackJumping.onContradiction(ContradictionException cex) |
Modifier and Type | Method and Description |
---|---|
void |
ObjectiveManager.apply(Decision decision)
Updates the lower (or upper) bound of the objective variable, considering its best know value.
|
void |
ObjectiveManager.postDynamicCut()
Prevent the solver from computing worse quality solutions
|
Modifier and Type | Method and Description |
---|---|
ContradictionException |
IPropagationEngine.getContradictionException() |
Modifier and Type | Method and Description |
---|---|
void |
IPropagationEngine.delayedPropagation(Propagator propagator,
PropagatorEventType type) |
static void |
PropagationTrigger.execute(Propagator toPropagate,
IPropagationEngine engine) |
void |
IPropagationEngine.fails(ICause cause,
Variable variable,
String message) |
void |
IPropagationEngine.onVariableUpdate(Variable variable,
IEventType type,
ICause cause)
Take into account the modification of a variable
|
void |
PropagationTrigger.propagate()
Define a way to initialize the propagation engine.
|
void |
IPropagationEngine.propagate()
Launch the proapagation, ie, active propagators if necessary, then reach a fix point
|
Modifier and Type | Field and Description |
---|---|
protected ContradictionException |
TwoBucketPropagationEngine.exception |
protected ContradictionException |
SevenQueuesPropagatorEngine.exception |
Modifier and Type | Method and Description |
---|---|
ContradictionException |
TwoBucketPropagationEngine.getContradictionException() |
ContradictionException |
SevenQueuesPropagatorEngine.getContradictionException() |
Modifier and Type | Method and Description |
---|---|
void |
TwoBucketPropagationEngine.delayedPropagation(Propagator propagator,
PropagatorEventType type) |
void |
SevenQueuesPropagatorEngine.delayedPropagation(Propagator propagator,
PropagatorEventType type) |
void |
TwoBucketPropagationEngine.fails(ICause cause,
Variable variable,
String message) |
void |
SevenQueuesPropagatorEngine.fails(ICause cause,
Variable variable,
String message) |
void |
TwoBucketPropagationEngine.onVariableUpdate(Variable variable,
IEventType type,
ICause cause) |
void |
SevenQueuesPropagatorEngine.onVariableUpdate(Variable variable,
IEventType type,
ICause cause) |
void |
TwoBucketPropagationEngine.propagate() |
void |
SevenQueuesPropagatorEngine.propagate() |
Modifier and Type | Method and Description |
---|---|
void |
FailCounter.onContradiction(ContradictionException cex) |
Modifier and Type | Method and Description |
---|---|
void |
SequenceNeighborhood.fixSomeVariables(ICause cause) |
void |
RPGN4Explanation.fixSomeVariables(ICause cause) |
void |
RandomNeighborhood4Explanation.fixSomeVariables(ICause cause) |
void |
RandomNeighborhood.fixSomeVariables(ICause cause) |
void |
PropagationGuidedNeighborhood.fixSomeVariables(ICause cause) |
void |
PGN4Explanation.fixSomeVariables(ICause cause) |
void |
INeighbor.fixSomeVariables(ICause cause)
Freezes some variables in order to have a fast computation
|
void |
ExplainingCut.fixSomeVariables(ICause cause) |
void |
ActivityBasedNeighborhood.fixSomeVariables(ICause cause) |
protected void |
RPGN4Explanation.impose(int id,
ICause cause) |
protected void |
RandomNeighborhood4Explanation.impose(int id,
ICause cause) |
protected void |
RandomNeighborhood.impose(int id,
ICause cause) |
protected void |
PropagationGuidedNeighborhood.impose(int id,
ICause cause) |
protected void |
PGN4Explanation.impose(int id,
ICause cause) |
protected void |
ReversePropagationGuidedNeighborhood.update(ICause cause) |
protected void |
PropagationGuidedNeighborhood.update(ICause cause) |
Modifier and Type | Method and Description |
---|---|
void |
SearchMonitorList.onContradiction(ContradictionException cex) |
void |
IMonitorContradiction.onContradiction(ContradictionException cex) |
void |
FailPerPropagator.onContradiction(ContradictionException cex) |
Modifier and Type | Method and Description |
---|---|
void |
MeasuresRecorder.onContradiction(ContradictionException cex) |
Modifier and Type | Method and Description |
---|---|
void |
Solution.restore()
Set all variables to their respective value in the solution
Throws an exception is this empties a domain (i.e. this domain does not contain
the solution value)
BEWARE: A restart might be required so that domains contain the solution values
|
Modifier and Type | Method and Description |
---|---|
abstract void |
DecisionOperator.apply(V var,
int value,
ICause cause) |
abstract void |
DecisionOperator.unapply(V var,
int value,
ICause cause) |
Modifier and Type | Method and Description |
---|---|
void |
RootDecision.apply() |
abstract void |
Decision.apply()
Apply the current decision
|
Modifier and Type | Method and Description |
---|---|
void |
FastDecisionSet.apply() |
void |
FastDecisionReal.apply() |
void |
FastDecision.apply() |
Modifier and Type | Method and Description |
---|---|
void |
ImpactBased.onContradiction(ContradictionException cex) |
Modifier and Type | Method and Description |
---|---|
void |
ImpactBased.init() |
void |
DomOverWDeg.init() |
Modifier and Type | Method and Description |
---|---|
void |
LastConflict_old.onContradiction(ContradictionException cex)
Deprecated.
|
void |
LastConflict.onContradiction(ContradictionException cex) |
void |
ConflictOrdering.onContradiction(ContradictionException cex) |
Modifier and Type | Method and Description |
---|---|
void |
StrategiesSequencer.init() |
void |
SetStrategy.init() |
void |
LastConflict_old.init()
Deprecated.
|
void |
LastConflict.init() |
void |
GenerateAndTest.init()
Prepare
this to be used in a search loop |
void |
FindAndProve.init() |
void |
ConflictOrdering.init() |
abstract void |
AbstractStrategy.init()
Prepare
this to be used in a search loop |
Modifier and Type | Method and Description |
---|---|
boolean |
SetVar.addToKernel(int element,
ICause cause)
Adds element to the kernel, i.e. enforces that the set variable
will contain element in every solution
|
void |
Variable.contradiction(ICause cause,
IEventType event,
String message)
Throws a contradiction exception based on
|
void |
Task.ensureBoundConsistency()
Applies BC-filtering so that start + duration = end
|
boolean |
SetVar.instantiateTo(int[] value,
ICause cause)
Enforces the set variable to contain exactly the set of integers given in parameter
|
boolean |
IntVar.instantiateTo(int value,
ICause cause)
Instantiates the domain of
this to value . |
void |
Variable.notifyMonitors(IEventType event)
Notify monitors of observed variable modifications
|
void |
Variable.notifyPropagators(IEventType event,
ICause cause)
If
this has changed, then notify all of its observers. |
void |
Variable.notifyViews(IEventType event,
ICause cause)
Notify views of observed variable modifications
|
void |
IVariableMonitor.onUpdate(V var,
IEventType evt)
Operations to execute after updating the domain variable
|
boolean |
SetVar.removeFromEnvelope(int element,
ICause cause)
Removes element from the envelop, i.e. the set variable cannot contain element anymore
|
boolean |
IntVar.removeInterval(int from,
int to,
ICause cause)
Deprecated.
|
boolean |
IntVar.removeValue(int value,
ICause cause)
Removes
value from the domain of this . |
boolean |
BoolVar.setToFalse(ICause cause) |
boolean |
BoolVar.setToTrue(ICause cause) |
boolean |
RealVar.updateBounds(double lowerbound,
double upperbound,
ICause cause)
Updates the bounds of the domain of
this to value . |
boolean |
RealVar.updateLowerBound(double value,
ICause cause)
Updates the lower bound of the domain of
this to value . |
boolean |
IntVar.updateLowerBound(int value,
ICause cause)
Updates the lower bound of the domain of
this to value . |
boolean |
RealVar.updateUpperBound(double value,
ICause cause)
Updates the upper bound of the domain of
this to value . |
boolean |
IntVar.updateUpperBound(int value,
ICause cause)
Updates the upper bound of the domain of
this to value . |
Modifier and Type | Method and Description |
---|---|
void |
ISetDeltaMonitor.forEach(IntProcedure proc,
SetEventType evt) |
void |
IIntDeltaMonitor.forEachRemVal(IntProcedure proc) |
Modifier and Type | Method and Description |
---|---|
void |
SetDeltaMonitor.forEach(IntProcedure proc,
SetEventType evt) |
void |
OneValueDeltaMonitor.forEachRemVal(IntProcedure proc) |
void |
IntervalDeltaMonitor.forEachRemVal(IntProcedure proc) |
void |
EnumDeltaMonitor.forEachRemVal(IntProcedure proc) |
Modifier and Type | Method and Description |
---|---|
boolean |
SetVarImpl.addToKernel(int element,
ICause cause) |
boolean |
FixedSetVarImpl.addToKernel(int element,
ICause cause) |
void |
SetVarImpl.contradiction(ICause cause,
IEventType event,
String message) |
void |
RealVarImpl.contradiction(ICause cause,
IEventType event,
String message) |
void |
IntervalIntVarImpl.contradiction(ICause cause,
IEventType event,
String message) |
void |
FixedSetVarImpl.contradiction(ICause cause,
IEventType event,
String message) |
void |
FixedIntVarImpl.contradiction(ICause cause,
IEventType event,
String message) |
void |
BoolVarImpl.contradiction(ICause cause,
IEventType event,
String message) |
void |
BitsetIntVarImpl.contradiction(ICause cause,
IEventType event,
String message) |
void |
BitsetArrayIntVarImpl.contradiction(ICause cause,
IEventType event,
String message) |
boolean |
SetVarImpl.instantiateTo(int[] value,
ICause cause) |
boolean |
FixedSetVarImpl.instantiateTo(int[] value,
ICause cause) |
boolean |
IntervalIntVarImpl.instantiateTo(int value,
ICause cause)
Instantiates the domain of
this to value . |
boolean |
FixedIntVarImpl.instantiateTo(int value,
ICause cause) |
boolean |
BoolVarImpl.instantiateTo(int value,
ICause cause)
Instantiates the domain of
this to value . |
boolean |
BitsetIntVarImpl.instantiateTo(int value,
ICause cause)
Instantiates the domain of
this to value . |
boolean |
BitsetArrayIntVarImpl.instantiateTo(int value,
ICause cause)
Instantiates the domain of
this to value . |
void |
SetVarImpl.notifyMonitors(IEventType event) |
void |
RealVarImpl.notifyMonitors(IEventType event) |
void |
IntervalIntVarImpl.notifyMonitors(IEventType event) |
void |
FixedSetVarImpl.notifyMonitors(IEventType event) |
void |
FixedIntVarImpl.notifyMonitors(IEventType event) |
void |
BoolVarImpl.notifyMonitors(IEventType event) |
void |
BitsetIntVarImpl.notifyMonitors(IEventType event) |
void |
BitsetArrayIntVarImpl.notifyMonitors(IEventType event) |
void |
FixedSetVarImpl.notifyPropagators(IEventType event,
ICause cause) |
void |
FixedIntVarImpl.notifyPropagators(IEventType event,
ICause cause) |
void |
AbstractVariable.notifyPropagators(IEventType event,
ICause cause) |
void |
FixedSetVarImpl.notifyViews(IEventType event,
ICause cause) |
void |
FixedIntVarImpl.notifyViews(IEventType event,
ICause cause) |
void |
AbstractVariable.notifyViews(IEventType event,
ICause cause) |
boolean |
SetVarImpl.removeFromEnvelope(int element,
ICause cause) |
boolean |
FixedSetVarImpl.removeFromEnvelope(int element,
ICause cause) |
boolean |
IntervalIntVarImpl.removeInterval(int from,
int to,
ICause cause)
Removes values between [
from, to ] from the domain of this . |
boolean |
FixedIntVarImpl.removeInterval(int from,
int to,
ICause cause) |
boolean |
BoolVarImpl.removeInterval(int from,
int to,
ICause cause)
Removes values between [
from, to ] from the domain of this . |
boolean |
BitsetIntVarImpl.removeInterval(int from,
int to,
ICause cause)
Removes values between [
from, to ] from the domain of this . |
boolean |
BitsetArrayIntVarImpl.removeInterval(int from,
int to,
ICause cause)
Removes values between [
from, to ] from the domain of this . |
boolean |
IntervalIntVarImpl.removeValue(int value,
ICause cause)
Removes
value from the domain of this . |
boolean |
FixedIntVarImpl.removeValue(int value,
ICause cause) |
boolean |
BoolVarImpl.removeValue(int value,
ICause cause)
Removes
value from the domain of this . |
boolean |
BitsetIntVarImpl.removeValue(int value,
ICause cause)
Removes
value from the domain of this . |
boolean |
BitsetArrayIntVarImpl.removeValue(int value,
ICause cause)
Removes
value from the domain of this . |
boolean |
FixedBoolVarImpl.setToFalse(ICause cause) |
boolean |
BoolVarImpl.setToFalse(ICause cause) |
boolean |
FixedBoolVarImpl.setToTrue(ICause cause) |
boolean |
BoolVarImpl.setToTrue(ICause cause) |
boolean |
RealVarImpl.updateBounds(double lowerbound,
double upperbound,
ICause cause) |
boolean |
RealVarImpl.updateLowerBound(double value,
ICause cause) |
boolean |
IntervalIntVarImpl.updateLowerBound(int value,
ICause cause)
Updates the lower bound of the domain of
this to value . |
boolean |
FixedIntVarImpl.updateLowerBound(int value,
ICause cause) |
boolean |
BoolVarImpl.updateLowerBound(int value,
ICause cause)
Updates the lower bound of the domain of
this to value . |
boolean |
BitsetIntVarImpl.updateLowerBound(int value,
ICause cause)
Updates the lower bound of the domain of
this to value . |
boolean |
BitsetArrayIntVarImpl.updateLowerBound(int value,
ICause cause)
Updates the lower bound of the domain of
this to value . |
boolean |
RealVarImpl.updateUpperBound(double value,
ICause cause) |
boolean |
IntervalIntVarImpl.updateUpperBound(int value,
ICause cause)
Updates the upper bound of the domain of
this to value . |
boolean |
FixedIntVarImpl.updateUpperBound(int value,
ICause cause) |
boolean |
BoolVarImpl.updateUpperBound(int value,
ICause cause)
Updates the upper bound of the domain of
this to value . |
boolean |
BitsetIntVarImpl.updateUpperBound(int value,
ICause cause)
Updates the upper bound of the domain of
this to value . |
boolean |
BitsetArrayIntVarImpl.updateUpperBound(int value,
ICause cause)
Updates the upper bound of the domain of
this to value . |
Modifier and Type | Method and Description |
---|---|
void |
RealView.contradiction(ICause cause,
IEventType event,
String message) |
void |
IntView.contradiction(ICause cause,
IEventType event,
String message) |
void |
ViewDeltaMonitor.forEachRemVal(IntProcedure proc) |
boolean |
ScaleView.instantiateTo(int value,
ICause cause) |
boolean |
OffsetView.instantiateTo(int value,
ICause cause) |
boolean |
MinusView.instantiateTo(int value,
ICause cause) |
boolean |
EqView.instantiateTo(int value,
ICause cause) |
boolean |
BoolNotView.instantiateTo(int value,
ICause cause) |
void |
RealView.notifyMonitors(IEventType event) |
void |
IntView.notifyMonitors(IEventType event) |
boolean |
ScaleView.removeInterval(int from,
int to,
ICause cause) |
boolean |
OffsetView.removeInterval(int from,
int to,
ICause cause) |
boolean |
MinusView.removeInterval(int from,
int to,
ICause cause) |
boolean |
EqView.removeInterval(int from,
int to,
ICause cause) |
boolean |
BoolNotView.removeInterval(int from,
int to,
ICause cause) |
boolean |
ScaleView.removeValue(int value,
ICause cause) |
boolean |
OffsetView.removeValue(int value,
ICause cause) |
boolean |
MinusView.removeValue(int value,
ICause cause) |
boolean |
EqView.removeValue(int value,
ICause cause) |
boolean |
BoolNotView.removeValue(int value,
ICause cause) |
boolean |
BoolNotView.setToFalse(ICause cause) |
boolean |
BoolEqView.setToFalse(ICause cause) |
boolean |
BoolNotView.setToTrue(ICause cause) |
boolean |
BoolEqView.setToTrue(ICause cause) |
void |
RealView.transformEvent(IEventType evt,
ICause cause) |
void |
MinusView.transformEvent(IEventType evt,
ICause cause) |
void |
IView.transformEvent(IEventType evt,
ICause cause)
Transform the original event wrt the view
|
void |
IntView.transformEvent(IEventType evt,
ICause cause) |
boolean |
RealView.updateBounds(double lowerbound,
double upperbound,
ICause cause) |
boolean |
RealView.updateLowerBound(double value,
ICause cause) |
boolean |
ScaleView.updateLowerBound(int value,
ICause cause) |
boolean |
OffsetView.updateLowerBound(int value,
ICause cause) |
boolean |
MinusView.updateLowerBound(int value,
ICause cause) |
boolean |
EqView.updateLowerBound(int value,
ICause cause) |
boolean |
BoolNotView.updateLowerBound(int value,
ICause cause) |
boolean |
RealView.updateUpperBound(double value,
ICause cause) |
boolean |
ScaleView.updateUpperBound(int value,
ICause cause) |
boolean |
OffsetView.updateUpperBound(int value,
ICause cause) |
boolean |
MinusView.updateUpperBound(int value,
ICause cause) |
boolean |
EqView.updateUpperBound(int value,
ICause cause) |
boolean |
BoolNotView.updateUpperBound(int value,
ICause cause) |
Modifier and Type | Method and Description |
---|---|
void |
Procedure.execute(E e)
Action to execute in a
Delta object, within the forEachRemVal method. |
void |
IntProcedure.execute(int i)
Action to execute in a
Delta object, within the forEachRemVal method. |
void |
PairProcedure.execute(int i,
int j)
Action to execute in a
GraphDelta object, within the forEachRemVal method. |
Copyright © 2015. All rights reserved.