IBM ILOG CPLEX

Home

The IBM ILOG CPLEX solver (CPLEX) is a high performance solver for Linear Programming (LP), Mixed Integer Programming (MIP) and Quadratic Programming (QP/QCP/MIQP/MIQCP).

Linear Programming

CPLEX Basic offers various algorithms for solving LP problems: you can choose between the primal or dual simplex algorithm, the barrier algorithm and the network algorithm. The barrier (or interior point) algorithm offers an approach particulary efficient on large sparse problems. CPLEX can handle sparse matrices very efficiently. A presolver is used to reduce the size of the problem before it is solved, sometimes by an order of magnitude. CPLEX is very robust and reliable. It is capable of solving huge, real-world optimization problems. Almost always the default option settings of CPLEX are sufficient to solve a problem with excellent solution times.

Mixed Integer Programming

CPLEX Intermediate can also solve MIP problems. The CPLEX branch-and-bound algorithm for solving MIP problems uses modern features like cutting planes and heuristics to find integer solutions. Combined with the state-of-the-art presolver it makes CPLEX a very powerful tool for solving large and difficult MIP problems.

Quadratic Programming

CPLEX Basic, Intermediate and Full can also be used to solve Quadratic Programming (QP) problems which are problems with linear constraints and a quadratic objective function. CPLEX Full can also handle the variant with integer variables: Mixed Integer Quadratic Programming (MIQP) problems. It can also handle problems that have quadratic constraints: Quadratic Constraint Programming (QCP) problems and Mixed Integer Quadratic Constraint Programming (MIQCP) problems.

Parallel CPLEX

CPLEX provides a parallel CPLEX option allowing you to take advantage of the availability of additional CPUs to speed up performance while solves a specific model. CPLEX 11 extends the functionality of the parallel MIP optimizer to include two modes of operation. In deterministic mode, a newly implemented search algorithm exploits parallelism in solving nodes of the branch-and-cut tree, but produces a repeatable, invariant solution path. In opportunistic mode, the search algorithm, takes full advantage of parallelism; it performs less synchronization between threads and allows random tie breaking, which may result in different solution paths but potentially faster performance.

Starting with CPLEX 12, parallel algorithms are included as a standard (i.e. no additional charge).

Indicator constraints

CPLEX provides indicators constraints. Indicator constraints are a new constraint type that enables the user to express particular modeling constructs among variables by identifying a binary variable to control whether or not a specified linear constraint is active. Formulations using indicator constraints are more numerically robust and accurate than conventional formulations involving so-called Big M data. 

Solution Polishing

Also the solution polishing heuristic of CPLEX is available in AIMMS to boost performance on certain types of models. Solution Polishing is appropriate for finding the best solutions to complex and difficult MIP models within a specified time and is used to improve the best solution at the end of the branch-and-cut process if optimality has not been proven. It can also be used instead of the branch-and-cut algorithm if an initial solution can be found in the root node.

Tuning Tool

CPLEX 11 introduced a performance tuning tool to help you analyze whether default option settings are best for your particular model or models and to aid you in adjusting option settings efficiently.

Performance improvements

CPLEX 11 introduced a new search algorithm—dynamic search. It is innovative in its integration and sequencing of the usual branching, nodes and cuts in branch-and-cut algorithms. CPLEX 11 retains its conventional branch-and-cut algorithm, but with advances in branching, cuts and heuristics. By selecting the more efficient of the two search strategies, CPLEX 11 improves the time to optimality by 15% on average for models solved in less than one minute; and it solves models in the range of one minute to one hour an average of three times faster. For hard models requiring more than one hour to solve, the speed up is a factor of ten on average.

CPLEX 12 includes improvements in the performance of solving MIP problems and the barrier algorithm.

About IBM ILOG CPLEX

IBM ILOG CPLEX is developed and supported by IBM, Inc. IBM ILOG CPLEX is a registered trademark of IBM, Inc. 

Supported Versions

AIMMS supports CPLEX 8.1 - 12.x. CPLEX is also available in the free trial license of AIMMS.

 Customer Quotes  “Overall, AIMMS helps Merck maximize the value throughput of the pipeline and rationalize and optimize resource allocation to support this strategy. ”
Lifei Cheng, Merck & Co, Pennsylvania, USA - Associate Manager CPM

 Login  to update your profile.

Login