Например, Бобцов

АВТОНОМНАЯ МУЛЬТИАГЕНТНАЯ СИСТЕМА ДЛЯ РЕШЕНИЯ ЗАДАЧ МОНИТОРИНГА МЕСТНОСТИ

Автономная мультиагентная система для решения задач мониторинга местности

61

УДК 681.53

А. С. КРЕМЛЕВ, С. А. КОЛЮБИН, С. А. ВРАЖЕВСКИЙ
АВТОНОМНАЯ МУЛЬТИАГЕНТНАЯ СИСТЕМА ДЛЯ РЕШЕНИЯ ЗАДАЧ МОНИТОРИНГА МЕСТНОСТИ*
Рассматривается задача управления группой роботов в режиме „ведущий— ведомый“ при сохранении взаимного расположения во внешней среде с неизвестными параметрами. Для сглаживания траектории ведомого робота используется алгоритм, основанный на методе градиентного спуска.
Ключевые слова: группа роботов, мультиагентная система, сглаживание траектории, градиентный спуск.
Введение. В труднодоступных или недоступных для человека местах мобильные роботы обеспечивают возможность решения задач, требующих присутствия исполнительного устройства. Причиной возникновения таких ситуаций могут быть техногенные аварии и катастрофы, приводящие к радиоактивному или химическому заражению среды, стихийные бедствия (когда требуется оперативно осуществить поиск и оказать помощь на непроходимой территории), необходимость исследования поверхностей небесных тел, проведения взрывотехнических или других опасных работ. Таким образом, большую практическую значимость приобретают задачи траекторного движения и поиска траектории в неизвестной среде. Комплексное решение таких задач позволяет выявить оптимальную для складывающейся ситуации траекторию. Эти задачи удобно решать при использовании нескольких роботов-агентов, имеющих возможность работать одновременно над несколькими проблемами [1].
Разработка систем, включающих несколько относительно независимых агентовисполнителей, на сегодняшний день является очень актуальной исследовательской задачей [1—3]. Агентно-ориентированный подход широко применяется в программировании, компьютерных технологиях, в экономике и представляет большой интерес для решения задачи управления робототехническими системами.
В настоящей работе рассматривается система из двух агентов — автономных мобильных роботов А1 и А2, функционирующих в режиме „ведущий—ведомый“. Для этой группы роботов поставлена задача движения в среде с неизвестными статическими препятствиями, под которыми будем понимать стационарные (неподвижные) объекты, расположенные в исследуемой среде. На рис. 1 приведена модель поведения группы мобильных роботов при обнаружении препятствия (а — одно препятствие; б — два расположенных близко препятствия).
Во время движения, когда преграды не обнаружены, группа должна двигаться в заданном порядке. Датчики для определения препятствий при этом располагаются только на базе ведущего робота А1 и позволяют определить препятствие на расстоянии r от него. “Ведомый” робот А2 должен двигаться „вслепую“, опираясь на данные, полученные от робота А1 по беспроводному каналу связи. Для робота А2 поставлена задача оптимизации траектории движения робота А1. Робот А2 должен объезжать препятствия по сглаженным траекториям, минимизируя тем самым собственное угловое ускорение в процессе движения. Такой подход удобен тем, что задача выбора направления движения для всей группы решается одним агентом. Остальные агенты могут работать над другими задачами, не тратя время и энергию на поиск препятствий.
* Исследование выполнено при поддержке Министерства образования и науки Российской Федерации, соглашение 14.В37.21.0659 „Разработка и применение малогабаритных мультиротационных беспилотных летательных аппаратов для экологического мониторинга“.
ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2013. Т. 56, № 4

62 А. С. Кремлев, С. А. Колюбин, С. А. Вражевский
В момент обнаружения препятствия ведомый робот находится на заданном расстоянии L от ведущего и на расстоянии L+r от препятствия. Чем дальше робот находится от преграды, тем более гладкую траекторию можно построить для уклонения от нее. Это позволяет проложить более удобный маршрут для движения (см. рис. 1). Построение более гладкой траектории позволяет роботам двигаться с меньшими изменениями угловых скоростей, благодаря чему снижается риск проскальзывания колесных систем мобильных агентов.
а) б) А1

А1 А2 L

L А2

А2 L

А1

А1 L

А2

Рис. 1
Основная часть. Задача оптимизации траектории сводится к минимизации целевой функции f(x):

f

(x)

=

max
i

⎡ ∂ω

