algorithm for initial MIP relaxation

Sets which continuous optimizer will be used to solve the initial relaxation of a MIP.

Purpose

MIP starting algorithm

API Parameter Name Name prior to V12.6.0
C CPXPARAM_MIP_Strategy_StartAlgorithm CPX_PARAM_STARTALG
C++ IloCplex::Param::RootAlgorithm RootAlg
Java IloCplex.Param.RootAlgorithm RootAlg
.NET Cplex.Param.RootAlgorithm RootAlg
OPL rootalg rootalg
Python parameters.mip.strategy.startalgorithm mip.strategy.startalgorithm
Interactive mip strategy startalgorithm mip strategy startalgorithm
Identifier 2025 2025

Description

Sets which continuous optimizer will be used to solve the initial relaxation of a MIP.

The default Automatic setting (0 zero) of this parameter currently selects the concurrent optimizer for root relaxations of mixed integer linear programming models (MILP) and selects the dual simplex optimizer for root relaxations of mixed integer quadratic programming models (MIQP). The Automatic setting may be expanded in the future so that CPLEX chooses the algorithm based on additional characteristics of the model.

For MILP (integer constraints and otherwise continuous variables), all settings are permitted.

For MIQP (integer constraints and positive semi-definite quadratic terms in the objective), settings 5 (Sifting) and 6 (Concurrent) are not implemented; if you happen to choose them, setting 5 (Sifting) reverts to 0 (zero) and setting 6 (Concurrent) reverts to 4.

For MIQCP (integer constraints and positive semi-definite quadratic terms among the constraints), only the setting 0 (zero) Automatic is permitted.

Table 1. Values
Value Symbol Meaning
0 CPX_ALG_AUTOMATIC Automatic: let CPLEX choose; default
1 CPX_ALG_PRIMAL Primal Simplex
2 CPX_ALG_DUAL Dual Simplex
3 CPX_ALG_NET Network Simplex
4 CPX_ALG_BARRIER Barrier
5 CPX_ALG_SIFTING Sifting
6 CPX_ALG_CONCURRENT Concurrent (Dual, Barrier, and Primal in opportunistic mode; Dual and Barrier in deterministic mode)