11.1 Conic Optimization¶
Conic optimization is an extension of linear optimizations allowing conic domains to be specified for affine expressions. A conic optimization problem to be solved by MOSEK can be written as
where
\(n\) is the number of decision variables.
\(x \in \real^n\) is a vector of decision variables.
\(c \in \real^n\) is the linear part of the objective function.
\(c^f\in \real\) is a constant term in the objective
\(F \in \real^{k \times n}\) is the affine conic constraint matrix.,
\(g \in \real^{k}\) is the affine conic constraint constant term vector.,
\(\D\) is a Cartesian product of conic domains, namely \(\D = \D_1 \times \cdots \times \D_p\), where \(p\) is the number of individual affine conic constraints (ACCs), and each domain is one from Sec. 13.8 (Supported domains).
The total dimension of the domain \(\D\) must be equal to \(k\), the number of rows in \(F\) and \(g\).
11.1.1 Duality for Conic Optimization¶
Corresponding to the primal problem (11.1), there is a dual problem
where
\(y\) are the dual variables for affine conic constraints,
the dual domain \(\D^*=\D_1^* \times \cdots \times \D_p^*\) is a Cartesian product of cones dual to \(\D_i\).
One can check that the dual problem of the dual problem is identical to the original primal problem.
A solution \(y\) to the dual problem is feasible if it satisfies all the constraints in (11.2). If (11.2) has at least one feasible solution, then (11.2) is (dual) feasible, otherwise the problem is (dual) infeasible.
A solution
is denoted a primal-dual feasible solution, if \(x^*\) is a solution to the primal problem (11.1) and \(y^*\) is a solution to the corresponding dual problem (11.2).
For a primal-dual feasible solution we define the duality gap as the difference between the primal and the dual objective value,
It follows that the primal objective will always be greater than or equal to the dual objective.
It is well-known that, under some non-degeneracy assumptions that exclude ill-posed cases, a conic optimization problem has an optimal solution if and only if there exist feasible primal-dual solution so that the duality gap is zero, or, equivalently, that the complementarity conditions
are satisfied.
If (11.1) has an optimal solution and MOSEK solves the problem successfully, both the primal and dual solution are reported, including a status indicating the exact state of the solution.
11.1.2 Infeasibility for Conic Optimization¶
11.1.2.1 Primal Infeasible Problems¶
If the problem (11.1) is infeasible (has no feasible solution), MOSEK will report a certificate of primal infeasibility: The dual solution reported is the certificate of infeasibility, and the primal solution is undefined.
A certificate of primal infeasibility is a feasible solution to the modified dual system
Such a solution implies that (11.5) is unbounded, and that (11.1) is infeasible.
11.1.2.2 Dual Infeasible Problems¶
A certificate of dual infeasibility is a feasible solution to the modified primal system
Such a solution implies that (11.6) is unbounded, and that (11.2) is infeasible.
In case that both the primal problem (11.1) and the dual problem (11.2) are infeasible, MOSEK will report only one of the two possible certificates — which one is not defined (MOSEK returns the first certificate found).
11.1.3 Minimalization vs. Maximalization¶
When the objective sense of problem (11.1) is maximization, i.e.
the objective sense of the dual problem changes to minimization, and the domain of all dual variables changes sign in comparison to (11.2). The dual problem thus takes the form
This means that the duality gap, defined in (11.3) as the primal minus the dual objective value, becomes nonpositive. It follows that the dual objective will always be greater than or equal to the primal objective. The primal infeasibility certificate will be reported by MOSEK as a solution to the system
Similarly, the certificate of dual infeasibility is an \(x\) satisfying the requirements of (11.6) such that \(c^Tx>0\).