Public Member Functions | Private Member Functions | Private Attributes
chomp::ChompOptimizer Class Reference

#include <chomp_optimizer.h>

List of all members.

Public Member Functions

 ChompOptimizer (ChompTrajectory *trajectory, const planning_scene::PlanningSceneConstPtr &planning_scene, const std::string &planning_group, const ChompParameters *parameters, const moveit::core::RobotState &start_state)
void destroy ()
bool isInitialized () const
void optimize ()
virtual ~ChompOptimizer ()

Private Member Functions

void addIncrementsToTrajectory ()
void calculateCollisionIncrements ()
void calculatePseudoInverse ()
void calculateSmoothnessIncrements ()
void calculateTotalIncrements ()
void computeJointProperties (int trajectoryPoint)
void debugCost ()
double getCollisionCost ()
template<typename Derived >
void getJacobian (int trajectoryPoint, Eigen::Vector3d &collision_point_pos, std::string &jointName, Eigen::MatrixBase< Derived > &jacobian) const
double getPotential (double field_distance, double radius, double clearence)
void getRandomMomentum ()
double getSmoothnessCost ()
double getTrajectoryCost ()
void handleJointLimits ()
void initialize ()
bool isCurrentTrajectoryMeshToMeshCollisionFree () const
bool isParent (const std::string &childLink, const std::string &parentLink) const
void performForwardKinematics ()
void perturbTrajectory ()
void registerParents (const moveit::core::JointModel *model)
void setRobotStateFromPoint (ChompTrajectory &group_trajectory, int i)
void updateFullTrajectory ()
void updateMomentum ()
void updatePositionFromMomentum ()

Private Attributes

Eigen::MatrixXd best_group_trajectory_
double best_group_trajectory_cost_
unsigned int collision_free_iteration_
Eigen::MatrixXd collision_increments_
std::vector< std::vector
< Eigen::Vector3d > > 
collision_point_acc_eigen_
std::vector< std::vector
< std::string > > 
collision_point_joint_names_
std::vector< std::vector
< Eigen::Vector3d > > 
collision_point_pos_eigen_
std::vector< std::vector
< double > > 
collision_point_potential_
std::vector< std::vector
< Eigen::Vector3d > > 
collision_point_potential_gradient_
std::vector< std::vector
< Eigen::Vector3d > > 
collision_point_vel_eigen_
std::vector< std::vector
< double > > 
collision_point_vel_mag_
Eigen::MatrixXd final_increments_
int free_vars_end_
int free_vars_start_
ChompTrajectoryfull_trajectory_
ChompTrajectory group_trajectory_
Eigen::MatrixXd group_trajectory_backup_
boost::shared_ptr
< collision_detection::GroupStateRepresentation
gsr_
const
collision_detection::CollisionRobotHybrid
hy_robot_
const
collision_detection::CollisionWorldHybrid
hy_world_
bool initialized_
bool is_collision_free_
int iteration_
Eigen::MatrixXd jacobian_
Eigen::MatrixXd jacobian_jacobian_tranpose_
Eigen::MatrixXd jacobian_pseudo_inverse_
std::vector< std::vector
< Eigen::Vector3d > > 
joint_axes_
std::vector< ChompCostjoint_costs_
const
moveit::core::JointModelGroup
joint_model_group_
std::vector< std::string > joint_names_
std::map< std::string,
std::map< std::string, bool > > 
joint_parent_map_
std::vector< std::vector
< Eigen::Vector3d > > 
joint_positions_
Eigen::VectorXd joint_state_velocities_
const
moveit::core::RobotModelConstPtr & 
kmodel_
int last_improvement_iteration_
Eigen::MatrixXd momentum_
std::vector< MultivariateGaussianmultivariate_gaussian_
unsigned int num_collision_free_iterations_
int num_collision_points_
int num_joints_
int num_vars_all_
int num_vars_free_
const ChompParametersparameters_
std::string planning_group_
planning_scene::PlanningSceneConstPtr planning_scene_
std::vector< std::vector< int > > point_is_in_collision_
Eigen::VectorXd random_joint_momentum_
Eigen::MatrixXd random_momentum_
Eigen::VectorXd random_state_
Eigen::VectorXd smoothness_derivative_
Eigen::MatrixXd smoothness_increments_
moveit::core::RobotState start_state_
moveit::core::RobotState state_
std::vector< int > state_is_in_collision_
double stochasticity_factor_
double worst_collision_cost_state_

