next up previous index
Next: Edge-finder Up: Additional Finite Domain Constraints Previous: Various Constraints on Lists   Index

Cumulative Constraint and Resource Profiles

The library cumulative implements the cumulative scheduling constraint. It is based on the finite domain library and is loaded using one of

:- use_module(library(cumulative)).
:- lib(cumulative).

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

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.

profile(+StartTimes, +Durations, +Resources, -Profile)

StartTimes, Durations, Resources and Profile are lists of equal length N of finite domain variable or integers with the same meaning as in cumulative/4. The list Profile indicates the level of resource usage at the starting point of each task.




1999-08-06