# New Localization Technique "gmcl" To Replace "amcl"

**URL:** <https://discourse.openrobotics.org/t/new-localization-technique-gmcl-to-replace-amcl/21520>\
**Category:** Navigation\
**Tags:** release, navigation, ros\
**Created:** [July 23, 2021, 5:17pm UTC](https://discourse.openrobotics.org/t/new-localization-technique-gmcl-to-replace-amcl/21520 "2021-07-23T17:17:22Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![adler1994](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/adler1994/32/10856_2.png) [@adler1994](https://discourse.openrobotics.org/u/adler1994)\
**Post date:** [July 23, 2021, 5:17pm UTC](https://discourse.openrobotics.org/t/new-localization-technique-gmcl-to-replace-amcl/21520/1 "2021-07-23T17:17:22Z")

</div>

Hello community,

As a part of my master thesis, I have developed a new package for mobile robot localization - which can replace the amcl in Navigation stack - called general monte carlo localization (gmcl)…you could find more details in the Wiki-page [gmcl - ROS Wiki](http://wiki.ros.org/gmcl) …This package was tested on Turtlebot3 in Gazebo simulator..results showed superiority of gmcl over amcl. You could find results, performance and complexity analysis of amcl & gmcl in paper  
[https://www.researchgate.net/publication/353196299\_gmcl\_As\_a\_Proposed\_Replacement\_to\_amcl\_in\_ROS\_for\_Mobile\_Robots\_Localization\_in\_Known-Based\_2D\_Environments](https://www.researchgate.net/publication/353196299_gmcl_As_a_Proposed_Replacement_to_amcl_in_ROS_for_Mobile_Robots_Localization_in_Known-Based_2D_Environments)  
I hope you consider this package in the upcoming ROS releases..Moreover, I am still missing some feedback from the community about any trouble that might encounter ROS users… so please when you have time, try the package.

The package is running now on noetic-release..I would import it to ROS2 when it gets more popular.

Thanks upfront for any feedback

---

<div class="post-metadata">

**Author:** ![andreucm](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/andreucm/32/2272_2.png) [@andreucm](https://discourse.openrobotics.org/u/andreucm)\
**Post date:** [July 23, 2021, 7:34pm UTC](https://discourse.openrobotics.org/t/new-localization-technique-gmcl-to-replace-amcl/21520/2 "2021-07-23T19:34:42Z")

</div>

Hi Adler,  
congrats for the job! Are you licensing somehow the package ? (i don’t see any license notice in the repository).  
Thanks!  
Andreu

---

<div class="post-metadata">

**Author:** ![vmayoral](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/vmayoral/32/3665_2.png) [@vmayoral](https://discourse.openrobotics.org/u/vmayoral)\
**Post date:** [July 23, 2021, 7:54pm UTC](https://discourse.openrobotics.org/t/new-localization-technique-gmcl-to-replace-amcl/21520/3 "2021-07-23T19:54:46Z")

</div>

> [@andreucm](#):
>
> congrats for the job! Are you licensing somehow the package ? (i don’t see any license notice in the repository).

Wiki says LGPL. Probably good idea to set this also in the source code @adler1994.

---

<div class="post-metadata">

**Author:** ![adler1994](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/adler1994/32/10856_2.png) [@adler1994](https://discourse.openrobotics.org/u/adler1994)\
**Post date:** [July 24, 2021, 8:19am UTC](https://discourse.openrobotics.org/t/new-localization-technique-gmcl-to-replace-amcl/21520/4 "2021-07-24T08:19:45Z")

</div>

Hello @andreucm ,  
Thanks for your comment…just like @vmayoral said GNU _Lesser General Public License_ ( LGPL ) is used..it is mentioned also in package.xml of the package…

---

<div class="post-metadata">

**Author:** ![adler1994](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/adler1994/32/10856_2.png) [@adler1994](https://discourse.openrobotics.org/u/adler1994)\
**Post date:** [July 24, 2021, 8:22am UTC](https://discourse.openrobotics.org/t/new-localization-technique-gmcl-to-replace-amcl/21520/5 "2021-07-24T08:22:48Z")

</div>

Hi @vmayoral  
Thanks for your comment…Your suggestion would be considered..

---

<div class="post-metadata">

**Author:** ![MatthijsBurgh](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/matthijsburgh/32/10500_2.png) [@MatthijsBurgh](https://discourse.openrobotics.org/u/MatthijsBurgh)\
**Post date:** [July 29, 2021, 2:27pm UTC](https://discourse.openrobotics.org/t/new-localization-technique-gmcl-to-replace-amcl/21520/6 "2021-07-29T14:27:24Z")

</div>

@adler1994

Could you please summarize what the difference are compared to AMCL? Not the performance, but what is happening under the hood.

---

<div class="post-metadata">

**Author:** ![adler1994](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/adler1994/32/10856_2.png) [@adler1994](https://discourse.openrobotics.org/u/adler1994)\
**Post date:** [July 30, 2021, 9:32am UTC](https://discourse.openrobotics.org/t/new-localization-technique-gmcl-to-replace-amcl/21520/7 "2021-07-30T09:32:39Z")

</div>

Hello @MatthijsBurgh,  
Thanks for your comment…In a nutshell, gmcl adds three more algorithms to amcl and they are (Optimal, intelligent, Self-Adaptive)…moreover the algorithms are programmed to be used in modules so you could implement one, two or all of them (like in figure)…

 ![flow_chart](https://us1.discourse-cdn.com/flex022/uploads/ros/original/2X/3/34fe117a87c1ebb3113f72d0f723462508708d8f.png)  
I hope my explanation is good enough…
