1 Overview¶
The problem
is an example of a linear optimization problem. Now finding a solution to this particular problem is easy. However, in general such optimization problems may be very large. Here enters the MOSEK Optimization Suite which is a software package for solving large optimization problems with many constraints and variables. In addition to optimization algorithms the MOSEK Optimization Suite provides interfaces to mainstream programming languages such as C, Java, MATLAB, .NET, Python and R.
MOSEK Optimization Suite is a software package for efficient solving of a more general class of conic problems, problems which can be converted into conic form, and their mixedinteger versions. Below are the typical constraints and expressions which can be modeled using conic form:
Conic Quadratic Optimization: \(t\geq x^2\), sums of squares, 2norm \(t\geq \x\_2\), variance, \(\Axb\_2\).
Power Cone Optimization: powers \(x^p\), geometric mean, products \(x^\alpha y^\beta\), \(p\)norm.
Exponential Cone: \(e^x\), \(\ln{x}\), logsumexp, entropy \(x\ln{x}\), relative entropy, geometric programming.
Semidefinite Optimization: \(X\succeq 0\) is positive semidefinite.
1.1 Problem types¶
Table 1.1 summarizes the types of optimization problem that are solvable by the MOSEK Optimization Suite.
Problem type 
Available algorithms 
MixedInteger 
Multithreaded (3) 

Linear Optimization (LO) 
Primal and Dual Simplex 
Yes 
No 
Interiorpoint 
Yes 
Yes 

Convex Quadratic and Quadratically Constrained (QO, QCQO) (1) (2) 
Interiorpoint 
Yes 
Yes 
Conic Quadratic (SecondOrder Cone) Optimization (CQO, SOCO) 
Interiorpoint 
Yes 
Yes 
Power Cone Optimization 
Interiorpoint 
Yes 
Yes 
Conic Exponential Optimization (CEO) 
Interiorpoint 
Yes 
Yes 
Semidefinite Optimization (SDO) 
Interiorpoint 
No 
Yes 
Remarks:
\((1)\) Quadratic and quadratically constrained problems cannot be expressed with the objectoriented Fusion interface which is designed to handle conic problems only. However, such problems always can (and should) be translated into Conic Quadratic form and then passed to Fusion.
\((2)\) The Rmosek interface for R only support quadratic objective but not quadratic constraints.
\((3)\) Applies to x86 platforms. On
linuxaarch64
only the branch and bound MIP solver is parallelized, while the interiorpoint solver is singlethreaded.
1.2 Capabilities¶
The MOSEK Optimization Suite includes (details depend on the platform, see Release notes):
the lowlevel optimizer API for C, Java, .NET and Python.
the objectoriented Fusion API for C++, Java, .NET and Python.
an optimization toolbox for MATLAB.
an Rmosek package for R.
an interface to AMPL.
a command line tool.
optimizer server for remote optimization.
We also maintain an unofficial interface for Julia, see https://github.com/JuliaOpt/Mosek.jl.
Fig. 1.1 illustrates the relationship between the parts.
In addition MOSEK Optimization Suite provides
sensitivity analysis for linear problems.
infeasibility diagnostic tools.
problem analyses for diagnosing numerical issues in input data.
reading and writing optimization problems and solutions from/to files.
Most large optimization problems are very sparse i.e. most of the input data consists of zeros. Therefore, the APIs and optimization algorithms in MOSEK Optimization Suite is designed to exploit sparsity to reduce both storage and time.