15.7 Enumerations

MSKbasindtypee

Basis identification

MSK_BI_NEVER (0)

Never do basis identification.

MSK_BI_ALWAYS (1)

Basis identification is always performed even if the interior-point optimizer terminates abnormally.

MSK_BI_NO_ERROR (2)

Basis identification is performed if the interior-point optimizer terminates without an error.

MSK_BI_IF_FEASIBLE (3)

Basis identification is not performed if the interior-point optimizer terminates with a problem status saying that the problem is primal or dual infeasible.

MSK_BI_RESERVERED (4)

Not currently in use.

MSKboundkeye

Bound keys

MSK_BK_LO (0)

The constraint or variable has a finite lower bound and an infinite upper bound.

MSK_BK_UP (1)

The constraint or variable has an infinite lower bound and an finite upper bound.

MSK_BK_FX (2)

The constraint or variable is fixed.

MSK_BK_FR (3)

The constraint or variable is free.

MSK_BK_RA (4)

The constraint or variable is ranged.

MSKmarke

Mark

MSK_MARK_LO (0)

The lower bound is selected for sensitivity analysis.

MSK_MARK_UP (1)

The upper bound is selected for sensitivity analysis.

MSKsimdegene

Degeneracy strategies

MSK_SIM_DEGEN_NONE (0)

The simplex optimizer should use no degeneration strategy.

MSK_SIM_DEGEN_FREE (1)

The simplex optimizer chooses the degeneration strategy.

MSK_SIM_DEGEN_AGGRESSIVE (2)

The simplex optimizer should use an aggressive degeneration strategy.

MSK_SIM_DEGEN_MODERATE (3)

The simplex optimizer should use a moderate degeneration strategy.

MSK_SIM_DEGEN_MINIMUM (4)

The simplex optimizer should use a minimum degeneration strategy.

MSKtransposee

Transposed matrix.

MSK_TRANSPOSE_NO (0)

No transpose is applied.

MSK_TRANSPOSE_YES (1)

A transpose is applied.

MSKuploe

Triangular part of a symmetric matrix.

MSK_UPLO_LO (0)

Lower part.

MSK_UPLO_UP (1)

Upper part.

MSKsimreforme

Problem reformulation.

MSK_SIM_REFORMULATION_ON (1)

Allow the simplex optimizer to reformulate the problem.

MSK_SIM_REFORMULATION_OFF (0)

Disallow the simplex optimizer to reformulate the problem.

MSK_SIM_REFORMULATION_FREE (2)

The simplex optimizer can choose freely.

MSK_SIM_REFORMULATION_AGGRESSIVE (3)

The simplex optimizer should use an aggressive reformulation strategy.

MSKsimdupvece

Exploit duplicate columns.

MSK_SIM_EXPLOIT_DUPVEC_ON (1)

Allow the simplex optimizer to exploit duplicated columns.

MSK_SIM_EXPLOIT_DUPVEC_OFF (0)

Disallow the simplex optimizer to exploit duplicated columns.

MSK_SIM_EXPLOIT_DUPVEC_FREE (2)

The simplex optimizer can choose freely.

MSKsimhotstarte

Hot-start type employed by the simplex optimizer

MSK_SIM_HOTSTART_NONE (0)

The simplex optimizer performs a coldstart.

MSK_SIM_HOTSTART_FREE (1)

The simplex optimize chooses the hot-start type.

MSK_SIM_HOTSTART_STATUS_KEYS (2)

Only the status keys of the constraints and variables are used to choose the type of hot-start.

MSKintpnthotstarte

Hot-start type employed by the interior-point optimizers.

MSK_INTPNT_HOTSTART_NONE (0)

The interior-point optimizer performs a coldstart.

MSK_INTPNT_HOTSTART_PRIMAL (1)

The interior-point optimizer exploits the primal solution only.

MSK_INTPNT_HOTSTART_DUAL (2)

The interior-point optimizer exploits the dual solution only.

MSK_INTPNT_HOTSTART_PRIMAL_DUAL (3)

The interior-point optimizer exploits both the primal and dual solution.

MSKpurifye

Solution purification employed optimizer.

MSK_PURIFY_NONE (0)

The optimizer performs no solution purification.

MSK_PURIFY_PRIMAL (1)

The optimizer purifies the primal solution.

MSK_PURIFY_DUAL (2)

The optimizer purifies the dual solution.

MSK_PURIFY_PRIMAL_DUAL (3)

The optimizer purifies both the primal and dual solution.

MSK_PURIFY_AUTO (4)

TBD

MSKcallbackcodee

Progress callback codes

MSK_CALLBACK_BEGIN_BI (0)

The basis identification procedure has been started.

MSK_CALLBACK_BEGIN_CONIC (1)

The callback function is called when the conic optimizer is started.

MSK_CALLBACK_BEGIN_DUAL_BI (2)

The callback function is called from within the basis identification procedure when the dual phase is started.

MSK_CALLBACK_BEGIN_DUAL_SENSITIVITY (3)

Dual sensitivity analysis is started.

MSK_CALLBACK_BEGIN_DUAL_SETUP_BI (4)

The callback function is called when the dual BI phase is started.

MSK_CALLBACK_BEGIN_DUAL_SIMPLEX (5)

The callback function is called when the dual simplex optimizer started.

MSK_CALLBACK_BEGIN_DUAL_SIMPLEX_BI (6)

The callback function is called from within the basis identification procedure when the dual simplex clean-up phase is started.

MSK_CALLBACK_BEGIN_INFEAS_ANA (7)

The callback function is called when the infeasibility analyzer is started.

MSK_CALLBACK_BEGIN_INTPNT (8)

The callback function is called when the interior-point optimizer is started.

MSK_CALLBACK_BEGIN_LICENSE_WAIT (9)

Begin waiting for license.

MSK_CALLBACK_BEGIN_MIO (10)

The callback function is called when the mixed-integer optimizer is started.

MSK_CALLBACK_BEGIN_OPTIMIZER (11)

The callback function is called when the optimizer is started.

MSK_CALLBACK_BEGIN_PRESOLVE (12)

The callback function is called when the presolve is started.

MSK_CALLBACK_BEGIN_PRIMAL_BI (13)

The callback function is called from within the basis identification procedure when the primal phase is started.

MSK_CALLBACK_BEGIN_PRIMAL_REPAIR (14)

Begin primal feasibility repair.

MSK_CALLBACK_BEGIN_PRIMAL_SENSITIVITY (15)

Primal sensitivity analysis is started.

MSK_CALLBACK_BEGIN_PRIMAL_SETUP_BI (16)

The callback function is called when the primal BI setup is started.

MSK_CALLBACK_BEGIN_PRIMAL_SIMPLEX (17)

The callback function is called when the primal simplex optimizer is started.

MSK_CALLBACK_BEGIN_PRIMAL_SIMPLEX_BI (18)

The callback function is called from within the basis identification procedure when the primal simplex clean-up phase is started.

MSK_CALLBACK_BEGIN_QCQO_REFORMULATE (19)

Begin QCQO reformulation.

MSK_CALLBACK_BEGIN_READ (20)

MOSEK has started reading a problem file.

MSK_CALLBACK_BEGIN_ROOT_CUTGEN (21)

The callback function is called when root cut generation is started.

MSK_CALLBACK_BEGIN_SIMPLEX (22)

The callback function is called when the simplex optimizer is started.

MSK_CALLBACK_BEGIN_SIMPLEX_BI (23)

The callback function is called from within the basis identification procedure when the simplex clean-up phase is started.

MSK_CALLBACK_BEGIN_SOLVE_ROOT_RELAX (24)

The callback function is called when solution of root relaxation is started.

MSK_CALLBACK_BEGIN_TO_CONIC (25)

Begin conic reformulation.

MSK_CALLBACK_BEGIN_WRITE (26)

MOSEK has started writing a problem file.

MSK_CALLBACK_CONIC (27)

The callback function is called from within the conic optimizer after the information database has been updated.

MSK_CALLBACK_DUAL_SIMPLEX (28)

The callback function is called from within the dual simplex optimizer.

MSK_CALLBACK_END_BI (29)

The callback function is called when the basis identification procedure is terminated.

MSK_CALLBACK_END_CONIC (30)

The callback function is called when the conic optimizer is terminated.

MSK_CALLBACK_END_DUAL_BI (31)

The callback function is called from within the basis identification procedure when the dual phase is terminated.

MSK_CALLBACK_END_DUAL_SENSITIVITY (32)

Dual sensitivity analysis is terminated.

MSK_CALLBACK_END_DUAL_SETUP_BI (33)

The callback function is called when the dual BI phase is terminated.

MSK_CALLBACK_END_DUAL_SIMPLEX (34)

The callback function is called when the dual simplex optimizer is terminated.

MSK_CALLBACK_END_DUAL_SIMPLEX_BI (35)

The callback function is called from within the basis identification procedure when the dual clean-up phase is terminated.

MSK_CALLBACK_END_INFEAS_ANA (36)

The callback function is called when the infeasibility analyzer is terminated.

MSK_CALLBACK_END_INTPNT (37)

The callback function is called when the interior-point optimizer is terminated.

MSK_CALLBACK_END_LICENSE_WAIT (38)

End waiting for license.

MSK_CALLBACK_END_MIO (39)

The callback function is called when the mixed-integer optimizer is terminated.

MSK_CALLBACK_END_OPTIMIZER (40)

The callback function is called when the optimizer is terminated.

MSK_CALLBACK_END_PRESOLVE (41)

The callback function is called when the presolve is completed.

MSK_CALLBACK_END_PRIMAL_BI (42)

The callback function is called from within the basis identification procedure when the primal phase is terminated.

MSK_CALLBACK_END_PRIMAL_REPAIR (43)

End primal feasibility repair.

MSK_CALLBACK_END_PRIMAL_SENSITIVITY (44)

Primal sensitivity analysis is terminated.

MSK_CALLBACK_END_PRIMAL_SETUP_BI (45)

The callback function is called when the primal BI setup is terminated.

MSK_CALLBACK_END_PRIMAL_SIMPLEX (46)

The callback function is called when the primal simplex optimizer is terminated.

MSK_CALLBACK_END_PRIMAL_SIMPLEX_BI (47)

The callback function is called from within the basis identification procedure when the primal clean-up phase is terminated.

MSK_CALLBACK_END_QCQO_REFORMULATE (48)

End QCQO reformulation.

MSK_CALLBACK_END_READ (49)

MOSEK has finished reading a problem file.

MSK_CALLBACK_END_ROOT_CUTGEN (50)

The callback function is called when root cut generation is terminated.

MSK_CALLBACK_END_SIMPLEX (51)

The callback function is called when the simplex optimizer is terminated.

MSK_CALLBACK_END_SIMPLEX_BI (52)

The callback function is called from within the basis identification procedure when the simplex clean-up phase is terminated.

MSK_CALLBACK_END_SOLVE_ROOT_RELAX (53)

The callback function is called when solution of root relaxation is terminated.

MSK_CALLBACK_END_TO_CONIC (54)

End conic reformulation.

MSK_CALLBACK_END_WRITE (55)

MOSEK has finished writing a problem file.

MSK_CALLBACK_IM_BI (56)

The callback function is called from within the basis identification procedure at an intermediate point.

MSK_CALLBACK_IM_CONIC (57)

The callback function is called at an intermediate stage within the conic optimizer where the information database has not been updated.

MSK_CALLBACK_IM_DUAL_BI (58)

The callback function is called from within the basis identification procedure at an intermediate point in the dual phase.

MSK_CALLBACK_IM_DUAL_SENSIVITY (59)

The callback function is called at an intermediate stage of the dual sensitivity analysis.

MSK_CALLBACK_IM_DUAL_SIMPLEX (60)

The callback function is called at an intermediate point in the dual simplex optimizer.

MSK_CALLBACK_IM_INTPNT (61)

The callback function is called at an intermediate stage within the interior-point optimizer where the information database has not been updated.

MSK_CALLBACK_IM_LICENSE_WAIT (62)

MOSEK is waiting for a license.

MSK_CALLBACK_IM_LU (63)

The callback function is called from within the LU factorization procedure at an intermediate point.

MSK_CALLBACK_IM_MIO (64)

The callback function is called at an intermediate point in the mixed-integer optimizer.

MSK_CALLBACK_IM_MIO_DUAL_SIMPLEX (65)

The callback function is called at an intermediate point in the mixed-integer optimizer while running the dual simplex optimizer.

MSK_CALLBACK_IM_MIO_INTPNT (66)

The callback function is called at an intermediate point in the mixed-integer optimizer while running the interior-point optimizer.

MSK_CALLBACK_IM_MIO_PRIMAL_SIMPLEX (67)

The callback function is called at an intermediate point in the mixed-integer optimizer while running the primal simplex optimizer.

MSK_CALLBACK_IM_ORDER (68)

The callback function is called from within the matrix ordering procedure at an intermediate point.

MSK_CALLBACK_IM_PRESOLVE (69)

The callback function is called from within the presolve procedure at an intermediate stage.

MSK_CALLBACK_IM_PRIMAL_BI (70)

The callback function is called from within the basis identification procedure at an intermediate point in the primal phase.

MSK_CALLBACK_IM_PRIMAL_SENSIVITY (71)

The callback function is called at an intermediate stage of the primal sensitivity analysis.

MSK_CALLBACK_IM_PRIMAL_SIMPLEX (72)

The callback function is called at an intermediate point in the primal simplex optimizer.

MSK_CALLBACK_IM_QO_REFORMULATE (73)

The callback function is called at an intermediate stage of the conic quadratic reformulation.

MSK_CALLBACK_IM_READ (74)

Intermediate stage in reading.

MSK_CALLBACK_IM_ROOT_CUTGEN (75)

The callback is called from within root cut generation at an intermediate stage.

MSK_CALLBACK_IM_SIMPLEX (76)

The callback function is called from within the simplex optimizer at an intermediate point.

MSK_CALLBACK_IM_SIMPLEX_BI (77)

The callback function is called from within the basis identification procedure at an intermediate point in the simplex clean-up phase. The frequency of the callbacks is controlled by the MSK_IPAR_LOG_SIM_FREQ parameter.

MSK_CALLBACK_INTPNT (78)

The callback function is called from within the interior-point optimizer after the information database has been updated.

MSK_CALLBACK_NEW_INT_MIO (79)

The callback function is called after a new integer solution has been located by the mixed-integer optimizer.

MSK_CALLBACK_PRIMAL_SIMPLEX (80)

The callback function is called from within the primal simplex optimizer.

MSK_CALLBACK_READ_OPF (81)

The callback function is called from the OPF reader.

MSK_CALLBACK_READ_OPF_SECTION (82)

A chunk of \(Q\) non-zeros has been read from a problem file.

MSK_CALLBACK_RESTART_MIO (83)

The callback function is called when the mixed-integer optimizer is restarted.

MSK_CALLBACK_SOLVING_REMOTE (84)

The callback function is called while the task is being solved on a remote server.

MSK_CALLBACK_UPDATE_DUAL_BI (85)

The callback function is called from within the basis identification procedure at an intermediate point in the dual phase.

MSK_CALLBACK_UPDATE_DUAL_SIMPLEX (86)

The callback function is called in the dual simplex optimizer.

MSK_CALLBACK_UPDATE_DUAL_SIMPLEX_BI (87)

The callback function is called from within the basis identification procedure at an intermediate point in the dual simplex clean-up phase. The frequency of the callbacks is controlled by the MSK_IPAR_LOG_SIM_FREQ parameter.

MSK_CALLBACK_UPDATE_PRESOLVE (88)

The callback function is called from within the presolve procedure.

MSK_CALLBACK_UPDATE_PRIMAL_BI (89)

The callback function is called from within the basis identification procedure at an intermediate point in the primal phase.

MSK_CALLBACK_UPDATE_PRIMAL_SIMPLEX (90)

The callback function is called in the primal simplex optimizer.

