Convex optimization problem
A second-order cone program (SOCP ) is a convex optimization problem of the form
minimize
f
T
x
{\displaystyle \ f^{T}x\ }
subject to
‖
A
i
x
+
b
i
‖
2
≤
c
i
T
x
+
d
i
,
i
=
1
,
…
,
m
{\displaystyle \lVert A_{i}x+b_{i}\rVert _{2}\leq c_{i}^{T}x+d_{i},\quad i=1,\dots ,m}
F
x
=
g
{\displaystyle Fx=g\ }
where the problem parameters are
f
∈
R
n
,
A
i
∈
R
n
i
×
n
,
b
i
∈
R
n
i
,
c
i
∈
R
n
,
d
i
∈
R
,
F
∈
R
p
×
n
{\displaystyle f\in \mathbb {R} ^{n},\ A_{i}\in \mathbb {R} ^{{n_{i}}\times n},\ b_{i}\in \mathbb {R} ^{n_{i}},\ c_{i}\in \mathbb {R} ^{n},\ d_{i}\in \mathbb {R} ,\ F\in \mathbb {R} ^{p\times n}}
, and
g
∈
R
p
{\displaystyle g\in \mathbb {R} ^{p}}
.
x
∈
R
n
{\displaystyle x\in \mathbb {R} ^{n}}
is the optimization variable.
‖
x
‖
2
{\displaystyle \lVert x\rVert _{2}}
is the Euclidean norm and
T
{\displaystyle ^{T}}
indicates transpose .[ 1] The "second-order cone" in SOCP arises from the constraints, which are equivalent to requiring the affine function
(
A
x
+
b
,
c
T
x
+
d
)
{\displaystyle (Ax+b,c^{T}x+d)}
to lie in the second-order cone in
R
n
i
+
1
{\displaystyle \mathbb {R} ^{n_{i}+1}}
.[ 1]
SOCPs can be solved by interior point methods [ 2] and in general, can be solved more efficiently than semidefinite programming (SDP) problems.[ 3] Some engineering applications of SOCP include filter design, antenna array weight design, truss design, and grasping force optimization in robotics.[ 4] Applications in quantitative finance include portfolio optimization ; some market impact constraints, because they are not linear, cannot be solved by quadratic programming but can be formulated as SOCP problems.[ 5] [ 6] [ 7]
^ a b Boyd, Stephen; Vandenberghe, Lieven (2004). Convex Optimization (PDF) . Cambridge University Press. ISBN 978-0-521-83378-3 . Retrieved July 15, 2019 .
^ Potra, lorian A.; Wright, Stephen J. (1 December 2000). "Interior-point methods". Journal of Computational and Applied Mathematics . 124 (1–2): 281–302. Bibcode :2000JCoAM.124..281P . doi :10.1016/S0377-0427(00)00433-7 .
^ Cite error: The named reference Fawzi
was invoked but never defined (see the help page ).
^ Lobo, Miguel Sousa; Vandenberghe, Lieven; Boyd, Stephen; Lebret, Hervé (1998). "Applications of second-order cone programming" . Linear Algebra and Its Applications . 284 (1–3): 193–228. doi :10.1016/S0024-3795(98)10032-0 .
^ "Solving SOCP" (PDF) .
^ "portfolio optimization" (PDF) .
^ Li, Haksun (16 January 2022). Numerical Methods Using Java: For Data Science, Analysis, and Engineering . APress. pp. Chapter 10. ISBN 978-1484267967 .