|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectchoco.AbstractEntity
choco.AbstractConstraint
choco.integer.constraints.AbstractIntConstraint
choco.integer.constraints.AbstractLargeIntConstraint
choco.global.matching.AbstractBipartiteGraph
choco.global.matching.AbstractBipartiteMatching
public abstract class AbstractBipartiteMatching
A subclass of AbtractBipartiteGraph restricted only to matchings (and not flows).
Nested Class Summary |
---|
Nested classes/interfaces inherited from class choco.global.matching.AbstractBipartiteGraph |
---|
AbstractBipartiteGraph.IntQueue |
Field Summary | |
---|---|
protected IStateIntVector |
refInverseMatch
Vector with the reverse matching. |
Fields inherited from class choco.global.matching.AbstractBipartiteGraph |
---|
component, componentOrder, currentComponent, currentNode, finishDate, left2rightArc, logger, matchingSize, maxValue, minValue, nbLeftVertices, nbRightVertices, nbVertices, queue, refMatch, right2leftArc, seen, source, time |
Fields inherited from class choco.integer.constraints.AbstractLargeIntConstraint |
---|
cIndices, cste, vars |
Fields inherited from class choco.AbstractConstraint |
---|
active, constAwakeEvent, hook, priority |
Fields inherited from class choco.AbstractEntity |
---|
problem |
Constructor Summary | |
---|---|
AbstractBipartiteMatching(IntDomainVar[] vars,
int nbLeft,
int nbRight)
Builds a new instance for the specified vars. |
Method Summary | |
---|---|
java.lang.Object |
clone()
Builds a copy of this contraint. |
void |
decreaseMatchingSize(int j)
Matching size has been decrease by 1. |
void |
deleteMatch(int i,
int j)
Removing the arc i-j from the reference matching. |
void |
increaseMatchingSize(int j)
Matching size has been increase by 1. |
void |
initAbstractBipartiteMatching()
Initializes the matching by building the backtrackable vector for the right vertices values. |
int |
inverseMatch(int j)
Accessing the left vertex matched to j. |
boolean |
mayDiminishFlowFromSource(int j)
Checks if the flow can be decreased between source and a vertex. |
boolean |
mayGrowFlowFromSource(int j)
Checks if the flow can be increased between source and a vertex. |
boolean |
mustGrowFlowFromSource(int j)
Checks if the flow must be increased between the source and a vertex. |
void |
putRefMatch(int i,
int j)
Adding the arc i-j in the reference matching without any updates. |
void |
setMatch(int i,
int j)
Adding the arc i-j in the reference matching. |
Methods inherited from class choco.global.matching.AbstractBipartiteGraph |
---|
addComponentEdge, addComponentVertex, augment, augmentFlow, deleteEdgeAndPublish, findAlternatingPath, firstDFSearch, firstPassDFS, getPriority, init, initSCCGraph, match, mayDiminishFlowBetween, mayGrowFlowBetween, mayGrowFlowToSink, mayInverseMatch, mayMatch, propagate, removeUselessEdges, secondDFSearch, secondPassDFS |
Methods inherited from class choco.integer.constraints.AbstractLargeIntConstraint |
---|
assignIndices, getConstraintIdx, getIntVar, getNbVars, getVar, isCompletelyInstantiated, setConstraintIndex, setVar |
Methods inherited from class choco.integer.constraints.AbstractIntConstraint |
---|
awakeOnBounds, awakeOnInf, awakeOnInst, awakeOnRem, awakeOnRemovals, awakeOnSup, getSelfIndex, isConsistent |
Methods inherited from class choco.AbstractConstraint |
---|
addListener, awake, awakeOnVar, connectVar, constAwake, delete, fail, getEvent, getPlugIn, getProblem, getVarIdxInOpposite, isActive, isEntailed, isEquivalentTo, opposite, setActive, setEntailed, setPassive, setPlugIn, substituteVar |
Methods inherited from class choco.AbstractEntity |
---|
pretty |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface choco.Propagator |
---|
awake, awakeOnVar, constAwake, delete, getEvent, getPlugIn, isEntailed |
Methods inherited from interface choco.prop.VarEventListener |
---|
addListener, isActive, setActive, setPassive |
Methods inherited from interface choco.prop.VarEventListener |
---|
addListener, isActive, setActive, setPassive |
Field Detail |
---|
protected IStateIntVector refInverseMatch
Constructor Detail |
---|
public AbstractBipartiteMatching(IntDomainVar[] vars, int nbLeft, int nbRight)
vars
- the variablesnbLeft
- number of nodes in the first part of the bipartite matchingnbRight
- number of nodes in the second partMethod Detail |
---|
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in interface Constraint
clone
in class AbstractBipartiteGraph
java.lang.CloneNotSupportedException
- if an error occurs during cloningpublic void initAbstractBipartiteMatching()
public int inverseMatch(int j)
j
- the vertex
public void increaseMatchingSize(int j)
increaseMatchingSize
in class AbstractBipartiteGraph
j
- useless herepublic void decreaseMatchingSize(int j)
decreaseMatchingSize
in class AbstractBipartiteGraph
j
- useless herepublic void deleteMatch(int i, int j)
deleteMatch
in class AbstractBipartiteGraph
i
- the left vertexj
- the right vertexpublic void putRefMatch(int i, int j)
putRefMatch
in class AbstractBipartiteGraph
i
- the left vertexj
- the right vertexpublic void setMatch(int i, int j)
setMatch
in class AbstractBipartiteGraph
i
- the left vertexj
- the right vertexpublic boolean mayDiminishFlowFromSource(int j)
mayDiminishFlowFromSource
in class AbstractBipartiteGraph
j
- the vertex
public boolean mayGrowFlowFromSource(int j)
mayGrowFlowFromSource
in class AbstractBipartiteGraph
j
- the vertex
public boolean mustGrowFlowFromSource(int j)
mustGrowFlowFromSource
in class AbstractBipartiteGraph
j
- the vertex
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |