IBM ILOG Scheduler User's Manual > Advanced Concepts > Advanced Features and Concepts > Advanced Resources

The examples in Part I, relied primarily on unary resources--instances of IloUnaryResource with a capacity of one that are either available at a requested time or otherwise occupied. There are more complex resources, which are often defined (or limited) by the capacity, energy, or the state that they provide.

Resources may be subject to different kinds of capacity limitations. For example, in one scheduling problem, we may be concerned primarily with which airplane is assigned to which flight in terms of number of passengers carried. In another context, we may be more concerned with how many hours each plane is in use between scheduled maintenance dates. The standard resource class in Scheduler is IloDiscreteResource, and it provides the ability to create capacity resources that are more complicated than unary resources.

One type of frequently encountered capacity limitation is the overall amount of energy (for example, work-hours) spent by a resource. The class IloDiscreteEnergy is available to create such resources. IloDiscreteResource and IloDiscreteEnergy are discussed further in Resources as Power versus Energy.

Some scheduling problems involve resources that can operate in different states. For example, in a bakery, the temperature of the oven must be warm for certain pastries but very hot for others, and these oven states and the time it takes to change states must be taken into account in a schedule. Similarly, in an auto body shop, several car parts may be painted at the same time if they are all of the same color, but not if they differ in color. In this case, the color in use in the paint room is the state of the resource. See State Resources for more information.

The following sections discuss some important considerations for the use of the resource classes provided by Scheduler.