# SuanShu, a Java numerical and statistical library

com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.problem

## Class SOCPDualProblem

• java.lang.Object
• com.numericalmethod.suanshu.optimization.multivariate.constrained.convex.sdp.socp.problem.SOCPDualProblem
• All Implemented Interfaces:
ConstrainedOptimProblem, OptimProblem
Direct Known Subclasses:
SOCPGeneralProblem

public class SOCPDualProblem
extends Object
implements ConstrainedOptimProblem
This is the Dual Second Order Conic Programming problem. $\max_y \mathbf{b'y} \textrm{ s.t.,} \\ \mathbf{\hat{A}_i'y + s_i = \hat{c}_i} \\ s_i \in K_i, i = 1, 2, ..., q$
"Andreas Antoniou, Wu-Sheng Lu, "eq 14.102, Section 14.7, Second-Order Cone Programming," Practical Optimization: Algorithms and Engineering Applications."
• ### Constructor Detail

• #### SOCPDualProblem

public SOCPDualProblem(Vector b,
Matrix[] A,
Vector[] c)
Constructs a dual SOCP problem. $\max_y \mathbf{b'y} \textrm{ s.t.,} \\ \mathbf{\hat{A}_i'y + s_i = \hat{c}_i} \\ s_i \in K_i, i = 1, 2, ..., q$
Parameters:
b - $$b$$
A - $$A_i$$'s
c - $$c_i$$'s
• ### Method Detail

• #### dimension

public int dimension()
Description copied from interface: OptimProblem
Get the number of variables.
Specified by:
dimension in interface OptimProblem
Returns:
the number of variables.
• #### m

public int m()
Gets the dimension of the system, i.e., m = the dimension of y.
Returns:
the dimension of the system
• #### q

public int q()
Gets the number of A matrices.
Returns:
the number of A matrices
• #### b

public Vector b()
Gets b.
Returns:
b
• #### c

public Vector c(int i)
Gets ci.
Parameters:
i - an index to the c's, counting from 1
Returns:
ci
• #### A

public Matrix A(int i)
Gets Ai.
Parameters:
i - an index to the A's, counting from 1
Returns:
Ai
• #### n

public int n(int i)
Gets the number of columns of Ai.
Parameters:
i - an index to the A's, counting from 1
Returns:
the number of columns of Ai
• #### A

public Matrix A()
$A = [A_1, A_2, ... A_q]$
Returns:
A