Class CumulativePrimary


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

  • Constructor Details

    • CumulativePrimary

      public CumulativePrimary(IntVar[] starts, int[] durations, int[] 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.
    • CumulativePrimary

      public CumulativePrimary(List<? extends IntVar> starts, List<? extends Integer> durations, List<? extends Integer> 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.
    • getDefaultConsistencyPruningEvent

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

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

      void sweepPruning(Store store)
    • removeNotUsedProfleTasks

      private void removeNotUsedProfleTasks()
    • swap

      private void swap(int i, int j)