SLAM (Simultaneous Localization and Mapping) можно перевести c английского как «одновременное определение местоположения и построение карты». Задача SLAM возникает в случаях, когда мобильный робот, помещённый в неизвестное место с неизвестной окружающей средой, постепенно строит полную карту местности и одновременно определяет своё местоположение в пределах построенной карты. Данный метод позволяет сделать робота по-настоящему автономным.
Задача SLAM была сформулирована теоретически и решена на практике несколькими способами, что явилось одним из наиболее заметных успехов в области робототехники за последние два десятка лет. Методики SLAM были реализованы для роботов, работающих внутри и вне помещений, под водой, а также для летающих робототехнических систем. В качестве примеров современных роботов, в которых используется SLAM, можно привести самоуправляемые автомобили Google [1] и роботы-пылесосы от Neato Robotics [2].
История задачи SLAM
Впервые вероятностная задача SLAM была представлена в 1986 году на конференции Robotics and Automation, проводимой Институтом инженеров электротехники и электроники (IEEE) в Сан-Франциско (США). В то время вероятностные методы только начинали внедряться в области робототехники и искусственного интеллекта. Ряд исследователей искали способы применения теоретико-оценочных методов в задачах создания карты и определения местоположения. В их числе были Питер Чизман, Джим Кроули и Хью Дюрант-Уайт. В ходе конференции широко обсуждалось последовательное создание карты окружающей среды.
В результате дискуссий было решено, что последовательное вероятностное создание карты является фундаментальной проблемой в робототехнике с серьёзными концептуальными проблемами и сложными вычислительными задачами. В течение следующих нескольких лет работы Смита и Чизмана [3] и Дюранта-Уайта [4] заложили статистическую основу для описания отношений между различными ориентирами на карте и решения задачи геометрической неопределённости. Проделанная учёными работа показала, что между оценками расположения различных ориентиров на карте должна быть высокая степень корреляции и что, на самом деле, эти корреляции растут при проведении последующих наблюдений.
В это же время Аяч и Фоджерас опубликовали работы в области визуальной навигации [5], Кроули, Чатила и Ламонд работали над навигацией мобильных роботов, основанной на ультразвуковых датчиках с использованием фильтровых алгоритмов Калмана [6, 7]. Данные исследования имели много общего, результатом чего стала обобщающая статья Смита [8]. В этой работе было показано, что, если мобильный робот движется в неизвестной среде, производя относительные наблюдения за ориентирами, то все оценки местоположения ориентиров обязательно коррелируют друг с другом, являясь причиной общей ошибки в расчётах местоположения транспортного средства. Полученные выводы имели большое значение. Оказалось, что полное решение комплексной задачи определения местоположения и построения карты требует совместного определения состояния системы, включающего в себя положение транспортного средства и каждого ориентира. При этом состояние системы изменяется после каждого наблюдения за ориентиром. Решение данной задачи потребовало бы использования огромного вектора состояния и большого объёма вычислений.
Важно отметить, что в рамках этой работы не преследовались цели обеспечения сходимости карты или условий её стационарного поведения. Было принято считать, что ошибки оценки карты не сходятся, а вместо этого имитируют процесс «случайного блуждания» с не-ограниченным ростом ошибки. Таким образом, учитывая вычислительную сложность задачи построения карты, не зная о сходимости карты, исследователи сосредоточились на приближённом решении задачи последовательного построения карты, что подразумевало минимизацию или устранение корреляций между ориентирами [9]. По тем же причинам теоретическая работа по решению комбинированной задачи определения местоположения и построения карты была временно приостановлена, и исследования часто сосредотачивались либо на построении карты, либо на определении местоположения.
Концептуальный прорыв произошёл с осознанием того, что комбинированная задача построения карты и определения местоположения, сформулированная как единая задача, была на самом деле сходящейся. Было признано, что корреляции между ориентирами, которые большинство исследователей пытались минимизировать, были критической частью задачи, и что, наоборот, с ростом корреляций решение получается более точным. Структура задачи SLAM, сходящееся решение и аббревиатура SLAM были впервые представлены в работе, посвящённой исследованию мобильной робототехники, в 1995 году на Международном симпозиуме по исследованию робототехники [10]. После этого несколько групп учёных, работавших над задачами построения карты и определения местоположения, начали серьёзно работать над SLAM.
На этот раз усилия специалистов были сконцентрированы на повышении эффективности вычислений и решении проблемы «закрытия петель». Международный симпозиум по исследованию робототехники 1999 года (ISRR’99) [11] стал важным мероприятием, в рамках которого была проведена первая конференция по SLAM. Себастиан Тран представил свою работу [12], в которой соединил воедино методы SLAM, основанные на применении фильтра Калмана, вероятностное определение местоположения и методы построения карты. Проводившийся в 2000 году семинар по SLAM в рамках Международной конференции по робототехнике и автоматизации IEEE (ICRA) привлёк полтора десятка исследователей и был посвящён таким вопросам, как алгоритмическая сложность, сопоставление данных и проблемы реализации метода. В 2002 году семинар по SLAM на конференции ICRA привлёк уже 150 специалистов в различных областях. В последующие годы появилось большое количество научных работ, позволивших решить многие проблемы, возникающие в SLAM.
Формулировка и структура задачи SLAM
SLAM является процессом, в рамках которого мобильный робот может построить карту окружающей среды и одновременно использовать эту карту, чтобы сделать выводы о своём местоположении. Траектория движения мобильной платформы и расположение всех ориентиров в SLAM оцениваются в реальном времени, без необходимости какого-либо априорного знания о местоположении.
Предварительные положения
Рассмотрим мобильного робота, движущегося в некоторой окружающей среде и получающего данные о ней посредством наблюдения ряда неизвестных ориентиров с помощью датчика (см. рис. 1).
Примечание: истинные позиции ориентиров неизвестны и не могут быть прямо измерены
В момент времени определены следующие величины:- xk – вектор состояния, описывающий местоположение и ориентацию робота;
- uk – вектор управления, приложенный в момент времени k-1 для приведения робота в состояние xk ;
- mi – вектор, описывающий местоположение i-го ориентира, чьё истинное местоположение предполагается постоянным;
- zik – наблюдение i-го ориентира, полученное роботом в момент времени k. При наличии нескольких наблюдений ориентира в момент времени k или когда конкретный ориентир не относится к рассматриваемым, наблюдение будет записываться просто как zik.
Также определены:
- X0:k={x0, x1,…,xk}={X0:k-1, xk} – история местоположений робота;
- U0:k={u0, u1,…,uk}={U0:k-1, uk} – история управляющих входов;
- m={m0, m1,…,mk} – множество всех ориентиров;
- X0:k={x0, x1,…,xk}={X0:k-1, xk} –множество всех наблюдений ориентиров.
Вероятностный метод SLAM
В вероятностной форме задача одновременного определения местоположения и построения карты (SLAM) требует, чтобы распределение вероятности
было вычислено для всех моментов времени k. Это распределение вероятности описывает совместную апостериорную плотность местоположения ориентиров и состояния робота (в момент времени k), определяемую данными наблюдений и управляющих входов. В подобных случаях предпочтительно использовать рекурсивные методы решения задачи. Оценка распределения (xk-1,m │Z0:k-1, U0:k-1) в момент времени k-1 в соответствии с управляющим воздействием uk и наблюдением zk вычисляется с помощью теоремы Байеса. Эти вычисления требуют, чтобы модели перехода состояния и наблюдения описывали воздействие управляющего входа и наблюдение соответственно.
Модель наблюдения описывает вероятность наблюдения zk при известном местоположении робота и ориентиров:

