Drake
Drake C++ Documentation
finite_horizon_linear_quadratic_regulator.h File Reference
#include <memory>
#include <optional>
#include <variant>
#include "drake/common/copyable_unique_ptr.h"
#include "drake/common/trajectories/piecewise_polynomial.h"
#include "drake/systems/analysis/simulator_config.h"
#include "drake/systems/framework/system.h"
Include dependency graph for finite_horizon_linear_quadratic_regulator.h:

Classes

struct  FiniteHorizonLinearQuadraticRegulatorOptions
 A structure to facilitate passing the myriad of optional arguments to the FiniteHorizonLinearQuadraticRegulator algorithms. More...
 
struct  FiniteHorizonLinearQuadraticRegulatorResult
 A structure that contains the basic FiniteHorizonLinearQuadraticRegulator results. More...
 

Namespaces

 drake
 
 drake::systems
 
 drake::systems::controllers
 

Functions

FiniteHorizonLinearQuadraticRegulatorResult FiniteHorizonLinearQuadraticRegulator (const System< double > &system, const Context< double > &context, double t0, double tf, const Eigen::Ref< const Eigen::MatrixXd > &Q, const Eigen::Ref< const Eigen::MatrixXd > &R, const FiniteHorizonLinearQuadraticRegulatorOptions &options=FiniteHorizonLinearQuadraticRegulatorOptions())
 Solves the differential Riccati equation to compute the optimal controller and optimal cost-to-go for the finite-horizon linear quadratic regulator: More...
 
std::unique_ptr< System< double > > MakeFiniteHorizonLinearQuadraticRegulator (const System< double > &system, const Context< double > &context, double t0, double tf, const Eigen::Ref< const Eigen::MatrixXd > &Q, const Eigen::Ref< const Eigen::MatrixXd > &R, const FiniteHorizonLinearQuadraticRegulatorOptions &options=FiniteHorizonLinearQuadraticRegulatorOptions())
 Variant of FiniteHorizonLinearQuadraticRegulator that returns a System implementing the regulator (controller) as a System, with a single "plant_state" input for the estimated plant state, and a single "control" output for the regulator control output. More...