CPXXmultiobjopt and CPXmultiobjopt
The routine
CPXXmultiobjopt/CPXmultiobjopt
performs a multiobjective optimization on a CPLEX problem object.
int CPXXmultiobjopt( CPXCENVptr env, CPXLPptr lp, CPXCPARAMSETptr const * paramsets)
int CPXXmultiobjopt( CPXCENVptr env, CPXLPptr lp, CPXCPARAMSETptr const * paramsets)
Description
The routine
CPXXmultiobjopt/CPXmultiobjopt
performs multiobjective optimization. If
paramsets is NULL then all optimizations are
performed with the parameter settings currently in the
environment. If paramsets is not NULL then it
must be an array of parameter sets of length at least the
number of optimizations to be performed (which is the number
of different priorities in the objectives). The parameter sets
in the paramsets array are then used
one-by-one in the optimizations.
For more details on multiobjective optimization in CPLEX, see Multiobjective optimization in the CPLEX User's Manual and Multiobjective optimization for related Callable Library functions.
Arguments
- env
-
A pointer to the CPLEX environment as returned by
CPXXopenCPLEX/CPXopenCPLEX. - lp
-
A pointer to a CPLEX problem object as returned by
CPXXcreateprob/CPXcreateprob. - paramsets
-
An array of CPXCPARAMSETptr objects with a length at least equal to the number of optimizations to be performed (i.e., the number of unique priorities assigned to the objectives). The i-th optimization will be performed with parameter set
paramsets[i]applied on top of CPLEX's default parameter settings. Ifparamsets[i]is NULL then the parameter settings from the current environment will be used for the i-th optimization.This argument can be NULL in which case every optimization will be performed using the parameter settings from the current environment.
Return
The routine returns 0 (zero) if successful and nonzero if an error occurs.Example
status = CPXmultiobjopt (env, lp, paramsets);