Резонно предположить, что как только местоположение робота и карта определены, наблюдения становятся условно независимыми для данной карты и текущего состояния робота.
Модель движения для робота может быть описана в терминах распределения вероятности перехода состояния в форме
Предполагается, что переход состояния является марковским процессом, в котором следующее состояние xk зависит только от предшествующего состояния xk-1 и приложенного управляющего воздействия uk и не зависит от наблюдения и карты.
Алгоритм SLAM реализован в стандартной двухшаговой рекурсивной форме предсказания (временнóе обновление) коррекции (обновление измерения).
Временнóе обновление:

Обновление измерения:

Уравнения (4) и (5) описывают рекурсивную процедуру для вычисления совместной апостериорной плотности вероятности (1) для состояния робота xk и карты m в момент времени k, основываясь на всех наблюдениях Z0:k и всех управляющих входах U0:k вплоть до момента времени k. Рекурсия является функцией модели робота (3) и модели наблюдения (2).
Стоит отметить, что задача построения карты может быть сформулирована как задача вычисления условной плотности вероятности P(xk │Z0:k, U0:k,m). При этом предполагается, что местоположение робота xk известно (или, по крайней мере, определено) для всех моментов времени. Карта m строится путём объединения данных наблюдений из различных местоположений. С другой стороны, задача определения местоположения может быть сформулирована как вычисление распределения той же вероятности. При этом предполагается, что местоположение ориентиров известно достоверно, и цель состоит в том, чтобы оценить местоположение робота относительно этих ориентиров.
Структура вероятностного метода SLAM
Для упрощения в данном разделе опущены исторические переменные в формуле (1) и совместная апостериорная плотность вероятности для карты и местоположения робота будет обозначаться P(xk,m│zk) или даже P(xk,m) (в некоторых случаях).
Модель наблюдения (2) делает очевидной зависимость наблюдений и от местоположения робота, и от расположения ориентиров. Из этого следует, что совместная апостериорная плотность вероятности не может быть разделена обычным способом P(xk,m │ zk) ≠ P(xk │ zk)P(m │ zk).Тем не менее, задача SLAM имеет более сложную структуру, чем кажется.
Обратившись снова к рисунку 1, можно увидеть, что ошибка между оценённым и истинным местоположениями ориентира обуславливается в основном ошибкой в определении текущего местоположения робота. Это означает, что ошибки в оценках местоположения ориентиров являются сильно коррелированными. На практике это приводит к тому, что относительное местоположение между любыми двумя ориентирами mi-mj может быть известно с высокой точностью, несмотря на то что абсолютное местоположение ориентира mi в некоторой степени неопределённо. В вероятностной форме это означает, что совместная плотность вероятности для пары ориентиров P(mi , mj ) имеет высокий пик даже в случаях, когда граничные плотности вероятности P(mi ) обладают достаточно большой дисперсией.
Наиболее важным выводом в теории SLAM является то, что корреляции между оценками ориентиров монотонно возрастают с увеличением числа произведённых наблюдений. Другими словами, знание относительного месторасположения ориентиров всегда улучшается и никогда не расходится, независимо от движения робота. В вероятностной терминологии это означает, что совместная плотность вероятности для всех ориентиров P(m) становится более остроконечной с ростом числа произведённых наблюдений.
Такая сходимость является следствием того, что наблюдения, произведённые роботом, могут рассматриваться как «почти независимые» измерения относительного месторасположения между ориентирами. Снова вернёмся к рисунку 1 и рассмотрим робота в позиции xk, наблюдающего два ориентира: mi и mj . Относительное расположение наблюдаемых ориентиров, очевидно, независимо от координат робота, и последовательные наблюдения из этого фиксированного месторасположения дадут дополнительные независимые измерения относительного расположения ориентиров. Теперь, когда робот перемещается в местоположение xk+1, он вновь наблюдает ориентир mj. Это позволяет обновить оценённое местоположение робота и ориентира по отношению к предыдущему местоположению xk. В свою очередь, это справедливо и для обновления местоположения ориентира mi, пусть даже ориентир и не наблюдается из нового местоположения. Так происходит из-за того, что два ориентира сильно коррелированы (их относительное местоположение хорошо известно) с предыдущими измерениями. Кроме того, тот факт, что те же самые измерения используются для обновления данных двух ориентиров, делает их ещё более коррелированными. Термин «почти независимое измерение» является уместным, потому что ошибки наблюдений будут коррелированными из-за последовательных перемещений робота. Также стоит обратить внимание на то, что в позиции xk+1 робот наблюдает два новых ориентира относительно mj. Эти новые ориентиры, таким образом, сразу же связываются или коррелируют с остальной картой. Последующие обновления этих ориентиров будут также обновлять ориентир mi и через него mj , и так далее. Таким образом, все ориентиры в конечном счёте образуют сеть, связывающую относительные местоположения или корреляции, точность которых увеличивается каждый раз при произведении очередного наблюдения.

