Class CumulativeBasic

Direct Known Subclasses:
Cumulative

public class CumulativeBasic extends Constraint
CumulativeBasic implements the cumulative constraint using time tabling algorithm.
Version:
4.8
  • Field Details

    • idNumber

      private static final AtomicInteger idNumber
    • debug

      private static final boolean debug
      See Also:
    • debugNarr

      private static final boolean debugNarr
      See Also:
    • eventComparator

      private Comparator<CumulativeBasic.Event> eventComparator
    • taskNormal

      final TaskView[] taskNormal
      All tasks of the constraint
    • limit

      public final IntVar limit
      It specifies the limit of the profile of cumulative use of resources.
    • possibleZeroTasks

      boolean possibleZeroTasks
      It specifies whether there possibly exist tasks that have duration or resource variable min value equal zero.
    • cumulativeForConstants

      CumulativePrimary cumulativeForConstants
    • profile

      private static final int profile
      See Also:
    • pruneStart

      private static final int pruneStart
      See Also:
    • pruneEnd

      private static final int pruneEnd
      See Also:
  • Constructor Details

    • CumulativeBasic

      public CumulativeBasic(IntVar[] starts, IntVar[] durations, IntVar[] resources, IntVar limit)
      It creates a cumulative constraint.
      Parameters:
      starts - variables denoting starts of the tasks.
      durations - variables denoting durations of the tasks.
      resources - variables denoting resource usage of the tasks.
      limit - the overall limit of resources which has to be used.
    • CumulativeBasic

      public CumulativeBasic(List<? extends IntVar> starts, List<? extends IntVar> durations, List<? extends IntVar> resources, IntVar limit)
      It creates a cumulative constraint.
      Parameters:
      starts - variables denoting starts of the tasks.
      durations - variables denoting durations of the tasks.
      resources - variables denoting resource usage of the tasks.
      limit - the overall limit of resources which has to be used.
  • Method Details

    • consistency

      public void consistency(Store store)
      Description copied from class: Constraint
      It is a (most probably incomplete) consistency function which removes the values from variables domains. Only values which do not have any support in a solution space are removed.
      Specified by:
      consistency in class Constraint
      Parameters:
      store - constraint store within which the constraint consistency is being checked.
    • profileProp

      void profileProp(Store store)
    • getDefaultConsistencyPruningEvent

      public int getDefaultConsistencyPruningEvent()
      Specified by:
      getDefaultConsistencyPruningEvent in class Constraint
    • updateTasksRes

      private void updateTasksRes(Store store)
    • toString

      public String toString()
      Description copied from class: Constraint
      It produces a string representation of a constraint state.
      Overrides:
      toString in class Constraint
    • sweepPruning

      private void sweepPruning(Store store)