$search

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 ()
bool 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_
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
< btVector3 > > 
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
< btVector3 > > 
joint_positions_
Eigen::VectorXd joint_state_velocities_
int last_improvement_iteration_
Eigen::MatrixXd momentum_
std::vector< MultivariateGaussianmultivariate_gaussian_
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 
)
chomp::ChompOptimizer::~ChompOptimizer (  )  [virtual]

Definition at line 253 of file chomp_optimizer.cpp.


Member Function Documentation

void chomp::ChompOptimizer::addIncrementsToTrajectory (  )  [private]

Definition at line 623 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::animateEndeffector (  )  [private]

Definition at line 1044 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::animatePath (  )  [private]

Definition at line 1034 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::calculateCollisionIncrements (  )  [private]

Definition at line 529 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::calculatePseudoInverse (  )  [private]

Definition at line 605 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::calculateSmoothnessIncrements (  )  [private]

Definition at line 519 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::calculateTotalIncrements (  )  [private]

Definition at line 612 of file chomp_optimizer.cpp.

bool chomp::ChompOptimizer::checkCurrentIterValidity (  )  [private]

Definition at line 487 of file chomp_optimizer.cpp.

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

Definition at line 701 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::debugCost (  )  [private]

Definition at line 652 of file chomp_optimizer.cpp.

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

Definition at line 66 of file chomp_optimizer.h.

double chomp::ChompOptimizer::getCollisionCost (  )  [private]

Definition at line 675 of file chomp_optimizer.cpp.

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

Definition at line 741 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 [inline, private]
double chomp::ChompOptimizer::getPotential ( double  field_distance,
double  radius,
double  clearence 
) [inline, private]

Definition at line 72 of file chomp_optimizer.h.

void chomp::ChompOptimizer::getRandomMomentum (  )  [private]

Definition at line 1005 of file chomp_optimizer.cpp.

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

Definition at line 665 of file chomp_optimizer.cpp.

double chomp::ChompOptimizer::getTrajectoryCost (  )  [private]

Definition at line 660 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::handleJointLimits (  )  [private]

Definition at line 766 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::initialize (  )  [private]

Definition at line 68 of file chomp_optimizer.cpp.

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

Definition at line 166 of file chomp_optimizer.h.

void chomp::ChompOptimizer::optimize (  ) 

Definition at line 282 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::performForwardKinematics (  )  [private]

Definition at line 848 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::perturbTrajectory (  )  [private]

Definition at line 943 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::registerParents ( const planning_models::KinematicModel::JointModel model  )  [private]

Definition at line 258 of file chomp_optimizer.cpp.

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

Definition at line 926 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::updateFullTrajectory (  )  [private]

Definition at line 647 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::updateMomentum (  )  [private]

Definition at line 1017 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::updatePositionFromMomentum (  )  [private]

Definition at line 1028 of file chomp_optimizer.cpp.

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

Definition at line 1076 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 149 of file chomp_optimizer.h.

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

Definition at line 125 of file chomp_optimizer.h.

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

Definition at line 122 of file chomp_optimizer.h.

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

Definition at line 123 of file chomp_optimizer.h.

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

Definition at line 126 of file chomp_optimizer.h.

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

Definition at line 128 of file chomp_optimizer.h.

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

Definition at line 124 of file chomp_optimizer.h.

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

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 150 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 145 of file chomp_optimizer.h.

Definition at line 111 of file chomp_optimizer.h.

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

Definition at line 154 of file chomp_optimizer.h.

Definition at line 156 of file chomp_optimizer.h.

Definition at line 155 of file chomp_optimizer.h.

std::vector<std::vector<btVector3> > chomp::ChompOptimizer::joint_axes_ [private]

Definition at line 129 of file chomp_optimizer.h.

Definition at line 120 of file chomp_optimizer.h.

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

Definition at line 163 of file chomp_optimizer.h.

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

Definition at line 164 of file chomp_optimizer.h.

std::vector<std::vector<btVector3> > chomp::ChompOptimizer::joint_positions_ [private]

Definition at line 130 of file chomp_optimizer.h.

Definition at line 158 of file chomp_optimizer.h.

Definition at line 134 of file chomp_optimizer.h.

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

Definition at line 137 of file chomp_optimizer.h.

Definition at line 140 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.

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

Definition at line 144 of file chomp_optimizer.h.

Definition at line 139 of file chomp_optimizer.h.

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

Definition at line 138 of file chomp_optimizer.h.

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

Definition at line 157 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 153 of file chomp_optimizer.h.

Definition at line 148 of file chomp_optimizer.h.

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

Definition at line 143 of file chomp_optimizer.h.

Definition at line 141 of file chomp_optimizer.h.

Definition at line 160 of file chomp_optimizer.h.

Definition at line 161 of file chomp_optimizer.h.

Definition at line 146 of file chomp_optimizer.h.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Properties Friends


chomp_motion_planner
Author(s): Mrinal Kalakrishnan / mail@mrinal.net
autogenerated on Fri Mar 1 14:51:50 2013