|
MLPACK
1.0.7
|

Public Member Functions | |
| LRSDP (const size_t numConstraints, const arma::mat &initialPoint) | |
| Create an LRSDP to be optimized. More... | |
| LRSDP (const size_t numConstraints, const arma::mat &initialPoint, AugLagrangian< LRSDP > &augLagrangian) | |
| Create an LRSDP to be optimized, passing in an already-created AugLagrangian object. More... | |
| const std::vector< arma::mat > & | A () const |
| Return the vector of A matrices (which correspond to the constraints). More... | |
| std::vector< arma::mat > & | A () |
| Modify the veector of A matrices (which correspond to the constraints). More... | |
| const arma::uvec & | AModes () const |
| Return the vector of modes for the A matrices. More... | |
| arma::uvec & | AModes () |
| Modify the vector of modes for the A matrices. More... | |
| const AugLagrangian< LRSDP > & | AugLag () const |
| Return the augmented Lagrangian object. More... | |
| AugLagrangian< LRSDP > & | AugLag () |
| Modify the augmented Lagrangian object. More... | |
| const arma::vec & | B () const |
| Return the vector of B values. More... | |
| arma::vec & | B () |
| Modify the vector of B values. More... | |
| const arma::mat & | C () const |
| Return the objective function matrix (C). More... | |
| arma::mat & | C () |
| Modify the objective function matrix (C). More... | |
| double | Evaluate (const arma::mat &coordinates) const |
| Evaluate the objective function of the LRSDP (no constraints) at the given coordinates. More... | |
| double | EvaluateConstraint (const size_t index, const arma::mat &coordinates) const |
| Evaluate a particular constraint of the LRSDP at the given coordinates. More... | |
| const arma::mat & | GetInitialPoint () |
| Get the initial point of the LRSDP. More... | |
| void | Gradient (const arma::mat &coordinates, arma::mat &gradient) const |
| Evaluate the gradient of the LRSDP (no constraints) at the given coordinates. More... | |
| void | GradientConstraint (const size_t index, const arma::mat &coordinates, arma::mat &gradient) const |
| Evaluate the gradient of a particular constraint of the LRSDP at the given coordinates. More... | |
| size_t | NumConstraints () const |
| Get the number of constraints in the LRSDP. More... | |
| double | Optimize (arma::mat &coordinates) |
| Optimize the LRSDP and return the final objective value. More... | |
Private Attributes | |
| std::vector< arma::mat > | a |
| A_i for each constraint. More... | |
| arma::uvec | aModes |
| 1 if entries in matrix, 0 for normal. More... | |
| AugLagrangian< LRSDP > & | augLag |
| The AugLagrangian object which will be used for optimization. More... | |
| AugLagrangian< LRSDP > | augLagInternal |
| Internal AugLagrangian object, if one was not passed at construction time. More... | |
| arma::vec | b |
| b_i for each constraint. More... | |
| arma::mat | c |
| For objective function. More... | |
| arma::mat | initialPoint |
| Initial point. More... | |
| mlpack::optimization::LRSDP::LRSDP | ( | const size_t | numConstraints, |
| const arma::mat & | initialPoint | ||
| ) |
Create an LRSDP to be optimized.
The solution will end up being a matrix of size (rank) x (rows). To construct each constraint and the objective function, use the functions A(), B(), and C() to set them correctly.
| numConstraints | Number of constraints in the problem. |
| rank | Rank of the solution (<= rows). |
| rows | Number of rows in the solution. |
| mlpack::optimization::LRSDP::LRSDP | ( | const size_t | numConstraints, |
| const arma::mat & | initialPoint, | ||
| AugLagrangian< LRSDP > & | augLagrangian | ||
| ) |
Create an LRSDP to be optimized, passing in an already-created AugLagrangian object.
The given initial point should be set to the size (rows) x (rank), where (rank) is the reduced rank of the problem.
| numConstraints | Number of constraints in the problem. |
| initialPoint | Initial point of the optimization. |
| auglag | Pre-initialized AugLagrangian<LRSDP> object. |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
| double mlpack::optimization::LRSDP::Evaluate | ( | const arma::mat & | coordinates | ) | const |
Evaluate the objective function of the LRSDP (no constraints) at the given coordinates.
This is used by AugLagrangian<LRSDP>.
| double mlpack::optimization::LRSDP::EvaluateConstraint | ( | const size_t | index, |
| const arma::mat & | coordinates | ||
| ) | const |
Evaluate a particular constraint of the LRSDP at the given coordinates.
| const arma::mat& mlpack::optimization::LRSDP::GetInitialPoint | ( | ) |
Get the initial point of the LRSDP.
| void mlpack::optimization::LRSDP::Gradient | ( | const arma::mat & | coordinates, |
| arma::mat & | gradient | ||
| ) | const |
Evaluate the gradient of the LRSDP (no constraints) at the given coordinates.
This is used by AugLagrangian<LRSDP>.
| void mlpack::optimization::LRSDP::GradientConstraint | ( | const size_t | index, |
| const arma::mat & | coordinates, | ||
| arma::mat & | gradient | ||
| ) | const |
Evaluate the gradient of a particular constraint of the LRSDP at the given coordinates.
|
inline |
| double mlpack::optimization::LRSDP::Optimize | ( | arma::mat & | coordinates | ) |
Optimize the LRSDP and return the final objective value.
The given coordinates will be modified to contain the final solution.
| coordinates | Starting coordinates for the optimization. |
|
private |
|
private |
|
private |
The AugLagrangian object which will be used for optimization.
Definition at line 145 of file lrsdp.hpp.
Referenced by AugLag().
|
private |
Internal AugLagrangian object, if one was not passed at construction time.
|
private |
b_i for each constraint.
Definition at line 133 of file lrsdp.hpp.
Referenced by B(), and NumConstraints().
|
private |
|
private |
1.8.5