ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | Q&A
Ask Your Question

Localisation in a dynamic environment

asked 2018-04-25 20:36:03 -0500

Akwarandu gravatar image

Hi, I’m trying to implement a Localisation strategy for my robot in a dynamic environment(Populated by three other robots), I noticed on this page: The kld_sampling_mcl is said to be an algorithm used in ros. I know that algorithm can handle dynamic environments, but I do not see a package of this on ros...? Do you believe amcl would be sufficient to my environment, it’s robosoccer and from my research a Markov Localization method is best. Thank you and would appreciate a response.

edit retag flag offensive close merge delete

3 Answers

Sort by » oldest newest most voted

answered 2018-04-26 04:55:28 -0500

I believe amcl package is what you need for your dynamic environment with three robots and what you can immediately adopt for a variety of robots.

If you look into the function pf_update_resample in source code, you could find out how both Augmented_MCL and KLD_Sampling_MCL are implemented.

KLD_Sampling_MCL algorithm is dynamic to the number of particles. Augmented_MCL decides how many particles from uniform distribution are added into the particle cloud. The reason why the class of MCL algorithms can handle dynamic environment is measurement models they use. Both beam_range_finder_model and likelihood_field_range_finder_model incorporate unexpected objects so it is the main reason I think MCLs are able to handle dynamic environments.

Speaking to Markov Localization for robosoccer, I assume you refer to grid-based Markov Localization, called Grid Localization algorithm in chapter 8.2 of the book Probabilistic Robotics, by Thrun, Burgard, and Fox, because I really don't understand how Markov Localization in chapter 7.2 is going to be implemented (hope someone could give me some information). If the map for robosoccer is not too big, I agree that Markov Localization could be the best choice for robosoccer. However, considering the dynamic environment, it is better to use MCL algorithms instead. Otherwise, in Probabilistic Robotics, it is mentioned that the Dynamic Markov Localization can work in the dynamic environment.

edit flag offensive delete link more


Thank you chung.

Akwarandu gravatar image Akwarandu  ( 2018-04-26 10:16:27 -0500 )edit

answered 2018-11-20 03:33:20 -0500

ZengLei gravatar image

Hi, I have done one project in such environment just like you described: There are in all four mobile robots in a corridor environment. One of the mobile robot needs to navigate while avoiding other dynamic obstructive robots.

My experience is that AMCL is enough for self localization when the environment is not low-featured even there are three other obstructive mobile robots. But if the environment is very low-featured, for example, there is always white walls, no windows, no doors, no changing, then AMCL cannot be enough.

Hope it helps!

edit flag offensive delete link more

answered 2018-04-25 22:03:21 -0500

amcl is in package navigation github,here is navigation wiki ,the amcl called adaptive monte calro localization will work well if a markov localization is best.and I think amcl will work better than markov localization.but you should take computation cost into account

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2018-04-25 20:36:03 -0500

Seen: 982 times

Last updated: Nov 20 '18