|
mlpack
master
|
This function is the Lovasz-Theta semidefinite program, as implemented in the following paper: More...
Public Member Functions | |
| LovaszThetaSDP () | |
| LovaszThetaSDP (const arma::mat &edges) | |
| Initialize the Lovasz-Theta SDP with the given set of edges. More... | |
| const arma::mat & | Edges () const |
| arma::mat & | Edges () |
| double | Evaluate (const arma::mat &coordinates) |
| double | EvaluateConstraint (const size_t index, const arma::mat &coordinates) |
| const arma::mat & | GetInitialPoint () |
| void | Gradient (const arma::mat &coordinates, arma::mat &gradient) |
| void | GradientConstraint (const size_t index, const arma::mat &coordinates, arma::mat &gradient) |
| size_t | NumConstraints () const |
Private Attributes | |
| arma::mat | edges |
| arma::mat | initialPoint |
| size_t | vertices |
This function is the Lovasz-Theta semidefinite program, as implemented in the following paper:
S. Burer, R. Monteiro "A nonlinear programming algorithm for solving semidefinite programs via low-rank factorization." Journal of Mathematical Programming, 2004
Given a simple, undirected graph G = (V, E), the Lovasz-Theta SDP is defined by:
min_X{Tr(-(e e^T)^T X) : Tr(X) = 1, X_ij = 0 for all (i, j) in E, X >= 0}
where e is the vector of all ones and X has dimension |V| x |V|.
In the Monteiro-Burer formulation, we take X = R * R^T, where R is the coordinates given to the Evaluate(), Gradient(), EvaluateConstraint(), and GradientConstraint() functions.
Definition at line 103 of file aug_lagrangian_test_functions.hpp.
| mlpack::optimization::LovaszThetaSDP::LovaszThetaSDP | ( | ) |
| mlpack::optimization::LovaszThetaSDP::LovaszThetaSDP | ( | const arma::mat & | edges | ) |
Initialize the Lovasz-Theta SDP with the given set of edges.
The edge matrix should consist of rows of two dimensions, where dimension 0 is the first vertex of the edge and dimension 1 is the second edge (or vice versa, as it doesn't make a difference).
| edges | Matrix of edges. |
|
inline |
Definition at line 130 of file aug_lagrangian_test_functions.hpp.
|
inline |
Definition at line 131 of file aug_lagrangian_test_functions.hpp.
| double mlpack::optimization::LovaszThetaSDP::Evaluate | ( | const arma::mat & | coordinates | ) |
| double mlpack::optimization::LovaszThetaSDP::EvaluateConstraint | ( | const size_t | index, |
| const arma::mat & | coordinates | ||
| ) |
| const arma::mat& mlpack::optimization::LovaszThetaSDP::GetInitialPoint | ( | ) |
| void mlpack::optimization::LovaszThetaSDP::Gradient | ( | const arma::mat & | coordinates, |
| arma::mat & | gradient | ||
| ) |
| void mlpack::optimization::LovaszThetaSDP::GradientConstraint | ( | const size_t | index, |
| const arma::mat & | coordinates, | ||
| arma::mat & | gradient | ||
| ) |
| size_t mlpack::optimization::LovaszThetaSDP::NumConstraints | ( | ) | const |
|
private |
Definition at line 134 of file aug_lagrangian_test_functions.hpp.
|
private |
Definition at line 137 of file aug_lagrangian_test_functions.hpp.
|
private |
Definition at line 135 of file aug_lagrangian_test_functions.hpp.
1.8.11