Module org.maxicp

Package org.maxicp.cp.engine.constraints.scheduling


package org.maxicp.cp.engine.constraints.scheduling
Constraints implementation for Scheduling over Interval Variables and Cumulative Functions
  • Class
    Description
    Represents a scheduling activity, i.e., an interval variable that consumes an amount of resource over time.
    Alternative Constraint with cardinality: Enforces that if the interval a is present, then c intervals from the array alt must be present and synchronized with a.
    CP implementation of a Cumulative Function
    CP implementation of a Flat Cumulative Function
    CP implementation of a Minus Cumulative Function (left - right).
    CP implementation of a Plus Cumulative Function (left + right).
    CP implementation of a Pulse Cumulative Function
    CP implementation of a Step at End Cumulative Function
    CP implementation of a Step at Start Cumulative Function
    CP implementation of a Sum Cumulative Function.
    Cumulative constraint with sum decomposition (very slow).
    Constraint enforcing that the end of an interval variable comes after or at a given integer variable: end(interval) >= var when interval is present.
    Enforces that interval A ends at interval B end if B is present and that interval B ends at interval A end if A is present
    Enforces that interval A ends at interval B start if B is present and that interval B starts at interval A end if A is present
    Constraint enforcing that the end of an interval variable comes before or at a given integer variable: end(interval) <= var when interval is present.
    Constrains interval A to end before or at the end of interval B.
    Constrains interval A to end before or at the start of interval B if both are present.
    Checker for the generalized cumulative constraint.
    Generalized Cumulative Constraint using Timetabling TODO Refer paper once published
     
    Generalized Cumulative Constraint using Timetabling TODO Refer paper once published
     
    Sweep-line filtering algorithm for the Generalized Cumulative constraint enforcing a maximum capacity bound.
     
     
    Sweep-line filtering algorithm for the Generalized Cumulative constraint enforcing a minimum capacity bound.
     
     
    Constraint linking the end time of an interval variable var to an integer variable end.
    Constraint linking the end time of an interval variable var to an integer variable end when var is present, or fixing end to a default value when var is absent.
    Constraint linking the length (duration) of an interval variable var to an integer variable length.
    Constraint linking the length (duration) of an interval variable var to an integer variable length when var is present, or fixing length to a default value when var is absent.
    Constraint linking the start time of an interval variable var to an integer variable start.
    Constraint linking the start time of an interval variable var to an integer variable start when var is present, or fixing start to a default value when var is absent.
    Reified constraint enforcing boolVar <=> end(intervalVar) >= var when intervalVar is present.
    Reified constraint enforcing boolVar <=> end(intervalVar) <= var when intervalVar is present.
    Reified is end before start constraint
    Reified is end before start constraint
    Reified temporal ordering constraint with transition times.
    Reified constraint enforcing boolVar <=> start(intervalVar) <= var when intervalVar is present.
    Reified is end before start constraint
    Reified is start before start constraint
    NoOverlap constraint, ensures that a set of interval variables do not overlap in time.
    Bound Consistency filtering for the NoOverlap constraint
    Bound Consistency filtering for the NoOverlap constraint
     
    Binary NoOverlap constraint enforcing that two interval variables A and B do not overlap in time when both are present.
    Binary NoOverlap constraint with transition times enforcing that two interval variables A and B do not overlap and respect minimum setup/transition times transitionTimeAB (when A precedes B) and transitionTimeBA (when B precedes A) when both are present.
    Left-to-right global filtering algorithms for the NoOverlap constraint (Overload Checking, Detectable Precedences, Not-Last, and Edge-Finding), based on Petr Vilim's PhD thesis (2008).
     
    A global constraint that enforces a permutation (ordering) of interval variables with minimum transition times, using set-variable-based propagation for stronger filtering than the binary decomposition NoOverlapWithPositionDecomposition.
    A constraint that enforces a permutation (ordering) of interval variables, typically used for routing/scheduling problems such as TSP or job sequencing.
    Representation of a cumulated Profile data structure as a contiguous sequence of Profile.Rectangle built from a set of Profile.Rectangle using a sweep-line algorithm.
    Represents a rectangle which is part of the Profile datastructure
    Span Constraint: Enforces that if the interval span is present, then it begins with the first interval intervals from the array alt and ends with the latest.
    Constraint enforcing that the start of an interval variable comes after or at a given integer variable: start(interval) >= var when interval is present.
    Enforces that interval A starts at interval B end if B is present and that interval B ends at interval A start if A is present
    Enforces that interval A starts at interval B start if B is present and that interval B starts at interval A start if A is present
    Constraint enforcing that the start of an interval variable comes before or at a given integer variable: start(interval) <= var when interval is present.
    Constrains interval A to start before or at the end of interval B if both are present.
    Constrains interval A to start before or at the start of interval B.
    Data Structure described in Global Constraints in Scheduling, 2008 Petr Vilim, PhD thesis See The thesis.
    Data Structure described in Global Constraints in Scheduling, 2008 Petr Vilim, PhD thesis See The thesis.