Главная arrow книги arrow Копия Глава 25. Робототехника arrow Локализация
Локализация

В главе 15 описаны фильтр Калмана, позволяющий представить доверительное состояние в виде одного многомерного гауссова распределения, и фильтр частиц, который представляет доверительное состояние в виде коллекций частиц, соответствующих состоянию. В большинстве современных алгоритмов локализации используется одно из этих двух представлений доверительного состояния робота,

Локализация с использованием фильтрации частиц называется локализацией Монте-Карло, или сокращенно MCL (Monte Carlo Localization). Алгоритм MCL идентичен алгоритму фильтрации частиц, приведенному в листинге 15.3; достаточно лишь предоставить подходящую модель движения и модель восприятия. Одна из версий алгоритма, в которой используется модель измерения дальностей, приведена в листинге 25.1. Работа этого алгоритма продемонстрирована на рис. 25.7, где показано, как робот определяет свое местонахождение в офисном здании. На первом изображении частицы распределены равномерно согласно распределению априорных вероятностей, показывающему наличие глобальной неопределенности в отношении положения робота. На втором изображении показано, как поступает первый ряд результатов измерений и частицы формируют кластеры в областях с высоким распределением апостериорных доверительных состояний. А на третьем изображении показано, что поступило достаточное количество результатов измерений, чтобы переместить все частицы в одно место.

Листинг 25.1. Алгоритм локализации Монте-Карло, в котором используется модель восприятия результатов измерения дальностей с учетом наличия независимого шума

Еще один важный способ локализации основан на применении фильтра Калма-на. Фильтр Калмана представляет апостериорную вероятность с помощью гауссова распределения. Среднее этого гауссова распределения будет обозначено, а его ковариация —. Основным недостатком использования гауссовых доверительных состояний является то, что они замкнуты только при использовании линейных моделей движения f и линейных моделей измерения h. В случае нелинейных f или h результат обновления фильтра обычно не является гауссовым. Таким образом, алгоритмы локализации, в которых используется фильтр Калмана, линеаризуют модели движения и восприятия. Линеаризацией называется локальная аппроксимация нелинейной функции с помощью линейной.

Рис. 25.7. Метод локализации Монте-Карло, основанный на применении алгоритма фильтрации частиц для локализации мобильного робота: первоначальное состояние, глобальная неопределенность (а); приблизительно бимодальное состояние неопределенности после прохождения по (симметричному) коридору (б); унимодальное состояние неопределенности после перехода в офис, отличимый от других (в)