Public Member Functions | Protected Attributes
teb_local_planner::EdgeAcceleration Class Reference

Edge defining the cost function for limiting the translational and rotational acceleration. More...

#include <edge_acceleration.h>

List of all members.

Public Member Functions

void computeError ()
 Actual cost function.
 EdgeAcceleration ()
 Construct edge.
ErrorVector & getError ()
 Compute and return error / cost value.
bool read (std::istream &is)
 Read values from input stream.
void setTebConfig (const TebConfig &cfg)
 Assign the TebConfig class for parameters.
bool write (std::ostream &os) const
 Write values to an output stream.
virtual ~EdgeAcceleration ()
 Destruct edge.

Protected Attributes

const TebConfigcfg_
 Store TebConfig class for parameters.

Detailed Description

Edge defining the cost function for limiting the translational and rotational acceleration.

The edge depends on five vertices $ \mathbf{s}_i, \mathbf{s}_{ip1}, \mathbf{s}_{ip2}, \Delta T_i, \Delta T_{ip1} $ and minimizes: $ \min \textrm{penaltyInterval}( [a, omegadot } ]^T ) \cdot weight $.
a is calculated using the difference quotient (twice) and the position parts of all three poses
omegadot is calculated using the difference quotient of the yaw angles followed by a normalization to [-pi, pi].
weight can be set using setInformation()
penaltyInterval denotes the penalty function, see penaltyBoundToInterval()
The dimension of the error / cost vector is 2: the first component represents the translational acceleration and the second one the rotational acceleration.

See also:
TebOptimalPlanner::AddEdgesAcceleration
EdgeAccelerationStart
EdgeAccelerationGoal
Remarks:
Do not forget to call setTebConfig()
Refer to EdgeAccelerationStart() and EdgeAccelerationGoal() for defining boundary values!

Definition at line 76 of file edge_acceleration.h.


Constructor & Destructor Documentation

Construct edge.

Definition at line 83 of file edge_acceleration.h.

Destruct edge.

We need to erase vertices manually, since we want to keep them even if TebOptimalPlanner::clearGraph() is called. This is necessary since the vertices are managed by the Timed_Elastic_Band class.

Definition at line 95 of file edge_acceleration.h.


Member Function Documentation

Actual cost function.

Definition at line 107 of file edge_acceleration.h.

Compute and return error / cost value.

This method is called by TebOptimalPlanner::computeCurrentCost to obtain the current cost.

Returns:
2D Cost / error vector [translational acc cost, angular acc cost]^T

Definition at line 264 of file edge_acceleration.h.

bool teb_local_planner::EdgeAcceleration::read ( std::istream &  is) [inline]

Read values from input stream.

Definition at line 273 of file edge_acceleration.h.

Assign the TebConfig class for parameters.

Parameters:
cfgTebConfig class

Definition at line 294 of file edge_acceleration.h.

bool teb_local_planner::EdgeAcceleration::write ( std::ostream &  os) const [inline]

Write values to an output stream.

Definition at line 283 of file edge_acceleration.h.


Member Data Documentation

Store TebConfig class for parameters.

Definition at line 301 of file edge_acceleration.h.


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


teb_local_planner
Author(s): Christoph Rösmann
autogenerated on Mon Oct 24 2016 05:31:15