chomp::ChompOptimizer Class Reference

#include <chomp_optimizer.h>

List of all members.

Public Member Functions

 ChompOptimizer (ChompTrajectory *trajectory, const ChompRobotModel *robot_model, const ChompRobotModel::ChompPlanningGroup *planning_group, const ChompParameters *parameters, const ros::Publisher &vis_marker_array_publisher, const ros::Publisher &vis_marker_publisher, ChompCollisionSpace *collision_space)
void optimize ()
virtual ~ChompOptimizer ()

Private Member Functions

void addIncrementsToTrajectory ()
void animateEndeffector ()
void animatePath ()
void calculateCollisionIncrements ()
void calculatePseudoInverse ()
void calculateSmoothnessIncrements ()
void calculateTotalIncrements ()
void debugCost ()
void eigenMapTest ()
double getCollisionCost ()
void getRandomMomentum ()
double getSmoothnessCost ()
double getTrajectoryCost ()
void handleJointLimits ()
void initialize ()
void performForwardKinematics ()
void perturbTrajectory ()
void updateFullTrajectory ()
void updateMomentum ()
void updatePositionFromMomentum ()
void visualizeState (int index)

Private Attributes

int animate_endeffector_segment_number_
Eigen::MatrixXd best_group_trajectory_
double best_group_trajectory_cost_
int collision_free_iteration_
Eigen::MatrixXd collision_increments_
std::vector< std::vector
< KDL::Vector > > 
collision_point_acc_
std::vector< std::vector
< Eigen::Map< Eigen::Vector3d > > > 
collision_point_acc_eigen_
std::vector< std::vector
< KDL::Vector > > 
collision_point_pos_
std::vector< std::vector
< Eigen::Map< 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
< KDL::Vector > > 
collision_point_vel_
std::vector< std::vector
< Eigen::Map< Eigen::Vector3d > > > 
collision_point_vel_eigen_
std::vector< std::vector
< double > > 
collision_point_vel_mag_
ChompCollisionSpacecollision_space_
Eigen::MatrixXd final_increments_
int free_vars_end_
int free_vars_start_
ChompTrajectoryfull_trajectory_
std::vector< int > group_joint_to_kdl_joint_index_
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
< KDL::Vector > > 
joint_axis_
std::vector< std::vector
< Eigen::Map< Eigen::Vector3d > > > 
joint_axis_eigen_
std::vector< ChompCostjoint_costs_
std::vector< std::vector
< KDL::Vector > > 
joint_pos_
std::vector< std::vector
< Eigen::Map< Eigen::Vector3d > > > 
joint_pos_eigen_
Eigen::VectorXd joint_state_velocities_
KDL::JntArray kdl_joint_array_
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
ChompRobotModel::ChompPlanningGroup
planning_group_
std::vector< std::vector< int > > point_is_in_collision_
Eigen::VectorXd random_joint_momentum_
Eigen::MatrixXd random_momentum_
Eigen::VectorXd random_state_
const ChompRobotModelrobot_model_
std::vector< std::vector
< KDL::Frame > > 
segment_frames_
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 48 of file chomp_optimizer.h.


Constructor & Destructor Documentation

chomp::ChompOptimizer::ChompOptimizer ( ChompTrajectory trajectory,
const ChompRobotModel robot_model,
const ChompRobotModel::ChompPlanningGroup planning_group,
const ChompParameters parameters,
const ros::Publisher &  vis_marker_array_publisher,
const ros::Publisher &  vis_marker_publisher,
ChompCollisionSpace collision_space 
)

Definition at line 49 of file chomp_optimizer.cpp.

chomp::ChompOptimizer::~ChompOptimizer (  )  [virtual]

Definition at line 170 of file chomp_optimizer.cpp.


Member Function Documentation

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

Definition at line 371 of file chomp_optimizer.cpp.

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

Definition at line 690 of file chomp_optimizer.cpp.

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

Definition at line 680 of file chomp_optimizer.cpp.

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

Definition at line 296 of file chomp_optimizer.cpp.

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

Definition at line 349 of file chomp_optimizer.cpp.

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

Definition at line 286 of file chomp_optimizer.cpp.

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

Definition at line 355 of file chomp_optimizer.cpp.

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

Definition at line 396 of file chomp_optimizer.cpp.

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

Definition at line 591 of file chomp_optimizer.cpp.

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

Definition at line 419 of file chomp_optimizer.cpp.

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

Definition at line 651 of file chomp_optimizer.cpp.

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

Definition at line 409 of file chomp_optimizer.cpp.

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

Definition at line 404 of file chomp_optimizer.cpp.

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

Definition at line 445 of file chomp_optimizer.cpp.

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

Definition at line 67 of file chomp_optimizer.cpp.

