Overview | Group | Tree | Graph | Index | Concepts |
This handle class represents special ordered sets of type 2 (SOS2). A special ordered set of type 2 specifies a set of variables, and only two among them may take a non zero value. These two variables must be adjacent. You may assign a weight to each variable in an SOS2. This weight indicates an order among the variables. Concert Technology asserts adjacency with respect to this assigned order. If you do not specify any weights to indicate order and adjacency among the variables, then Concert Technology considers the order in which you gave the variables to the constructor of this set and the order in which you added variables later (for example, by column generation).
When you extract a model (an instance of IloModel
)
for an instance of IloCplex
(documented in the ILOG CPLEX Reference
Manual), it will use the order of the SOS2 for branching on variables.
For more details about SOS2, see the ILOG CPLEX Reference and User’s Manuals.
Special ordered sets of type 2 (SOS2) commonly appear in models of piecewise linear
functions. Concert Technology provides direct support for piecewise linear models in
IloPiecewiseLinear
.
Most member functions in this class contain assert
statements. For an
explanation of the macro NDEBUG
(a way to turn on or turn off these
assert
statements), see the concept
Assert and NDEBUG.
See Also:
IloPiecewiseLinear, IloSOS1, IloSOS2Array
Constructor Summary | |
---|---|
public | IloSOS2() |
public | IloSOS2(IloSOS2::ImplClass *) |
public | IloSOS2(const IloEnv, const char *) |
public | IloSOS2(const IloEnv, const IloNumVarArray, const char *) |
public | IloSOS2(const IloEnv, const IloNumVarArray, const IloNumArray, const char *) |
Method Summary | |
---|---|
public IloSOS2::ImplClass * | getImpl() |
public void | getNumVars(IloNumVarArray) |
public void | getValues(IloNumArray) |
Inherited Methods from IloConstraint |
---|
getImpl |
Inherited Methods from IloIntExprArg |
---|
getImpl |
Inherited Methods from IloNumExprArg |
---|
getImpl |
Inherited Methods from IloExtractable |
---|
end, getEnv, getId, getImpl, getName, getObject, setName, setObject |
Constructor Detail |
---|
This constructor creates a special ordered set of type 2 (SOS2). You must add the variables to this set for them to be taken into account.
This constructor creates a special ordered set of type 2 (SOS2). The set includes
each of the variables specified in the array vars
.
This constructor creates a special ordered set of type 2 (SOS2). The set includes
the variables specified in the array vars
. The corresponding value in
vals
indicates the weight of each variable in vars
.
Method Detail |
---|
This member function accesses the variables in a special ordered set of type 2
(SOS2) and puts those variables into its parameter variables
.
This member function accesses the weights of the variables in a special ordered
set of type 2 (SOS2) and puts those weights into its parameter values
.