mlpack  2.2.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
LRSDP< SDPType > Class Template Reference

LRSDP is the implementation of Monteiro and Burer's formulation of low-rank semidefinite programs (LR-SDP). More...

Inheritance diagram for LRSDP< SDPType >:
Inheritance graph
[legend]

Public Member Functions

 LRSDP (const size_t numSparseConstraints, const size_t numDenseConstraints, const arma::mat &initialPoint)
 Create an LRSDP to be optimized. More...
 
 LRSDP (const SDPType &sdp, const arma::mat &initialPoint)
 Create an LRSDP object with the given SDP problem to be solved, and the given initial point. More...
 
const AugLagrangian
< LRSDPFunction< SDPType > > & 
AugLag () const
 Return the augmented Lagrangian object. More...
 
AugLagrangian< LRSDPFunction
< SDPType > > & 
AugLag ()
 Modify the augmented Lagrangian object. More...
 
const LRSDPFunction< SDPType > & Function () const
 Return the function to be optimized. More...
 
LRSDPFunction< SDPType > & Function ()
 Modify the function to be optimized. More...
 
double Optimize (arma::mat &coordinates)
 Optimize the LRSDP and return the final objective value. More...
 
const SDPType & SDP () const
 Return the SDP that will be solved. More...
 
SDPType & SDP ()
 Modify the SDP that will be solved. More...
 

Detailed Description

template<typename SDPType>
class mlpack::optimization::LRSDP< SDPType >

LRSDP is the implementation of Monteiro and Burer's formulation of low-rank semidefinite programs (LR-SDP).

This solver uses the augmented Lagrangian optimizer to solve low-rank semidefinite programs.

Definition at line 30 of file lrsdp.hpp.

Constructor & Destructor Documentation

LRSDP ( const size_t  numSparseConstraints,
const size_t  numDenseConstraints,
const arma::mat &  initialPoint 
)

Create an LRSDP to be optimized.

The solution will end up being a matrix of size (rows) x (rank). To construct each constraint and the objective function, use the function SDP() in order to access the SDPType object associated with this optimizer.

Parameters
numConstraintsNumber of constraints in the problem.
initialPointInitial point of the optimization.
LRSDP ( const SDPType &  sdp,
const arma::mat &  initialPoint 
)

Create an LRSDP object with the given SDP problem to be solved, and the given initial point.

Note that the SDP may be modified later by calling SDP() to access the object.

Parameters
sdpSDP to be solved.
initialPointInitial point of the optimization.

Member Function Documentation

const AugLagrangian<LRSDPFunction<SDPType> >& AugLag ( ) const
inline

Return the augmented Lagrangian object.

Definition at line 76 of file lrsdp.hpp.

AugLagrangian<LRSDPFunction<SDPType> >& AugLag ( )
inline

Modify the augmented Lagrangian object.

Definition at line 78 of file lrsdp.hpp.

const LRSDPFunction<SDPType>& Function ( ) const
inline

Return the function to be optimized.

Definition at line 71 of file lrsdp.hpp.

LRSDPFunction<SDPType>& Function ( )
inline

Modify the function to be optimized.

Definition at line 73 of file lrsdp.hpp.

double Optimize ( arma::mat &  coordinates)

Optimize the LRSDP and return the final objective value.

The given coordinates will be modified to contain the final solution.

Parameters
coordinatesStarting coordinates for the optimization.
const SDPType& SDP ( ) const
inline

Return the SDP that will be solved.

Definition at line 66 of file lrsdp.hpp.

SDPType& SDP ( )
inline

Modify the SDP that will be solved.

Definition at line 68 of file lrsdp.hpp.


The documentation for this class was generated from the following file: