You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Some map representations don't allow (at least not in a straightforward, practical way) sampling randomly from the map.
This is the case, just to name one, of sparse voxel grids, where there're no notion of free space, only occupied space.
Given this difficulty, the adaptive part of the AMCL pipeline has limited effect, because of not being able to generate random states from the map.
For these cases, an option where adaptiveness is turned off could be of use, and remove the need of forcefully provide a random state generator.
Coming back to this, is adaptiveness the problem or is it the use of random state samples to fight sample impoverishment? Good ol' AMCL does both, but it need not, does it? @nahueespinosa
It does not need to do both. But also, I don't like that we are providing a core amcl class in the main library. I think we should work on a way to easily define it from the pieces so we don't have to make assumptions or maintain multiple variants of similar things.
The particle filter pipeline is a step towards that, but it does not handle state well, that's why we need a class definition that holds all the pieces. There should be a better way of doing this.
I think we can discuss if a class is the best incarnation of a complete particle filtering algorithm with state, also if the core library is the best place for complete particle filtering algorithms, but I do think the project should provide them. Not all filtering algorithms are as simple and easy to understand and implement as (bootstrap) AMCL is. Most are not.
Feature description
Some map representations don't allow (at least not in a straightforward, practical way) sampling randomly from the map.
This is the case, just to name one, of sparse voxel grids, where there're no notion of free space, only occupied space.
Given this difficulty, the adaptive part of the AMCL pipeline has limited effect, because of not being able to generate random states from the map.
For these cases, an option where adaptiveness is turned off could be of use, and remove the need of forcefully provide a random state generator.
beluga/beluga/include/beluga/algorithm/amcl_core.hpp
Line 108 in 7a01f39
Definition of done
Add the feature described above, and make sure this is the option we use for all the nodes where randomly sampling from the map doens't make sense.
As of today,
ndt
andndt_3d
variants.The text was updated successfully, but these errors were encountered: