mlpack  git-master
PrimalDualSolver< SDPType > Class Template Reference

Interface to a primal dual interior point solver. More...

Public Member Functions

 PrimalDualSolver (const SDPType &sdp)
 Construct a new solver instance from a given SDP instance. More...

 
 PrimalDualSolver (const SDPType &sdp, const arma::mat &initialX, const arma::vec &initialYSparse, const arma::vec &initialYDense, const arma::mat &initialZ)
 Construct a new solver instance from a given SDP instance. More...

 
double & DualInfeasTol ()
 Modify the dual infeasibility tolerance. More...

 
size_t & MaxIterations ()
 Modify the maximum number of iterations to run before converging. More...

 
double & NormXzTol ()
 Modify the XZ tolerance. More...

 
double Optimize (arma::mat &X, arma::vec &ySparse, arma::vec &yDense, arma::mat &Z)
 Invoke the optimization procedure, returning the converged values for the primal and dual variables. More...

 
double Optimize (arma::mat &X)
 Invoke the optimization procedure, and only return the primal variable. More...

 
double & PrimalInfeasTol ()
 Modify the primal infeasibility tolerance. More...

 
const SDPType & SDP () const
 Return the underlying SDP instance. More...

 
double & Tau ()
 Modify tau. Typical values are 0.99. More...

 

Detailed Description


template
<
typename
SDPType
>

class mlpack::optimization::PrimalDualSolver< SDPType >

Interface to a primal dual interior point solver.

Template Parameters
SDPType

Definition at line 26 of file primal_dual.hpp.

Constructor & Destructor Documentation

◆ PrimalDualSolver() [1/2]

PrimalDualSolver ( const SDPType &  sdp)

Construct a new solver instance from a given SDP instance.

Uses a random, positive initialization point.

Parameters
sdpInitialized SDP to be solved.

◆ PrimalDualSolver() [2/2]

PrimalDualSolver ( const SDPType &  sdp,
const arma::mat &  initialX,
const arma::vec &  initialYSparse,
const arma::vec &  initialYDense,
const arma::mat &  initialZ 
)

Construct a new solver instance from a given SDP instance.

Uses a random, positive initialization point. Both initialX and initialZ need to be positive definite matrices.

Parameters
sdpInitialized SDP to be solved.
initialX
initialYSparse
initialYDense
initialZ

Member Function Documentation

◆ DualInfeasTol()

double& DualInfeasTol ( )
inline

Modify the dual infeasibility tolerance.

Definition at line 93 of file primal_dual.hpp.

◆ MaxIterations()

size_t& MaxIterations ( )
inline

Modify the maximum number of iterations to run before converging.

Definition at line 96 of file primal_dual.hpp.

◆ NormXzTol()

double& NormXzTol ( )
inline

Modify the XZ tolerance.

Definition at line 87 of file primal_dual.hpp.

◆ Optimize() [1/2]

double Optimize ( arma::mat &  X,
arma::vec &  ySparse,
arma::vec &  yDense,
arma::mat &  Z 
)

Invoke the optimization procedure, returning the converged values for the primal and dual variables.

Parameters
X
ySparse
yDense
Z

Referenced by PrimalDualSolver< SDPType >::Optimize().

◆ Optimize() [2/2]

double Optimize ( arma::mat &  X)
inline

Invoke the optimization procedure, and only return the primal variable.

Parameters
X

Definition at line 73 of file primal_dual.hpp.

References PrimalDualSolver< SDPType >::Optimize().

◆ PrimalInfeasTol()

double& PrimalInfeasTol ( )
inline

Modify the primal infeasibility tolerance.

Definition at line 90 of file primal_dual.hpp.

◆ SDP()

const SDPType& SDP ( ) const
inline

Return the underlying SDP instance.

Definition at line 81 of file primal_dual.hpp.

◆ Tau()

double& Tau ( )
inline

Modify tau. Typical values are 0.99.

Definition at line 84 of file primal_dual.hpp.


The documentation for this class was generated from the following file:
  • /var/www/www.mlpack.org/mlpack-git/src/mlpack/core/optimizers/sdp/primal_dual.hpp