Overview | Group | Tree | Graph | Index | Concepts |
An instance of the class IloDiscreteResource
represents a
resource of discrete capacity. Capacity can vary over time: at any given
time, the capacity represents the number of copies or instances of the
resource that are available. For example, the capacity might be the number
of milling machines available in a manufacturing shop or the number of
bricklayers at work on a construction site. By discrete, we mean that
capacity is defined to be a positive integer.
Each activity may require some amount of the resource capacity, for example, one milling machine or three bricklayers. This requirement is represented by resource constraints.
Minimal Capacity
It is possible to constrain the capacity used so that it exceeds some minimal capacity over some interval of time. No solution will be found if at any point in time the minimal capacity exceeds the maximal capacity.
Parameter classes
Minimal and maximal capacity: (class IloNumToNumStepFunction
)
These parameters describe the minimal and maximal capacities over time.
They are directly modified by the member functions IloDiscreteResource::setCapacityMin
and IloDiscreteResource::setCapacityMax
.
IloNumToNumStepFunction
is documented in the extensions section of the
IBM ILOG Concert Technology Reference Manual.
Refer to Scheduler Overview for more information on how to share parameters among resources, and how the direct modification of parameters through the resource API may affect them.
See Also:
IloEnforcementLevel, IloResource, IloCapResource
Constructor Summary | |
---|---|
public | IloDiscreteResource() |
public | IloDiscreteResource(IloDiscreteResourceI * impl) |
public | IloDiscreteResource(const IloEnv env, IloNum capacity, const char * name=0) |
Method Summary | |
---|---|
public IloNum | getCapacityMax(IloNum time) const |
public IloNum | getCapacityMaxMax(IloNum timeMin, IloNum timeMax) const |
public IloNum | getCapacityMaxMin(IloNum timeMin, IloNum timeMax) const |
public IloNum | getCapacityMin(IloNum time) const |
public IloNum | getCapacityMinMax(IloNum timeMin, IloNum timeMax) const |
public IloNum | getCapacityMinMin(IloNum timeMin, IloNum timeMax) const |
public IloDiscreteResourceI * | getImpl() const |
public void | setCapacityMax(IloNum timeMin, IloNum timeMax, IloNum capacity) const |
public void | setCapacityMaxParam(const IloNumToNumStepFunction tfp) const |
public void | setCapacityMin(IloNum timeMin, IloNum timeMax, IloNum capacity) const |
public void | setCapacityMinParam(const IloNumToNumStepFunction tfp) const |
Constructor Detail |
---|
This constructor creates a new instance of
IloDiscreteResource
and adds it to the set of resources managed
in the environment. The theoretical capacity of the resource is
capacity
. The argument name
is the name of the
constructed IloDiscreteResource
.
Method Detail |
---|
This member function returns the maximal capacity that can be used at a given time.
This member function returns the maximal value of the maximal resource
capacity over the interval [timeMin, timeMax)
.
This member function returns the maximal value of the minimal resource
capacity over the interval [timeMin, timeMax
).
This member function returns the minimal capacity that must be used or is actually used at the given time.
This member function returns the minimal value of the maximal resource
capacity over the interval [timeMin, timeMax
).
This member function returns the minimal value of the minimal resource
capacity over the interval [timeMin, timeMax
).
This member function states that at most capacity
can be
used throughout the interval [timeMin, timeMax)
.
This member function sets tfp
as the maximum capacity
profile parameter of the invoking resource.
This member function states that at least capacity
must be
used throughout the interval [timeMin, timeMax)
.
This member function sets tfp
as the minimum capacity
profile parameter of the invoking resource.