![]() |
- 3.0.2 optimal control module.
|
GNMS Line Search Settings. More...
#include <NLOptConSettings.hpp>
Public Types | |
| enum | TYPE { NONE = 0, SIMPLE, ARMIJO, GOLDSTEIN, NUM_TYPES } |
| types of backtracking line-search More... | |
Public Member Functions | |
| LineSearchSettings () | |
| default constructor for the NLOptCon line-search settings More... | |
| bool | parametersOk () const |
| check if the currently set line-search parameters are meaningful More... | |
| void | print () const |
| print the current line search settings to console More... | |
| void | load (const std::string &filename, bool verbose=true, const std::string &ns="line_search") |
| load line search settings from file More... | |
Public Attributes | |
| std::map< TYPE, std::string > | lineSearchTypeToString |
| mappings for line-search types More... | |
| std::map< std::string, TYPE > | stringToLineSearchType |
| TYPE | type |
| bool | adaptive |
| size_t | maxIterations |
| double | alpha_0 |
| double | alpha_max |
| double | n_alpha |
| double | armijo_parameter |
| bool | debugPrint |
GNMS Line Search Settings.
The Line Search Settings are part of the general settings struct and hold parameters to customize the line-search for the NLOptCon controller update.
|
inline |
default constructor for the NLOptCon line-search settings
|
inline |
check if the currently set line-search parameters are meaningful
References alpha_0, alpha_max, and n_alpha.
Referenced by ct::optcon::NLOptConSettings::parametersOk().
|
inline |
print the current line search settings to console
Referenced by load(), ct::optcon::NLOptConSettings::load(), and ct::optcon::NLOptConSettings::print().
|
inline |
load line search settings from file
References alpha_0, n_alpha, print(), and ct::optcon::example::verbose.
Referenced by ct::optcon::NLOptConSettings::load().
| std::map<TYPE, std::string> ct::optcon::LineSearchSettings::lineSearchTypeToString |
| std::map<std::string, TYPE> ct::optcon::LineSearchSettings::stringToLineSearchType |
| TYPE ct::optcon::LineSearchSettings::type |
type of line search
Referenced by ct::optcon::NLOCBackendBase< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::acceptStep(), ct::optcon::NLOCBackendBase< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::changeCostFunction(), ct::optcon::NLOCBackendBase< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::changeGeneralConstraints(), ct::optcon::NLOCBackendBase< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::changeInputBoxConstraints(), ct::optcon::NLOCBackendBase< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::changeStateBoxConstraints(), generateSolver(), ct::optcon::NLOCBackendBase< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::lineSearch(), main(), ct::optcon::example::symplecticTest(), and ct::optcon::example::TEST().
| bool ct::optcon::LineSearchSettings::adaptive |
Flag whether alpha_0 gets updated based on previous iteration
| size_t ct::optcon::LineSearchSettings::maxIterations |
Maximum number of iterations during line search
Referenced by ct::optcon::NLOCBackendST< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::performLineSearch(), and ct::optcon::NLOCBackendMP< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::performLineSearch().
| double ct::optcon::LineSearchSettings::alpha_0 |
Initial step size for line search. Use 1 for step size as suggested by NLOptCon
Referenced by load(), parametersOk(), ct::optcon::NLOCBackendST< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::performLineSearch(), and ct::optcon::NLOCBackendMP< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::performLineSearch().
| double ct::optcon::LineSearchSettings::alpha_max |
Maximum step size for line search. This is the limit when adapting alpha_0.
Referenced by parametersOk().
| double ct::optcon::LineSearchSettings::n_alpha |
Factor by which the step size alpha gets scaled after each iteration. Usually 0.5 is a good value.
Referenced by load(), parametersOk(), ct::optcon::NLOCBackendST< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::performLineSearch(), and ct::optcon::NLOCBackendMP< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::performLineSearch().
| double ct::optcon::LineSearchSettings::armijo_parameter |
"Control Parameter" in Armijo line search condition.
Referenced by ct::optcon::NLOCBackendBase< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::acceptStep().
| bool ct::optcon::LineSearchSettings::debugPrint |
Print out debug information during line-search
Referenced by ct::optcon::NLOCBackendBase< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::lineSearch(), main(), ct::optcon::NLOCBackendST< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::performLineSearch(), ct::optcon::NLOCBackendMP< STATE_DIM, CONTROL_DIM, P_DIM, V_DIM, SCALAR, CONTINUOUS >::performLineSearch(), and ct::optcon::example::TEST().