Quadratic program with box constraints. More...
#include <shark/Algorithms/QP/BoxConstrainedProblems.h>
Public Types | |
typedef SVMProblem::QpFloatType | QpFloatType |
typedef SVMProblem::MatrixType | MatrixType |
typedef MaximumGainCriterion | PreferedSelectionStrategy |
Public Member Functions | |
BoxConstrainedProblem (SVMProblem &problem) | |
std::size_t | dimensions () const |
std::size_t | active () const |
double | boxMin (std::size_t i) const |
double | boxMax (std::size_t i) const |
bool | isLowerBound (std::size_t i) const |
bool | isUpperBound (std::size_t i) const |
bool | isDeactivated (std::size_t i) const |
MatrixType & | quadratic () |
representation of the quadratic part of the objective function More... | |
double | linear (std::size_t i) const |
double | alpha (std::size_t i) const |
double | diagonal (std::size_t i) const |
double | gradient (std::size_t i) const |
std::size_t | permutation (std::size_t i) const |
RealVector | getUnpermutedAlpha () const |
virtual void | updateSMO (std::size_t i, std::size_t j) |
Does an update of SMO given a working set with indices i and j. More... | |
double | functionValue () const |
Returns the current function value of the problem. More... | |
bool | shrink (double) |
void | reshrink () |
void | unshrink () |
virtual void | deactivateVariable (std::size_t i) |
Remove the i-th example from the problem. More... | |
void | activateVariable (std::size_t i) |
Reactivate an previously deactivated variable. More... | |
void | flipCoordinates (std::size_t i, std::size_t j) |
exchange two variables via the permutation More... | |
virtual void | setLinear (std::size_t i, double newValue) |
adapts the linear part of the problem and updates the internal data structures accordingly. More... | |
double | checkKKT () const |
Protected Member Functions | |
void | updateAlphaStatus (std::size_t i) |
Protected Attributes | |
SVMProblem & | m_problem |
RealVector | m_gradient |
gradient of the objective function at the current alpha More... | |
std::size_t | m_active |
std::vector< char > | m_alphaStatus |
Quadratic program with box constraints.
Definition at line 137 of file BoxConstrainedProblems.h.
typedef SVMProblem::MatrixType shark::BoxConstrainedProblem< SVMProblem >::MatrixType |
Definition at line 140 of file BoxConstrainedProblems.h.
typedef MaximumGainCriterion shark::BoxConstrainedProblem< SVMProblem >::PreferedSelectionStrategy |
Definition at line 141 of file BoxConstrainedProblems.h.
typedef SVMProblem::QpFloatType shark::BoxConstrainedProblem< SVMProblem >::QpFloatType |
Definition at line 139 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 144 of file BoxConstrainedProblems.h.
|
inline |
Reactivate an previously deactivated variable.
Definition at line 288 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 164 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 193 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 171 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 168 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 312 of file BoxConstrainedProblems.h.
|
inlinevirtual |
Remove the i-th example from the problem.
Reimplemented in shark::BoxConstrainedShrinkingProblem< Problem >.
Definition at line 277 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 197 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 160 of file BoxConstrainedProblems.h.
|
inline |
exchange two variables via the permutation
Definition at line 294 of file BoxConstrainedProblems.h.
|
inline |
Returns the current function value of the problem.
Definition at line 268 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 209 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 201 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 180 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 174 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 177 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 189 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 205 of file BoxConstrainedProblems.h.
|
inline |
representation of the quadratic part of the objective function
Definition at line 185 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 273 of file BoxConstrainedProblems.h.
|
inlinevirtual |
adapts the linear part of the problem and updates the internal data structures accordingly.
Reimplemented in shark::BoxConstrainedShrinkingProblem< Problem >.
Definition at line 306 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 272 of file BoxConstrainedProblems.h.
|
inline |
Definition at line 274 of file BoxConstrainedProblems.h.
|
inlineprotected |
Definition at line 336 of file BoxConstrainedProblems.h.
|
inlinevirtual |
Does an update of SMO given a working set with indices i and j.
Reimplemented in shark::BoxConstrainedShrinkingProblem< Problem >.
Definition at line 217 of file BoxConstrainedProblems.h.
|
protected |
Definition at line 332 of file BoxConstrainedProblems.h.
|
protected |
Definition at line 334 of file BoxConstrainedProblems.h.
|
protected |
gradient of the objective function at the current alpha
Definition at line 330 of file BoxConstrainedProblems.h.
|
protected |
Definition at line 327 of file BoxConstrainedProblems.h.