Uses a normal distribution to apply noise onto the trajectory. More...
#include <normal_distribution_sampling.h>
Public Member Functions | |
virtual bool | configure (const XmlRpc::XmlRpcValue &config) override |
see base class for documentation | |
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 |
virtual bool | initialize (moveit::core::RobotModelConstPtr robot_model_ptr, const std::string &group_name, const XmlRpc::XmlRpcValue &config) override |
see base class for documentation | |
NormalDistributionSampling () | |
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 |
see base class for documentation | |
virtual | ~NormalDistributionSampling () |
Protected Attributes | |
std::string | group_ |
std::string | name_ |
std::vector < utils::MultivariateGaussianPtr > | rand_generators_ |
Eigen::VectorXd | raw_noise_ |
std::vector< double > | stddev_ |
Uses a normal distribution to apply noise onto the trajectory.
Definition at line 45 of file normal_distribution_sampling.h.
Definition at line 46 of file normal_distribution_sampling.cpp.
stomp_moveit::noise_generators::NormalDistributionSampling::~NormalDistributionSampling | ( | ) | [virtual] |
Definition at line 53 of file normal_distribution_sampling.cpp.
bool stomp_moveit::noise_generators::NormalDistributionSampling::configure | ( | const XmlRpc::XmlRpcValue & | config | ) | [override, virtual] |
see base class for documentation
Implements stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 78 of file normal_distribution_sampling.cpp.
virtual void stomp_moveit::noise_generators::NormalDistributionSampling::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 91 of file normal_distribution_sampling.h.
bool stomp_moveit::noise_generators::NormalDistributionSampling::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 to add noise to [num_dimensions x num_parameters] |
start_timestep | start index into the 'parameters' array, usually 0. |
num_timesteps | number of elements to use from 'parameters' starting from 'start_timestep' |
iteration_number | The current iteration count in the optimization loop |
rollout_number | 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 152 of file normal_distribution_sampling.cpp.
virtual std::string stomp_moveit::noise_generators::NormalDistributionSampling::getGroupName | ( | ) | const [inline, virtual] |
Reimplemented from stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 100 of file normal_distribution_sampling.h.
virtual std::string stomp_moveit::noise_generators::NormalDistributionSampling::getName | ( | ) | const [inline, virtual] |
Reimplemented from stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 94 of file normal_distribution_sampling.h.
bool stomp_moveit::noise_generators::NormalDistributionSampling::initialize | ( | moveit::core::RobotModelConstPtr | robot_model_ptr, |
const std::string & | group_name, | ||
const XmlRpc::XmlRpcValue & | config | ||
) | [override, virtual] |
see base class for documentation
Implements stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 59 of file normal_distribution_sampling.cpp.
bool stomp_moveit::noise_generators::NormalDistributionSampling::setMotionPlanRequest | ( | const planning_scene::PlanningSceneConstPtr & | planning_scene, |
const moveit_msgs::MotionPlanRequest & | req, | ||
const stomp_core::StompConfiguration & | config, | ||
moveit_msgs::MoveItErrorCodes & | error_code | ||
) | [override, virtual] |
see base class for documentation
Implements stomp_moveit::noise_generators::StompNoiseGenerator.
Definition at line 108 of file normal_distribution_sampling.cpp.
std::string stomp_moveit::noise_generators::NormalDistributionSampling::group_ [protected] |
Definition at line 109 of file normal_distribution_sampling.h.
std::string stomp_moveit::noise_generators::NormalDistributionSampling::name_ [protected] |
Definition at line 108 of file normal_distribution_sampling.h.
std::vector<utils::MultivariateGaussianPtr> stomp_moveit::noise_generators::NormalDistributionSampling::rand_generators_ [protected] |
Definition at line 112 of file normal_distribution_sampling.h.
Eigen::VectorXd stomp_moveit::noise_generators::NormalDistributionSampling::raw_noise_ [protected] |
Definition at line 113 of file normal_distribution_sampling.h.
std::vector<double> stomp_moveit::noise_generators::NormalDistributionSampling::stddev_ [protected] |
Definition at line 114 of file normal_distribution_sampling.h.