FRAMES NO FRAMES

Resource Usage Profiles
PREVIOUS NEXT
Description
Resource Usage Enforcement
Resource Usage Enforcement Intervals
Description

In Scheduler, each resource can be associated with a minimal and a maximal usage profile.

For capacity resources, the maximal usage profile describes the maximal available quantity of the resource over time whereas the minimal usage profile describes the minimal quantity of the resource that needs to be consumed by activities over time. These usage profiles are represented by instances of the class IloNumToNumStepFunction, that is, a step function from real numbers to real numbers. On a discrete resource, the usage profiles represent the instantaneous capacity of the resource over time. On a reservoir, it represents the level of the reservoir over time. On a discrete energy resource, it represents the energy of the resource available per time bucket (see Resource Usage Enforcement).

For continuous reservoirs, the maximal usage profile describes the maximal possible level of the reservoir over time, whereas the minimal usage profile describes the minimal possible level over time. These usage profiles are represented by instances of the class IloNumToNumSegmentFunction, that is a piecewise linear function.

For state resources, the maximal usage profile describes the possible states of the resource over time. This usage profile is represented by an instance of the class IloNumToAnySetStepFunction, that is, a step function from real numbers to a set of states. The minimal usage profile of the state resource describes a set of time intervals during which the state resource must be used by at least one activity of the environment. This usage profile is represented by an instance of the class IloIntervalList.

IloNumToNumStepFunction, IloNumToNumSegmentFunction, IloNumToAnySetStepFunction and IloIntervalList are documented in the extensions section of the IBM ILOG Concert Technology Reference Manual.

Resource Usage Enforcement

A parameter associated with each resource allows changing the enforcement level of the resource usage profiles (member functions IloResourceParam::getCapacityEnforcement and IloResourceParam::setCapacityEnforcement). The semantics of these levels depends on the scheduler.

Resource Usage Enforcement Intervals

Each resource can be associated with a list of temporal intervals during which the resource usage profiles (maximal and/or minimal) need to be enforced. Each time interval [timeMin, timeMax) in the list contains a time step that defines the quantum of time used when enforcing the resource usage (see the following figure). By default, when nothing is specified, the resource usage profiles are enforced over the entire scheduling horizon with a time step equal to one.

Note that for a discrete energy resource (instance of IloDiscreteEnergy), the maximal and minimal usage profiles define the energy of the resource per time step.

Note that for a continuous reservoir, there is no time step. The value associated with each interval is ignored by Scheduler engine.

See Also

IloNumToNumStepFunction, IloNumToNumSegmentFunction, IloNumToAnySetStepFunction and IloIntervalList are documented in the extensions section of the IBM ILOG Concert Technology Reference Manual.

IloResource and IloResourceParam.

PREVIOUS NEXT