Overview | Group | Tree | Graph | Deprecated | Index | Concepts |
An interval sequence variable is defined on a set of interval
variables {a1,...,an}
. Informally speaking, the value
of an interval sequence variable represents a total ordering of the
interval variables {a1,...,an}
. Absent interval
variables are not considered in the ordering.
The sequence variable alone does not enforce any constraint
on the relative position of interval start and end points. For
instance, an interval variable a
could be sequenced
before an interval variable b
in a sequence without
any impact on the relative position between the start/end points of
a
and b
(a
could still be
fixed to start after the end of b
). This is because
different semantics can be used to define how a sequence constrains
the positions of intervals. One of these semantics is implemented
by the constraint IloNoOverlap
that ensures that
interval variables in the sequence do not overlap and that the
order of the sequence corresponds with the order of the interval
start and end points.
Each interval variable in a sequence variable can be given
a non-negative integer type which is local to the sequence variable.
This integer type is used by some
constraints on the sequence variable (see IloNoOverlap
).
The notion of type allows grouping the set of intervals according
to this type value.
For more information on interval sequence variables, see the concept Interval variable sequencing in CP Optimizer.
Method Summary | |
---|---|
public IloIntervalSequenceVarI * | getImpl() const |
public | IloIntervalSequenceVar() |
public | IloIntervalSequenceVar(IloIntervalSequenceVarI * impl) |
public | IloIntervalSequenceVar(const IloEnv env, const IloIntervalVarArray a, const char * name=0) |
public | IloIntervalSequenceVar(const IloEnv env, const IloIntervalVarArray a, const IloIntArray types, const char * name=0) |
Inherited Methods from IloExtractable |
---|
asConstraint, asIntExpr, asModel, asNumExpr, asObjective, asVariable, end, getEnv, getId, getImpl, getName, getObject, IloExtractable, isConstraint, isIntExpr, isModel, isNumExpr, isObjective, isVariable, removeFromAll, setLocation, setName, setObject |
Method Detail |
---|
This constructor creates an instance of a sequence variable on
the set of interval variables defined by array a
and
makes it part of the environment env
. By default,
the name of the sequence variable is the empty string, but you
can specify a name
of your own choice.
This constructor creates an instance of a sequence variable on
the set of interval variables defined by array a
and
makes it part of the environment env
. An array of
non-negative integer types
is specified. Arrays
a
and types
must be of the same size and
interval variable a[i]
will have type
types[i]
in the sequence variable. By default, the
name of the sequence variable is the empty string, but you can
specify a name
of your own choice.