Overview | Group | Tree | Graph | Deprecated | Index | Concepts |
Class Summary | |
---|---|
IlcConstraint | The handle class for user-defined constraints. |
IlcConstraintArray |
The array class for the class IlcConstraint .
|
IlcConstraintI | The implementation class for user-defined constraints. |
IlcCumulElementVar | The class for representing constrained cumul element functions. |
IlcCumulElementVarArray |
The array class for the class IlcCumulElementVar .
|
IlcCustomInferencer | The handle class for a custom inferencer. |
IlcCustomInferencerI | The class for representing custom inferencers. |
IlcDemon | A handle class used for propagating constraints. |
IlcDemonI | An implementation class used for propagating constraints. |
IlcFloatArray | The array class for the basic floating-point class. |
IlcFloatExp | The class for representing constrained floating-point expressions. |
IlcFloatVar | The class for representing constrained floating-point variables. |
IlcFloatVarArray |
The array class for the class IlcFloatVar .
|
IlcGoal | The handle class for the building blocks of custom search algorithms. |
IlcGoalI | The implementation class for the building blocks of custom search algorithms. |
IlcIntArray | The array class for the basic integer class. |
IlcIntExp | The class for representing integer expressions. |
IlcIntExpIterator | The iterator class for the domains of integer expressions. |
IlcIntPredicate | The handle class for integer predicates. |
IlcIntPredicateI | The implementation class for integer predicates. |
IlcIntSelect | The handle class for value selectors. |
IlcIntSelectEvalI | An implementation class for a value selector. |
IlcIntSelectI | The implementation class for value selectors. |
IlcIntSet | The handle class for sets of integers. |
IlcIntSetArray |
The array class for the class IlcIntSet .
|
IlcIntSetIterator | The iterator class for sets of integers. |
IlcIntTupleSet | The class representing a set of integer tuples. |
IlcIntVar | The class for representing constrained integer variables. |
IlcIntVarArray |
The array class for the class IlcIntVar .
|
IlcIntVarDeltaIterator | The iterator class for delta-domain of integer variables. |
IlcIntervalSequenceVar | The class of interval sequence variables. |
IlcIntervalSequenceVarArray |
The array class for the class IlcIntervalSequenceVar .
|
IlcIntervalSequenceVar::Iterator | The class of iterator for the Head-Tail graph of a sequence. |
IlcIntervalVar | The class for representing interval variables. |
IlcIntervalVarArray |
The array class for the class IlcIntervalVar .
|
IlcRevAny |
The reversible class for IlcAny values.
|
IlcRevBool | The reversible class for Boolean values. |
IlcRevFloat | The reversible class for floating-point values. |
IlcRevInt | The reversible class for integer values. |
IlcSearchLimit | The handle class for a search limit. |
IlcSearchLimitI | The implementation class for a search limit. |
IloCPConstraintI | A class for wrapping a user-defined constraint. |
IloGoal | A handle class that represents a goal in a model. |
IloGoalI | An implementation class that represents a goal in a model. |
IloPropagatorI | A class for creating a custom constraint. |
Typedef Summary | |
---|---|
IlcAny | Type for objects values. |
IlcChooseIntIndex |
A pointer to a function that takes an IlcIntVarArray
and returns an integer.
|
IlcEvalInt | Returns a function to use in a value selector. |
IlcFloat | Type for floating-point values. |
IlcInt | Type for integer values. |
Macro Summary | |
---|---|
IlcChooseIndex1 | Macro to define a new variable choice function. |
IlcChooseIndex2 | Macro to define a new variable choice function. |
ILCCTDEMON0 | Macro for creating a new demon class. |
ILCGOAL0 | Macro for creating a new goal class. |
IlcInfinity | Constant to represent infinity. |
IlcIntBottom | Constant to represent the smallest integer. |
ILCINTPREDICATE0 | Macro to define an integer predicate class. |
IlcIntTop | Constant to represent the largest integer. |
ILOCPCONSTRAINTWRAPPER0 | Macro for wrapping a new constraint class. |
ILOCPGOALWRAPPER0 | Macro for wrapping a new goal class. |
Enumeration Summary | |
---|---|
IlcFilterLevel | Values to control amount of propagation. |
IlcIntervalSequenceVar::Filter |
Filter for the subsets of a Head-Tail graph of an
instance of IlcIntervalSequenceVar .
|
Function Summary | |
---|---|
IlcAbs | Returns an absolute value expression. |
IlcAllDiff | Returns an all-different constraint. |
IlcAllMinDistance | Creates and returns a minimum distance constraint. |
IlcAnd | Returns a goal that is a conjunction of goals. |
IlcBestGenerate | A goal to assign values to the variables in an array. |
IlcBestInstantiate | A goal to assign a value to a variable. |
IlcBestInstantiate | A goal to assign a value to a variable. |
IlcBranchLimit | Returns a goal to limit the search. |
IlcChooseFirstNonFixedInt | A variable chooser. |
IlcChooseMaxMaxInt | A variable chooser. |
IlcChooseMaxMinInt | A variable chooser. |
IlcChooseMaxRegretMax | A variable chooser. |
IlcChooseMaxRegretMin | A variable chooser. |
IlcChooseMaxSizeInt | A variable chooser. |
IlcChooseMinMaxInt | A variable chooser. |
IlcChooseMinMinInt | A variable chooser. |
IlcChooseMinRegretMax | A variable chooser. |
IlcChooseMinRegretMin | A variable chooser. |
IlcChooseMinSizeInt | A variable chooser. |
IlcCountDifferent | Returns a ``count different'' expression. |
IlcCustomConstraint | Creates a constraint from a propagator. |
IlcDichotomize | A goal to assign a value to a variable. |
IlcDistribute | Returns a distribution constraint. |
IlcElementEq | Returns a form of an element constraint. |
IlcElementEq | Returns a form of an element constraint. |
IlcElementNEq | Returns an inequality form of an element constraint. |
IlcElementNEq | Returns an inequality form of an element constraint. |
IlcEndAtEnd | End at end precedence between interval variables. |
IlcEndAtStart | End at start precedence between interval variables. |
IlcEndBeforeEnd | End before end precedence between interval variables. |
IlcEndBeforeStart | End before start precedence between interval variables. |
IlcExponent | Returns a constrained exponent expression. |
IlcFailLimit | Returns a goal to limit the search. |
IlcGenerate | A goal to assign values to the variables in an array. |
IlcIfThen | Returns an implication constraint. |
IlcInstantiate | A goal to assign a value to a variable. |
IlcInstantiate | A goal to assign a value to a variable. |
IlcInverse | Returns an inverse relation constraint. |
IlcLeOffset | Returns a less-than-or-equal offset constraint. |
IlcLexicographic | Returns a lexicographic constraint. |
IlcLimitSearch | Returns a goal to limit the search. |
IlcLog | Returns a constrained natural logarithm expression. |
IlcMax | Returns the maximum of its argument or arguments. |
IlcMember | Returns a member constraint. |
IlcMin | Returns the minimum of its argument or arguments. |
IlcMinDistance | Creates and returns a minimum distance constraint. |
IlcNotMember | Returns a 'not member' constraint. |
IlcOr | Returns a goal that is a choice point. |
IlcOrLimit | Returns a goal to limit the search. |
IlcPack | Returns a packing constraint. |
IlcPack | Returns a packing constraint. |
IlcPiecewiseLinear | Returns a piecewise linear function. |
ilcpo_fail_stop_here | A function useful in debugging. |
IlcPower | Returns a constrained power expression. |
IlcPresenceDifferent | Exclusive disjunction between interval variables presence. |
IlcPresenceEqual | Conjunction between interval variables presence. |
IlcPresenceImply | Implication between the presence of interval variables. |
IlcPresenceImplyNot | Exclusion between interval variables presence. |
IlcPresenceOr | Disjunction between interval variables presence. |
IlcRemoveValue | A search goal for removing a value from the domain of a variable. |
IlcScalProd | Returns an expression that is the scalar product of the arguments. |
IlcScalProd | Returns a constrained scalar product expression. |
IlcSequence | Creates and returns a constraint that works on sequences. |
IlcSetMax | Returns a goal that sets the maximum of a variable. |
IlcSetMin | Returns a goal that sets the minimum of a variable. |
IlcSetValue | A search goal for fixing a variable to a value. |
IlcSimpleCompletionGoal | This function creates a goal which instantiates all decision variables. |
IlcSplit | A goal to assign values to an array of variables. |
IlcSquare | Returns an expression that is the square of the argument. |
IlcStartAtEnd | Start At end precedence between interval variables. |
IlcStartAtStart | Start at start precedence between interval variables. |
IlcStartBeforeEnd | Start before end precedence between interval variables. |
IlcStartBeforeStart | Start before start precedence between interval variables. |
IlcSum | Returns an expression that is the sum of the argument(s). |
IlcSum | Returns a constrained sum expression. |
IlcTableConstraint | Returns a table constraint. |
IlcTimeLimit | Returns a goal to limit the search. |
IloCustomConstraint | Creates a modeling constraint from a propagator. |
IloGenerate | A modeling goal to assign values to variables in an array. |
IloGoalFail | Returns a goal that always fails. |
IloGoalTrue | Returns a goal that always succeeds. |
operator new | Overloaded C++ operator. |
operator! | Overloaded C++ operator. |
operator!= | Overloaded C++ operator. |
operator!= | Overloaded C++ operator. |
operator&& | Overloaded C++ operator. |
operator&& | Overloaded C++ operator. |
operator* | Overloaded C++ operator. |
operator* | Overloaded C++ operator. |
operator+ | Overloaded C++ operator. |
operator+ | Overloaded C++ operator. |
operator- | Overloaded C++ operator. |
operator- | Overloaded C++ operator. |
operator- | Overloaded C++ operator. |
operator/ | Overloaded C++ operator. |
operator/ | Overloaded C++ operator. |
operator< | Overloaded C++ operator. |
operator<< | Overloaded C++ operator. |
operator<= | Overloaded C++ operator. |
operator== | Overloaded C++ operator. |
operator== | Overloaded C++ operator. |
operator> | Overloaded C++ operator. |
operator>= | Overloaded C++ operator. |
operator|| | Overloaded C++ operator. |
operator|| | Overloaded C++ operator. |
Variable Summary | |
---|---|
ILC_NO_MEMORY_MANAGER | OS environment variable controls CP Optimizer memory manager. |
IlcBool | Type for Boolean values. |
IlcFloatMax | Constant to represent the highest floating-point number. |
IlcFloatMin | Constant to represent the lowest floating-point number. |
IlcIntMax | |
IlcIntMin |
CP Optimizer Extensions
This classes and functions in this group in the reference manual make up the
"extensions" API of CP Optimizer. This API is a low-level API to certain
advanced aspects CP Optimizer that are not available through IBM® ILOG® Concert
Technology or the class IloCP
. The extensions API
can be used for the following:
IlcGoal
,
IlcGoalI
, IlcAnd
, and
IlcOr
).IlcConstraintI
,
IlcConstraint
,
ILOCPCONSTRAINTWRAPPER0
)IlcIntVar
) and constraints (see
IlcConstraint
)---during the search process itself.
To do this, you must also take full control of the search process as
in 1 above.The recommended development path is to use IBM ILOG Concert Technology for modeling, together with the CP Optimizer search engine (tuned via parameters or search phases). In this way, you benefit from all future improvements to the CP Optimizer propagation and search engines.
However, For certain challenging optimization problems where there is good structural understanding of the problem, or good well-known solution construction methods, precisely controlling the search can be necessary. In this case, CP Optimizer extensions can be invaluable. Nevertheless, you should bear in mind that a decision to use CP Optimizer extensions is a pivotal choice in your application design which will reduce its ability to benefit from performance improvements in new product versions. It is recommended that whenever possible, you first try to solve your problem without the use of CP Optimizer extensions.