java.lang.Object
org.maxicp.cp.engine.core.AbstractCPConstraint
org.maxicp.cp.engine.constraints.Circuit
- All Implemented Interfaces:
CPConstraint,ConcreteConstraint<ConcreteCPModel>
Hamiltonian Circuit Constraint with a successor model
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class org.maxicp.cp.engine.core.AbstractCPConstraint
getSolver, isActive, isScheduled, priority, registerDelta, setActive, setScheduled, updateDeltas
-
Field Details
-
deactivateSCC
public boolean deactivateSCC
-
-
Constructor Details
-
Circuit
Creates a Hamiltonian Circuit Constraint with a successor model.- Parameters:
x- the variables representing the successor array that isx[i]is the city visited after city i
-
-
Method Details
-
post
public void post()Description copied from interface:CPConstraintInitializes the constraint when it is posted to the solver.- Specified by:
postin interfaceCPConstraint- Overrides:
postin classAbstractCPConstraint
-
propagate
public void propagate()Description copied from interface:CPConstraintPropagates the constraint.- Specified by:
propagatein interfaceCPConstraint- Overrides:
propagatein classAbstractCPConstraint
-
fixed
public void fixed(int idx) Called whenever variable x[idx] is fixed to val (adding directed edge idx -> val). Connects two disjoint paths: (orig_i ->* idx) and (val ->* dest_j) into a single merged path: orig_i ->* idx -> val ->* dest_j and forbids closing a premature subtour by removing orig_i from x[dest_j].- Parameters:
idx- source node of the newly fixed edge
-
findSCCCount
public int findSCCCount()
-