Hybrid A Star Implementation

I have some questions about the paramters in the plannerHybridAStar program.
1) What is a "MotionPrimitive"? Is it referring to a step of the path of either straight or arc?
2) Based on that, what is the NumMotionPrimitives? By increasing that, the path seems to get smoother, but why?
3) Does the "DirectionSwitchingCost" refer to the cost of going to a arc path or just transitioning from an arc path to a straight path?
I am trying to make an algorithm similar to Hybrid A Star, which minimizes the number of steps it takes to get to the goal by taking either straight paths or constant curvature paths, so any help on what these parameters are referring to would be greatly appreciated. Thank you!

回答(1 个)

Prashant Kumar
Prashant Kumar 2021-6-7

0 个投票

Answering the questions:
  1. Motion primitives are the smallest entities of the path, which are generated in form of circular arcs and a straight line. The generation of these primitives can be controlled by property "NumMotionPrimitives" property and its length by "MotionPrimitiveLength" property.
  2. "NumMotionPrimitives" property increases the number of motion primitives being generated, and cost function considers the curvature of primitives while calculating the cost of the node. So its more likely that arc with less curvature will get selected and making the overall path smoother.
  3. "DirectionSwitchingCost" gets added to the cost function only when there is transition between forward and reverse motion.

类别

帮助中心File Exchange 中查找有关 Language Fundamentals 的更多信息

产品

版本

R2020b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by