Dual Values¶
Picos typically reformulates optimization problems as conic programs of the form
where each is a linear map
from
to a linear space containing the cone
,
and the generalized conic inequality
means
for a cone
.
For the sake of compactness, we allow generalized inequalities over the trivial cone
, such that
represents an equality constraint
.
The dual conic problem can be written as follows:
where denotes the adjoint operator of
and
denotes the the dual cone of
(see the note below for a list
of cones that are supported in PICOS, together with their dual).
After an optimization problem has been solved, we can query the optimal dual variable
of a conic constraint
con
over the cone with its
dual
attribute, i.e., con.dual
.
When an optimization problem P
can be reformulated to a conic program C
of the above form by PICOS,
we can use its dual
attribute to
return a Problem
object D=P.dual
which contains the
dual conic program of C
. It is also possible to solve P
via its dual
by using the dualize option:
This passes problem D
to the solver,
and the optimal primal and dual variables of P
will be retrieved from the
optimal solution of D
.
Supported cones and their dual¶
PICOS can provide dual information for problems involving the following cones:
Trivial cone¶
The trivial cone ,
whose dual cone is the entire space
.
This means that the dual variable
for an equality constraint
is unconstrained.
Nonnegative Orthant¶
The nonnegative orthant is self dual:
.
Therefore the dual variable for a set of linear inequalities is a vector
.
Lorentz Cone¶
The Lorentz cone
,
which is used to model second-order cone inequalities, is self-dual:
. This means that the dual variable for a second order cone
inequality of the form
is a vector of the form such that
.
Rotated Second-order Cone¶
The (widened or narrowed) rotated second order cone is
for some , and its dual cone is
. In particular,
is self-dual for
.
For example, the dual variable for the constraint
with
and
,
i.e.,
is a vector of the form such that
;
Positive Semi-definite Cone¶
The positive semidefinite cone is
self dual:
. This means that the dual
variable for a linear matrix inequality
is a
positive semidefinite matrix
;
Exponential Cone¶
PICOS can also reformulate several constraints using the exponential cone
ExponentialCone
, as it is the case for example
for KullbackLeiblerConstraint
.
PICOS provides dual values for ExpConeConstraint
,
as computed by the solver, but dualization of those constraints
is not yet supported.