⎢ ⎣

∂t

ω=ωi

⎤ ⎥ ⎦

,

(1)

аргументом которой будет являться управляемая величина ω — угловая скорость агента в

момент времени ti. Система управления должна работать так, чтобы ведомый робот, выполняющий опти-

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

при этом используется следующий алгоритм движения роботов.

1. Ведущий робот оснащен локальными датчиками определения препятствий и двигает-

ся в режиме предотвращения столкновений. Координаты траектории его движения передают-

ся ведомому роботу. В случае обнаружения препятствия ведущий робот посылает сигнал за-

прета движения ведомому и выполняет маневр для предотвращения столкновения. Затем ве-

дущий робот посылает разрешающий сигнал ведомому и ждет от него ответного сигнала об

успешном выполнении маневра, после чего продолжает движение.

2. Ведомый следует за ведущим на заданном расстоянии L от него. Когда ведущий робот

совершает маневр уклонения от препятствия, ведомый останавливается. Пока препятствие

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

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

агент выполняет алгоритм сглаживания траектории и движется по новому пути. При по-

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

равную дальности обзора датчиков ведущего робота. Это требование обеспечивает движение

робота в обследованной области, гарантируя безопасность его пути.

Представим траекторию движения ведущего робота как последовательность из n точек.

Для нахождения минимума целевой функции воспользуемся методом градиентного спуска с

постоянным шагом [4, 5]. Для этого поставим в соответствие каждой паре координат исход-

ной траектории ведущего агента новую пару координат. Минимальное значение максималь-

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2013. Т. 56, № 4

Автономная мультиагентная система для решения задач мониторинга местности

63

ного углового ускорения (1) будет достигнуто с помощью следующих критериев минимиза-

ции:

(( xi′, yi′) − ( xi , yi ))2 → min ,

(2)

( )( xi′+1, yi′+1 ) − ( xi′, yi′ ) 2 → min .

(3)

Здесь (xi , yi ) — координаты точки начальной траектории на i-м шаге, (xi′, yi′) — координа-

ты точки искомой траектории на i-м шаге, (xi′+1, yi′+1) — координаты точки искомой траектории на (i+1)-м шаге. Выражение (2) обеспечивает минимизацию расстояния между точкой

начальной траектории и соответствующей ей искомой точкой сглаженной траектории. Выра-

жение (3) обеспечивает минимизацию расстояния между двумя стоящими рядом точками ис-

комой траектории. Если принимать во внимание только критерий оптимизации (2), то полу-

ченная траектория движения будет полностью соответствовать начальной. Если преобразова-

ние траектории происходит только по критерию (3), результирующая траектория „сожмется“

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

линейной свертки [6], позволяющего путем линейного объединения критериев (2) и (3) заме-

нить векторный критерий оптимальности скалярным. Каждый из критериев принимает зна-

чения в диапазоне от нуля до единицы. Вес для критерия (2) означает степень соответствия

начальной траектории оптимизированной. Для критерия (3) с увеличением веса будет умень-

шаться длина траектории и повышаться степень ее сжатия. Весовые функции подбираются

эмпирически в процессе отладки системы и, как правило, соответствуют условию

α >β > 0,

(4)

где α — коэффициент минимизации (весовая функция) для критерия (2), β — для критерия (3).

Сам алгоритм градиентного спуска предполагает наискорейшую минимизацию ошибки,

т.е. антиградиента целевого функционала. Так, для выражения (2) можно заключить, что

( xi′, yi′) ← ( xi′, yi′ ) + α (( xi , yi ) − ( xi′, yi′)) .

(5)

Это означает, что координаты точки на i-м шаге изменяются на величину, пропорцио-

нальную отклонению рассматриваемой точки от соответствующей ей точки начальной траек-

тории.

Согласно критерию (3), к искомой точке с координатами (xi′, yi′) следует добавлять некоторое приращение в направлении следующей искомой точки:

( xi′, yi′ ) ← ( xi′, yi′ ) + β(( xi′+1, yi′+1 ) − ( xi′, yi′)) .

(6)

Представим следующее преобразование в виде

( )( xi′, yi′ ) ← ( xi′, yi′ ) + β ( xi′+1, yi′+1 ) + ( xi′−1, yi′−1 ) − 2( xi′, yi′ ) .

(7)

Выражение (7) представляет собой комбинацию преобразований, удовлетворяющих

критерию (3) для текущей и предшествующей точек. Такое преобразование позволяет сделать

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