MSK_CALLBACK_UPDATE_PRIMAL_SIMPLEX_BI (91)

The callback function is called from within the basis identification procedure at an intermediate point in the primal simplex clean-up phase. The frequency of the callbacks is controlled by the MSK_IPAR_LOG_SIM_FREQ parameter.

MSK_CALLBACK_UPDATE_SIMPLEX (92)

The callback function is called from simplex optimizer.

MSK_CALLBACK_WRITE_OPF (93)

The callback function is called from the OPF writer.

MSKcompresstypee

Compression types

MSK_COMPRESS_NONE (0)

No compression is used.

MSK_COMPRESS_FREE (1)

The type of compression used is chosen automatically.

MSK_COMPRESS_GZIP (2)

The type of compression used is gzip compatible.

MSK_COMPRESS_ZSTD (3)

The type of compression used is zstd compatible.

MSKconetypee

Cone types

MSK_CT_QUAD (0)

The cone is a quadratic cone.

MSK_CT_RQUAD (1)

The cone is a rotated quadratic cone.

MSK_CT_PEXP (2)

A primal exponential cone.

MSK_CT_DEXP (3)

A dual exponential cone.

MSK_CT_PPOW (4)

A primal power cone.

MSK_CT_DPOW (5)

A dual power cone.

MSK_CT_ZERO (6)

The zero cone.

MSKdomaintypee

Cone types

MSK_DOMAIN_R (0)
MSK_DOMAIN_RZERO (1)

The zero vector.

MSK_DOMAIN_RPLUS (2)

The positive orthant.

MSK_DOMAIN_RMINUS (3)

The negative orthant.

MSK_DOMAIN_QUADRATIC_CONE (4)

The quadratic cone.

MSK_DOMAIN_RQUADRATIC_CONE (5)

The rotated quadratic cone.

MSK_DOMAIN_PRIMAL_EXP_CONE (6)

The primal exponential cone.

MSK_DOMAIN_DUAL_EXP_CONE (7)

The dual exponential cone.

MSK_DOMAIN_PRIMAL_POWER_CONE (8)

The primal power cone.

MSK_DOMAIN_DUAL_POWER_CONE (9)

The dual power cone.

MSK_DOMAIN_PRIMAL_GEO_MEAN_CONE (10)

The primal geometric mean cone.

MSK_DOMAIN_DUAL_GEO_MEAN_CONE (11)

The dual geometric mean cone.

MSK_DOMAIN_SVEC_PSD_CONE (12)

The vectorized positive semidefinite cone.

MSKnametypee

Name types

MSK_NAME_TYPE_GEN (0)

General names. However, no duplicate and blank names are allowed.

MSK_NAME_TYPE_MPS (1)

MPS type names.

MSK_NAME_TYPE_LP (2)

LP type names.

MSKsymmattypee

Cone types

MSK_SYMMAT_TYPE_SPARSE (0)

Sparse symmetric matrix.

MSKdataformate

Data format types

MSK_DATA_FORMAT_EXTENSION (0)

The file extension is used to determine the data file format.

MSK_DATA_FORMAT_MPS (1)

The data file is MPS formatted.

MSK_DATA_FORMAT_LP (2)

The data file is LP formatted.

MSK_DATA_FORMAT_OP (3)

The data file is an optimization problem formatted file.

MSK_DATA_FORMAT_FREE_MPS (4)

The data a free MPS formatted file.

MSK_DATA_FORMAT_TASK (5)

Generic task dump file.

MSK_DATA_FORMAT_PTF (6)

(P)retty (T)ext (F)format.

MSK_DATA_FORMAT_CB (7)

Conic benchmark format,

MSK_DATA_FORMAT_JSON_TASK (8)

JSON based task format.

MSKsolformate

Data format types

MSK_SOL_FORMAT_EXTENSION (0)

The file extension is used to determine the data file format.

MSK_SOL_FORMAT_B (1)

Simple binary format

MSK_SOL_FORMAT_TASK (2)

Tar based format.

MSK_SOL_FORMAT_JSON_TASK (3)

JSON based format.

MSKdinfiteme

Double information items

MSK_DINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_DENSITY (0)

Density percentage of the scalarized constraint matrix.

MSK_DINF_BI_CLEAN_DUAL_TIME (1)

Time spent within the dual clean-up optimizer of the basis identification procedure since its invocation.

MSK_DINF_BI_CLEAN_PRIMAL_TIME (2)

Time spent within the primal clean-up optimizer of the basis identification procedure since its invocation.

MSK_DINF_BI_CLEAN_TIME (3)

Time spent within the clean-up phase of the basis identification procedure since its invocation.

MSK_DINF_BI_DUAL_TIME (4)

Time spent within the dual phase basis identification procedure since its invocation.

MSK_DINF_BI_PRIMAL_TIME (5)

Time spent within the primal phase of the basis identification procedure since its invocation.

MSK_DINF_BI_TIME (6)

Time spent within the basis identification procedure since its invocation.

MSK_DINF_INTPNT_DUAL_FEAS (7)

Dual feasibility measure reported by the interior-point optimizer. (For the interior-point optimizer this measure is not directly related to the original problem because a homogeneous model is employed.)

MSK_DINF_INTPNT_DUAL_OBJ (8)

Dual objective value reported by the interior-point optimizer.

MSK_DINF_INTPNT_FACTOR_NUM_FLOPS (9)

An estimate of the number of flops used in the factorization.

MSK_DINF_INTPNT_OPT_STATUS (10)

A measure of optimality of the solution. It should converge to \(+1\) if the problem has a primal-dual optimal solution, and converge to \(-1\) if the problem is (strictly) primal or dual infeasible. If the measure converges to another constant, or fails to settle, the problem is usually ill-posed.

MSK_DINF_INTPNT_ORDER_TIME (11)

Order time (in seconds).

MSK_DINF_INTPNT_PRIMAL_FEAS (12)

Primal feasibility measure reported by the interior-point optimizer. (For the interior-point optimizer this measure is not directly related to the original problem because a homogeneous model is employed).

MSK_DINF_INTPNT_PRIMAL_OBJ (13)

Primal objective value reported by the interior-point optimizer.

MSK_DINF_INTPNT_TIME (14)

Time spent within the interior-point optimizer since its invocation.

MSK_DINF_MIO_CLIQUE_SELECTION_TIME (15)

Selection time for clique cuts.

MSK_DINF_MIO_CLIQUE_SEPARATION_TIME (16)

Separation time for clique cuts.

MSK_DINF_MIO_CMIR_SELECTION_TIME (17)

Selection time for CMIR cuts.

MSK_DINF_MIO_CMIR_SEPARATION_TIME (18)

Separation time for CMIR cuts.

MSK_DINF_MIO_CONSTRUCT_SOLUTION_OBJ (19)

If MOSEK has successfully constructed an integer feasible solution, then this item contains the optimal objective value corresponding to the feasible solution.

MSK_DINF_MIO_DUAL_BOUND_AFTER_PRESOLVE (20)

Value of the dual bound after presolve but before cut generation.

MSK_DINF_MIO_GMI_SELECTION_TIME (21)

Selection time for GMI cuts.

MSK_DINF_MIO_GMI_SEPARATION_TIME (22)

Separation time for GMI cuts.

MSK_DINF_MIO_IMPLIED_BOUND_SELECTION_TIME (23)

Selection time for implied bound cuts.

MSK_DINF_MIO_IMPLIED_BOUND_SEPARATION_TIME (24)

Separation time for implied bound cuts.

MSK_DINF_MIO_INITIAL_FEASIBLE_SOLUTION_OBJ (25)

If the user provided solution was found to be feasible this information item contains it’s objective value.

MSK_DINF_MIO_KNAPSACK_COVER_SELECTION_TIME (26)

Selection time for knapsack cover.

MSK_DINF_MIO_KNAPSACK_COVER_SEPARATION_TIME (27)

Separation time for knapsack cover.

MSK_DINF_MIO_LIPRO_SELECTION_TIME (28)

Selection time for lift-and-project cuts.

