A generic way to do localization and mapping with any kind of Robot