массив равномерно распределенных в плоскости движения координат.

Таким образом, алгоритм градиентного спуска для данной задачи будет выглядеть сле-

дующим образом:

( (

xi′, xi′,

yi′ yi′

) )

← ←

( (

xi′, xi′,

yi′ yi′

) )

+ +

α (( xi , yi ) − (β ( xi′+1, yi′+1

( )

xi′,
+(

yi′ ) ) ,
xi′−1 ,

yi′−1

)



2

(

xi′,

yi′

))

⎫ ,⎬⎪⎪

α > β > 0.

⎪ ⎭⎪

(8)

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2013. Т. 56, № 4

64 А. С. Кремлев, С. А. Колюбин, С. А. Вражевский

Такое преобразование координат повторяется до тех пор, пока значение последнего элемента массива не будет отличаться от заданного (фактической координаты первого агента) более чем на допустимую погрешность расчетов δ.
Апробация алгоритма. При апробации использовались мобильные роботы Boe-bot компании Parallax inc., обладающие приемлемыми массогабаритными показателями, ходовыми характеристиками и достаточной проходимостью. Используемые роботы конструктивно представляют собой трехколесные платформы с двумя ведущими и одним флюгерным колесом. Ведущие колеса приводятся в движение при помощи серводвигателей, на которые подаются напряжение питания и пульсирующий сигнал управления. Угол поворота колеса относительно своей оси определяется длительностью импульса. На платформе закреплена плата с микроконтроллером, регулирующим работу робота посредством генерации сигналов управления. Плата предусматривает возможность сборки дополнительных схем и включения необходимых электронных компонентов. Так, для решения поставленной задачи роботы были оснащены модулями радиосвязи, а ведущий — дополнительно двумя парами ИК-датчиков [7]. Применение разработанного алгоритма на мобильных роботах Boe-bot продемонстрировало их эффективность и работоспособность. На рис. 2 представлены графики траектории ведущего и ведомого роботов (r=15 см, L=20 см, δ=1 см) для схем, приведенных на рис. 1.

y, см 40

y, см 20

30

20 10 10

0

5 10 15 20 x, см

0

10 20 30

40 x, см

Рис. 2

Заключение. Результатом настоящей работы является решение задачи траекторного

движения группы роботов в неизвестной среде. Для сглаживания траектории ведомого робота

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

подхода для мультиагентных робототехнических систем позволяет размещать необходимое

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

уменьшению габаритов, снижению массы и упрощению конструкции ведомых роботов.

СПИСОК ЛИТЕРАТУРЫ
1. Рассел С., Норвиг П. Искусственный интеллект: современный подход. М.: Вильямс, 2006. 1408 с.
2. Bullo F., Cortes J., Martines S. Distributed Control of Robotics Networks: A Mathematical Approach to Motion Coordination Algorithms. Manuscript, 2009. 336 р.
3. Olfati-Saber O., Fax A., Murray R. Consensus and Cooperation in Networked Multi-Agent Systems // Proc. of the IEEE. 2007. Vol. 95(1). P. 215—233.
4. Карманов В. Г. Математическое программирование. М.: Физмалит, 2004. 264 с.
5. Поляк Б. Т. Градиентные методы минимизации функционалов // Журн. вычислительной математики и математической физики. 1963. Т. 3, № 4. С. 643—652.
6. Черноруцкий И. Г. Методы принятия решений. СПб: БХВ-Петербург, 2005. 416 с.
7. Куафе Ф. Взаимодействие робота с внешней средой. М.: Мир, 1985. 285 с.

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2013. Т. 56, № 4

Задача управления многоканальной динамической системой по кусочно-гладкой траектории 65

Сведения об авторах

Артем Сергеевич Кремлев

— канд. техн. наук; Санкт-Петербургский национальный исследова-

тельский университет информационных технологий, механики и

оптики, кафедра систем управления и информатики; доцент;

E-mail: kremlev_artem@mail.ru

Сергей Алексеевич Колюбин

— Санкт-Петербургский национальный исследовательский универси-

тет информационных технологий, механики и оптики, кафедра сис-

тем управления и информатики; инженер исследователь

Сергей Александрович Вражевский — студент; Санкт-Петербургский национальный исследовательский

университет информационных технологий, механики и оптики, ка-

федра систем управления и информатики

Рекомендована кафедрой систем управления и информатики

Поступила в редакцию 13.12.12 г.

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2013. Т. 56, № 4