[ library(ic_edge_finder3) | Reference Manual | Alphabetic Index ]
cumulative(+StartTimes, +Durations, +Resources, ++ResourceLimit)
Cumulative constraint on specified tasks.
- StartTimes
- List of start times for tasks (integer variables or integers)
- Durations
- List of duration for tasks (integer variables or integers)
- Resources
- List of resource uages by tasks (integer variables or integers)
- ResourceLimit
- Maximum amount of resource available (integer)
Description
   A cumulative scheduling constraint. StartTimes, Durations and Resources
   are collections (a la collection_to_list/2) of equal size N of integer
   variables or integers.  ResourceLimit is an integer. The declarative
   meaning is:
   If there are N tasks, each starting at a certain start time, having
   a certain duration and consuming a certain (constant) amount of
   resource, then the sum of resource usage of all the tasks does not
   exceed ResourceLimit at any time.
   Any input variables which do not already have finite bounds will be
   given default bounds of -10000000 to 10000000.
   This constraint can propagate more information than the implementation
   in library(ic_cumulative) and library(cumulative).
See Also
disjunctive / 2, cumulative / 5, eclipse_6 : collection_to_list / 2, lists : collection_to_list / 2, ic_edge_finder : cumulative / 4, gfd : cumulative / 4, edge_finder : cumulative / 4, edge_finder3 : cumulative / 4, cumulative : cumulative / 4, ic_cumulative : cumulative / 4