Примечание: при движении робота вперёд и назад в окружающей среде жёсткость пружины (корреляция) увеличивается – красные соединения становятся толще
Данный процесс может быть представлен в виде сети пружин, соединяющих все ориентиры вместе (см. рис. 2). Наблюдение за соседним звеном действует как смещение в пружинной системе таким образом, что его эффект является значимым для ближайших звеньев и в зависимости от локальной жёсткости (корреляции) уменьшается с расстоянием до других ориентиров. По мере движения робота в окружающей среде и наблюдения за ориентирами, пружины становятся всё более жёсткими, причём монотонно. В конечном итоге получается жёсткая карта ориентиров или точная относительная карта окружающей среды. Как только карта построена, точность местоположения робота ограничена только качеством карты и относительным измерением датчика. В теоретическом пределе точность относительного местоположения робота становится равной точности определения местоположения, достижимого для данной карты.
Решения задачи SLAM
Решения вероятностной задачи SLAM включают в себя нахождение соответствующего представления для модели наблюдения (2) и модели движения (3), которые позволяют эффективно и полно вычислять предыдущие и последующие распределения (4) и (5). Безусловно, наиболее полным представлением является модель пространства состояний с аддитивным гауссовым шумом, что приводит к необходимости использования расширенного фильтра Калмана (EKF). Одним из важных альтернативных подходов к решению является описание модели движения робота в (3) в виде выборок из более общего, отличного от нормального распределения вероятности. В таком случае для решения задачи используется частичный фильтр (фильтр частиц) или алгоритм FastSLAM. В то время как EKF-SLAM и FastSLAM являются наиболее важными методами решения, были предложены и другие современные методы, обладающие большим потенциалом [13].
Метод EKF-SLAM
В основе метода EKF-SLAM лежит описание движения робота в форме