MSK_DINF_MIO_LIPRO_SEPARATION_TIME (29)

Separation time for lift-and-project cuts.

MSK_DINF_MIO_OBJ_ABS_GAP (30)

Given the mixed-integer optimizer has computed a feasible solution and a bound on the optimal objective value, then this item contains the absolute gap defined by

\[|\mbox{(objective value of feasible solution)}-\mbox{(objective bound)}|.\]

Otherwise it has the value -1.0.

MSK_DINF_MIO_OBJ_BOUND (31)

The best known bound on the objective function. This value is undefined until at least one relaxation has been solved: To see if this is the case check that MSK_IINF_MIO_NUM_RELAX is strictly positive.

MSK_DINF_MIO_OBJ_INT (32)

The primal objective value corresponding to the best integer feasible solution. Please note that at least one integer feasible solution must have been located i.e. check MSK_IINF_MIO_NUM_INT_SOLUTIONS.

MSK_DINF_MIO_OBJ_REL_GAP (33)

Given that the mixed-integer optimizer has computed a feasible solution and a bound on the optimal objective value, then this item contains the relative gap defined by

\[\frac{| \mbox{(objective value of feasible solution)}-\mbox{(objective bound)} | }{\max(\delta,|\mbox{(objective value of feasible solution)}|)}.\]

where \(\delta\) is given by the parameter MSK_DPAR_MIO_REL_GAP_CONST. Otherwise it has the value \(-1.0\).

MSK_DINF_MIO_PROBING_TIME (34)

Total time for probing.

MSK_DINF_MIO_ROOT_CUT_SELECTION_TIME (35)

Total time for cut selection.

MSK_DINF_MIO_ROOT_CUT_SEPARATION_TIME (36)

Total time for cut separation.

MSK_DINF_MIO_ROOT_OPTIMIZER_TIME (37)

Time spent in the contiuous optimizer while processing the root node relaxation.

MSK_DINF_MIO_ROOT_PRESOLVE_TIME (38)

Time spent presolving the problem at the root node.

MSK_DINF_MIO_ROOT_TIME (39)

Time spent processing the root node.

MSK_DINF_MIO_SYMMETRY_DETECTION_TIME (40)

Total time for symmetry detection.

MSK_DINF_MIO_SYMMETRY_FACTOR (41)

Degree to which the problem is affected by detected symmetry.

MSK_DINF_MIO_TIME (42)

Time spent in the mixed-integer optimizer.

MSK_DINF_MIO_USER_OBJ_CUT (43)

If the objective cut is used, then this information item has the value of the cut.

MSK_DINF_OPTIMIZER_TICKS (44)

Total number of ticks spent in the optimizer since it was invoked. It is strictly negative if it is not available.

MSK_DINF_OPTIMIZER_TIME (45)

Total time spent in the optimizer since it was invoked.

MSK_DINF_PRESOLVE_ELI_TIME (46)

Total time spent in the eliminator since the presolve was invoked.

MSK_DINF_PRESOLVE_LINDEP_TIME (47)

Total time spent in the linear dependency checker since the presolve was invoked.

MSK_DINF_PRESOLVE_TIME (48)

Total time (in seconds) spent in the presolve since it was invoked.

MSK_DINF_PRESOLVE_TOTAL_PRIMAL_PERTURBATION (49)

Total perturbation of the bounds of the primal problem.

MSK_DINF_PRIMAL_REPAIR_PENALTY_OBJ (50)

The optimal objective value of the penalty function.

MSK_DINF_QCQO_REFORMULATE_MAX_PERTURBATION (51)

Maximum absolute diagonal perturbation occurring during the QCQO reformulation.

MSK_DINF_QCQO_REFORMULATE_TIME (52)

Time spent with conic quadratic reformulation.

MSK_DINF_QCQO_REFORMULATE_WORST_CHOLESKY_COLUMN_SCALING (53)

Worst Cholesky column scaling.

MSK_DINF_QCQO_REFORMULATE_WORST_CHOLESKY_DIAG_SCALING (54)

Worst Cholesky diagonal scaling.

MSK_DINF_READ_DATA_TIME (55)

Time spent reading the data file.

MSK_DINF_REMOTE_TIME (56)

The total real time in seconds spent when optimizing on a server by the process performing the optimization on the server

MSK_DINF_SIM_DUAL_TIME (57)

Time spent in the dual simplex optimizer since invoking it.

MSK_DINF_SIM_FEAS (58)

Feasibility measure reported by the simplex optimizer.

MSK_DINF_SIM_OBJ (59)

Objective value reported by the simplex optimizer.

MSK_DINF_SIM_PRIMAL_TIME (60)

Time spent in the primal simplex optimizer since invoking it.

MSK_DINF_SIM_TIME (61)

Time spent in the simplex optimizer since invoking it.

MSK_DINF_SOL_BAS_DUAL_OBJ (62)

Dual objective value of the basic solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_BAS_DVIOLCON (63)

Maximal dual bound violation for \(x^c\) in the basic solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_BAS_DVIOLVAR (64)

Maximal dual bound violation for \(x^x\) in the basic solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_BAS_NRM_BARX (65)

Infinity norm of \(\barX\) in the basic solution.

MSK_DINF_SOL_BAS_NRM_SLC (66)

Infinity norm of \(s_l^c\) in the basic solution.

MSK_DINF_SOL_BAS_NRM_SLX (67)

Infinity norm of \(s_l^x\) in the basic solution.

MSK_DINF_SOL_BAS_NRM_SUC (68)

Infinity norm of \(s_u^c\) in the basic solution.

MSK_DINF_SOL_BAS_NRM_SUX (69)

Infinity norm of \(s_u^X\) in the basic solution.

MSK_DINF_SOL_BAS_NRM_XC (70)

Infinity norm of \(x^c\) in the basic solution.

MSK_DINF_SOL_BAS_NRM_XX (71)

Infinity norm of \(x^x\) in the basic solution.

MSK_DINF_SOL_BAS_NRM_Y (72)

Infinity norm of \(y\) in the basic solution.

MSK_DINF_SOL_BAS_PRIMAL_OBJ (73)

Primal objective value of the basic solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_BAS_PVIOLCON (74)

Maximal primal bound violation for \(x^c\) in the basic solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_BAS_PVIOLVAR (75)

Maximal primal bound violation for \(x^x\) in the basic solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITG_NRM_BARX (76)

Infinity norm of \(\barX\) in the integer solution.

MSK_DINF_SOL_ITG_NRM_XC (77)

Infinity norm of \(x^c\) in the integer solution.

MSK_DINF_SOL_ITG_NRM_XX (78)

Infinity norm of \(x^x\) in the integer solution.

MSK_DINF_SOL_ITG_PRIMAL_OBJ (79)

Primal objective value of the integer solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITG_PVIOLACC (80)

Maximal primal violation for affine conic constraints in the integer solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITG_PVIOLBARVAR (81)

Maximal primal bound violation for \(\barX\) in the integer solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITG_PVIOLCON (82)

Maximal primal bound violation for \(x^c\) in the integer solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITG_PVIOLCONES (83)

Maximal primal violation for primal conic constraints in the integer solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITG_PVIOLDJC (84)

Maximal primal violation for disjunctive constraints in the integer solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITG_PVIOLITG (85)

Maximal violation for the integer constraints in the integer solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITG_PVIOLVAR (86)

Maximal primal bound violation for \(x^x\) in the integer solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_DUAL_OBJ (87)

Dual objective value of the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_DVIOLACC (88)

Maximal dual violation for the affine conic constraints in the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_DVIOLBARVAR (89)

Maximal dual bound violation for \(\barX\) in the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_DVIOLCON (90)

Maximal dual bound violation for \(x^c\) in the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_DVIOLCONES (91)

Maximal dual violation for conic constraints in the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_DVIOLVAR (92)

Maximal dual bound violation for \(x^x\) in the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_NRM_BARS (93)

Infinity norm of \(\barS\) in the interior-point solution.

MSK_DINF_SOL_ITR_NRM_BARX (94)

