Correspondence of parameters between APIs

Certain specialized parameters of one API may not have an equivalent in another API.

Some parameters available for the C API are not supported as parameters for the object-oriented APIs or have a slightly different name there. In particular:

  • MIP callback switch between original model and reduced, presolved model(CPX_PARAM_MIPCBREDLP), the parameter specifying whether to use the reduced or original model in MIP callbacks, has no equivalent in the object-oriented APIs (C++, Java, .NET), nor in the Python API.

  • Logging output is controlled by a parameter in the C API (CPX_PARAM_SCRIND), but when using the object-oriented APIs, you control logging by configuring the output channel:

    • IloCplex::out in C++

      For example, to turn off output to the screen, use cplex.setOut(env.getNullStream()) .

    • IloCplex.output in Java

      For example, to turn off output to the screen, use cplex.setOut(null).

    • Cplex.Out in .NET

      For example, to turn off output to the screen, use Cplex.SetOut(Null).

    • cplex.set_results_stream in Python

      For example, to turn off output to the screen, use cplex.set_results_stream(None).

  • The parameter IloCplex::RootAlg in the C++ API corresponds to these parameters in the C API:

  • The parameter IloCplex::NodeAlg in the C++ API corresponds to the parameter MIP subproblem algorithm CPX_PARAM_SUBALG in the C API.