где f(…) описывает кинематическую модель робота и wk является аддитивным, некоррелированным возмущением гауссовского движения с нулевым средним и ковариацией Qk. Модель наблюдения описывается формулой

где h(…) описывает геометрию наблюдения, а vk является аддитивной некоррелированной гауссовой ошибкой с нулевым средним и ковариацией Rk.
Таким образом, стандартный метод EKF [14] может быть применён для вычисления среднего

и ковариации совместного апостериорного распределения плотности вероятности (1)

Используемые временнóе обновление и обновление наблюдения записываются следующим образом. Временнóе обновление:

где ∇f – якобиан f, вычисляющий оценку ˆxk-1│k-1. Для стационарных ориентиров временнóе обновление обычно не выполняется, однако оно необходимо при наличии подвижных объектов.

Примечание: ориентир изначально наблюдается с неопределённостью, унаследованной от местоположения робота и наблюдения; с течением времени среднеквадратичные отклонения монотонно убывают до нижней границы
Обновление наблюдения:

Данное решение задачи EKF-SLAM, его преимущества и недостатки хорошо известны. Необходимо обратить внимание на ключевые особенности этого метода.
- В задаче EKF-SLAM сходимость карты проявляется в виде монотонной сходимости к нулю определителя ковариационной матрицы Pmm,k карты и всех подматриц пар ориентиров. Отдельные дисперсии ориентиров сходятся к нижней границе, определяемой начальной неопределённостью в положении робота и наблюдения. Типичная сходимость дисперсий положения ориентиров показана на рисунке 3 [14].
- После каждого наблюдения все ориентиры и совместная ковариационная матрица обновляются. Это означает, что объём вычислений растёт квадратично c ростом числа ориентиров.
- Стандартное решение EKF-SLAM очень чувствительно к ошибочному сопоставлению наблюдений с ориентирами. Особенно сложной является задача «закрытия петли», когда робот возвращается для повторного наблюдения ориентиров после длительного «путешествия». Проблема сопоставления усугубляется в окружающей среде, где ориентиры не являются точечными объектами, а заметно отличаются при рассмотрении с различных углов обзора.
- Метод EKF-SLAM использует линеаризованные модели нелинейных перемещений и модели наблюдения. Нелинейность может быть существенной проблемой в EKF-SLAM и приводит к неустойчивому решению. Сходимость и устойчивость могут быть гарантированы только для линейного случая.
Частичный фильтр
Алгоритм FastSLAM, представленный Монтемерло и коллегами [15], стал концептуальным прорывом в разработке рекурсивного вероятностного метода SLAM. Предыдущие усилия были направлены на повышение производительности EKF-SLAM, сохраняя при этом необходимость в линейных гауссовских предположениях. Метод FastSLAM, основанный на рекурсивной выборке по методу Монте-Карло или частичной фильтрации, был первым алгоритмом, работающим с нелинейной моделью процесса и отличным от нормального распределением. Несмотря на то, что FastSLAM так же линеаризует модель наблюдения, это, как правило, является допустимым приближением для азимутально-диапазонных измерений, когда позиция робота известна.
Большая размерность пространства состояний задачи SLAM делает прямое использование частичных фильтров сложно реализуемым с точки зрения вычислительных затрат. Однако, возможно сократить выборочное множество, разделив его на части в соответствии с правилом умножения P(x1, x2 )=P(x2 | x1 ) × P(x1 ), и если P(x2 | x1 ) может быть представлена аналитически, то только P(x1) должна быть сэмплирована – x1(i)~P(x1). Следовательно, совместное распределение представляет собой множество {x1(i), P(x2 | x1) × P(x1 )} и статистически предел

