ILOG CPLEX 11.0 User's Manual > Languages and APIs > ILOG Concert Technology for Java Users > Choosing an Optimizer |
Choosing an Optimizer |
INDEX PREVIOUS NEXT |
The algorithm used in the solve
methods can be controlled and if necessary tailored to the particular needs of the model. The most important control is that of selecting the optimizer. For solving the active model, ILOG CPLEX solves one continuous relaxation or a series of continuous relaxations.
IloCplex.isMIP
, IloCplex.isQO
, and IloCplex.isQC
return false
. This is the case if the active model does not include:
IloCplex
provides several optimizing algorithms to solve LPs. For more about those optimizers, see Solving LPs: Simplex Optimizers, Solving LPs: Barrier Optimizer, and Solving Network-Flow Problems in this manual.
IloCplex.isMIP
and IloCplex.isQC
return false
and IloCplex.isQO
returns true
. This is the case if the active model contains a quadratic (and positive semi-definite) objective but does not contain:
IloCplex
provides several optimizing algorithms to solve QPs. For more about identifying this kind of problem, see Solving Problems with a Quadratic Objective (QP).
IloCplex.isMIP
returns false
and IloCplex.isQC
returns true
, indicating that it detected a quadratically constrained program (QCP). This is the case if the active model contains one or more quadratic (and positive semi-definite) constraints but does not contain:
IloCplex
solves QCP models using the barrier optimizer. For more about this kind of problem, see Solving Problems with Quadratic Constraints (QCP), where the special case of second order cone programming (SOCP) problems is also discussed.
In short, an LP model has a linear objective function and linear constraints; a QP model has a quadratic objective function and linear constraints; a QCP includes quadratic constraints, and it may have a linear or quadratic objective function. A problem that can be represented as LP, QP, or QCP is also known collectively as a continuous model or a continuous relaxation.
A series of relaxations is solved if the active model is a MIP, which can be recognized by IloCplex.isMIP
returning true
. This is the case if the model contains any of the objects excluded for single continuous models. If a MIP contains a purely linear objective function, (that is, IloCplex.isQO
returns false
), the problem is more precisely called an MILP. If it includes a positive semidefinite quadratic term in the objective, it is called an MIQP. If it includes a constraint that contains a positive semidefinite quadratic term, it is called an MIQCP. MIPs are solved using branch & cut search, explained in more detail in Solving Mixed Integer Programming Problems (MIP).
Copyright © 1987-2007 ILOG S.A. All rights reserved. Legal terms. | PREVIOUS NEXT |