SLAM

Материал из me-robotics wiki
 SLAM — это Simultaneous Localization And Mapping, что означает метод одновременной навигации и построения карты.

Это метод, который используется роботами и автономными транспортными средствами для построения карты в неизвестном пространстве или для обновления карты в заранее известном пространстве с контролем текущего местоположения и пройденного пути. Т.е. метод, который объединяет два самостоятельных процесса в постоянный оборот поочередных вычислений, при котором итоги одного процесса примут участие в вычислениях другого процесса.

    SLAM :

1) построение карты исследованного пространства 2) построение траектории движения робота на карте.

Чтобы понять работу SLAM, нужно представить себе робота, оснащенного некоторым набором приборов находящегося в некоторой неизвестной среде. Робот не имеет информацию об окружающей его среде, равно как и о своем местонахождении в ней. Все, что у него есть – информация с приборов и способность запоминать информацию о предыдущих полученных данных. Его цель – обойти всю местность и построить полную карту, всей местности. На практике это означает, что робот ищет ответы на вопрос: “Как выглядит мир вокруг?”. В каждый момент времени в мозг робота передаются показания с приборов. На основе анализа дальномерных данных – робот может определять своё перемещение относительно предыдущего положения. В лучшем случае, когда его вычисления точны и безукоризненны, по одним этим данным можно воссоздать карту местности, где он уже побывал и полностью описать траекторию его движения. В настоящий же момент на каждом шаге возникает небольшая погрешность вычислений (ошибка замеров/помехи/ограничения, накладываемые алгоритмами и т.п.). С течением времени общая ошибка продолжает нарастать таким образом, что, несмотря на приемлемую точность определения локального смещения, общая глобальная карта положений робота будет полна искажений. Для этого и нужен Simultaneous Localization And Mapping или просто SLAM.


SLAM - делят на 2 метода.

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

В общем случае SLAM можно описать как цикличная последовательность действий:

1) распознавание окружающей среды; 2) определение перемещение путём сравнения текущего местоположения с предыдущим; 3) нахождение на текущем местоположении особенностей 4) сопоставление особенностей текущего местоположения с особенностями, полученными за всё время наблюдений; 5)обновление на основе этой информации местонахождения робота за всю историю наблюдений; 6) проверка на петли – не проходил ли робот повторно по одному и тому же пути; 7) обобщение нынешней карты той территории, отталкиваясь от положения особенностей и робота за всю историю наблюдений.