Infinity norm of \(\barX\) in the interior-point solution.

MSK_DINF_SOL_ITR_NRM_SLC (95)

Infinity norm of \(s_l^c\) in the interior-point solution.

MSK_DINF_SOL_ITR_NRM_SLX (96)

Infinity norm of \(s_l^x\) in the interior-point solution.

MSK_DINF_SOL_ITR_NRM_SNX (97)

Infinity norm of \(s_n^x\) in the interior-point solution.

MSK_DINF_SOL_ITR_NRM_SUC (98)

Infinity norm of \(s_u^c\) in the interior-point solution.

MSK_DINF_SOL_ITR_NRM_SUX (99)

Infinity norm of \(s_u^X\) in the interior-point solution.

MSK_DINF_SOL_ITR_NRM_XC (100)

Infinity norm of \(x^c\) in the interior-point solution.

MSK_DINF_SOL_ITR_NRM_XX (101)

Infinity norm of \(x^x\) in the interior-point solution.

MSK_DINF_SOL_ITR_NRM_Y (102)

Infinity norm of \(y\) in the interior-point solution.

MSK_DINF_SOL_ITR_PRIMAL_OBJ (103)

Primal objective value of the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_PVIOLACC (104)

Maximal primal violation for affine conic constraints in the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_PVIOLBARVAR (105)

Maximal primal bound violation for \(\barX\) in the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_PVIOLCON (106)

Maximal primal bound violation for \(x^c\) in the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_PVIOLCONES (107)

Maximal primal violation for conic constraints in the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_SOL_ITR_PVIOLVAR (108)

Maximal primal bound violation for \(x^x\) in the interior-point solution. Updated if MSK_IPAR_AUTO_UPDATE_SOL_INFO is set or by the method MSK_updatesolutioninfo.

MSK_DINF_TO_CONIC_TIME (109)

Time spent in the last to conic reformulation.

MSK_DINF_WRITE_DATA_TIME (110)

Time spent writing the data file.

MSKfeaturee

License feature

MSK_FEATURE_PTS (0)

Base system.

MSK_FEATURE_PTON (1)

Conic extension.

MSKliinfiteme

Long integer information items.

MSK_LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_COLUMNS (0)

Number of columns in the scalarized constraint matrix.

MSK_LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_NZ (1)

Number of non-zero entries in the scalarized constraint matrix.

MSK_LIINF_ANA_PRO_SCALARIZED_CONSTRAINT_MATRIX_NUM_ROWS (2)

Number of rows in the scalarized constraint matrix.

MSK_LIINF_BI_CLEAN_DUAL_DEG_ITER (3)

Number of dual degenerate clean iterations performed in the basis identification.

MSK_LIINF_BI_CLEAN_DUAL_ITER (4)

Number of dual clean iterations performed in the basis identification.

MSK_LIINF_BI_CLEAN_PRIMAL_DEG_ITER (5)

Number of primal degenerate clean iterations performed in the basis identification.

MSK_LIINF_BI_CLEAN_PRIMAL_ITER (6)

Number of primal clean iterations performed in the basis identification.

MSK_LIINF_BI_DUAL_ITER (7)

Number of dual pivots performed in the basis identification.

MSK_LIINF_BI_PRIMAL_ITER (8)

Number of primal pivots performed in the basis identification.

MSK_LIINF_INTPNT_FACTOR_NUM_NZ (9)

Number of non-zeros in factorization.

MSK_LIINF_MIO_ANZ (10)

Number of non-zero entries in the constraint matrix of the problem to be solved by the mixed-integer optimizer.

MSK_LIINF_MIO_INTPNT_ITER (11)

Number of interior-point iterations performed by the mixed-integer optimizer.

MSK_LIINF_MIO_NUM_DUAL_ILLPOSED_CER (12)

Number of dual illposed certificates encountered by the mixed-integer optimizer.

MSK_LIINF_MIO_NUM_PRIM_ILLPOSED_CER (13)

Number of primal illposed certificates encountered by the mixed-integer optimizer.

MSK_LIINF_MIO_PRESOLVED_ANZ (14)

Number of non-zero entries in the constraint matrix of the problem after the mixed-integer optimizer’s presolve.

MSK_LIINF_MIO_SIMPLEX_ITER (15)

Number of simplex iterations performed by the mixed-integer optimizer.

MSK_LIINF_RD_NUMACC (16)

Number of affince conic constraints.

MSK_LIINF_RD_NUMANZ (17)

Number of non-zeros in A that is read.

MSK_LIINF_RD_NUMDJC (18)

Number of disjuncive constraints.

MSK_LIINF_RD_NUMQNZ (19)

Number of Q non-zeros.

MSK_LIINF_SIMPLEX_ITER (20)

Number of iterations performed by the simplex optimizer.

MSKiinfiteme

Integer information items.

MSK_IINF_ANA_PRO_NUM_CON (0)

Number of constraints in the problem. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_CON_EQ (1)

Number of equality constraints. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_CON_FR (2)

Number of unbounded constraints. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_CON_LO (3)

Number of constraints with a lower bound and an infinite upper bound. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_CON_RA (4)

Number of constraints with finite lower and upper bounds. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_CON_UP (5)

Number of constraints with an upper bound and an infinite lower bound. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_VAR (6)

Number of variables in the problem. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_VAR_BIN (7)

Number of binary (0-1) variables. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_VAR_CONT (8)

Number of continuous variables. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_VAR_EQ (9)

Number of fixed variables. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_VAR_FR (10)

Number of free variables. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_VAR_INT (11)

Number of general integer variables. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_VAR_LO (12)

Number of variables with a lower bound and an infinite upper bound. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_VAR_RA (13)

Number of variables with finite lower and upper bounds. This value is set by MSK_analyzeproblem.

MSK_IINF_ANA_PRO_NUM_VAR_UP (14)

Number of variables with an upper bound and an infinite lower bound. This value is set by MSK_analyzeproblem.

MSK_IINF_INTPNT_FACTOR_DIM_DENSE (15)

Dimension of the dense sub system in factorization.

MSK_IINF_INTPNT_ITER (16)

Number of interior-point iterations since invoking the interior-point optimizer.

MSK_IINF_INTPNT_NUM_THREADS (17)

Number of threads that the interior-point optimizer is using.

MSK_IINF_INTPNT_SOLVE_DUAL (18)

Non-zero if the interior-point optimizer is solving the dual problem.

MSK_IINF_MIO_ABSGAP_SATISFIED (19)

Non-zero if absolute gap is within tolerances.

MSK_IINF_MIO_CLIQUE_TABLE_SIZE (20)

Size of the clique table.

MSK_IINF_MIO_CONSTRUCT_SOLUTION (21)

This item informs if MOSEK constructed an initial integer feasible solution.

  • -1: tried, but failed,

  • 0: no partial solution supplied by the user,

  • 1: constructed feasible solution.

MSK_IINF_MIO_INITIAL_FEASIBLE_SOLUTION (22)

This item informs if MOSEK found the solution provided by the user to be feasible

  • 0: solution provided by the user was not found to be feasible for the current problem,

  • 1: user provided solution was found to be feasible.

MSK_IINF_MIO_NODE_DEPTH (23)

Depth of the last node solved.

MSK_IINF_MIO_NUM_ACTIVE_NODES (24)

Number of active branch and bound nodes.

MSK_IINF_MIO_NUM_ACTIVE_ROOT_CUTS (25)

Number of active cuts in the final relaxation after the mixed-integer optimizer’s root cut generation.

MSK_IINF_MIO_NUM_BRANCH (26)

Number of branches performed during the optimization.

MSK_IINF_MIO_NUM_INT_SOLUTIONS (27)

Number of integer feasible solutions that have been found.

MSK_IINF_MIO_NUM_RELAX (28)

Number of relaxations solved during the optimization.

MSK_IINF_MIO_NUM_REPEATED_PRESOLVE (29)

Number of times presolve was repeated at root.

MSK_IINF_MIO_NUM_RESTARTS (30)

Number of restarts performed during the optimization.