вычисляется с большей точностью, чем при выборке совместного пространства.
Совместное состояние SLAM может быть факторизовано в компонент робота и компонент условной карты:

Здесь используется распределение плотности вероятности по траектории X0:k , а не в единственном положении xk, т.к. в случае траектории карта ориентиров становится независимой (см. рис. 4). Это ключевое свойство алгоритма FastSLAM и является причиной высокой скорости его работы. Карта представляется в виде множества независимых гауссиан с линейной сложностью, а не совместной картой ковариации с квадратичной сложностью.

Фундаментальная структура FastSLAM представляет собой состояние, где траектория представлена взвешенной выборкой и карта вычисляется аналитически. Так, совместное распределение в момент времени k представляется множеством {wk(i), X0:k(i), P(m | X0:k(i),Z0:k,)}iN, где карта, сопутствующая каждой частице, состоит из независимых нормальных распределений

Частичная фильтрация для состояний положения выполняется рекурсивно, затем для состояний карты применяется EKF. Каждый наблюдаемый ориентир обрабатывается индивидуально как обновление измерения EKF из известной позиции (см. рис. 5). Положение наблюдаемых ориентиров не изменяется.

Примечание: эллипсами показаны заявленные распределения для каждой стадии обновления, из которых производятся выборка позиций робота и обновление наблюдений ориентиров; множество таких траекторий представляет собой вероятностную модель местоположения робота
Рассмотрим обобщённую форму частичного фильтра для SLAM. В момент времени k-1 совместное состояние представляется как {wk-1(i), X0:k-1(i), P(m | X0:k-1(i),Z0:k-1,)}iN. Затем выполняются следующие действия:
1. Для каждой частицы вычисляется заявленное распределение, обусловленное историей конкретной частицы, и получается выборочное значение:

Полученная новая выборка является (неявно) присоединённой к истории частицы.
2. Выборки взвешиваются в соответствии с функцией важности:

Члены в числителе этого выражения представляют собой модели наблюдения и движения соответственно. Первый отличается от (2) вследствие того, что частичный фильтр требует ограниченности на карте.

