Exotica
Public Member Functions | Public Attributes | List of all members
exotica::UnconstrainedEndPoseProblem Class Reference

#include <unconstrained_end_pose_problem.h>

Inheritance diagram for exotica::UnconstrainedEndPoseProblem:
Inheritance graph
Collaboration diagram for exotica::UnconstrainedEndPoseProblem:
Collaboration graph

Public Member Functions

 UnconstrainedEndPoseProblem ()
 
virtual ~UnconstrainedEndPoseProblem ()
 
void Instantiate (const UnconstrainedEndPoseProblemInitializer &init) override
 
void Update (Eigen::VectorXdRefConst x)
 
bool IsValid () override
 Evaluates whether the problem is valid. More...
 
void SetGoal (const std::string &task_name, Eigen::VectorXdRefConst goal)
 
void SetRho (const std::string &task_name, const double &rho)
 
Eigen::VectorXd GetGoal (const std::string &task_name) const
 
double GetRho (const std::string &task_name) const
 
Eigen::VectorXd GetNominalPose () const
 
void SetNominalPose (Eigen::VectorXdRefConst qNominal_in)
 
void PreUpdate () override
 
int GetTaskId (const std::string &task_name) const
 
double GetScalarCost () const
 
Eigen::RowVectorXd GetScalarJacobian () const
 
double GetScalarTaskCost (const std::string &task_name) const
 GetScalarTaskCost get weighted sum-of-squares of cost vector. More...
 
- Public Member Functions inherited from exotica::PlanningProblem
 PlanningProblem ()
 
virtual ~PlanningProblem ()
 
void InstantiateBase (const Initializer &init) override
 
TaskMapMapGetTaskMaps ()
 
TaskMapVecGetTasks ()
 
ScenePtr GetScene () const
 
std::string Print (const std::string &prepend) const override
 
void SetStartState (Eigen::VectorXdRefConst x)
 
Eigen::VectorXd GetStartState () const
 
virtual Eigen::VectorXd ApplyStartState (bool update_traj=true)
 
void SetStartTime (double t)
 
double GetStartTime () const
 
unsigned int GetNumberOfProblemUpdates () const
 
void ResetNumberOfProblemUpdates ()
 
std::pair< std::vector< double >, std::vector< double > > GetCostEvolution () const
 
int GetNumberOfIterations () const
 
double GetCostEvolution (int index) const
 
void ResetCostEvolution (size_t size)
 
void SetCostEvolution (int index, double value)
 
KinematicRequestFlags GetFlags () const
 
int get_num_positions () const
 ! Dimension of planning problem. TODO: Update from positions/velocities/controls and make private. More...
 
int get_num_velocities () const
 
int get_num_controls () const
 
- Public Member Functions inherited from exotica::Object
 Object ()
 
virtual ~Object ()
 
virtual std::string type () const
 Type Information wrapper: must be virtual so that it is polymorphic... More...
 
std::string GetObjectName ()
 
void InstantiateObject (const Initializer &init)
 
- Public Member Functions inherited from exotica::InstantiableBase
 InstantiableBase ()=default
 
virtual ~InstantiableBase ()=default
 
virtual std::vector< InitializerGetAllTemplates () const =0
 
- Public Member Functions inherited from exotica::Instantiable< UnconstrainedEndPoseProblemInitializer >
void InstantiateInternal (const Initializer &init) override
 
Initializer GetInitializerTemplate () override
 
std::vector< InitializerGetAllTemplates () const override
 
const UnconstrainedEndPoseProblemInitializer & GetParameters () const
 

Public Attributes

EndPoseTask cost
 
Eigen::MatrixXd W
 
TaskSpaceVector Phi
 
Eigen::MatrixXd jacobian
 
Hessian hessian
 
Eigen::VectorXd q_nominal
 
int length_Phi
 
int length_jacobian
 
int num_tasks
 
- Public Attributes inherited from exotica::PlanningProblem
double t_start
 
TerminationCriterion termination_criterion
 
int N = 0
 
- Public Attributes inherited from exotica::Object
std::string ns_
 
std::string object_name_
 
bool debug_
 

Additional Inherited Members

- Protected Member Functions inherited from exotica::PlanningProblem
void UpdateTaskKinematics (std::shared_ptr< KinematicResponse > response)
 