MSK_IINF_MIO_NUM_ROOT_CUT_ROUNDS (31)

Number of cut separation rounds at the root node of the mixed-integer optimizer.

MSK_IINF_MIO_NUM_SELECTED_CLIQUE_CUTS (32)

Number of clique cuts selected to be included in the relaxation.

MSK_IINF_MIO_NUM_SELECTED_CMIR_CUTS (33)

Number of Complemented Mixed Integer Rounding (CMIR) cuts selected to be included in the relaxation.

MSK_IINF_MIO_NUM_SELECTED_GOMORY_CUTS (34)

Number of Gomory cuts selected to be included in the relaxation.

MSK_IINF_MIO_NUM_SELECTED_IMPLIED_BOUND_CUTS (35)

Number of implied bound cuts selected to be included in the relaxation.

MSK_IINF_MIO_NUM_SELECTED_KNAPSACK_COVER_CUTS (36)

Number of clique cuts selected to be included in the relaxation.

MSK_IINF_MIO_NUM_SELECTED_LIPRO_CUTS (37)

Number of lift-and-project cuts selected to be included in the relaxation.

MSK_IINF_MIO_NUM_SEPARATED_CLIQUE_CUTS (38)

Number of separated clique cuts.

MSK_IINF_MIO_NUM_SEPARATED_CMIR_CUTS (39)

Number of separated Complemented Mixed Integer Rounding (CMIR) cuts.

MSK_IINF_MIO_NUM_SEPARATED_GOMORY_CUTS (40)

Number of separated Gomory cuts.

MSK_IINF_MIO_NUM_SEPARATED_IMPLIED_BOUND_CUTS (41)

Number of separated implied bound cuts.

MSK_IINF_MIO_NUM_SEPARATED_KNAPSACK_COVER_CUTS (42)

Number of separated clique cuts.

MSK_IINF_MIO_NUM_SEPARATED_LIPRO_CUTS (43)

Number of separated lift-and-project cuts.

MSK_IINF_MIO_NUM_SOLVED_NODES (44)

Number of branch and bounds nodes solved in the main branch and bound tree.

MSK_IINF_MIO_NUMBIN (45)

Number of binary variables in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMBINCONEVAR (46)

Number of binary cone variables in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMCON (47)

Number of constraints in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMCONE (48)

Number of cones in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMCONEVAR (49)

Number of cone variables in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMCONT (50)

Number of continuous variables in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMCONTCONEVAR (51)

Number of continuous cone variables in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMDEXPCONES (52)

Number of dual exponential cones in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMDJC (53)

Number of disjunctive constraints in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMDPOWCONES (54)

Number of dual power cones in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMINT (55)

Number of integer variables in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMINTCONEVAR (56)

Number of integer cone variables in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMPEXPCONES (57)

Number of primal exponential cones in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMPPOWCONES (58)

Number of primal power cones in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMQCONES (59)

Number of quadratic cones in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMRQCONES (60)

Number of rotated quadratic cones in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_NUMVAR (61)

Number of variables in the problem to be solved by the mixed-integer optimizer.

MSK_IINF_MIO_OBJ_BOUND_DEFINED (62)

Non-zero if a valid objective bound has been found, otherwise zero.

MSK_IINF_MIO_PRESOLVED_NUMBIN (63)

Number of binary variables in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMBINCONEVAR (64)

Number of binary cone variables in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMCON (65)

Number of constraints in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMCONE (66)

Number of cones in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMCONEVAR (67)

Number of cone variables in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMCONT (68)

Number of continuous variables in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMCONTCONEVAR (69)

Number of continuous cone variables in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMDEXPCONES (70)

Number of dual exponential cones in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMDJC (71)

Number of disjunctive constraints in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMDPOWCONES (72)

Number of dual power cones in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMINT (73)

Number of integer variables in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMINTCONEVAR (74)

Number of integer cone variables in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMPEXPCONES (75)

Number of primal exponential cones in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMPPOWCONES (76)

Number of primal power cones in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMQCONES (77)

Number of quadratic cones in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMRQCONES (78)

Number of rotated quadratic cones in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_PRESOLVED_NUMVAR (79)

Number of variables in the problem after the mixed-integer optimizer’s presolve.

MSK_IINF_MIO_RELGAP_SATISFIED (80)

Non-zero if relative gap is within tolerances.

MSK_IINF_MIO_TOTAL_NUM_SELECTED_CUTS (81)

Total number of cuts selected to be included in the relaxation by the mixed-integer optimizer.

MSK_IINF_MIO_TOTAL_NUM_SEPARATED_CUTS (82)

Total number of cuts separated by the mixed-integer optimizer.

MSK_IINF_MIO_USER_OBJ_CUT (83)

If it is non-zero, then the objective cut is used.

MSK_IINF_OPT_NUMCON (84)

Number of constraints in the problem solved when the optimizer is called.

MSK_IINF_OPT_NUMVAR (85)

Number of variables in the problem solved when the optimizer is called

MSK_IINF_OPTIMIZE_RESPONSE (86)

The response code returned by optimize.

MSK_IINF_PRESOLVE_NUM_PRIMAL_PERTURBATIONS (87)

Number perturbations to thhe bounds of the primal problem.

MSK_IINF_PURIFY_DUAL_SUCCESS (88)

Is nonzero if the dual solution is purified.

MSK_IINF_PURIFY_PRIMAL_SUCCESS (89)

Is nonzero if the primal solution is purified.

MSK_IINF_RD_NUMBARVAR (90)

Number of symmetric variables read.

MSK_IINF_RD_NUMCON (91)

Number of constraints read.

MSK_IINF_RD_NUMCONE (92)

Number of conic constraints read.

MSK_IINF_RD_NUMINTVAR (93)

Number of integer-constrained variables read.

MSK_IINF_RD_NUMQ (94)

Number of nonempty Q matrices read.

MSK_IINF_RD_NUMVAR (95)

Number of variables read.

MSK_IINF_RD_PROTYPE (96)

Problem type.

MSK_IINF_SIM_DUAL_DEG_ITER (97)

The number of dual degenerate iterations.

MSK_IINF_SIM_DUAL_HOTSTART (98)

If 1 then the dual simplex algorithm is solving from an advanced basis.

MSK_IINF_SIM_DUAL_HOTSTART_LU (99)

If 1 then a valid basis factorization of full rank was located and used by the dual simplex algorithm.

MSK_IINF_SIM_DUAL_INF_ITER (100)

The number of iterations taken with dual infeasibility.

MSK_IINF_SIM_DUAL_ITER (101)

Number of dual simplex iterations during the last optimization.

MSK_IINF_SIM_NUMCON (102)

Number of constraints in the problem solved by the simplex optimizer.

MSK_IINF_SIM_NUMVAR (103)

Number of variables in the problem solved by the simplex optimizer.

MSK_IINF_SIM_PRIMAL_DEG_ITER (104)

The number of primal degenerate iterations.

MSK_IINF_SIM_PRIMAL_HOTSTART (105)

If 1 then the primal simplex algorithm is solving from an advanced basis.

MSK_IINF_SIM_PRIMAL_HOTSTART_LU (106)

If 1 then a valid basis factorization of full rank was located and used by the primal simplex algorithm.

MSK_IINF_SIM_PRIMAL_INF_ITER (107)

The number of iterations taken with primal infeasibility.

MSK_IINF_SIM_PRIMAL_ITER (108)

Number of primal simplex iterations during the last optimization.

MSK_IINF_SIM_SOLVE_DUAL (109)

Is non-zero if dual problem is solved.

MSK_IINF_SOL_BAS_PROSTA (110)

Problem status of the basic solution. Updated after each optimization.

MSK_IINF_SOL_BAS_SOLSTA (111)

Solution status of the basic solution. Updated after each optimization.

MSK_IINF_SOL_ITG_PROSTA (112)

Problem status of the integer solution. Updated after each optimization.

MSK_IINF_SOL_ITG_SOLSTA (113)

Solution status of the integer solution. Updated after each optimization.

MSK_IINF_SOL_ITR_PROSTA (114)

