This class generates noisy trajectories to an under-constrained cartesian goal pose. More...
#include <goal_guided_multivariate_gaussian.h>
Public Member Functions | |
virtual bool | configure (const XmlRpc::XmlRpcValue &config) override |
Sets internal members of the plugin from the configuration data. | |
virtual void | done (bool success, int total_iterations, double final_cost, const Eigen::MatrixXd ¶meters) |
Called by the Stomp at the end of the optimization process. | |
virtual bool | generateNoise (const Eigen::MatrixXd ¶meters, std::size_t start_timestep, std::size_t num_timesteps, int iteration_number, int rollout_number, Eigen::MatrixXd ¶meters_noise, Eigen::MatrixXd &noise) override |
Generates a noisy trajectory from the parameters. | |
virtual std::string | getGroupName () const |
virtual std::string | getName () const |
GoalGuidedMultivariateGaussian () | |
virtual bool | initialize (moveit::core::RobotModelConstPtr robot_model_ptr, const std::string &group_name, const XmlRpc::XmlRpcValue &config) override |
Initializes and configures. | |
virtual bool | setMotionPlanRequest (const planning_scene::PlanningSceneConstPtr &planning_scene, const moveit_msgs::MotionPlanRequest &req, const stomp_core::StompConfiguration &config, moveit_msgs::MoveItErrorCodes &error_code) override |
Stores the planning details. | |
virtual | ~GoalGuidedMultivariateGaussian () |
Protected Member Functions | |
virtual bool | generateRandomGoal (const Eigen::VectorXd &seed, Eigen::VectorXd &goal_joint_pose) |
virtual bool | setGoalConstraints (const planning_scene::PlanningSceneConstPtr &planning_scene, const moveit_msgs::MotionPlanRequest &req, const stomp_core::StompConfiguration &config, moveit_msgs::MoveItErrorCodes &error_code) |
virtual bool | setNoiseGeneration (const planning_scene::PlanningSceneConstPtr &planning_scene, const moveit_msgs::MotionPlanRequest &req, const stomp_core::StompConfiguration &config, moveit_msgs::MoveItErrorCodes &error_code) |
Protected Attributes | |
boost::shared_ptr < RandomGenerator > | goal_rand_generator_ |
Random generator for the tool goal pose. | |
std::vector< double > | goal_stddev_ |
The standard deviations applied to each cartesian dimension at the goal, [6 x 1]. | |
std::string | group_ |
utils::kinematics::KinematicConfig | kc_ |
The kinematic configuration to find valid goal poses. | |
std::string | name_ |
Eigen::VectorXd | raw_noise_ |
The noise vector. | |
moveit::core::RobotModelConstPtr | robot_model_ |
moveit::core::RobotStatePtr | state_ |
std::vector< double > | stddev_ |
The standard deviations applied to each joint, [num_dimensions x 1. | |
std::string | tool_link_ |
std::vector < utils::MultivariateGaussianPtr > | traj_noise_generators_ |
Randomized numerical distribution generators, [6 x 1]. |
This class generates noisy trajectories to an under-constrained cartesian goal pose.
Definition at line 51 of file goal_guided_multivariate_gaussian.h.
Definition at line 53 of file goal_guided_multivariate_gaussian.cpp.
stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::~GoalGuidedMultivariateGaussian | ( | ) | [virtual] |
Definition at line 60 of file goal_guided_multivariate_gaussian.cpp.
bool stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::configure | ( | const XmlRpc::XmlRpcValue & | config | ) | [override, virtual] |
Sets internal members of the plugin from the configuration data.
config | The configuration data. Usually loaded from the ros parameter server |
Implements stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 95 of file goal_guided_multivariate_gaussian.cpp.
virtual void stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::done | ( | bool | success, |
int | total_iterations, | ||
double | final_cost, | ||
const Eigen::MatrixXd & | parameters | ||
) | [inline, virtual] |
Called by the Stomp at the end of the optimization process.
success | Whether the optimization succeeded |
total_iterations | Number of iterations used |
final_cost | The cost value after optimizing. |
parameters | The parameters generated at the end of current iteration[num_dimensions x num_timesteps] |
Reimplemented from stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 114 of file goal_guided_multivariate_gaussian.h.
bool stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::generateNoise | ( | const Eigen::MatrixXd & | parameters, |
std::size_t | start_timestep, | ||
std::size_t | num_timesteps, | ||
int | iteration_number, | ||
int | rollout_number, | ||
Eigen::MatrixXd & | parameters_noise, | ||
Eigen::MatrixXd & | noise | ||
) | [override, virtual] |
Generates a noisy trajectory from the parameters.
parameters | The current value of the optimized parameters [num_dimensions x num_parameters] |
start_timestep | Start index into the 'parameters' array, usually 0. |
num_timesteps | The number of elements to use from 'parameters' starting from 'start_timestep' |
iteration_number | The current iteration count in the optimization loop |
rollout_number | The index of the noisy trajectory. |
parameters_noise | The parameters + noise |
noise | The noise applied to the parameters |
Implements stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 236 of file goal_guided_multivariate_gaussian.cpp.
bool stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::generateRandomGoal | ( | const Eigen::VectorXd & | seed, |
Eigen::VectorXd & | goal_joint_pose | ||
) | [protected, virtual] |
Definition at line 281 of file goal_guided_multivariate_gaussian.cpp.
virtual std::string stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::getGroupName | ( | ) | const [inline, virtual] |
Reimplemented from stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 123 of file goal_guided_multivariate_gaussian.h.
virtual std::string stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::getName | ( | ) | const [inline, virtual] |
Reimplemented from stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 117 of file goal_guided_multivariate_gaussian.h.
bool stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::initialize | ( | moveit::core::RobotModelConstPtr | robot_model_ptr, |
const std::string & | group_name, | ||
const XmlRpc::XmlRpcValue & | config | ||
) | [override, virtual] |
Initializes and configures.
robot_model_ptr | A pointer to the robot model. |
group_name | The designated planning group. |
config | The configuration data. Usually loaded from the ros parameter server |
Implements stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 67 of file goal_guided_multivariate_gaussian.cpp.
bool stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::setGoalConstraints | ( | const planning_scene::PlanningSceneConstPtr & | planning_scene, |
const moveit_msgs::MotionPlanRequest & | req, | ||
const stomp_core::StompConfiguration & | config, | ||
moveit_msgs::MoveItErrorCodes & | error_code | ||
) | [protected, virtual] |
Definition at line 215 of file goal_guided_multivariate_gaussian.cpp.
bool stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::setMotionPlanRequest | ( | const planning_scene::PlanningSceneConstPtr & | planning_scene, |
const moveit_msgs::MotionPlanRequest & | req, | ||
const stomp_core::StompConfiguration & | config, | ||
moveit_msgs::MoveItErrorCodes & | error_code | ||
) | [override, virtual] |
Stores the planning details.
planning_scene | A smart pointer to the planning scene |
req | The motion planning request |
config | The Stomp configuration. |
error_code | Moveit error code. |
Implements stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 157 of file goal_guided_multivariate_gaussian.cpp.
bool stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::setNoiseGeneration | ( | const planning_scene::PlanningSceneConstPtr & | planning_scene, |
const moveit_msgs::MotionPlanRequest & | req, | ||
const stomp_core::StompConfiguration & | config, | ||
moveit_msgs::MoveItErrorCodes & | error_code | ||
) | [protected, virtual] |
Definition at line 168 of file goal_guided_multivariate_gaussian.cpp.
boost::shared_ptr<RandomGenerator> stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::goal_rand_generator_ [protected] |
Random generator for the tool goal pose.
Definition at line 161 of file goal_guided_multivariate_gaussian.h.
std::vector<double> stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::goal_stddev_ [protected] |
The standard deviations applied to each cartesian dimension at the goal, [6 x 1].
Definition at line 158 of file goal_guided_multivariate_gaussian.h.
std::string stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::group_ [protected] |
Definition at line 146 of file goal_guided_multivariate_gaussian.h.
utils::kinematics::KinematicConfig stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::kc_ [protected] |
The kinematic configuration to find valid goal poses.
Definition at line 152 of file goal_guided_multivariate_gaussian.h.
std::string stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::name_ [protected] |
Definition at line 145 of file goal_guided_multivariate_gaussian.h.
Eigen::VectorXd stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::raw_noise_ [protected] |
The noise vector.
Definition at line 156 of file goal_guided_multivariate_gaussian.h.
moveit::core::RobotModelConstPtr stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::robot_model_ [protected] |
Definition at line 164 of file goal_guided_multivariate_gaussian.h.
moveit::core::RobotStatePtr stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::state_ [protected] |
Definition at line 165 of file goal_guided_multivariate_gaussian.h.
std::vector<double> stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::stddev_ [protected] |
The standard deviations applied to each joint, [num_dimensions x 1.
Definition at line 157 of file goal_guided_multivariate_gaussian.h.
std::string stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::tool_link_ [protected] |
Definition at line 149 of file goal_guided_multivariate_gaussian.h.
std::vector<utils::MultivariateGaussianPtr> stomp_moveit::noise_generators::GoalGuidedMultivariateGaussian::traj_noise_generators_ [protected] |
Randomized numerical distribution generators, [6 x 1].
Definition at line 155 of file goal_guided_multivariate_gaussian.h.