Uses of Interface
org.maxicp.cp.engine.core.CPSeqVar
Packages that use CPSeqVar
Package
Description
Constraint Programming Solver Implementation
Constraints implementation for Sequence Variables
Solver objects
Examples of models using the symbolic modeling API
CP Instantiation of the Symbolic Modeling API
Search API
-
Uses of CPSeqVar in org.maxicp.cp
Methods in org.maxicp.cp that return CPSeqVarModifier and TypeMethodDescriptionstatic CPSeqVarA variable that is a view ofseqVarin reverse orderstatic CPSeqVarCPFactory.makeSeqVar(CPSolver cp, int nNodes, int start, int end) Creates a sequence variable.static CPSeqVarCPFactory.nonOverlapSequence(CPIntervalVar[] intervals) Creates and post a non-overlap constraint on the intervals in vars and create a sequence variable linked with these intervals representing the order of the intervals in time.Methods in org.maxicp.cp with parameters of type CPSeqVarModifier and TypeMethodDescriptionstatic CPConstraintReturns a constraint excluding a node from a sequencestatic CPSeqVarA variable that is a view ofseqVarin reverse orderstatic CPConstraintReturns a constraint inserting a node within a sequencestatic CPConstraintCPFactory.notBetween(CPSeqVar seqVar, int prev, int node, int succ) Forbids a subsequence of length 3 to appear in aCPSeqVar, removing from the domain all sequences containing the sub-sequence given as input.static CPConstraintReturns a constraint requiring a node within a sequence -
Uses of CPSeqVar in org.maxicp.cp.engine.constraints.seqvar
Constructors in org.maxicp.cp.engine.constraints.seqvar with parameters of type CPSeqVarModifierConstructorDescriptionCumulative(CPSeqVar seqVar, int[] starts, int[] ends, int[] load, int capacity) Gives a maximum capacity for a resource over a sequence.Duration(CPSeqVar seqVar, CPIntervalVar[] intervals) Excludes a node from a sequenceInserts a node into a sequence, after a given insertion.NotBetween(CPSeqVar seqVar, int prev, int node, int succ) Precedence(CPSeqVar seqVar, boolean appearTogether, int... order) Ensures that a list of nodes appears in a given relative order within the sequence, if they appear.Precedence(CPSeqVar seqVar, int... order) Ensures that a list of nodes appears in a given relative order within the sequence, if they appear Example of a solution: order = [1, 3, 5, 9] seqVar = 1 -> 2 -> 3 -> 4 -> 5 -> 8 Note that nodes can be put in between and some nodes in `order` may be excluded Example of a non solution (since 1 cannot appear before 5): order = [1, 3, 5, 9] seqVar = 5 -> 2 -> 4 -> 1 -> 8RelaxedSequence(CPSeqVar sequence, int[] orderedSequence, Set<Integer> relaxed) SubSequence(CPSeqVar mainSequence, CPSeqVar subSequence) Ensures that the ordering from a subsequence appears within a super sequence, including all of its nodes The super sequence can have other nodes belonging to its ordering as well Example: mainSequence: 0 -> 1 -> 2 -> 3 -> 4 subSequence: 0 -> 2 -> 4TransitionTimes(CPSeqVar seqVar, CPIntVar[] time, int[][] dist) TransitionTimes(CPSeqVar seqVar, CPIntVar[] time, int[][] dist, int[] serviceTime) TransitionTimes(CPSeqVar seqVar, CPIntVar[] time, int[][] dist, Optional<int[]> serviceTime) -
Uses of CPSeqVar in org.maxicp.cp.engine.core
Classes in org.maxicp.cp.engine.core that implement CPSeqVarMethods in org.maxicp.cp.engine.core that return CPSeqVarModifier and TypeMethodDescriptionCPNodeVar.getSeqVar()Returns the sequence variable to which this variable is related to.CPNodeVarViewFlip.getSeqVar()Constructors in org.maxicp.cp.engine.core with parameters of type CPSeqVar -
Uses of CPSeqVar in org.maxicp.cp.examples.modeling
Methods in org.maxicp.cp.examples.modeling that return CPSeqVarModifier and TypeMethodDescriptionstatic CPSeqVarJobShop.machineSeqVar(CPIntervalVar[] intervals) Creates a sequence variable linked with interval variables.Methods in org.maxicp.cp.examples.modeling with parameters of type CPSeqVarModifier and TypeMethodDescriptionstatic Runnable[]JobShop.insertAtBestOrRefute(CPSeqVar machine, int task, int[] nodes) Generates two branches: either inserts the task after the node with the largest number of successor, or refutes the insertion.JobShop.nodeSearch(CPSeqVar[] machines, CPIntervalVar[][] intervals) Binary branching that inserts the task with the best cost into the best location in its machine. -
Uses of CPSeqVar in org.maxicp.cp.examples.raw.jobshop
Methods in org.maxicp.cp.examples.raw.jobshop with parameters of type CPSeqVarModifier and TypeMethodDescriptionJobShopSeqVar.rankBinary(CPSeqVar seqVar, BiFunction<Integer, Integer, Integer> predNodeHeuristic) JobShopSeqVar.rankBinarySlack(CPSeqVar seqVar, CPIntervalVar[] intervals, CPIntVar makespan) -
Uses of CPSeqVar in org.maxicp.cp.modeling
Methods in org.maxicp.cp.modeling that return CPSeqVar -
Uses of CPSeqVar in org.maxicp.search
Methods in org.maxicp.search with parameters of type CPSeqVarModifier and TypeMethodDescriptionSequenceRank.sequenceRank(CPIntervalVar[][] intervals, CPSeqVar[] seqVars) Constructors in org.maxicp.search with parameters of type CPSeqVar