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, planning_models::KinematicModel *robot_model, const std::string &planning_group, const ChompParameters *parameters, const ros::Publisher &vis_marker_array_publisher, const ros::Publisher &vis_marker_publisher, collision_proximity::CollisionProximitySpace *collision_space)
void destroy ()
template<typename Derived >
void getJacobian (int trajectoryPoint, Vector3d &collision_point_pos, string &jointName, MatrixBase< Derived > &jacobian) const
void optimize ()
virtual ~ChompOptimizer ()

Private Member Functions

void addIncrementsToTrajectory ()
void animateEndeffector ()
void animatePath ()
void calculateCollisionIncrements ()
void calculatePseudoInverse ()
void calculateSmoothnessIncrements ()
void calculateTotalIncrements ()
collision_proximity::CollisionProximitySpace::TrajectorySafety checkCurrentIterValidity ()
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 ()
void getRandomState (const planning_models::KinematicState *currentState, const std::string &groupName, Eigen::VectorXd &state_vec)
double getSmoothnessCost ()
double getTrajectoryCost ()
void handleJointLimits ()
void initialize ()
bool isParent (const std::string &childLink, const std::string &parentLink) const
void performForwardKinematics ()
void perturbTrajectory ()
void registerParents (const planning_models::KinematicModel::JointModel *model)
void setRobotStateFromPoint (ChompTrajectory &group_trajectory, int i)
void updateFullTrajectory ()
void updateMomentum ()
void updatePositionFromMomentum ()
void visualizeState (int index)

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_
collision_proximity::CollisionProximitySpacecollision_space_
Eigen::MatrixXd final_increments_
int free_vars_end_
int free_vars_start_
ChompTrajectoryfull_trajectory_
ChompTrajectory group_trajectory_
Eigen::MatrixXd group_trajectory_backup_
bool is_collision_free_
int iteration_
Eigen::MatrixXd jacobian_
Eigen::MatrixXd jacobian_jacobian_tranpose_
Eigen::MatrixXd jacobian_pseudo_inverse_
std::vector< std::vector
< tf::Vector3 > > 
joint_axes_
std::vector< ChompCostjoint_costs_
std::vector< std::string > joint_names_
std::map< std::string,
std::map< std::string, bool > > 
joint_parent_map_
std::vector< std::vector
< tf::Vector3 > > 
joint_positions_
Eigen::VectorXd joint_state_velocities_
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_
const std::string & planning_group_
std::vector< std::vector< int > > point_is_in_collision_
Eigen::VectorXd random_joint_momentum_
Eigen::MatrixXd random_momentum_
Eigen::VectorXd random_state_
planning_models::KinematicModelrobot_model_
planning_models::KinematicStaterobot_state_
Eigen::VectorXd smoothness_derivative_
Eigen::MatrixXd smoothness_increments_
std::vector< int > state_is_in_collision_
double stochasticity_factor_
ros::Publisher vis_marker_array_pub_
ros::Publisher vis_marker_pub_
double worst_collision_cost_state_

Detailed Description

Definition at line 54 of file chomp_optimizer.h.


Constructor & Destructor Documentation

chomp::ChompOptimizer::ChompOptimizer ( ChompTrajectory trajectory,
planning_models::KinematicModel robot_model,
const std::string &  planning_group,
const ChompParameters parameters,
const ros::Publisher vis_marker_array_publisher,
const ros::Publisher vis_marker_publisher,
collision_proximity::CollisionProximitySpace collision_space 
)

Definition at line 59 of file chomp_optimizer.cpp.

Definition at line 254 of file chomp_optimizer.cpp.


Member Function Documentation

Definition at line 641 of file chomp_optimizer.cpp.

Definition at line 1068 of file chomp_optimizer.cpp.

Definition at line 1058 of file chomp_optimizer.cpp.

Definition at line 547 of file chomp_optimizer.cpp.

Definition at line 623 of file chomp_optimizer.cpp.

Definition at line 537 of file chomp_optimizer.cpp.

Definition at line 630 of file chomp_optimizer.cpp.

Definition at line 506 of file chomp_optimizer.cpp.

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

Definition at line 719 of file chomp_optimizer.cpp.

Definition at line 670 of file chomp_optimizer.cpp.

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

Definition at line 66 of file chomp_optimizer.h.

Definition at line 693 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]
template<typename Derived >
void chomp::ChompOptimizer::getJacobian ( int  trajectoryPoint,
Vector3d &  collision_point_pos,
string &  jointName,
MatrixBase< Derived > &  jacobian 
) const