void UpdateMultipleTaskKinematics (std::vector< std::shared_ptr< KinematicResponse >> responses)
 
- Protected Attributes inherited from exotica::PlanningProblem
ScenePtr scene_
 
TaskMapMap task_maps_
 
TaskMapVec tasks_
 
KinematicRequestFlags flags_ = KinematicRequestFlags::KIN_FK
 
Eigen::VectorXd start_state_
 
unsigned int number_of_problem_updates_ = 0
 
std::vector< std::pair< std::chrono::high_resolution_clock::time_point, double > > cost_evolution_
 
- Protected Attributes inherited from exotica::Instantiable< UnconstrainedEndPoseProblemInitializer >
UnconstrainedEndPoseProblemInitializer parameters_
 

Constructor & Destructor Documentation

◆ UnconstrainedEndPoseProblem()

exotica::UnconstrainedEndPoseProblem::UnconstrainedEndPoseProblem ( )

◆ ~UnconstrainedEndPoseProblem()

virtual exotica::UnconstrainedEndPoseProblem::~UnconstrainedEndPoseProblem ( )
virtual

Member Function Documentation

◆ GetGoal()

Eigen::VectorXd exotica::UnconstrainedEndPoseProblem::GetGoal ( const std::string &  task_name) const

◆ GetNominalPose()

Eigen::VectorXd exotica::UnconstrainedEndPoseProblem::GetNominalPose ( ) const

◆ GetRho()

double exotica::UnconstrainedEndPoseProblem::GetRho ( const std::string &  task_name) const

◆ GetScalarCost()

double exotica::UnconstrainedEndPoseProblem::GetScalarCost ( ) const

◆ GetScalarJacobian()

Eigen::RowVectorXd exotica::UnconstrainedEndPoseProblem::GetScalarJacobian ( ) const

◆ GetScalarTaskCost()

double exotica::UnconstrainedEndPoseProblem::GetScalarTaskCost ( const std::string &  task_name) const

GetScalarTaskCost get weighted sum-of-squares of cost vector.

Parameters
task_namevalid task
Returns
scalar cost

◆ GetTaskId()

int exotica::UnconstrainedEndPoseProblem::GetTaskId ( const std::string &  task_name) const

◆ Instantiate()

void exotica::UnconstrainedEndPoseProblem::Instantiate ( const UnconstrainedEndPoseProblemInitializer &  init)
overridevirtual

◆ IsValid()

bool exotica::UnconstrainedEndPoseProblem::IsValid ( )
inlineoverridevirtual

Evaluates whether the problem is valid.

Reimplemented from exotica::PlanningProblem.

◆ PreUpdate()

void exotica::UnconstrainedEndPoseProblem::PreUpdate ( )
overridevirtual

Reimplemented from exotica::PlanningProblem.

◆ SetGoal()

void exotica::UnconstrainedEndPoseProblem::SetGoal ( const std::string &  task_name,
Eigen::VectorXdRefConst  goal 
)

◆ SetNominalPose()

void exotica::UnconstrainedEndPoseProblem::SetNominalPose ( Eigen::VectorXdRefConst  qNominal_in)

◆ SetRho()

void exotica::UnconstrainedEndPoseProblem::SetRho ( const std::string &  task_name,
const double &  rho 
)

◆ Update()

void exotica::UnconstrainedEndPoseProblem::Update ( Eigen::VectorXdRefConst  x)

Member Data Documentation

◆ cost

EndPoseTask exotica::UnconstrainedEndPoseProblem::cost

◆ hessian

Hessian exotica::UnconstrainedEndPoseProblem::hessian

◆ jacobian

Eigen::MatrixXd exotica::UnconstrainedEndPoseProblem::jacobian

◆ length_jacobian

int exotica::UnconstrainedEndPoseProblem::length_jacobian

◆ length_Phi

int exotica::UnconstrainedEndPoseProblem::length_Phi

◆ num_tasks

int exotica::UnconstrainedEndPoseProblem::num_tasks

◆ Phi

TaskSpaceVector exotica::UnconstrainedEndPoseProblem::Phi

◆ q_nominal

Eigen::VectorXd exotica::UnconstrainedEndPoseProblem::q_nominal

◆ W

Eigen::MatrixXd exotica::UnconstrainedEndPoseProblem::W

The documentation for this class was generated from the following file: