Package org.jacop.constraints.netflow
Class Pruning
- java.lang.Object
-
- org.jacop.constraints.netflow.simplex.NetworkSimplex
-
- org.jacop.constraints.netflow.Network
-
- org.jacop.constraints.netflow.Pruning
-
- All Implemented Interfaces:
MutableNetwork
public class Pruning extends Network
- Version:
- 4.8
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description classPruning.PercentStrategy(package private) static interfacePruning.PruningStrategy
-
Field Summary
Fields Modifier and Type Field Description private static booleanDO_INSTRUMENTATIONprivate static intFAIL_SCOREprivate static intMIN_NUM_PRUNINGintnumActiveArcsprivate static doubleP_ATTEMPT_PRUNINGprivate java.util.PriorityQueue<ArcCompanion>queueprivate Statisticsstatisticsprivate Pruning.PruningStrategystrategyprivate static intSUCCESS_SCORE-
Fields inherited from class org.jacop.constraints.netflow.Network
costOffset, deletedArcs, deletedSize, lastModifiedArcs, modifiedArcs, modifiedSize, store
-
Fields inherited from class org.jacop.constraints.netflow.simplex.NetworkSimplex
allArcs, blocking, DEBUG, DEBUG_ALL, DELETED_ARC, infeasibleNodes, LARGE_COST, lower, nodes, numArcs, pivotRule, root, TREE_ARC
-
-
Constructor Summary
Constructors Constructor Description Pruning(java.util.List<Node> nodes, java.util.List<Arc> arcs, Statistics statistics)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidanalyze(int costLimit)private intanalyzeArc(Arc arc, int costLimit)private voidanalyzeArcHelper(Arc arc, int costLimit)private voidnVarIn(ArcCompanion companion, int minFlow, int maxFlow)private voidnVarInShift(ArcCompanion companion, IntDomain domain, int shift)private voidpruneArc(int capacity, int residual, boolean forward, ArcCompanion companion)(package private) voidpruneNodesWithSmallDegree()private voidsVarInDom(ArcCompanion companion, Domain domain)private voidwVarIn(ArcCompanion companion, int maxCost)private voidxVarInMax(ArcCompanion companion, int maxFlow)private voidxVarInMin(ArcCompanion companion, int minFlow)-
Methods inherited from class org.jacop.constraints.netflow.Network
backtrack, changeCostOffset, cost, getStoreLevel, increaseLevel, initialize, modified, needsUpdate, remove
-
Methods inherited from class org.jacop.constraints.netflow.simplex.NetworkSimplex
addArc, addArcWithFlow, augmentFlow, dualPivot, networkSimplex, parametricStep, primalStep, print, removeArc, treeSwap, updateTree
-
-
-
-
Field Detail
-
DO_INSTRUMENTATION
private static final boolean DO_INSTRUMENTATION
- See Also:
- Constant Field Values
-
MIN_NUM_PRUNING
private static final int MIN_NUM_PRUNING
- See Also:
- Constant Field Values
-
P_ATTEMPT_PRUNING
private static final double P_ATTEMPT_PRUNING
- See Also:
- Constant Field Values
-
SUCCESS_SCORE
private static final int SUCCESS_SCORE
- See Also:
- Constant Field Values
-
FAIL_SCORE
private static final int FAIL_SCORE
- See Also:
- Constant Field Values
-
statistics
private Statistics statistics
-
queue
private java.util.PriorityQueue<ArcCompanion> queue
-
strategy
private Pruning.PruningStrategy strategy
-
numActiveArcs
public int numActiveArcs
-
-
Constructor Detail
-
Pruning
public Pruning(java.util.List<Node> nodes, java.util.List<Arc> arcs, Statistics statistics)
-
-
Method Detail
-
xVarInMax
private void xVarInMax(ArcCompanion companion, int maxFlow)
-
xVarInMin
private void xVarInMin(ArcCompanion companion, int minFlow)
-
nVarIn
private void nVarIn(ArcCompanion companion, int minFlow, int maxFlow)
-
nVarInShift
private void nVarInShift(ArcCompanion companion, IntDomain domain, int shift)
-
wVarIn
private void wVarIn(ArcCompanion companion, int maxCost)
-
sVarInDom
private void sVarInDom(ArcCompanion companion, Domain domain)
-
pruneNodesWithSmallDegree
void pruneNodesWithSmallDegree()
-
analyze
public void analyze(int costLimit)
-
analyzeArcHelper
private void analyzeArcHelper(Arc arc, int costLimit)
-
analyzeArc
private int analyzeArc(Arc arc, int costLimit)
-
pruneArc
private void pruneArc(int capacity, int residual, boolean forward, ArcCompanion companion)
-
-