> Continuous Optimization > Solving LPs: Simplex Optimizers > 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.

The LPMethod parameter determines which optimizer will be used when you solve a model in one of the following ways:

The choices for LPMethod are summarized in Table 8.1.

Table 8.1 Settings of the LPMethod Parameter for Choosing an Optimizer
Setting of 
LPMethod 
Meaning 
See Section 
Default Setting 
Primal Simplex 
Dual Simplex 
Network Simplex 
Barrier 
Sifting 
Concurrent Dual,  
Barrier, and Primal 

The symbolic names for these settings in an application program are summarized in Table 8.2.

Table 8.2 Symbolic Names for LP Solution Methods

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