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

Global_planner package with A* planner question.

asked 2013-11-06 09:52:45 -0500

Raptor gravatar image

updated 2014-01-28 17:18:28 -0500

ngrennan gravatar image

According to this post the global_planner package is a refactoring of the NavFn package.

The global_planner package also has an A* planner implemented and seems to be much cleaner than the NavFn package.

  • What is the status of the global_planner package?
  • Is it going to eventually replace the navfn package as the default global_planner?
  • Is the global_planner package a drop in replacement for the navfn package?
    • If not, how should the global_planner package be setup?

I noticed that the global_planner package does not get pulled down with the navigation stack and needs to be pulled separately with "sudo apt-get install ros-hydro-global-planner". For using with move_base the package does not have the pluginlib xml file that goes with it and it does not export the library as a nav_core plugin in its package.xml. Is there a reason for this? Is this something that is going to be added?

Thank you.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2013-11-06 10:40:45 -0500

David Lu gravatar image

Status of Global_planner - I'm not sure if the latest version is in the debs yet, but the global_planner is stable and supported.

Replacement - I intended it as a replacement, but did not delete navfn for backwards compatibility. It should be a drop-in replacement.

The exclusion of the pluginlib xml is an oversight and shall be updated soon. I will also try to make a wiki page.

Important Note - Although you think it would, A* does NOT provide the same path as using Dijikstra's, which I discovered only recently. The potential field calculations that Navfn performs require a wide swath of values in the grid, and thus A* does not provide enough values to get a similarly smooth path. I'll try to include an illustration of this on the wiki.

edit flag offensive delete link more


Thank you for the update. Do you know when the latest might be apart of the debs build? Would you be able to update this page when a wiki page is created? I am going to see if I can get it working probably sometime next week. I will let you know if I have any questions.

Raptor gravatar image Raptor  ( 2013-11-06 11:14:00 -0500 )edit

Hey Raptor. I finally updated the wiki page. Enjoy:

David Lu gravatar image David Lu  ( 2013-12-16 05:06:45 -0500 )edit

(Although not all versions have the fixes yet...notably the old_navfn_behavior is the default and the parameter is not implemented)

David Lu gravatar image David Lu  ( 2013-12-16 05:08:10 -0500 )edit

Awesome! I will check it out. Thank you.

Raptor gravatar image Raptor  ( 2013-12-17 08:28:14 -0500 )edit

@David Lu I am trying to use the global_planner, I added it in move_base parameters as base_global_planner: global_planner/PlannerCore but it keeps saying this planner is not registered. I've used it from debs and git repo. Is there an example of a launch file with yamls? Thanks!

martimorta gravatar image martimorta  ( 2014-01-21 04:25:45 -0500 )edit

Marti - Can you please post this as its own question?

David Lu gravatar image David Lu  ( 2014-01-21 08:26:50 -0500 )edit

Yes, sorry :)

martimorta gravatar image martimorta  ( 2014-01-21 21:32:16 -0500 )edit

@David Lu I've found out why A* gives a different path from Dijkstra. The issue is that you use the Manhattan distance has heuristic, if you use the Euclidean distance the paths will be almost identical.

mateus03 gravatar image mateus03  ( 2014-10-08 08:25:04 -0500 )edit

Question Tools



Asked: 2013-11-06 09:52:45 -0500

Seen: 3,262 times

Last updated: Nov 06 '13