void chomp::ChompOptimizer::optimize (  ) 

Definition at line 174 of file chomp_optimizer.cpp.

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

Definition at line 501 of file chomp_optimizer.cpp.

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

Definition at line 627 of file chomp_optimizer.cpp.

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

Definition at line 391 of file chomp_optimizer.cpp.

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

Definition at line 663 of file chomp_optimizer.cpp.

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

Definition at line 674 of file chomp_optimizer.cpp.

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

Definition at line 721 of file chomp_optimizer.cpp.


Member Data Documentation

Definition at line 123 of file chomp_optimizer.h.

Definition at line 92 of file chomp_optimizer.h.

Definition at line 93 of file chomp_optimizer.h.

Definition at line 66 of file chomp_optimizer.h.

Definition at line 109 of file chomp_optimizer.h.

std::vector<std::vector<KDL::Vector> > chomp::ChompOptimizer::collision_point_acc_ [private]

Definition at line 81 of file chomp_optimizer.h.

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

Definition at line 87 of file chomp_optimizer.h.

std::vector<std::vector<KDL::Vector> > chomp::ChompOptimizer::collision_point_pos_ [private]

Definition at line 79 of file chomp_optimizer.h.

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

Definition at line 85 of file chomp_optimizer.h.

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

Definition at line 88 of file chomp_optimizer.h.

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

Definition at line 90 of file chomp_optimizer.h.

std::vector<std::vector<KDL::Vector> > chomp::ChompOptimizer::collision_point_vel_ [private]

Definition at line 80 of file chomp_optimizer.h.

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

Definition at line 86 of file chomp_optimizer.h.

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

Definition at line 89 of file chomp_optimizer.h.

Definition at line 71 of file chomp_optimizer.h.

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

Definition at line 110 of file chomp_optimizer.h.

Definition at line 64 of file chomp_optimizer.h.

Definition at line 63 of file chomp_optimizer.h.

Definition at line 67 of file chomp_optimizer.h.

Definition at line 74 of file chomp_optimizer.h.

Definition at line 72 of file chomp_optimizer.h.

Definition at line 91 of file chomp_optimizer.h.

Definition at line 105 of file chomp_optimizer.h.

Definition at line 65 of file chomp_optimizer.h.

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

Definition at line 115 of file chomp_optimizer.h.

Definition at line 117 of file chomp_optimizer.h.

Definition at line 116 of file chomp_optimizer.h.

std::vector<std::vector<KDL::Vector> > chomp::ChompOptimizer::joint_axis_ [private]

Definition at line 76 of file chomp_optimizer.h.

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

Definition at line 83 of file chomp_optimizer.h.

Definition at line 73 of file chomp_optimizer.h.

std::vector<std::vector<KDL::Vector> > chomp::ChompOptimizer::joint_pos_ [private]

Definition at line 77 of file chomp_optimizer.h.

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

Definition at line 84 of file chomp_optimizer.h.

Definition at line 119 of file chomp_optimizer.h.

KDL::JntArray chomp::ChompOptimizer::kdl_joint_array_ [private]

Definition at line 114 of file chomp_optimizer.h.

Definition at line 94 of file chomp_optimizer.h.

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

Definition at line 97 of file chomp_optimizer.h.

Definition at line 100 of file chomp_optimizer.h.

Definition at line 62 of file chomp_optimizer.h.

Definition at line 59 of file chomp_optimizer.h.

Definition at line 61 of file chomp_optimizer.h.

Definition at line 60 of file chomp_optimizer.h.

Definition at line 70 of file chomp_optimizer.h.

Definition at line 69 of file chomp_optimizer.h.

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

Definition at line 104 of file chomp_optimizer.h.

Definition at line 99 of file chomp_optimizer.h.

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

Definition at line 98 of file chomp_optimizer.h.

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

Definition at line 118 of file chomp_optimizer.h.

Definition at line 68 of file chomp_optimizer.h.

std::vector<std::vector<KDL::Frame> > chomp::ChompOptimizer::segment_frames_ [private]

Definition at line 78 of file chomp_optimizer.h.

Definition at line 113 of file chomp_optimizer.h.

Definition at line 108 of file chomp_optimizer.h.

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

Definition at line 103 of file chomp_optimizer.h.

Definition at line 101 of file chomp_optimizer.h.

Definition at line 121 of file chomp_optimizer.h.

ros::Publisher chomp::ChompOptimizer::vis_marker_pub_ [private]

Definition at line 122 of file chomp_optimizer.h.

Definition at line 106 of file chomp_optimizer.h.


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


chomp_motion_planner
Author(s): Mrinal Kalakrishnan / mail@mrinal.net
autogenerated on Fri Jan 11 09:52:45 2013