MST file format: MIP starts
The MST file format supports MIP starts.
If you use the CPLEX MIP optimizer, the MST file format is available to specify MIP start values for particular variables, most commonly the integer variables. MST files are of the same format as SOL files. While SOL files have values for all variables, MST files written by CPLEX at the default write level of detail have values only for the integer variables and members of special ordered sets (SOS); at higher write levels of detail, MST files may also contain both discrete and continuous variables. For more information about the write level for MST, SOL files, see the CPLEX Parameters Reference Manual.
- C++ API
IloCplex::writeMIPStarts
- Java API
IloCplex.writeMIPStarts
- .NET API
Cplex.WriteMIPStarts
- Python API
cplex.writemipstarts
- Callable Library (C API) routine CPXXwritemipstarts and CPXwritemipstarts
display auxiliary mipstarts
That command shows the names of MIP starts known to CPLEX. Indexing of these MIP starts
begins with 1 (one).
CPLEX uses the start values in an MST file only if the advanced indicator parameter is on (that is, set to 1 (one) its default).
In the C++ API, use the method
IloCplex::setParam(IloCplex::Param::Advance, 1)
.In the Java API, use the method
IloCplex.setParam(IloCplex.Param.Advance, 1
.In the .NET API, set the property
Cplex.SetParam(Cplex.Param.Advance, 1)
.In the Python API, use the method
cplex.parameters.advance.set(cpx.parameters.advance.values.standard)
.In the Callable Library, use the routine CPXXsetintparam and CPXsetintparam with these arguments:
CPXXsetintparam(env, CPXPARAM_Advance, 1)
.In the Interactive Optimizer, use the command
set advance 1
.
By default, the encoding of MST file format is UTF-8.
Here is an example of an MST file:
<?xml version = "1.0" encoding="UTF-8" standalone="yes"?>
<CPLEXSolutions version="1.2">
<CPLEXSolution version="1.2">
<header
problemName="mexample.mps"
solutionName="m1"
solutionIndex="0"
MIPStartEffortLevel="0"
writeLevel="2"/>
<variables>
<variable name="x4" index="3" value="3"/>
</variables>
</CPLEXSolution>
</CPLEXSolutions>