Skip to main content
FRAMES NO FRAMES

Class IloIntervalSequenceVar

Definition file: ilconcert/ilosmodel.h
Map of IloIntervalSequenceVarIloIntervalSequenceVarIloIntervalSequenceVarIloExtractable
An instance of this class represents an interval sequence variable.

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

IloIntervalSequenceVar

public IloIntervalSequenceVar()
This constructor creates an empty handle. You must initialize it before you use it.

IloIntervalSequenceVar

public IloIntervalSequenceVar(IloIntervalSequenceVarI * impl)
This constructor creates a handle object from a pointer to an implementation object.

IloIntervalSequenceVar

public IloIntervalSequenceVar(const IloEnv env, const IloIntervalVarArray a, const char * name=0)

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.


IloIntervalSequenceVar

public IloIntervalSequenceVar(const IloEnv env, const IloIntervalVarArray a, const IloIntArray types, const char * name=0)

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.


getImpl

public IloIntervalSequenceVarI * getImpl() const
This member function returns a pointer to the implementation object of the invoking handle.