maximize, minimize
maximize, minimize |
Purpose
Synopsis
procedure maximize(alg:integer, obj:linctr)
procedure maximize(obj:linctr)
procedure maximize(alg:integer, qobj:qexp)
procedure maximize(qobj:qexp)
procedure maximize(alg:integer, nlobj:nlctr)
procedure maximize(nlobj:nlctr)
procedure maximize(rbobj:robustctr)
procedure maximize(alg:integer, rbobj:robustctr)
Arguments
alg
|
Algorithm choice:
|
||||||||||||||||||||||
obj
|
Objective function constraint
|
||||||||||||||||||||||
qobj
|
Quadratic objective function (with module
mmquad)
|
||||||||||||||||||||||
nlobj
|
Non linear objective function (with module
mmnl)
|
||||||||||||||||||||||
rbobj
|
Robust objective function (with module
mmrobust)
|
Example
The following maximizes
Profit using the dual simplex algorithm and stops before the global search:
declarations Profit:linctr end-declarations maximize(XPRS_DUAL+XPRS_LPSTOP, Profit)
The following minimizes
MinCost using the Newton-Barrier algorithm and ignoring all global entities
declarations MinCost:linctr end-declarations minimize(XPRS_BAR+XPRS_LIN, MinCost)
Further information
1. This procedure calls the Optimizer to maximize/minimize the current problem (excluding all hidden constraints) using the given constraint as objective function. Optionally, the algorithm to be used can be defined. By default, the global search is executed automatically if the problem contains any global entities. Where appropriate, several algorithm choice parameters may be combined (using plus signs).
2. If
XPRS_LIN is specified, then the discreteness of all global entities is ignored, even during the presolve procedure.
3. If
XPRS_LPSTOP is specified, then just the LP at the top node is solved and no Branch-and-Bound search is initiated. But the discreteness of the global entities
is taken into account in presolving the LP at the top node. Note also that
getprobstat still returns information related to the MIP problem when this option is used although only an LP solve has been executed and the solution information returned by
getsol corresponds to the current LP solution. However, if the the MIP is solved to optimality during this call, the MIP optimal solution will be returned by
getsol.
4. If
XPRS_CONT is used after a solve has completed, the routine returns immediately without altering the current problem status.
5. If
XPRS_ENUM is specified, the optimiser starts a search for the
n-best MIP solutions. The maximum number of solutions to store may be specified using the
XPRS_enummaxsol (default: 10). After the execution of the enumeration, the number of solutions found during the search is returned by the control parameter
XPRS_enumsols. The procedure
selectsol can then be used to select one of these solutions.
6. If
XNLP_LOCAL is specified for a non-linear problem having been loaded using
mmxnlp and which have been solved using XSLP, then the current linearization will be reoptimized.
7. If
XPRS_TUNE is specified the problem will be tuned and then solved with the best control settings identified by the tuner. For a user guide about the tuner, please refer to the documentation of the Xpress Optimizer.
8. If
XNLP_COREPB is specified for a non-linear problem having been loaded using
mmxnlp, then only the linear part of the problem will be loaded and optimized. This is usefull for checking if the linear part of the problem is well posed.
9. Support for quadratic programming requires the module
mmnl.
10. Support for general nonlinear programming requires the module
mmxnlp.
11. Support for robust programming requires the module
mmrobust.
Related topics
Module