|
|
lucid
0.0.1
Lifting-based Uncertain Control Invariant Dynamics
|
Structure copied from lbfgscpp, to avoid a transitive dependency on the external library in the header. More...
#include <LbfgsTuner.h>
Public Attributes | |
| int | m {6} |
| The number of corrections to approximate the inverse Hessian matrix. | |
| Scalar | epsilon {1e-5} |
| Absolute tolerance for convergence test. | |
| Scalar | epsilon_rel {1e-5} |
| Relative tolerance for convergence test. | |
| int | past {0} |
| Distance for delta-based convergence test. | |
| Scalar | delta {0} |
| Delta for convergence test. | |
| int | max_iterations {0} |
| The maximum number of iterations. | |
| int | linesearch {3} |
| The line search termination condition. | |
| int | max_submin {10} |
| The maximum number of iterations in the subspace minimization. | |
| int | max_linesearch {20} |
| The maximum number of trials for the line search. | |
| Scalar | min_step {1e-20} |
| The minimum step length allowed in the line search. | |
| Scalar | max_step {1e+20} |
| The maximum step length allowed in the line search. | |
| Scalar | ftol {1e-4} |
| A parameter to control the accuracy of the line search routine. | |
| Scalar | wolfe {0.9} |
| The coefficient for the Wolfe condition. | |
Structure copied from lbfgscpp, to avoid a transitive dependency on the external library in the header.
| Scalar lucid::LbfgsParameters::delta {0} |
Delta for convergence test.
The algorithm stops when the following condition is met, \(|f_{k-d}(x)-f_k(x)|<\delta\cdot\max(1, |f_k(x)|, |f_{k-d}(x)|)\), where \(f_k(x)\) is the current function value, and \(f_{k-d}(x)\) is the function value \(d\) iterations ago (specified by the past parameter). The default value is 0.
| Scalar lucid::LbfgsParameters::epsilon {1e-5} |
Absolute tolerance for convergence test.
This parameter determines the absolute accuracy \(\epsilon_{abs}\) with which the solution is to be found. A minimization terminates when \(||g|| < \max\{\epsilon_{abs}, \epsilon_{rel}||x||\}\), where \(||\cdot||\) denotes the Euclidean (L2) norm. The default value is 1e-5.
| Scalar lucid::LbfgsParameters::epsilon_rel {1e-5} |
Relative tolerance for convergence test.
This parameter determines the relative accuracy \(\epsilon_{rel}\) with which the solution is to be found. A minimization terminates when \(||g|| < \max\{\epsilon_{abs}, \epsilon_{rel}||x||\}\), where \(||\cdot||\) denotes the Euclidean (L2) norm. The default value is 1e-5.
| Scalar lucid::LbfgsParameters::ftol {1e-4} |
A parameter to control the accuracy of the line search routine.
The default value is 1e-4. This parameter should be greater than zero and smaller than 0.5.
| int lucid::LbfgsParameters::linesearch {3} |
The line search termination condition.
This parameter specifies the line search termination condition that will be used by the LBFGS routine. The default value is LBFGS_LINESEARCH_BACKTRACKING_STRONG_WOLFE.
| int lucid::LbfgsParameters::m {6} |
The number of corrections to approximate the inverse Hessian matrix.
The L-BFGS routine stores the computation results of previous m iterations to approximate the inverse Hessian matrix of the current iteration. This parameter controls the size of the limited memories (corrections). The default value is 6. Values less than 3 are not recommended. Large values will result in excessive computing time.
| int lucid::LbfgsParameters::max_iterations {0} |
The maximum number of iterations.
The optimization process is terminated when the iteration count exceeds this parameter. Setting this parameter to zero continues an optimization process until a convergence or error. The default value is 0.
| int lucid::LbfgsParameters::max_linesearch {20} |
The maximum number of trials for the line search.
This parameter controls the number of function and gradients evaluations per iteration for the line search routine. The default value is 20. Only used when bounds are not set.
| Scalar lucid::LbfgsParameters::max_step {1e+20} |
The maximum step length allowed in the line search.
The default value is 1e+20. Usually this value does not need to be modified.
| int lucid::LbfgsParameters::max_submin {10} |
The maximum number of iterations in the subspace minimization.
This parameter controls the number of iterations in the subspace minimization routine. The default value is 10. Only used when bounds are set.
| Scalar lucid::LbfgsParameters::min_step {1e-20} |
The minimum step length allowed in the line search.
The default value is 1e-20. Usually this value does not need to be modified.
| int lucid::LbfgsParameters::past {0} |
Distance for delta-based convergence test.
This parameter determines the distance \(d\) to compute the rate of decrease of the objective function, \(f_{k-d}(x)-f_k(x)\), where \(k\) is the current iteration step. If the value of this parameter is zero, the delta-based convergence test will not be performed. The default value is 0.
| Scalar lucid::LbfgsParameters::wolfe {0.9} |
The coefficient for the Wolfe condition.
This parameter is valid only when the line-search algorithm is used with the Wolfe condition. The default value is 0.9. This parameter should be greater the ftol parameter and smaller than 1.0.