Detailed Description

Definition at line 55 of file chomp_optimizer.h.


Constructor & Destructor Documentation

chomp::ChompOptimizer::ChompOptimizer ( ChompTrajectory trajectory,
const planning_scene::PlanningSceneConstPtr &  planning_scene,
const std::string &  planning_group,
const ChompParameters parameters,
const moveit::core::RobotState start_state 
)

Definition at line 54 of file chomp_optimizer.cpp.

Definition at line 282 of file chomp_optimizer.cpp.


Member Function Documentation

Definition at line 716 of file chomp_optimizer.cpp.

Definition at line 621 of file chomp_optimizer.cpp.

Definition at line 698 of file chomp_optimizer.cpp.

Definition at line 612 of file chomp_optimizer.cpp.

Definition at line 705 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::computeJointProperties ( int  trajectoryPoint) [private]

Definition at line 790 of file chomp_optimizer.cpp.

Definition at line 741 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::destroy ( ) [inline]

Definition at line 66 of file chomp_optimizer.h.

Definition at line 764 of file chomp_optimizer.cpp.

template<typename Derived >
void chomp::ChompOptimizer::getJacobian ( int  trajectoryPoint,
Eigen::Vector3d &  collision_point_pos,
std::string &  jointName,
Eigen::MatrixBase< Derived > &  jacobian 
) const [private]

Definition at line 831 of file chomp_optimizer.cpp.

double chomp::ChompOptimizer::getPotential ( double  field_distance,
double  radius,
double  clearence 
) [inline, private]

Definition at line 77 of file chomp_optimizer.h.

Definition at line 1127 of file chomp_optimizer.cpp.

Definition at line 754 of file chomp_optimizer.cpp.

Definition at line 749 of file chomp_optimizer.cpp.

Definition at line 855 of file chomp_optimizer.cpp.

Definition at line 98 of file chomp_optimizer.cpp.

Definition at line 562 of file chomp_optimizer.cpp.

bool chomp::ChompOptimizer::isInitialized ( ) const [inline]

Definition at line 71 of file chomp_optimizer.h.

bool chomp::ChompOptimizer::isParent ( const std::string &  childLink,
const std::string &  parentLink 
) const [inline, private]

Definition at line 180 of file chomp_optimizer.h.

Definition at line 326 of file chomp_optimizer.cpp.

Definition at line 936 of file chomp_optimizer.cpp.

Definition at line 1047 of file chomp_optimizer.cpp.

Definition at line 287 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::setRobotStateFromPoint ( ChompTrajectory group_trajectory,
int  i 
) [private]

Definition at line 1033 of file chomp_optimizer.cpp.

Definition at line 736 of file chomp_optimizer.cpp.

Definition at line 1139 of file chomp_optimizer.cpp.

Definition at line 1150 of file chomp_optimizer.cpp.


Member Data Documentation

Definition at line 147 of file chomp_optimizer.h.

Definition at line 148 of file chomp_optimizer.h.

Definition at line 119 of file chomp_optimizer.h.

Definition at line 166 of file chomp_optimizer.h.

std::vector<std::vector<Eigen::Vector3d> > chomp::ChompOptimizer::collision_point_acc_eigen_ [private]

Definition at line 140 of file chomp_optimizer.h.

std::vector<std::vector<std::string> > chomp::ChompOptimizer::collision_point_joint_names_ [private]

Definition at line 137 of file chomp_optimizer.h.

std::vector<std::vector<Eigen::Vector3d> > chomp::ChompOptimizer::collision_point_pos_eigen_ [private]

Definition at line 138 of file chomp_optimizer.h.

std::vector<std::vector<double> > chomp::ChompOptimizer::collision_point_potential_ [private]

Definition at line 141 of file chomp_optimizer.h.

std::vector<std::vector<Eigen::Vector3d> > chomp::ChompOptimizer::collision_point_potential_gradient_ [private]

Definition at line 143 of file chomp_optimizer.h.

