[ library(cumulative) | The ECLiPSe Libraries | Reference Manual | Alphabetic Index ]

cumulative(+StartTimes, +Durations, +Resources, ++ResourceLimit)

Cumulative constraint on specified tasks.
StartTimes
List of start times for tasks (fd variables or integers)
Durations
List of duration for tasks (fd variables or integers)
Resources
List of resource uages by tasks (fd variables or integers)
ResourceLimit
Maximum amount of resource available (integer)

Description

A cumulative scheduling constraint. StartTimes, Durations and Resources are lists of equal length N of finite domain variable 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. The (ic/fd)_edge_finder and (ic/fd)_edge_finder3 libraries implementation of this predicate can provide stronger propagations.