Analyze optimization results. More...
#include <roboptim/core/result-analyzer.hh>
Classes | |
struct | ConstraintIndex |
struct | KKTData |
Data for KKT check. More... | |
struct | LICQData |
Data for LICQ check. More... | |
struct | NullGradientData |
Data for null-gradient check. More... | |
struct | QueryData |
Interface for checks. More... | |
Public Types | |
typedef GenericFunctionTraits< T > | functionTraits_t |
typedef Problem< T > | problem_t |
typedef Result | optimResult_t |
typedef functionTraits_t::argument_t | argument_t |
typedef functionTraits_t::result_t | result_t |
typedef functionTraits_t::gradient_t | gradient_t |
typedef functionTraits_t::jacobian_t | jacobian_t |
typedef functionTraits_t::vector_t | vector_t |
typedef problem_t::interval_t | interval_t |
typedef problem_t::size_type | size_type |
typedef problem_t::value_type | value_type |
typedef GenericDifferentiableFunction < T > | differentiableFunction_t |
Public Member Functions | |
ResultAnalyzer (const problem_t &pb, const optimResult_t &res, value_type eps=1e-12) | |
Constructor. More... | |
virtual | ~ResultAnalyzer () |
LICQData | checkLICQ () const |
Check the LICQ (Linear Independence Constraint Qualification) conditions. More... | |
KKTData | checkKKT () const |
Check the KKT (Karush-Kuhn-Tucker) conditions. More... | |
NullGradientData | checkNullGradient () const |
Check for null gradients. More... | |
Analyze optimization results.
T | matrix type (dense or sparse). |
typedef functionTraits_t::argument_t roboptim::ResultAnalyzer< T >::argument_t |
typedef GenericDifferentiableFunction<T> roboptim::ResultAnalyzer< T >::differentiableFunction_t |
typedef GenericFunctionTraits<T> roboptim::ResultAnalyzer< T >::functionTraits_t |
typedef functionTraits_t::gradient_t roboptim::ResultAnalyzer< T >::gradient_t |
typedef problem_t::interval_t roboptim::ResultAnalyzer< T >::interval_t |
typedef functionTraits_t::jacobian_t roboptim::ResultAnalyzer< T >::jacobian_t |
typedef Result roboptim::ResultAnalyzer< T >::optimResult_t |
typedef Problem<T> roboptim::ResultAnalyzer< T >::problem_t |
typedef functionTraits_t::result_t roboptim::ResultAnalyzer< T >::result_t |
typedef problem_t::size_type roboptim::ResultAnalyzer< T >::size_type |
typedef problem_t::value_type roboptim::ResultAnalyzer< T >::value_type |
typedef functionTraits_t::vector_t roboptim::ResultAnalyzer< T >::vector_t |
roboptim::ResultAnalyzer< T >::ResultAnalyzer | ( | const problem_t & | pb, |
const optimResult_t & | res, | ||
value_type | eps = 1e-12 |
||
) |
Constructor.
pb | problem to analyze. |
res | result of an optimization. |
eps | epsilon used for zero checking. |
|
virtual |
ResultAnalyzer< T >::KKTData roboptim::ResultAnalyzer< T >::checkKKT | ( | ) | const |
Check the KKT (Karush-Kuhn-Tucker) conditions.
References roboptim::ResultAnalyzer< T >::KKTData::complementary_slackness, roboptim::Problem< T >::constraintsViolationVector(), roboptim::ResultAnalyzer< T >::KKTData::dual_feasible, roboptim::ResultAnalyzer< T >::KKTData::eps, roboptim::ResultAnalyzer< T >::KKTData::grad_L, roboptim::Result::lambda, roboptim::ResultAnalyzer< T >::KKTData::lambda, roboptim::ResultAnalyzer< T >::KKTData::violation, and roboptim::Result::x.
ResultAnalyzer< T >::LICQData roboptim::ResultAnalyzer< T >::checkLICQ | ( | ) | const |
Check the LICQ (Linear Independence Constraint Qualification) conditions.
References roboptim::ResultAnalyzer< T >::LICQData::max_rank, and roboptim::ResultAnalyzer< T >::LICQData::rank.
ResultAnalyzer< T >::NullGradientData roboptim::ResultAnalyzer< T >::checkNullGradient | ( | ) | const |
Check for null gradients.
References roboptim::ResultAnalyzer< T >::NullGradientData::constraint_indices, roboptim::Problem< T >::constraints(), and roboptim::ResultAnalyzer< T >::NullGradientData::null_rows.