Choosing an Optimizer for Your LP Problem

ILOG CPLEX offers several different optimizers for linear programming problems. Each of these optimizers is available whether you call ILOG CPLEX from within your own application using Concert or the Callable Library, or you use the Interactive Optimizer.

The choice of LP optimizer in ILOG CPLEX can be specified through a parameter, named CPX_PARAM_LPMETHOD in the Callable Library, and named LPMETHOD in the Interactive Optimizer. In both the C++ and Java versions of Concert, the LP method is controlled by the RootAlg parameter (which also controls related aspects of QP and MIP solutions, as explained in the corresponding chapters of this manual). In this chapter this parameter will be referred to uniformly as LPMethod.

When you solve a model via:

the LPMethod parameter determines which optimizer will be used.

The choices for LPMethod, which are explained in the next subsections, are:

Table 5.1 LPMethod Parameter Values for Optimizer Choice

LPMethod Values 
Meaning 
Automatic (default setting) 
Primal Simplex 
Dual Simplex 
Network Simplex 
Barrier 
Sifting 
Concurrent Dual, Barrier, and Primal 

and the symbolic names for these in an application program are as follows:

Table 5.2 Symbolic Names for LP Solution Methods


 
Concert - C++ 
Concert - Java 
Callable Library 
0 
IloCplex::AutoAlg 
IloCplex.Algorithm.Auto 
CPX_ALG_AUTOMATIC 
1 
IloCplex::Primal 
IloCplex.Algorithm.Primal 
CPX_ALG_PRIMAL 
2 
IloCplex::Dual 
IloCplex.Algorithm.Dual 
CPX_ALG_DUAL 
3 
IloCplex::Network 
IloCplex.Algorithm.Network 
CPX_ALG_NET 
4 
IloCplex::Barrier 
IloCplex.Algorithm.Barrier 
CPX_ALG_BARRIER 
5 
IloCplex::Sifting 
IloCplex.Algorithm.Sifting 
CPX_ALG_SIFTING 
6 
IloCplex::Concurrent 
IloCplex.Algorithm.Concurrent 
CPX_ALG_CONCURRENT 


Previous Page: Solving Linear Programming Problems Return to Top Next Page: Automatic Selection of Optimizer