Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

6-2-воротников

.pdf
Скачиваний:
57
Добавлен:
23.03.2016
Размер:
6.45 Mб
Скачать

10. Навигация мобильных роботов

Основной проблемой всех автономных мобильных роботов (т.е. перемещающихся без управления со стороны человека) остается навигация (рис. 92).

Для успешной навигации в пространстве бортовая система робота должна:

планировать и строить маршрут (рис. 92, а);

правильно интерпретировать сведения об окружающем мире, получаемые от датчиков, и постоянно отслеживать собственные координаты (рис. 92, б);

управлять параметрами движения – задавать угол поворота колес и скорость их вращения (рис. 92, в).

 

а

б

в

Рис. 92.

Задачи навигации: прокладывание маршрута (а), построение карты и локализация (б),

управление движением (в)

 

 

Задачи навигации решаются на верхнем уровне системы управления роботом.

Системы прокладывания маршрута разработаны достаточно хорошо. Они основаны на алгоритмах планирования маршрута и поиска кратчайшего пути.

Определение своего положения и координат в пространстве относительно других объектов решается с помощью алгоритмов локализации.

Методы локализации включают в себя также алгоритмы построения карты.

Локационные системы роботов

Оптические локационные системы

К вопросу о карте: Австралия

Локационные системы роботов

Оптические локационные системы

USA

Авиатрафик (данные со спутника)

Локационные системы роботов

Оптические локационные системы

Сравнительные характеристики навигационных систем

В настоящее время существуют открытые проекты, реализующие навигацию мобильного робота

как часть системы управления (табл. 5). Примером является CARMEN (Carnegie Mellon Robot

Navigation Toolkit) – набор ПО для навигации робота, созданный в университете Карнеги Меллон).

Кроме этого, на рынке есть коммерческие продукты, которые являются комплектом библиотек для разработки ПО (SDK). Например, разработанный в центре искусственного интеллекта Стэндфордского исследовательского института продукт KARTO.

Таблица 5. Навигационные системы роботов

Характеристика

MobileRobots ARNL

CARMEN

KARTO

 

 

 

 

Поддержка некоторых мобильных платформ

да

да

да

 

 

 

 

Готовность системы к работе без

да

нет

нет

дополнительной наладки

 

 

 

 

 

 

 

Автономность ПО

нет

да

да

 

 

 

 

Операционная система

Motivity

Linux

Robot OS (Linux,

Windows, Mac OS)

 

 

 

 

 

 

 

Управление роботом

да

да

нет

 

 

 

 

Редактирование карты

да

да

нет

 

 

 

 

Работа в ЛВС

нет

нет

да

 

 

 

 

Точность позиционирования робота

±15мм (AGV)

н/д

 

 

 

 

Повторяемость движений

±150мм (AGV)

н/д

 

 

 

 

Локационные системы роботов

Оптические локационные системы

Прокладывание маршрута

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

выбрать и проложить маршрут движения, который обычно представляет собой кратчайший путь

к целевой точке.

Задача поиска кратчайшего пути, решается на карте помещения, представленной в виде графа. Аппаратно-программный блок, решающий эту задачу получил название «планировщик пути».

Алгоритм поиска пути ищет маршрут на графе, начиная с одной (стартовой) точки и исследуя

смежные узлы до тех пор, пока не будет достигнут узел назначения (конечный узел).

Существует ряд способов приведения

непрерывного пространства (рис. 93, а) к

дискретным вариантам:

ячейки (рис. 93, б);

точки видимости (рис. 93, в);

выпуклые полигоны (рис. 93, г);

квадрантные деревья (рис. 93, д);

обобщенные цилиндры (рис. 93, е).

Самые распространенные алгоритмы

поиска пути используют сетку с квадратными ячейками.

В таком виде карта представляет собой

восьмисвязный

граф,

вершины

 

 

которого находятся

в центре

каждой

Рис. 93. Способы дискретизации карты пространства (а): ячейки

ячейки, а ребрами являются переходы к

(б),

точки видимости (в), выпуклые полигоны (г), квадрантные

соседним ячейкам.

 

 

 

 

деревья (д), обобщенные цилиндры (е)

 

 

 

 

 

 

Локационные системы роботов

 

Оптические локационные системы

Алгоритмы поиска пути

Существует много алгоритмов поиска оптимального пути на графе.

Поиск в ширину (волновой алгоритм Ли). Начиная со стартового узла, этот алгоритм сначала определяет все непосредственно соседние узлы, затем все узлы в двух шагах, затем в трех, и так далее, пока цель не достигнута.

Двунаправленный поиск в ширину. Этот алгоритм лучше предыдущего тем, что запускаются два одновременных поиска в ширину из стартового и конечного узлов.

Алгоритм Дейкстры (для взвешенных графов, грани которых имеют различный вес). На каждом шаге, ищутся необработанные узлы близкие к стартовому, затем просматриваются соседи найденного узла, и устанавливаются их соответствующие расстояния от старта.

Поиск в глубину. Этот поиск противоположен поиску в ширину. Вместо посещения

вначале всех соседей, а потом их наследников, он сначала посещает всех наследников, а только затем переключается на соседей.

Алгоритм «лучший – первый». Это эвристический поиск, похожий на алгоритм Дейкстры, за исключением того, что узлы оцениваются по приблизительному оставшемуся расстоянию до цели.

Алгоритм А*. Этот эвристический поиск сортирует все узлы по приближению наилучшего маршрута идущего через этот узел. Он сочетает в себе учет длины предыдущего пути из алгоритма Дейкстры с эвристикой из алгоритма «лучший-первый».

Выводы:

Для реализации в навигационной системе целесообразно использовать алгоритм А*.

Во-первых, это самый быстрый и надежный алгоритм поиска из рассмотренных выше.

Во-вторых, он позволяет учитывать зоны пониженной проходимости.

И в-третьих, достаточно прост в реализации.

Локационные системы роботов

Оптические локационные системы

Привет от Анаид Вартановны

Самым известным является алгоритм Дейкстры (рис. 94, а, б), созданный в 1959 г, самым простым

– волновой алгоритм (алгоритм Ли, рис. 94, в).

б

а

в

Рис. 94. Пример реализации алгоритма Дейкстры (а) и его автор (б), иллюстрация волнового алгоритма (в)

Обозначено: S – множество вершин, для которых кратчайшие пути от начальной вершины (1) уже известны, w – номер вершины, D – массив, в который записываются длины кратчайших

путей для каждой вершины.

Основная идея а алгоритма Ли – каждая точка пути становится источником новой волны.

Локационные системы роботов

Оптические локационные системы

Алгоритм А*

Алгоритм А* — алгоритм поиска по первому наилучшему совпадению на графе, который находит маршрут с наименьшей стоимостью (весом) от одной вершины (начальной) к другой (целевой, конечной). Он был впервые описан в 1968 г. П. Хартом, Н. Нильсоном и Б. Рафаэлем. Это по сути

было расширение алгоритма Дейкстры.

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

робота прямо пропорционально длине пути.

а

б

б

г

д

Рис. 95. Работа алгоритма А*: исходное состояние (а), первый шаг (б), второй шаг (в), последний шаг (г), результат (д)

Вданной реализации алгоритма (рис. 95) поиск начинается с целевой вершины F и заканчивается

ввершине, где находится робот (возможно и наоборот).

Впроцессе работы алгоритма для вершин рассчитывается функция

f(v) = g(v) + h(v)

где g(v) — наименьшая стоимость пути v в из приближение стоимости пути от v до конечной цели. то есть не должна переоценивать расстояние до цели.

стартовой вершины, h(v) — эвристическое h(v) должна быть эвристически допустимой, Фактически, f(v) — длина пути до цели.

Вкачестве эвристики используют манхэттенское или эвклидово расстояние, расстояние Чебышева

ипр.

Локационные системы роботов

Оптические локационные системы

Принцип работы алгоритма А*

Локационные системы роботов

Оптические локационные системы

Поиск пути алгоритмом А*

Локационные системы роботов

Оптические локационные системы

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]