#include <ilqg_solver.h>

Public Member Functions | |
| Eigen::VectorXd | GetFeedbackControl (Eigen::VectorXdRefConst x, int t) const override |
| void | Solve (Eigen::MatrixXd &solution) override |
| Solves the problem. More... | |
| void | SpecifyProblem (PlanningProblemPtr pointer) override |
| Binds the solver to a specific problem which must be pre-initalised. More... | |
Public Member Functions inherited from exotica::MotionSolver | |
| int | GetNumberOfMaxIterations () |
| double | GetPlanningTime () |
| PlanningProblemPtr | GetProblem () const |
| void | InstantiateBase (const Initializer &init) override |
| MotionSolver ()=default | |
| std::string | Print (const std::string &prepend) const override |
| void | SetNumberOfMaxIterations (int max_iter) |
| virtual | ~MotionSolver ()=default |
Public Member Functions inherited from exotica::Object | |
| std::string | GetObjectName () |
| void | InstantiateObject (const Initializer &init) |
| Object () | |
| virtual std::string | type () const |
| virtual | ~Object () |
Public Member Functions inherited from exotica::InstantiableBase | |
| virtual std::vector< Initializer > | GetAllTemplates () const=0 |
| InstantiableBase ()=default | |
| virtual | ~InstantiableBase ()=default |
Public Member Functions inherited from exotica::Instantiable< ILQGSolverInitializer > | |
| std::vector< Initializer > | GetAllTemplates () const override |
| Initializer | GetInitializerTemplate () override |
| const C & | GetParameters () const |
| virtual void | Instantiate (const C &init) |
| void | InstantiateInternal (const Initializer &init) override |
Private Member Functions | |
| void | BackwardPass () |
| !< Reference trajectory for feedback control. More... | |
| double | ForwardPass (const double alpha, Eigen::MatrixXdRefConst ref_x, Eigen::MatrixXdRefConst ref_u) |
| Forward simulates the dynamics using the gains computed in the last BackwardPass;. More... | |
Private Attributes | |
| Eigen::MatrixXd | best_ref_u_ |
| Eigen::MatrixXd | best_ref_x_ |
| !< Control gains. More... | |
| DynamicsSolverPtr | dynamics_solver_ |
| !< Shared pointer to the planning problem. More... | |
| std::vector< Eigen::MatrixXd > | L_gains_ |
| std::vector< Eigen::MatrixXd > | l_gains_ |
| !< Shared pointer to the dynamics solver. More... | |
| DynamicTimeIndexedShootingProblemPtr | prob_ |
Additional Inherited Members | |
Public Attributes inherited from exotica::Object | |
| bool | debug_ |
| std::string | ns_ |
| std::string | object_name_ |
Protected Attributes inherited from exotica::MotionSolver | |
| int | max_iterations_ |
| double | planning_time_ |
| PlanningProblemPtr | problem_ |
Protected Attributes inherited from exotica::Instantiable< ILQGSolverInitializer > | |
| C | parameters_ |
Definition at line 46 of file ilqg_solver.h.
|
private |
!< Reference trajectory for feedback control.
Computes the control gains for a the trajectory in the associated DynamicTimeIndexedProblem.
Definition at line 49 of file ilqg_solver.cpp.
|
private |
Forward simulates the dynamics using the gains computed in the last BackwardPass;.
| alpha | The learning rate. |
| ref_trajectory | The reference state trajectory. |
Definition at line 145 of file ilqg_solver.cpp.
|
overridevirtual |
Implements exotica::FeedbackMotionSolver.
Definition at line 315 of file ilqg_solver.cpp.
|
overridevirtual |
Solves the problem.
| solution | Returned solution trajectory as a vector of joint configurations. |
Implements exotica::MotionSolver.
Definition at line 174 of file ilqg_solver.cpp.
|
overridevirtual |
Binds the solver to a specific problem which must be pre-initalised.
| pointer | Shared pointer to the motion planning problem |
Reimplemented from exotica::MotionSolver.
Definition at line 36 of file ilqg_solver.cpp.
|
private |
Definition at line 65 of file ilqg_solver.h.
|
private |
!< Control gains.
Definition at line 65 of file ilqg_solver.h.
|
private |
!< Shared pointer to the planning problem.
Definition at line 62 of file ilqg_solver.h.
|
private |
Definition at line 63 of file ilqg_solver.h.
|
private |
!< Shared pointer to the dynamics solver.
Definition at line 63 of file ilqg_solver.h.
|
private |
Definition at line 61 of file ilqg_solver.h.