Overview | Group | Tree | Graph | Index | Concepts |
The class IloSchedulerEnv
is the repository of all the
default parameters used when creating new modeling objects. There can be at
most one IloSchedulerEnv
defined on a given instance of
IloEnv
.
Avoiding Overflows
In order to avoid overflows in computations by Scheduler Engine, an
efficient policy is to limit the domain of all extracted integer variables
to an interval of [-L,L]
. For example, a variable whose lower
bound is 0 and upper bound is IloInfinity
will be extracted as
a variable with the domain [0,
L]
. This limit
L
is set by the member function IloSchedulerEnv::setIntMaxAtExtraction
. At extraction, this limit is used
only for variables that are used by Scheduler objects or constraints, as the
start and end times, the capacity variables or the precedence delays. Please
note that there is an exception for the cost sum variable (class
IloTransitionCost
). For this variable, the
limit L
is not applied because there is usually no overflow
with this variable. The default value of this limit is
IloIntMax/2
, which avoids overflows in most cases.
For more information, see IloNumToNumStepFunction
,
IloNumToAnySetStepFunction
, and
IloIntervalList
in the extensions section of the IBM ILOG Concert Technology Reference Manual,
Parameter Classes.
See Also:
IloActivityBasicParam, IloActivityBreakParam, IloActivityConstraintsParam, IloActivityOverlapParam, IloActivityShiftParam, IloResourceParam
Constructor Summary | |
---|---|
public | IloSchedulerEnv(const IloEnv env) |
public | IloSchedulerEnv(IloSchedulerEnvI * impl) |
Method Summary | |
---|---|
public IloActivityBasicParam | getActivityBasicParam() const |
public IloActivityBreakParam | getActivityBreakParam() const |
public IloActivityConstraintsParam | getActivityConstraintsParam() const |
public IloActivityOverlapParam | getActivityOverlapParam() const |
public IloActivityShiftParam | getActivityShiftParam() const |
public IloIntervalList | getBreakListParam() const |
public IloIntervalList | getCapacityEnforcementIntervalsParam() const |
public IloNumToNumStepFunction | getCapacityMaxParam() const |
public IloNumToNumStepFunction | getCapacityMinParam() const |
public IloEnv | getEnv() const |
public IloNum | getHorizon() const |
public IloSchedulerEnvI * | getImpl() const |
public IloNumToNumStepFunction | getInitialOccupationParam() const |
public IloInt | getIntMaxAtExtraction() const |
public IloTextureParam | getMaxTextureParam() const |
public IloTextureParam | getMinTextureParam() const |
public IloIntervalList | getMustBeInUseParam() const |
public IloNum | getOrigin() const |
public IloNumToAnySetStepFunction | getPossibleStatesParam() const |
public IloEnforcementLevel | getPrecedenceEnforcement() const |
public IloResourceParam | getResourceParam() const |
public IloIntervalList | getTransitionTimeEnforcementIntervalsParam() const |
public void | setActivityBasicParam(const IloActivityBasicParam param) const |
public void | setActivityBreakParam(const IloActivityBreakParam param) const |
public void | setActivityConstraintsParam(const IloActivityConstraintsParam param) const |
public void | setActivityOverlapParam(const IloActivityOverlapParam param) const |
public void | setActivityShiftParam(const IloActivityShiftParam param) const |
public void | setBreakListParam(const IloIntervalList param) const |
public void | setCapacityEnforcementIntervalsParam(const IloIntervalList param) const |
public void | setCapacityMaxParam(const IloNumToNumStepFunction param) const |
public void | setCapacityMinParam(const IloNumToNumStepFunction param) const |
public void | setHorizon(IloNum horizon) const |
public void | setInitialOccupationParam(const IloNumToNumStepFunction param) const |
public void | setIntMaxAtExtraction(IloInt max) const |
public void | setMaxTextureParam(const IloTextureParam param) const |
public void | setMinTextureParam(const IloTextureParam param) const |
public void | setMustBeInUseParam(const IloIntervalList param) const |
public void | setOrigin(IloNum origin) const |
public void | setPossibleStatesParam(const IloNumToAnySetStepFunction param) const |
public void | setPrecedenceEnforcement(IloEnforcementLevel level) const |
public void | setResourceParam(const IloResourceParam param) const |
public void | setTransitionTimeEnforcementIntervalsParam(const IloIntervalList param) const |
Constructor Detail |
---|
This constructor creates a new instance of IloSchedulerEnv
if none currently exists on the given instance of IloEnv
. If a
scheduler environment has already been created on the environment, then the
new handle uses it, and points to the same implementation. When created, an
instance of IloSchedulerEnv
will create all the default
parameters and initialize them to their default values.
This constructor creates an instance of the handle class
IloSchedulerEnv
from the pointer to an instance of the
implementation class IloSchedulerEnvI
.
Method Detail |
---|
This member function returns the default instance of the activity basic parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the default instance of the activity break parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the default instance of the activity constraints parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the default instance of the activity overlap parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the default instance of the activity shift parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the default instance of the break list parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the default instance of the capacity enforcement intervals parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the default instance of the maximal capacity parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the default instance of the minimal capacity parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the instance of IloEnv
on which
the called object was built.
This member function returns the time horizon. The time origin and the time horizon are used by default at extraction to initialize the time window over which resource capacity constraints must be enforced. The origin and horizon are also used for setting earliest start times and latest end times of activities when they are created.
This member function returns a pointer to the implementation object corresponding to the invoking activity (a handle).
This member function returns the default instance of the initial occupation parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the value of the maximum limit of the domain of the integer variables used by Scheduler Engine.
Avoiding Overflows
In order to avoid overflows in computations by Scheduler Engine, an
efficient policy is to limit the domain of all extracted integer variables
to an interval of [-L,L]
. For example, a variable whose lower
bound is 0 and upper bound is IloInfinity
will be extracted as
a variable with the domain [0,
L]
. This limit
L
is set by the member function IloSchedulerEnv::setIntMaxAtExtraction
. At extraction, this limit is used
only for variables that are used by Scheduler objects or constraints, as the
start and end times, the capacity variables or the precedence delays. Please
note that there is an exception for the cost sum variable (class
IloTransitionCost
). For this variable, the
limit L
is not applied because there is usually no overflow
with this variable. The default value of this limit is
IloIntMax/2
, which avoids overflows in most cases.
For more information, see
Parameters Organized by Function
and IloNumToNumStepFunction
in the IBM ILOG Concert Technology Reference Manual.
The member function returns the default instance of the texture parameter on maximum capacity constraints. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
The member function returns the default instance of the texture parameter on minimum capacity constraints. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the default instance of the must be in use parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the time origin. The time origin and the time horizon are used by default at extraction to initialize the time window over which resource capacity constraints must be enforced. The origin and horizon are also used for setting earliest start times and latest end times of activities when they are created.
This member function returns the default instance of the possible states parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the global precedence enforcement level of the scheduler environment.
This member function returns the default instance of the resource parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function returns the default instance of the transition time enforcement intervals parameter. Modeling objects that are created will point to this instance, which can thus be shared between several objects.
This member function sets param
as the new default activity
basic parameter. Subsequently created modeling objects will point to this
parameter instance.
This member function sets param
as the new default activity
break parameter. Subsequently created modeling objects will point to this
parameter instance.
This member function sets param
as the new default activity
constraints parameter. Subsequently created modeling objects will point to
this parameter instance.
This member function sets param
as the new default activity
overlap parameter. Subsequently created modeling objects will point to this
parameter instance.
This member function sets param
as the new default activity
shift parameter. Subsequently–created modeling objects will point to this
parameter instance.
This member function sets param
as the new default break
list parameter. Subsequently created modeling objects will point to this
parameter instance.
This member function sets param
as the new default capacity
enforcement intervals parameter. Subsequently created modeling objects will
point to this parameter instance.
This member function sets param
as the new default maximal
capacity parameter. Subsequently created modeling objects will point to this
parameter instance.
This member function sets param
as the new default minimal
capacity parameter. Subsequently created modeling objects will point to this
parameter instance.
This member function sets the time horizon to horizon
. The
time origin and the time horizon are used by default at extraction to
initialize the time window over which resource capacity constraints must be
enforced. The origin and horizon are also used for setting earliest start
times and latest end times of activities when they are created.
This member function sets param
as the new default initial
occupation parameter. Subsequently created modeling objects will point to
this parameter instance.
This member function sets max
as the new value for the
maximum limit of the domain of the integer variables used by Scheduler
Engine. See IloSchedulerEnv::getIntMaxAtExtraction for more information on avoiding
overflows.
This member function sets the texture parameter
on maximum capacity constraints to param
. Modeling objects that are created will
point to this instance, which can thus be shared between several
objects.
This member function sets the texture parameter
on minimum capacity constraints to param
. Modeling objects that are created will
point to this instance, which can thus be shared between several
objects.
This member function sets param
as the new default must be
in use parameter. Subsequently created modeling objects will point to this
parameter instance.
This member function sets the time origin to origin
. The
time origin and the time horizon are used by default at extraction to
initialize the time window over which resource capacity constraints must be
enforced. The origin and horizon are also used for setting earliest start
times and latest end times of activities when they are created.
This member function sets param
as the new default possible
states parameter. Subsequently created modeling objects will point to this
parameter instance.
This member function allows setting level
as the new global
precedence enforcement level of the scheduler environment. See
Resource Enforcement as Global Constraint Declaration
for a
description of how this enforcement level is interpreted at extraction time
by the scheduler engine.
This member function sets param
as the new default resource
parameter. Subsequently created modeling objects will point to this
parameter instance.
This member function sets param
as the new default
transition time enforcement intervals parameter. Subsequently created
modeling objects will point to this parameter instance.