Problem status of the interior-point solution. Updated after each optimization.

MSK_IINF_SOL_ITR_SOLSTA (115)

Solution status of the interior-point solution. Updated after each optimization.

MSK_IINF_STO_NUM_A_REALLOC (116)

Number of times the storage for storing \(A\) has been changed. A large value may indicates that memory fragmentation may occur.

MSKinftypee

Information item types

MSK_INF_DOU_TYPE (0)

Is a double information type.

MSK_INF_INT_TYPE (1)

Is an integer.

MSK_INF_LINT_TYPE (2)

Is a long integer.

MSKiomodee

Input/output modes

MSK_IOMODE_READ (0)

The file is read-only.

MSK_IOMODE_WRITE (1)

The file is write-only. If the file exists then it is truncated when it is opened. Otherwise it is created when it is opened.

MSK_IOMODE_READWRITE (2)

The file is to read and write.

MSKbranchdire

Specifies the branching direction.

MSK_BRANCH_DIR_FREE (0)

The mixed-integer optimizer decides which branch to choose.

MSK_BRANCH_DIR_UP (1)

The mixed-integer optimizer always chooses the up branch first.

MSK_BRANCH_DIR_DOWN (2)

The mixed-integer optimizer always chooses the down branch first.

MSK_BRANCH_DIR_NEAR (3)

Branch in direction nearest to selected fractional variable.

MSK_BRANCH_DIR_FAR (4)

Branch in direction farthest from selected fractional variable.

MSK_BRANCH_DIR_ROOT_LP (5)

Chose direction based on root lp value of selected variable.

MSK_BRANCH_DIR_GUIDED (6)

Branch in direction of current incumbent.

MSK_BRANCH_DIR_PSEUDOCOST (7)

Branch based on the pseudocost of the variable.

MSKmiqcqoreformmethode

Specifies the reformulation method for mixed-integer quadratic problems.

MSK_MIO_QCQO_REFORMULATION_METHOD_FREE (0)

The mixed-integer optimizer decides which reformulation method to apply.

MSK_MIO_QCQO_REFORMULATION_METHOD_NONE (1)

No reformulation method is applied.

MSK_MIO_QCQO_REFORMULATION_METHOD_LINEARIZATION (2)

A reformulation via linearization is applied.

MSK_MIO_QCQO_REFORMULATION_METHOD_EIGEN_VAL_METHOD (3)

The eigenvalue method is applied.

MSK_MIO_QCQO_REFORMULATION_METHOD_DIAG_SDP (4)

A perturbation of matrix diagonals via the solution of SDPs is applied.

MSK_MIO_QCQO_REFORMULATION_METHOD_RELAX_SDP (5)

A Reformulation based on the solution of an SDP-relaxation of the problem is applied.

MSKmiodatapermmethode

Specifies the problem data permutation method for mixed-integer problems.

MSK_MIO_DATA_PERMUTATION_METHOD_NONE (0)

No problem data permutation is applied.

MSK_MIO_DATA_PERMUTATION_METHOD_CYCLIC_SHIFT (1)

A random cyclic shift is applied to permute the problem data.

MSK_MIO_DATA_PERMUTATION_METHOD_RANDOM (2)

A random permutation is applied to the problem data.

MSKmiocontsoltypee

Continuous mixed-integer solution type

MSK_MIO_CONT_SOL_NONE (0)

No interior-point or basic solution are reported when the mixed-integer optimizer is used.

MSK_MIO_CONT_SOL_ROOT (1)

The reported interior-point and basic solutions are a solution to the root node problem when mixed-integer optimizer is used.

MSK_MIO_CONT_SOL_ITG (2)

The reported interior-point and basic solutions are a solution to the problem with all integer variables fixed at the value they have in the integer solution. A solution is only reported in case the problem has a primal feasible solution.

MSK_MIO_CONT_SOL_ITG_REL (3)

In case the problem is primal feasible then the reported interior-point and basic solutions are a solution to the problem with all integer variables fixed at the value they have in the integer solution. If the problem is primal infeasible, then the solution to the root node problem is reported.

MSKmiomodee

Integer restrictions

MSK_MIO_MODE_IGNORED (0)

The integer constraints are ignored and the problem is solved as a continuous problem.

MSK_MIO_MODE_SATISFIED (1)

Integer restrictions should be satisfied.

MSKmionodeseltypee

Mixed-integer node selection types

MSK_MIO_NODE_SELECTION_FREE (0)

The optimizer decides the node selection strategy.

MSK_MIO_NODE_SELECTION_FIRST (1)

The optimizer employs a depth first node selection strategy.

MSK_MIO_NODE_SELECTION_BEST (2)

The optimizer employs a best bound node selection strategy.

MSK_MIO_NODE_SELECTION_PSEUDO (3)

The optimizer employs selects the node based on a pseudo cost estimate.

MSKmiovarseltypee

Mixed-integer variable selection types

MSK_MIO_VAR_SELECTION_FREE (0)

The optimizer decides the variable selection strategy.

MSK_MIO_VAR_SELECTION_PSEUDOCOST (1)

The optimizer employs pseudocost variable selection.

MSK_MIO_VAR_SELECTION_STRONG (2)

The optimizer employs strong branching variable selection.

MSKmpsformate

MPS file format type

MSK_MPS_FORMAT_STRICT (0)

It is assumed that the input file satisfies the MPS format strictly.

MSK_MPS_FORMAT_RELAXED (1)

It is assumed that the input file satisfies a slightly relaxed version of the MPS format.

MSK_MPS_FORMAT_FREE (2)

It is assumed that the input file satisfies the free MPS format. This implies that spaces are not allowed in names. Otherwise the format is free.

MSK_MPS_FORMAT_CPLEX (3)

The CPLEX compatible version of the MPS format is employed.

MSKobjsensee

Objective sense types

MSK_OBJECTIVE_SENSE_MINIMIZE (0)

The problem should be minimized.

MSK_OBJECTIVE_SENSE_MAXIMIZE (1)

The problem should be maximized.

MSKonoffkeye

On/off

MSK_ON (1)

Switch the option on.

MSK_OFF (0)

Switch the option off.

MSKoptimizertypee

Optimizer types

MSK_OPTIMIZER_CONIC (0)

The optimizer for problems having conic constraints.

MSK_OPTIMIZER_DUAL_SIMPLEX (1)

The dual simplex optimizer is used.

MSK_OPTIMIZER_FREE (2)

The optimizer is chosen automatically.

MSK_OPTIMIZER_FREE_SIMPLEX (3)

One of the simplex optimizers is used.

MSK_OPTIMIZER_INTPNT (4)

The interior-point optimizer is used.

MSK_OPTIMIZER_MIXED_INT (5)

The mixed-integer optimizer.

MSK_OPTIMIZER_PRIMAL_SIMPLEX (6)

The primal simplex optimizer is used.

MSKorderingtypee

Ordering strategies

MSK_ORDER_METHOD_FREE (0)

The ordering method is chosen automatically.

MSK_ORDER_METHOD_APPMINLOC (1)

Approximate minimum local fill-in ordering is employed.

MSK_ORDER_METHOD_EXPERIMENTAL (2)

This option should not be used.

MSK_ORDER_METHOD_TRY_GRAPHPAR (3)

Always try the graph partitioning based ordering.

MSK_ORDER_METHOD_FORCE_GRAPHPAR (4)

Always use the graph partitioning based ordering even if it is worse than the approximate minimum local fill ordering.

MSK_ORDER_METHOD_NONE (5)

No ordering is used. Note using this value almost always leads to a significantly slow down.

MSKpresolvemodee

Presolve method.

MSK_PRESOLVE_MODE_OFF (0)

The problem is not presolved before it is optimized.

MSK_PRESOLVE_MODE_ON (1)

The problem is presolved before it is optimized.

MSK_PRESOLVE_MODE_FREE (2)

It is decided automatically whether to presolve before the problem is optimized.

MSKparametertypee

Parameter type

MSK_PAR_INVALID_TYPE (0)

Not a valid parameter.

