Exotica
|
#include <time_indexed_sampling_problem.h>
Public Member Functions | |
TimeIndexedSamplingProblem () | |
virtual | ~TimeIndexedSamplingProblem () |
void | Instantiate (const TimeIndexedSamplingProblemInitializer &init) override |
void | Update (Eigen::VectorXdRefConst x, const double &t) |
bool | IsValid (Eigen::VectorXdRefConst x, const double &t) |
void | PreUpdate () override |
int | GetSpaceDim () |
void | SetGoalEQ (const std::string &task_name, Eigen::VectorXdRefConst goal) |
Eigen::VectorXd | GetGoalEQ (const std::string &task_name) |
void | SetRhoEQ (const std::string &task_name, const double &rho) |
double | GetRhoEQ (const std::string &task_name) |
void | SetGoalNEQ (const std::string &task_name, Eigen::VectorXdRefConst goal) |
Eigen::VectorXd | GetGoalNEQ (const std::string &task_name) |
void | SetRhoNEQ (const std::string &task_name, const double &rho) |
double | GetRhoNEQ (const std::string &task_name) |
std::vector< double > | GetBounds () |
Eigen::VectorXd | GetGoalState () const |
void | SetGoalState (Eigen::VectorXdRefConst qT) |
double | GetGoalTime () const |
void | SetGoalTime (const double &t) |
virtual bool | IsValid () |
Evaluates whether the problem is valid. More... | |
Public Member Functions inherited from exotica::PlanningProblem | |
PlanningProblem () | |
virtual | ~PlanningProblem () |
void | InstantiateBase (const Initializer &init) override |
TaskMapMap & | GetTaskMaps () |
TaskMapVec & | GetTasks () |
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 |
virtual bool | IsValid () |
Evaluates whether the problem is valid. More... | |
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< Initializer > | GetAllTemplates () const =0 |
Public Member Functions inherited from exotica::Instantiable< TimeIndexedSamplingProblemInitializer > | |
void | InstantiateInternal (const Initializer &init) override |
Initializer | GetInitializerTemplate () override |
std::vector< Initializer > | GetAllTemplates () const override |
const TimeIndexedSamplingProblemInitializer & | GetParameters () const |
Public Attributes | |
Eigen::VectorXd | vel_limits |
TaskSpaceVector | Phi |
SamplingTask | inequality |
SamplingTask | equality |
TimeIndexedSamplingProblemInitializer | parameters |
TaskSpaceVector | constraint_phi |
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_ |
Private Attributes | |
double | t_goal_ |
Goal time: The time at which goal_ should be reached and the upper bound for the time-dimension. More... | |
Eigen::VectorXd | goal_ |
Goal state to reach (spatial) at temporal goal (t_goal_) More... | |
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< TimeIndexedSamplingProblemInitializer > | |
TimeIndexedSamplingProblemInitializer | parameters_ |
exotica::TimeIndexedSamplingProblem::TimeIndexedSamplingProblem | ( | ) |
|
virtual |
std::vector<double> exotica::TimeIndexedSamplingProblem::GetBounds | ( | ) |
Eigen::VectorXd exotica::TimeIndexedSamplingProblem::GetGoalEQ | ( | const std::string & | task_name | ) |
Eigen::VectorXd exotica::TimeIndexedSamplingProblem::GetGoalNEQ | ( | const std::string & | task_name | ) |
Eigen::VectorXd exotica::TimeIndexedSamplingProblem::GetGoalState | ( | ) | const |
double exotica::TimeIndexedSamplingProblem::GetGoalTime | ( | ) | const |
double exotica::TimeIndexedSamplingProblem::GetRhoEQ | ( | const std::string & | task_name | ) |
double exotica::TimeIndexedSamplingProblem::GetRhoNEQ | ( | const std::string & | task_name | ) |
int exotica::TimeIndexedSamplingProblem::GetSpaceDim | ( | ) |
|
overridevirtual |
Reimplemented from exotica::Instantiable< TimeIndexedSamplingProblemInitializer >.
|
inline |
Evaluates whether the problem is valid.
bool exotica::TimeIndexedSamplingProblem::IsValid | ( | Eigen::VectorXdRefConst | x, |
const double & | t | ||
) |
|
overridevirtual |
Reimplemented from exotica::PlanningProblem.
void exotica::TimeIndexedSamplingProblem::SetGoalEQ | ( | const std::string & | task_name, |
Eigen::VectorXdRefConst | goal | ||
) |
void exotica::TimeIndexedSamplingProblem::SetGoalNEQ | ( | const std::string & | task_name, |
Eigen::VectorXdRefConst | goal | ||
) |
void exotica::TimeIndexedSamplingProblem::SetGoalState | ( | Eigen::VectorXdRefConst | qT | ) |
void exotica::TimeIndexedSamplingProblem::SetGoalTime | ( | const double & | t | ) |
void exotica::TimeIndexedSamplingProblem::SetRhoEQ | ( | const std::string & | task_name, |
const double & | rho | ||
) |
void exotica::TimeIndexedSamplingProblem::SetRhoNEQ | ( | const std::string & | task_name, |
const double & | rho | ||
) |
void exotica::TimeIndexedSamplingProblem::Update | ( | Eigen::VectorXdRefConst | x, |
const double & | t | ||
) |
TaskSpaceVector exotica::TimeIndexedSamplingProblem::constraint_phi |
SamplingTask exotica::TimeIndexedSamplingProblem::equality |
|
private |
Goal state to reach (spatial) at temporal goal (t_goal_)
SamplingTask exotica::TimeIndexedSamplingProblem::inequality |
int exotica::TimeIndexedSamplingProblem::length_jacobian |
int exotica::TimeIndexedSamplingProblem::length_Phi |
int exotica::TimeIndexedSamplingProblem::num_tasks |
TimeIndexedSamplingProblemInitializer exotica::TimeIndexedSamplingProblem::parameters |
TaskSpaceVector exotica::TimeIndexedSamplingProblem::Phi |
|
private |
Goal time: The time at which goal_ should be reached and the upper bound for the time-dimension.
Eigen::VectorXd exotica::TimeIndexedSamplingProblem::vel_limits |