marinaKollmitz / human_aware_navigation

The human_aware_navigation repository includes ROS packages to enable the planning of navigation paths that take human comfort into account
BSD 2-Clause "Simplified" License
122 stars 59 forks source link

questions about planning process in every period #4

Closed CodeToPoem closed 5 years ago

CodeToPoem commented 5 years ago

Hi, I list my understandings and want to check these with you.

  1. The beginning states expand max_timesteps times (the max_timesteps are also the max steps of prediction,default value should be 15) at most during the planning process in every period( default value should be about 0.5 second).

  2. If the current planning cannot get the goal state and publish "current_plan", the next planning will just plan from the state in the "current_plan" whose timestamp is near the time of publishing "the plans of the next planning ".

marinaKollmitz commented 5 years ago

Hi, the lattice planner tries to find a path to the goal in every period (default 0.5s), until it found a path. The expansion is not limited to the max_timesteps, the max_timesteps is just for predicting the dynamic costmap. If the lattice planner reaches the max_timesteps, it uses the static cost map after that. If the planner cannot find a path to the goal in that period, it publishes the best path it found so far. The robot can follow this path which is likely to bring it closer to the goal, so a path to the goal can be found eventually.

The planning always starts from the waypoint the robot is expected to be at when the path is published. For a planning_timeout of 0.5, it will choose the waypoint of the last planned path which is 0.5s in the future for the starting position.

Hope it helps.

CodeToPoem commented 5 years ago

Your explannations are very clear. Thanks a lot.

marinaKollmitz commented 5 years ago

Glad I could help :-).