|
EIGEN_MAKE_ALIGNED_OPERATOR_NEW | SolverIntro (std::shared_ptr< ShootingProblem > problem) |
| Initialize the INTRO solver.
|
|
virtual double | calcDiff () |
|
virtual void | computeGains (const std::size_t t) |
|
virtual void | computeValueFunction (const std::size_t t, const std::shared_ptr< ActionModelAbstract > &model) |
|
EqualitySolverType | get_equality_solver () const |
| Return the type of solver used for handling the equality constraints.
|
|
const std::vector< Eigen::MatrixXd > & | get_Hy () const |
| Return span-projected Jacobian of the equality-constraint with respect to the control.
|
|
const std::vector< Eigen::VectorXd > & | get_ks () const |
| Return feedforward term related to the equality constraints.
|
|
const std::vector< Eigen::MatrixXd > & | get_Ks () const |
| Return feedback gain related to the equality constraints.
|
|
const std::vector< Eigen::VectorXd > & | get_kz () const |
| Return feedforward term related to the nullspace of \(\mathbf{H_u}\).
|
|
const std::vector< Eigen::MatrixXd > & | get_Kz () const |
| Return feedback gain related to the nullspace of \(\mathbf{H_u}\).
|
|
const std::vector< Eigen::MatrixXd > & | get_Quz () const |
| Return Hessian of the reduced Hamiltonian \(\mathbf{Q_{uz}}\).
|
|
const std::vector< Eigen::MatrixXd > & | get_Qxz () const |
| Return Hessian of the reduced Hamiltonian \(\mathbf{Q_{xz}}\).
|
|
const std::vector< Eigen::VectorXd > & | get_Qz () const |
| Return Jacobian of the reduced Hamiltonian \(\mathbf{Q_{z}}\).
|
|
const std::vector< Eigen::MatrixXd > & | get_Qzz () const |
| Return Hessian of the reduced Hamiltonian \(\mathbf{Q_{zz}}\).
|
|
double | get_rho () const |
| Return the rho parameter used in the merit function.
|
|
double | get_th_feas () const |
| Return the threshold for switching to feasibility.
|
|
double | get_upsilon () const |
| Return the estimated penalty parameter that balances relative contribution of the cost function and equality constraints.
|
|
const std::vector< Eigen::MatrixXd > & | get_YZ () const |
| Return the rank of control-equality constraints \(\mathbf{H_u}\f
*/
const std::vector<std::size_t>& get_Hu_rank() const;
/**
@brief Return the span and kernel of control-equality constraints
\)\mathbf{H_u}\f.
|
|
bool | get_zero_upsilon () const |
| Return the zero-upsilon label.
|
|
virtual void | resizeData () |
|
void | set_equality_solver (const EqualitySolverType type) |
| Modify the type of solver used for handling the equality constraints.
|
|
void | set_rho (const double rho) |
| Modify the rho parameter used in the merit function.
|
|
void | set_th_feas (const double th_feas) |
| Modify the threshold for switching to feasibility.
|
|
void | set_zero_upsilon (const bool zero_upsilon) |
| Modify the zero-upsilon label.
|
|
virtual bool | solve (const std::vector< Eigen::VectorXd > &init_xs=DEFAULT_VECTOR, const std::vector< Eigen::VectorXd > &init_us=DEFAULT_VECTOR, const std::size_t maxiter=100, const bool is_feasible=false, const double init_reg=NAN) |
|
virtual double | stoppingCriteria () |
|
virtual double | tryStep (const double step_length=1) |
|
EIGEN_MAKE_ALIGNED_OPERATOR_NEW | SolverFDDP (std::shared_ptr< ShootingProblem > problem) |
| Initialize the FDDP solver.
|
|
virtual const Eigen::Vector2d & | expectedImprovement () |
| Return the expected improvement \(dV_{exp}\) from a given current search direction \((\delta\mathbf{x}^k,\delta\mathbf{u}^k)\).
|
|
virtual void | forwardPass (const double stepLength) |
|
double | get_th_acceptnegstep () const |
| Return the threshold used for accepting step along ascent direction.
|
|
void | set_th_acceptnegstep (const double th_acceptnegstep) |
| Modify the threshold used for accepting step along ascent direction.
|
|
void | updateExpectedImprovement () |
| Update internal values for computing the expected improvement.
|
|
|
enum EqualitySolverType | eq_solver_ |
| Strategy used for handling the equality constraints.
|
|
std::vector< Eigen::FullPivLU< Eigen::MatrixXd > > | Hu_lu_ |
|
std::vector< Eigen::ColPivHouseholderQR< Eigen::MatrixXd > > | Hu_qr_ |
|
std::vector< std::size_t > | Hu_rank_ |
| Rank of the control Jacobian of the equality constraints.
|
|
std::vector< Eigen::MatrixXd > | Hy_ |
|
std::vector< Eigen::PartialPivLU< Eigen::MatrixXd > > | Hy_lu_ |
|
std::vector< Eigen::MatrixXd > | KQuu_tmp_ |
|
std::vector< Eigen::VectorXd > | ks_ |
| Feedforward term related to the equality constraints.
|
|
std::vector< Eigen::MatrixXd > | Ks_ |
| Feedback gain related to the equality constraints.
|
|
std::vector< Eigen::VectorXd > | kz_ |
| Feedforward term in the nullspace of \(\mathbf{H_u}\).
|
|
std::vector< Eigen::MatrixXd > | Kz_ |
| Feedback gain in the nullspace of \(\mathbf{H_u}\).
|
|
std::vector< Eigen::MatrixXd > | QuuinvHuT_ |
|
std::vector< Eigen::MatrixXd > | Quz_ |
| Hessian of the reduced Hamiltonian \(\mathbf{Q_{uz}}\).
|
|
std::vector< Eigen::MatrixXd > | Qxz_ |
| Hessian of the reduced Hamiltonian \(\mathbf{Q_{xz}}\).
|
|
std::vector< Eigen::VectorXd > | Qz_ |
| Jacobian of the reduced Hamiltonian \(\mathbf{Q_{z}}\).
|
|
std::vector< Eigen::MatrixXd > | Qzz_ |
| Hessian of the reduced Hamiltonian \(\mathbf{Q_{zz}}\).
|
|
std::vector< Eigen::LLT< Eigen::MatrixXd > > | Qzz_llt_ |
| Cholesky LLT solver.
|
|
double | rho_ |
|
double | th_feas_ |
| Threshold for switching to feasibility.
|
|
double | upsilon_ |
|
std::vector< Eigen::MatrixXd > | YZ_ |
|
bool | zero_upsilon_ |
|
double | dg_ |
| Internal data for computing the expected improvement.
|
|
double | dq_ |
| Internal data for computing the expected improvement.
|
|
double | dv_ |
| Internal data for computing the expected improvement.
|
|
double | th_acceptnegstep_ |
|
Definition at line 18 of file intro.hpp.