3. В случае необходимости формируется новая выборка. В одних реализациях повторная выборка делается на каждой итерации, в других – после фиксированного числа итераций, в третьих – если вес дисперсии превышает некоторое пороговое значение. Повторная выборка осуществляется путём выбора частиц с удалением их из множества {X0:k(i)}iN, включая связанные с ними карты, с вероятностью выбора, пропорциональной wk(i). Выбранные частицы равно взвешиваются на величину 1/N.
4. Для каждой частицы выполняется обновление EKF на наблюдаемых ориентирах, т.е. производится построение карты с известной позицией робота.
В литературе описаны две версии FastSLAM – версии 1.0 [17] и 2.0 [18]. Они различаются только членами в форме их заявленного распределения (шаг 1) и, следовательно, в весах важности (шаг 2). Версия FastSLAM 2.0 является более эффективным решением.
Для FastSLAM 2.0 заявленное распределение включает текущее наблюдение

и С является нормализованной константой. Распределение весов в зависимости от важности в соответствии с (14) есть wk(i)= wk-1(i)С. Преимуществом FastSLAM 2.0 является то, что его заявленное распределение является локально оптимальным. Для каждой частицы это даёт наименьшую возможную дисперсию в значимом взвешивании wk(i), зависящую от доступной информации X0:k-1(i), Z0:k и U0:k.
Статистически обе версии FastSLAM подвержены вырождению из-за их неспособности «забыть прошлое». Ограничение карты в (15) зависит от истории положения и измерения и при повторной выборке истощает эту историю, статистическая точность теряется. Тем не менее, эмпирические результаты FastSLAM 2.0 в реальных условиях внешней среды [18] показали, что алгоритм способен генерировать достаточно точную карту.
Реализация SLAM
Эксперимент «исследуй и возвращайся», проведённый Ньюманом с группой исследователей [19], являлся среднемасштабной реализацией метода внутри помещения, который подтвердил нерасходимость свойств EKF-SLAM возвращением робота точно в исходную точку. Эксперимент был примечателен тем, что возвращение было полностью автономным. Робот управлялся вручную в исследовательской фазе, хотя и без визуального контакта с оператором, который полагался исключительно на построенную в реальном времени роботом карту. На обратном пути робот планировал маршрут и возвращался в исходную точку без вмешательства человека. Гайвант и Небот [20] впервые применили SLAM на большом открытом пространстве. В данной работе были изучены вопросы проведения вычислений в реальном времени при работе с высокоскоростным движением транспортного средства по пересечённой местности с динамическими препятствиями. Представленные результаты особенно интересны, поскольку они сопровождаются точными координатами, полученными с помощью технологии RTK-GPS, и показали практическую работоспособность алгоритма.
В настоящее время приложения SLAM задействованы в самых различных областях и используют такие методы зондирования, как «только азимут» [21] и «только расстояние» [22].
Также следует упомянуть и о методе последовательной оценки положения (Consistent Pose Estimation, CPE) [23], который представляет собой другую парадигму SLAM, основанную на топологическом построении карты и выравнивании данных. Данный метод показывает отличные результаты внутри больших помещений.
Библиотеки, реализующие алгоритмы SLAM, на сегодняшний день доступны для множества языков программирования, а также в специализированной операционной системе для роботов ROS. Реализации различных алгоритмов SLAM c использованием различных языков программирования и программных сред, а также наборы данных, полученные с реальных датчиков, можно найти в свободном доступе [25]. Реальные данные являются ценным ресурсом для оценки и сравнения с эталоном различных алгоритмов SLAM.
Заключение
В настоящее время, помимо представленных в статье базовых методов, используются усовершенствованные алгоритмы, позволяющие повысить точность и сократить требуемые вычислительные затраты. В последующих публикациях планируется рассмотреть различные особенности метода SLAM, широко применяемого в автономных мобильных робототехнических системах.
Литература
- http://robotosha.ru/robotics/how-it-works-driverless-car-google.html
- www.neatorobotics.com
- Smith R., Cheesman P. On the representation of spatial uncertainty. Int. J. Robot. Res., vol. 5, no. 4, pp. 56–68, 1987.
- Durrant-Whyte H.F. Uncertain geometry in robotics. IEEE Trans. Robot. Automat., vol. 4, no. 1, pp. 23–31, 1988.
- Ayache N., Faugeras O. Building, registrating, and fusing noisy visual maps. Int. J. Robot. Res., vol. 7, no. 6, pp. 45–65, 1988.
- Crowley J. World modeling and position estimation for a mobile robot using ultrasonic ranging. Proc. IEEE Int. Conf. Robot. Automat., 1989, pp. 674–681.
- Chatila R., Laumond J.P. Position referencing and consistent world modeling for mobile robots. Proc. IEEE Int. Conf. Robot. Automat., 1985, pp. 138–143.
- Smith R., Self M., Cheesman P. Estimating uncertain spatial relationships in robotics. Autonomous Robot Vehicles, I.J. Cox and G.T. Wilfon, Eds. New York: Springer-Verlag, pp. 167–193, 1990.
- Renken W.D. Concurrent localization and map building for mobile robots using ultrasonic sensors. Proc. IEEE Int. Workshop Intell. Robots Syst. (IROS), 1993.
- Durrant-Whyte H., Rye D., Nebot E. Localization of automatic guided vehicles. Robotics Research: The 7th International Symposium (ISRR’95), G. Giralt and G. Hirzinger, Eds. New York: Springer-Verlag, pp. 613–625, 1996.
- Hollerbach J., Koditscheck D. Robotics Research, The Ninth International Symposium (ISRR’99). New York: Springer-Verlag, 2000.
- Thrun S., Fox D., Burgard W. A pro-babilistic approach to concurrent mapping and localization for mobile robots. Mach. Learning, vol. 31, no. 1, pp. 29–53, 1998.
- Thrun, S., Liu, Y., Koller, D., Ng, A., Durrant-Whyte, H. Simultaneous localization and mapping with sparse extended information filters. Int. J. Robot. Res., vol. 23, no. 7–8, pp. 693–716, 2004.
- Dissanayake G., Newman P., Durrant-Whyte H.F., Clark S., Csobra M. A solu-tion to the simultaneous localization and mapping (SLAM) problem. IEEE Trans. Robot. Automat., vol. 17, no. 3, pp. 229–241, 2001.
- Montemerlo M., Thrun S., Koller D., Wegbreit, B. Fast-SLAM: A factored solution to the simultaneous localization and mapping problem. Proc. AAAI Nat. Conf. Artif. Intell., 2002, pp. 593–598.
- Doucet A. On sequential simulation-based methods for Bayesian fil- tering. Dept. Eng., Cambridge Univ., Tech. Rep.,1998.
- Montemerlo V., Thrun S., Koller D., Wegbreit B. Fast-SLAM: A factored solution to the simultaneous localization and mapping problem. Proc. AAAI Nat. Conf. Artif. Intell., 2002, pp. 593–598.
- Montemerlo V., Thrun S., Koller D., Wegbreit B. Fast-SLAM 2.0: An improved particle filtering algorithm for simultaneous localization and mapping that provably converges. Proc. Int. Joint Conf. Artif. Intell., 2003, pp. 1151–1156.
- Newman P.M., Leonard J.J., Neira J., Tardos J. Explore and return: Experimental validation of real time concurrent mapping and localization. Proc. IEEE Int. Conf. Robot. Automat., 2002, pp. 1802–1809.
- Guivant J.E., Nebot E.M. Optimization of the simultaneous localization and map-building algorithm for real-time implementation. IEEE Trans. Robot. Automat., vol. 17, no. 3, pp. 242–257, 2001.
- Deans M., Hebert M. Experimental comparison of techniques for localization and mapping using a bearing-only sensor. Proc. Int. Symp. Experimental Robot., 2000, pp. 395–404.
- Leonard J.J., Rikoski R.J., Newman P.M., Bosse M.C. Mapping partially observable features from multiple uncertain vantage points. Int. J. Robot. Res., vol. 21, no. 10–11, pp. 943–975, 2002.
- Konolig K. Large-scale map-making. Proc. Nat. Conf. AI (AAAI), 2004, pp. 457–463.
- www.ros.org
- www.openslam.org
Если вам понравился материал, кликните значок - вы поможете нам узнать, каким статьям и новостям следует отдавать предпочтение. Если вы хотите обсудить материал - не стесняйтесь оставлять свои комментарии : возможно, они будут полезны другим нашим читателям!