MSK_PAR_DOU_TYPE (1)

Is a double parameter.

MSK_PAR_INT_TYPE (2)

Is an integer parameter.

MSK_PAR_STR_TYPE (3)

Is a string parameter.

MSKproblemiteme

Problem data items

MSK_PI_VAR (0)

Item is a variable.

MSK_PI_CON (1)

Item is a constraint.

MSK_PI_CONE (2)

Item is a cone.

MSKproblemtypee

Problem types

MSK_PROBTYPE_LO (0)

The problem is a linear optimization problem.

MSK_PROBTYPE_QO (1)

The problem is a quadratic optimization problem.

MSK_PROBTYPE_QCQO (2)

The problem is a quadratically constrained optimization problem.

MSK_PROBTYPE_CONIC (3)

A conic optimization.

MSK_PROBTYPE_MIXED (4)

General nonlinear constraints and conic constraints. This combination can not be solved by MOSEK.

MSKprostae

Problem status keys

MSK_PRO_STA_UNKNOWN (0)

Unknown problem status.

MSK_PRO_STA_PRIM_AND_DUAL_FEAS (1)

The problem is primal and dual feasible.

MSK_PRO_STA_PRIM_FEAS (2)

The problem is primal feasible.

MSK_PRO_STA_DUAL_FEAS (3)

The problem is dual feasible.

MSK_PRO_STA_PRIM_INFEAS (4)

The problem is primal infeasible.

MSK_PRO_STA_DUAL_INFEAS (5)

The problem is dual infeasible.

MSK_PRO_STA_PRIM_AND_DUAL_INFEAS (6)

The problem is primal and dual infeasible.

MSK_PRO_STA_ILL_POSED (7)

The problem is ill-posed. For example, it may be primal and dual feasible but have a positive duality gap.

MSK_PRO_STA_PRIM_INFEAS_OR_UNBOUNDED (8)

The problem is either primal infeasible or unbounded. This may occur for mixed-integer problems.

MSKxmlwriteroutputtypee

XML writer output mode

MSK_WRITE_XML_MODE_ROW (0)

Write in row order.

MSK_WRITE_XML_MODE_COL (1)

Write in column order.

MSKrescodetypee

Response code type

MSK_RESPONSE_OK (0)

The response code is OK.

MSK_RESPONSE_WRN (1)

The response code is a warning.

MSK_RESPONSE_TRM (2)

The response code is an optimizer termination status.

MSK_RESPONSE_ERR (3)

The response code is an error.

MSK_RESPONSE_UNK (4)

The response code does not belong to any class.

MSKscalingtypee

Scaling type

MSK_SCALING_FREE (0)

The optimizer chooses the scaling heuristic.

MSK_SCALING_NONE (1)

No scaling is performed.

MSKscalingmethode

Scaling method

MSK_SCALING_METHOD_POW2 (0)

Scales only with power of 2 leaving the mantissa untouched.

MSK_SCALING_METHOD_FREE (1)

The optimizer chooses the scaling heuristic.

MSKsensitivitytypee

Sensitivity types

MSK_SENSITIVITY_TYPE_BASIS (0)

Basis sensitivity analysis is performed.

MSKsimseltypee

Simplex selection strategy

MSK_SIM_SELECTION_FREE (0)

The optimizer chooses the pricing strategy.

MSK_SIM_SELECTION_FULL (1)

The optimizer uses full pricing.

MSK_SIM_SELECTION_ASE (2)

The optimizer uses approximate steepest-edge pricing.

MSK_SIM_SELECTION_DEVEX (3)

The optimizer uses devex steepest-edge pricing (or if it is not available an approximate steep-edge selection).

MSK_SIM_SELECTION_SE (4)

The optimizer uses steepest-edge selection (or if it is not available an approximate steep-edge selection).

MSK_SIM_SELECTION_PARTIAL (5)

The optimizer uses a partial selection approach. The approach is usually beneficial if the number of variables is much larger than the number of constraints.

MSKsoliteme

Solution items

MSK_SOL_ITEM_XC (0)

Solution for the constraints.

MSK_SOL_ITEM_XX (1)

Variable solution.

MSK_SOL_ITEM_Y (2)

Lagrange multipliers for equations.

MSK_SOL_ITEM_SLC (3)

Lagrange multipliers for lower bounds on the constraints.

MSK_SOL_ITEM_SUC (4)

Lagrange multipliers for upper bounds on the constraints.

MSK_SOL_ITEM_SLX (5)

Lagrange multipliers for lower bounds on the variables.

MSK_SOL_ITEM_SUX (6)

Lagrange multipliers for upper bounds on the variables.

MSK_SOL_ITEM_SNX (7)

Lagrange multipliers corresponding to the conic constraints on the variables.

MSKsolstae

Solution status keys

MSK_SOL_STA_UNKNOWN (0)

Status of the solution is unknown.

MSK_SOL_STA_OPTIMAL (1)

The solution is optimal.

MSK_SOL_STA_PRIM_FEAS (2)

The solution is primal feasible.

MSK_SOL_STA_DUAL_FEAS (3)

The solution is dual feasible.

MSK_SOL_STA_PRIM_AND_DUAL_FEAS (4)

The solution is both primal and dual feasible.

MSK_SOL_STA_PRIM_INFEAS_CER (5)

The solution is a certificate of primal infeasibility.

MSK_SOL_STA_DUAL_INFEAS_CER (6)

The solution is a certificate of dual infeasibility.

MSK_SOL_STA_PRIM_ILLPOSED_CER (7)

The solution is a certificate that the primal problem is illposed.

MSK_SOL_STA_DUAL_ILLPOSED_CER (8)

The solution is a certificate that the dual problem is illposed.

MSK_SOL_STA_INTEGER_OPTIMAL (9)

The primal solution is integer optimal.

MSKsoltypee

Solution types

MSK_SOL_BAS (1)

The basic solution.

MSK_SOL_ITR (0)

The interior solution.

MSK_SOL_ITG (2)

The integer solution.

MSKsolveforme

Solve primal or dual form

MSK_SOLVE_FREE (0)

The optimizer is free to solve either the primal or the dual problem.

MSK_SOLVE_PRIMAL (1)

The optimizer should solve the primal problem.

MSK_SOLVE_DUAL (2)

The optimizer should solve the dual problem.

MSKstakeye

Status keys

MSK_SK_UNK (0)

The status for the constraint or variable is unknown.

MSK_SK_BAS (1)

The constraint or variable is in the basis.

MSK_SK_SUPBAS (2)

The constraint or variable is super basic.

MSK_SK_LOW (3)

The constraint or variable is at its lower bound.

MSK_SK_UPR (4)

The constraint or variable is at its upper bound.

MSK_SK_FIX (5)

The constraint or variable is fixed.

MSK_SK_INF (6)

The constraint or variable is infeasible in the bounds.

MSKstartpointtypee

Starting point types

MSK_STARTING_POINT_FREE (0)

The starting point is chosen automatically.

MSK_STARTING_POINT_GUESS (1)

The optimizer guesses a starting point.

MSK_STARTING_POINT_CONSTANT (2)

The optimizer constructs a starting point by assigning a constant value to all primal and dual variables. This starting point is normally robust.

MSKstreamtypee

Stream types

MSK_STREAM_LOG (0)

Log stream. Contains the aggregated contents of all other streams. This means that a message written to any other stream will also be written to this stream.

MSK_STREAM_MSG (1)

Message stream. Log information relating to performance and progress of the optimization is written to this stream.

MSK_STREAM_ERR (2)

Error stream. Error messages are written to this stream.

MSK_STREAM_WRN (3)

Warning stream. Warning messages are written to this stream.

MSKvaluee

Integer values

MSK_MAX_STR_LEN (1024)

Maximum string length allowed in MOSEK.

MSK_LICENSE_BUFFER_LENGTH (21)

The length of a license key buffer.

MSKvariabletypee

Variable types

MSK_VAR_TYPE_CONT (0)

Is a continuous variable.

MSK_VAR_TYPE_INT (1)

Is an integer variable.