ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Local planner ignores collision with humans in social navigation layers

asked 2017-07-05 07:44:45 -0500

dmkarage gravatar image

updated 2017-07-06 03:37:22 -0500

Hi guys,

I have implemented the social navigation proxemic layer as described in wiki/social_navigation_layers and also on top of that a layer on my own based on human intention.

I use a virtual detected human as described here human_aware_navigation/people_detection, and assign the social costmaps around him.

When considering the layers both in global and local costmap yaml files the robot path is successfully created around these maps. However, when I include the layers only in the local costmap, although the costmap layers are visible (in the correct positions), the local planner does not take the layers into account and the robot path traverses through it.

I already checked the solution described here #q209409 but without any result. Do you have any suggestions on what could be wrong?

Could it be that the human is virtual (namely known people_msgs) and the laser does not track him physically?

Thanks in advance for your help.

edit retag flag offensive close merge delete


May I suggest a title change? The problem seems to be that the planner is ignoring collision obstacles, which in this case happen to come from a specific plugin.

gvdhoorn gravatar image gvdhoorn  ( 2017-07-06 03:24:29 -0500 )edit

I changed the title. Please feel free to propose any new modification :)

dmkarage gravatar image dmkarage  ( 2017-07-06 03:37:38 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2018-05-22 21:23:00 -0500

Dharmateja Kadem gravatar image

Generally, whenever DWA local planner detects an obstacle it stops the robot and move_base sends control to the global planner to replan. In your case there is no People layer in Global Costmap, so obstacles are not generated in global costmap. This results in global planner to plan path through the obstacle and the cycle continues. So you should have all the obstacle layers in both local and global costmaps.

edit flag offensive delete link more


This is definitely not true. I stumbled upon this page looking for a solution for the same issue, but I can say for sure that not all layers have to be in both global and local cost-maps for them to work correctly. My argument is based on results obtained experimenting with my own setup. The explanation here seems to be based on a incorrect conjecture. There is a local plan and a global plan, and each cost map affect these plans respectively; so if a object is not present on the local cost map it doesn't change the local plan and same for the global plan. The goal of the local plan is to follow the global plan as closely as possible.

I felt the need to add this: The social layer seems to be a special case for the behavior @Dharmateja Kadem describes maybe @David Lu the author ...(more)

Rohan-D gravatar image Rohan-D  ( 2021-10-22 07:29:39 -0500 )edit

cross referencing github issue I just opened

Rohan-D gravatar image Rohan-D  ( 2021-10-22 08:59:43 -0500 )edit

Question Tools



Asked: 2017-07-05 07:44:45 -0500

Seen: 759 times

Last updated: May 22 '18