Definition at line 759 of file chomp_optimizer.cpp.

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

Definition at line 72 of file chomp_optimizer.h.

Definition at line 1029 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::getRandomState ( const planning_models::KinematicState currentState,
const std::string &  groupName,
Eigen::VectorXd &  state_vec 
) [private]

Definition at line 986 of file chomp_optimizer.cpp.

Definition at line 683 of file chomp_optimizer.cpp.

Definition at line 678 of file chomp_optimizer.cpp.

Definition at line 784 of file chomp_optimizer.cpp.

Definition at line 69 of file chomp_optimizer.cpp.

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

Definition at line 167 of file chomp_optimizer.h.

Definition at line 291 of file chomp_optimizer.cpp.

Definition at line 866 of file chomp_optimizer.cpp.

Definition at line 961 of file chomp_optimizer.cpp.

Definition at line 259 of file chomp_optimizer.cpp.

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

Definition at line 944 of file chomp_optimizer.cpp.

Definition at line 665 of file chomp_optimizer.cpp.

Definition at line 1041 of file chomp_optimizer.cpp.

Definition at line 1052 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::visualizeState ( int  index) [private]

Definition at line 1100 of file chomp_optimizer.cpp.


Member Data Documentation

Definition at line 132 of file chomp_optimizer.h.

Definition at line 133 of file chomp_optimizer.h.

Definition at line 112 of file chomp_optimizer.h.

Definition at line 150 of file chomp_optimizer.h.

Definition at line 125 of file chomp_optimizer.h.

Definition at line 122 of file chomp_optimizer.h.

Definition at line 123 of file chomp_optimizer.h.

Definition at line 126 of file chomp_optimizer.h.

Definition at line 128 of file chomp_optimizer.h.

Definition at line 124 of file chomp_optimizer.h.

Definition at line 127 of file chomp_optimizer.h.

Definition at line 118 of file chomp_optimizer.h.

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

Definition at line 151 of file chomp_optimizer.h.

Definition at line 110 of file chomp_optimizer.h.

Definition at line 109 of file chomp_optimizer.h.

Definition at line 113 of file chomp_optimizer.h.

Definition at line 119 of file chomp_optimizer.h.

Definition at line 131 of file chomp_optimizer.h.

Definition at line 146 of file chomp_optimizer.h.

Definition at line 111 of file chomp_optimizer.h.

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

Definition at line 155 of file chomp_optimizer.h.

Definition at line 157 of file chomp_optimizer.h.

Definition at line 156 of file chomp_optimizer.h.

Definition at line 129 of file chomp_optimizer.h.

Definition at line 120 of file chomp_optimizer.h.

Definition at line 164 of file chomp_optimizer.h.

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

Definition at line 165 of file chomp_optimizer.h.

Definition at line 130 of file chomp_optimizer.h.

Definition at line 159 of file chomp_optimizer.h.

Definition at line 134 of file chomp_optimizer.h.

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

Definition at line 138 of file chomp_optimizer.h.

Definition at line 141 of file chomp_optimizer.h.

Definition at line 135 of file chomp_optimizer.h.

Definition at line 108 of file chomp_optimizer.h.

Definition at line 105 of file chomp_optimizer.h.

Definition at line 107 of file chomp_optimizer.h.

Definition at line 106 of file chomp_optimizer.h.

Definition at line 117 of file chomp_optimizer.h.

const std::string& chomp::ChompOptimizer::planning_group_ [private]

Definition at line 116 of file chomp_optimizer.h.

Definition at line 145 of file chomp_optimizer.h.

Definition at line 140 of file chomp_optimizer.h.

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

Definition at line 139 of file chomp_optimizer.h.

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

Definition at line 158 of file chomp_optimizer.h.

Definition at line 114 of file chomp_optimizer.h.

Definition at line 115 of file chomp_optimizer.h.

Definition at line 154 of file chomp_optimizer.h.

Definition at line 149 of file chomp_optimizer.h.

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

Definition at line 144 of file chomp_optimizer.h.

Definition at line 142 of file chomp_optimizer.h.

Definition at line 161 of file chomp_optimizer.h.

Definition at line 162 of file chomp_optimizer.h.

Definition at line 147 of file chomp_optimizer.h.


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


chomp_motion_planner
Author(s): Mrinal Kalakrishnan / mail@mrinal.net
autogenerated on Thu Dec 12 2013 11:08:58