|
mlpack
master
|
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... | |
Private Attributes | |
| double | dualInfeasTol |
| The tolerance required on the dual constraint required before terminating. More... | |
| arma::mat | initialX |
| Starting point for X. Needs to be positive definite. More... | |
| arma::vec | initialYdense |
| Starting lagrange multiplier for the sparse constraints. More... | |
| arma::vec | initialYsparse |
| Starting lagrange multiplier for the sparse constraints. More... | |
| arma::mat | initialZ |
| Starting point for Z, the complementary slack variable. Needs to be. More... | |
| size_t | maxIterations |
| Maximum number of iterations to run. Set to 0 for no limit. More... | |
| double | normXzTol |
| The tolerance on the norm of XZ required before terminating. More... | |
| double | primalInfeasTol |
| The tolerance required on the primal constraints required before terminating. More... | |
| SDPType | sdp |
| The SDP problem instance to optimize. More... | |
| double | tau |
| The step size modulating factor. Needs to be a scalar in (0, 1). More... | |
Interface to a primal dual interior point solver.
| SDPType |
Definition at line 26 of file primal_dual.hpp.
| mlpack::optimization::PrimalDualSolver< SDPType >::PrimalDualSolver | ( | const SDPType & | sdp | ) |
| mlpack::optimization::PrimalDualSolver< SDPType >::PrimalDualSolver | ( | const SDPType & | sdp, |
| const arma::mat & | initialX, | ||
| const arma::vec & | initialYSparse, | ||
| const arma::vec & | initialYDense, | ||
| const arma::mat & | initialZ | ||
| ) |
|
inline |
Modify the dual infeasibility tolerance.
Definition at line 93 of file primal_dual.hpp.
References mlpack::optimization::PrimalDualSolver< SDPType >::dualInfeasTol.
|
inline |
Modify the maximum number of iterations to run before converging.
Definition at line 96 of file primal_dual.hpp.
References mlpack::optimization::PrimalDualSolver< SDPType >::maxIterations.
|
inline |
Modify the XZ tolerance.
Definition at line 87 of file primal_dual.hpp.
References mlpack::optimization::PrimalDualSolver< SDPType >::normXzTol.
| double mlpack::optimization::PrimalDualSolver< SDPType >::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.
| X | |
| ySparse | |
| yDense | |
| Z |
Referenced by mlpack::optimization::PrimalDualSolver< SDPType >::Optimize().
|
inline |
Invoke the optimization procedure, and only return the primal variable.
| X |
Definition at line 73 of file primal_dual.hpp.
References mlpack::optimization::PrimalDualSolver< SDPType >::Optimize().
|
inline |
Modify the primal infeasibility tolerance.
Definition at line 90 of file primal_dual.hpp.
References mlpack::optimization::PrimalDualSolver< SDPType >::primalInfeasTol.
|
inline |
Return the underlying SDP instance.
Definition at line 81 of file primal_dual.hpp.
References mlpack::optimization::PrimalDualSolver< SDPType >::sdp.
|
inline |
Modify tau. Typical values are 0.99.
Definition at line 84 of file primal_dual.hpp.
References mlpack::optimization::PrimalDualSolver< SDPType >::tau.
|
private |
The tolerance required on the dual constraint required before terminating.
Definition at line 126 of file primal_dual.hpp.
Referenced by mlpack::optimization::PrimalDualSolver< SDPType >::DualInfeasTol().
|
private |
Starting point for X. Needs to be positive definite.
Definition at line 103 of file primal_dual.hpp.
|
private |
Starting lagrange multiplier for the sparse constraints.
Definition at line 109 of file primal_dual.hpp.
|
private |
Starting lagrange multiplier for the sparse constraints.
Definition at line 106 of file primal_dual.hpp.
|
private |
Starting point for Z, the complementary slack variable. Needs to be.
Definition at line 113 of file primal_dual.hpp.
|
private |
Maximum number of iterations to run. Set to 0 for no limit.
Definition at line 129 of file primal_dual.hpp.
Referenced by mlpack::optimization::PrimalDualSolver< SDPType >::MaxIterations().
|
private |
The tolerance on the norm of XZ required before terminating.
Definition at line 119 of file primal_dual.hpp.
Referenced by mlpack::optimization::PrimalDualSolver< SDPType >::NormXzTol().
|
private |
The tolerance required on the primal constraints required before terminating.
Definition at line 123 of file primal_dual.hpp.
Referenced by mlpack::optimization::PrimalDualSolver< SDPType >::PrimalInfeasTol().
|
private |
The SDP problem instance to optimize.
Definition at line 100 of file primal_dual.hpp.
Referenced by mlpack::optimization::PrimalDualSolver< SDPType >::SDP().
|
private |
The step size modulating factor. Needs to be a scalar in (0, 1).
Definition at line 116 of file primal_dual.hpp.
Referenced by mlpack::optimization::PrimalDualSolver< SDPType >::Tau().
1.8.11