std::vector<std::vector<Eigen::Vector3d> > chomp::ChompOptimizer::collision_point_vel_eigen_ [private]

Definition at line 139 of file chomp_optimizer.h.

std::vector<std::vector<double> > chomp::ChompOptimizer::collision_point_vel_mag_ [private]

Definition at line 142 of file chomp_optimizer.h.

Eigen::MatrixXd chomp::ChompOptimizer::final_increments_ [private]

Definition at line 167 of file chomp_optimizer.h.

Definition at line 117 of file chomp_optimizer.h.

Definition at line 116 of file chomp_optimizer.h.

Definition at line 121 of file chomp_optimizer.h.

Definition at line 125 of file chomp_optimizer.h.

Definition at line 146 of file chomp_optimizer.h.

Definition at line 134 of file chomp_optimizer.h.

Definition at line 131 of file chomp_optimizer.h.

Definition at line 130 of file chomp_optimizer.h.

Definition at line 135 of file chomp_optimizer.h.

Definition at line 162 of file chomp_optimizer.h.

Definition at line 118 of file chomp_optimizer.h.

Eigen::MatrixXd chomp::ChompOptimizer::jacobian_ [private]

Definition at line 171 of file chomp_optimizer.h.

Definition at line 173 of file chomp_optimizer.h.

Definition at line 172 of file chomp_optimizer.h.

std::vector<std::vector<Eigen::Vector3d> > chomp::ChompOptimizer::joint_axes_ [private]

Definition at line 144 of file chomp_optimizer.h.

Definition at line 133 of file chomp_optimizer.h.

Definition at line 129 of file chomp_optimizer.h.

std::vector<std::string> chomp::ChompOptimizer::joint_names_ [private]

Definition at line 177 of file chomp_optimizer.h.

std::map<std::string, std::map<std::string, bool> > chomp::ChompOptimizer::joint_parent_map_ [private]

Definition at line 178 of file chomp_optimizer.h.

std::vector<std::vector<Eigen::Vector3d> > chomp::ChompOptimizer::joint_positions_ [private]

Definition at line 145 of file chomp_optimizer.h.

Definition at line 175 of file chomp_optimizer.h.

const moveit::core::RobotModelConstPtr& chomp::ChompOptimizer::kmodel_ [private]

Definition at line 122 of file chomp_optimizer.h.

Definition at line 149 of file chomp_optimizer.h.

Eigen::MatrixXd chomp::ChompOptimizer::momentum_ [private]

Definition at line 153 of file chomp_optimizer.h.

Definition at line 156 of file chomp_optimizer.h.

Definition at line 150 of file chomp_optimizer.h.

Definition at line 115 of file chomp_optimizer.h.

Definition at line 112 of file chomp_optimizer.h.

Definition at line 114 of file chomp_optimizer.h.

Definition at line 113 of file chomp_optimizer.h.

Definition at line 124 of file chomp_optimizer.h.

Definition at line 123 of file chomp_optimizer.h.

planning_scene::PlanningSceneConstPtr chomp::ChompOptimizer::planning_scene_ [private]

Definition at line 126 of file chomp_optimizer.h.

std::vector<std::vector<int> > chomp::ChompOptimizer::point_is_in_collision_ [private]

Definition at line 161 of file chomp_optimizer.h.

Definition at line 155 of file chomp_optimizer.h.

Eigen::MatrixXd chomp::ChompOptimizer::random_momentum_ [private]

Definition at line 154 of file chomp_optimizer.h.

Eigen::VectorXd chomp::ChompOptimizer::random_state_ [private]

Definition at line 174 of file chomp_optimizer.h.

Definition at line 170 of file chomp_optimizer.h.

Definition at line 165 of file chomp_optimizer.h.

Definition at line 128 of file chomp_optimizer.h.

Definition at line 127 of file chomp_optimizer.h.

Array containing a boolean about collision info for each point in the trajectory

Definition at line 159 of file chomp_optimizer.h.

Definition at line 157 of file chomp_optimizer.h.

Definition at line 163 of file chomp_optimizer.h.


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


chomp_motion_planner
Author(s): Gil Jones , Mrinal Kalakrishnan
autogenerated on Wed Jun 19 2019 19:24:07