Научная статья на тему 'Эволюционные численные методы решения задачи синтеза системы управления группой роботов'

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

CC BY
64
20
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СИНТЕЗ УПРАВЛЕНИЯ / УПРАВЛЕНИЕ ГРУППОЙ РОБОТОВ / МЕТОД СЕТЕВОГО ОПЕРАТОРА

Аннотация научной статьи по электротехнике, электронной технике, информационным технологиям, автор научной работы — Дивеев Асхат Ибрагимович, Софронова Елена Анатольевна, Шмалько Елизавета Юрьевна

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по электротехнике, электронной технике, информационным технологиям , автор научной работы — Дивеев Асхат Ибрагимович, Софронова Елена Анатольевна, Шмалько Елизавета Юрьевна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The problem of control system synthesis for a group of robots is considered. The goal is to displace the group of robots from different initial conditions to some terminal position with regard to phase constraints and avoiding to collisions between robots. We apply the method of multilayer network operator to solve the problem. Initially, a stabilization problem is considered. By the method of network operator we construct a feedback control which stabilize robots in a given point of the state space. At the second stage we design spacial trajectories of robots’ movement from a current position to the terminal position. At the third stage by the multilayer network operator method we build a system of differential equations which partial decision approximates spatial trajectories of the movement of robots received at the previous stage. In order to avoid collisions all robots are prioritized during the control process depending on their location with respect to the terminal state. The approach is illustrated on the example of control system synthesis for a group of three mobile robots.

Текст научной работы на тему «Эволюционные численные методы решения задачи синтеза системы управления группой роботов»

Эволюционные численные методы решения задачи синтеза системы управления группой роботов УДК 519.714

ЭВОЛЮЦИОННЫЕ ЧИСЛЕННЫЕ МЕТОДЫ РЕШЕНИЯ ЗАДАЧИ СИНТЕЗА СИСТЕМЫ УПРАВЛЕНИЯ ГРУППОЙ РОБОТОВ Дивеев Асхат Ибрагимович

Д.т.н., профессор, зав. сектором «Проблем кибернетики», Федеральное государственное учреждение Федеральный исследовательский центр «Информатика и управление» Российской академии наук, 119333 г. Москва, ул. Вавилова 44, e-mail: aidiveev@mail.ru Софронова Елена Анатольевна К.т.н., доцент, Федеральное государственное автономное образовательное учреждение высшего образования Российский университет дружбы народов 117198, ул. Миклухо-Маклая, д.6, e-mail: sofronova_ea@mail.ru Шмалько Елизавета Юрьевна К.т.н., научный сотрудник, Федеральное государственное учреждение Федеральный исследовательский центр «Информатика и управление» Российской академии наук, 119333 г. Москва, ул. Вавилова 44, e-mail: e.shmalko@gmail.com

Аннотация. Рассмотрена задача синтеза управления группой роботов. В задаче необходимо перестроить группу роботов из разных начальных условий в терминальное состояние с учетом фазовых ограничений и исключения столкновений между роботами. Для решения задачи используется эволюционный численный метод многослойного сетевого оператора. Первоначально решается задача стабилизации робота. На этом этапе методом сетевого оператора находится управление в виде регулятора обратной связи, которое стабилизирует робота относительно заданной точки пространства состояний. На втором этапе находятся пространственные траектории, по которым роботы двигаются из текущего состояния в заданное терминальное состояние. На третьем этапе методом многослойного сетевого оператора находится система дифференциальных уравнений, частное решение которой аппроксимирует пространственные траектории движения роботов, найденные на втором этапе. С целью исключения столкновений всем роботам в процессе управления присваиваются приоритеты в зависимости от их расположения относительно терминального состояния. Приведен пример синтеза управления группой из трех мобильных роботов. Ключевые слова: синтез управления, управление группой роботов, метод сетевого оператора.

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

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

Для решения задачи стабилизации используют ПИД-регуляторы, работающие по отклонению компонент вектора состояний робота от компонент заданной точки стабилизации или метод потенциалов [8], который синтезирует управление как функцию обратной связи по минимуму евклидовой нормы разности между значением вектора состояний робота и точкой стабилизации. При поиске терминальных точек для каждого робота используют алгоритм для решения задачи о назначениях, с помощью которого находят такие терминальные точки для каждого робота, чтобы суммарный путь всех роботов до терминальных точек был минимальным. Задачу о назначениях эффективно решает венгерский алгоритм [9]. Для решения задачи избегания столкновений используют алгоритм отступающего горизонта [5], с помощью которого просчитывают вперед движения роботов и определяют момент столкновения. Если робот должен столкнуться с неподвижным препятствием, то изменяют траекторию движения, при этом заново пересчитывают задачу о назначениях. Если робот должен столкнуться с другим роботом, то роботам назначают приоритеты по расстоянию до терминальной точки, и робот с наименьшим приоритетом останавливается или совершает избегающий столкновения маневр.

В настоящей работе для решения задачи синтеза управления группой роботов используем один из методов символьной регрессии: метод многослойного сетевого оператора [4]. Первоначально с помощью метода сетевого оператора [1, 2, 6, 7] решаем задачу синтеза системы стабилизации каждого робота относительно точки пространства состояний. Для решения задачи стабилизации не обязательно использовать метод многослойного сетевого оператора. Если вектор состояния робота имеет невысокую размерность, то достаточно использовать сетевой оператор с одним слоем [3]. Траектории движения роботов определяем в виде решения системы дифференциальных уравнений, имеющей размерность, равную общей размерности задачи, которая равна сумме размерностей векторов состояний всех роботов. Правые части дифференциальных уравнений ищем с помощью метода многослойного сетевого оператора. Моменты столкновений определяем с помощью пересечения габаритных областей положения роботов в геометрическом пространстве. Если определено столкновение между роботами, то это означает, что угол габаритной области одного робота попал внутрь габаритной области другого робота, тогда к значениям функционалов качества добавляем величину штрафа, который равен наименьшему расстоянию от нарушившего ограничения угла до границы габаритной области, которую он нарушил. Это же правило выполняем при нарушении статических ограничений. Для всех роботов устанавливаем приоритеты. При обнаружении столкновения между роботами робот с меньшим приоритетом останавливаем.

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

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

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

щ i

= U1,i COS(0i) > yi = U\,i Sln(0i) > 0 i =-j~ *g(u 2 , i ) > i = Ъ---»N >

(1)

где (х1,у1) - координаты геометрического центра /-го робота, 91 - угол между продольной осью /-го робота и осью х неподвижной системы координат, Ь - габаритный параметр робота, и1 г, и2г - компоненты вектора управления /-го робота, N - количество роботов.

Заданы ограничения на управление:

— + — +

щ < u1 i < щ , и-, < и-,, < щ .

12, i

Схематичное изображение мобильного робота представлено на рис. 1.

Рис. 1. Габаритная область и управление мобильного робота

0

На рис. 1 (хк,ук) - координаты углов габаритной области расположения робота, 2Ж

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

~ = X СО^9; ) + Уг 81п(9г ) > ~ = -Хг 81п(9г ) + Уг СО§(9г ) • (3)

Координаты углов /-го робота в повернутой на угол 9 j системе координат вычисляем из соотношений

~к,г = ~ + (-1)^/2]Ь, укЛ = ~ -(-1)[(^+1)/2]Ж, к = 1,2,3,4. (4)

Для получения значения координат углов робота в неподвижной системе координат выполним обратное по отношению к (2) преобразование

x,

,i = cos(0i) — Ук,1 sln(0i)> Укi = xk,i sln(0i) + cos(0i)' к = 1,2,3,4

(5)

Для проверки столкновения роботов г и у необходимо определить попадание каждого угла робота у в габаритную область робота г, и, наоборот, попадание каждого угла

робота 1 в габаритную область робота у. Для выполнения проверки первоначально вычислим координаты углов робота у в повернутой на угол 9 г системе координат, получаем ~,у (91) = у СС8(91) + укгу 81П(91), ~,у (91) = -ХКу зт^) + ук j еоз^), к = 1,2,3,4. (6)

Для попадания угла (хк у, ук у ) в область робота 1 необходимо выполнение условий

(у,у (9,) < у + Ь) а (у,у (9,) > у - Ь) А (~к,у (9г) < у + Ж) А (~к,у (9г) > У - Ж) , (7) где к = 1,2,3,4.

Для полной проверки столкновения двух роботов еще необходимо проверить попадание углов робота 1 в габаритную область робота у .

(у ,г (9 у ) < у + Ь) А (у ,г (9 у ) > у - Ь) А (уУк ,г (9 у ) < у у + Ж) А (~к ,г (9 у ) > у - Ж), (8) к = 1,2,3,4.

Выполнение одного из условий (6) или (7) определяет попадание угла габаритной области одного робота в габаритную область другого робота.

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

А1 = N (N -1).

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

Хо = {((Х0Д,У1°Д,9?,1),...,(41,У0Л9^ )),•••,((*Г,У?М,9Г),...,(хГ,УГ,9NM))}. (9)

Задано терминальное состояние роботов

| Хк (1у) - хк |<8,. | Ук «у ) - у1 |<8 , | 9к ($т )-9{ |<8 , к = 1,., N , (10)

где ^ не заданное ограниченное сверху время выполнения терминальных условий, ^ < t+ ,

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

Задан критерий качества управления

С Ntf ^

M

J = Z Zífo(x к(t),y к(t),ek(t),U1 ,к (tXU2,к (t))dt

k=1 0

(11)

V

1=1

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

начальных значениях ((х10,1, y0,i, ),..., (хN, УN, 9% )), 1 < 1 < М. Необходимо найти управление в виде

иг,к = \к (x1, Уl, 91,•■■, XN, УN, 9 N ) > 1 = 1,2 > к = N , (12)

которое обеспечивает соблюдение ограничений на управление (2) и для любых начальных

условий из (9) за ограниченное время ty < t+ выполнение терминальных условий (10) с

наименьшим значением критерия качества (11).

Из-за большого количества аргументов 3Ы использование метода сетевого оператора для решения задачи синтеза впрямую затруднительно, поэтому используем метод трехэтапного синтеза управления. Первоначально решаем задачу синтеза системы стабилизации относительно заданной точки пространства состояний для одного робота.

Задаем для к-го робота точку пространства состояний, (x*, y*, 0к), величины отклонений компонент вектора пространства состояний, Axk, Ayk, А0 к и определяем управление

ui,k = gi(x* — xk,У* — yk,0k —0k), i =1,2, (13)

которое обеспечивает достижение терминальной точки (x*, y*, 0 k ) из любой точки области

Xo,k = {x* ± Axk,У* - Ayk,0k ± A0k}. (14)

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

8

J =Х (Оi ^ min , (15)

i=1

где сумма вычисляется для начальных условий из (14)

h ^ (—1) A0k

(x* + (—1) ^"1)/4К, y* + (—1)L(i—1)/2jAyk, 0k + (—1)i—1 A0k), i = 1,—,8, (16)

t =\t, если I < г и тах{| х* - х(Г)|,| у* - у(Г)|,| 9к-9(г)|} <в ^

[г + - иначе

После синтеза системы стабилизации или нахождения функций управления (13) движение роботов в пространстве состояний осуществляется с помощью изменения

положения точки стабилизации (х*,у*,9*), поэтому для управления роботами необходимо

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

Тк,у = ((х*,у,1, у*,у,1, 9*,у,1), ■ • - ,(х*,у,г, у*,у,у , 9к,у,у )) , к = 1, ■ N , У = 1, ■ М , 08)

где траектории строятся для каждого к-го робота из начального состояния (х0,к, у0,к, 90,к ) в конечное состояние

xl,j,rj = xk > y*,j,rj = yfk ' 0k,j,rj = 0k . (19)

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

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

р^^^г) = т1п{ | ~2,г - ~ - ~к,у И ~1,г - - ~к,у И ~1,г - - ~к,у И ~з,г - - ~к,у |} • (20)

Х2л~Х, ~Xkj ^ Xu-Xt ~Xk j

Уи -Уг -Ук,} УЗА -Уг -ykj

Рис. 2. Штраф за столкновение роботов

о-

(xkj>ykj)

Интегралы от величины штрафа вычисляем для всех М начальных условий, суммируем и добавляем к функционалу (11). Поиск оптимальных траекторий в виде наборов точек (18) осуществляем по критерию минимума суммарного функционала

M ('f N N

J = J+Z iZZp(i,j,')d'

l=1 ^ 0 ¿=1 j =1

^ min.

(21)

J i

После нахождения оптимальных траекторий в виде множеств (18) точек пространства состояний выполняем третий этап синтеза и строим систему дифференциальных уравнений, частные решения которой аппроксимируют точки оптимальных траекторий

• *_ / f *

xk = g1,k (Х1 — Х1 , •

У * = g 2,k (Х( — xi\-

0k = g3,k(xf -XV

f * f * , XN — xn , y1 — y1

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

f * f * , XN — xN , y1 — y1

f * f * , XN — xN , y1 — y1

yN — yN, 0f —0*,-, 0 N —0N) yN — yN, 0f —0*,-, 0 N —0N) yN — yN, 0f —0*,-, 0 N —0N)

(22)

(23)

(24)

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

к = 1,.,N.

Структурная схема системы управления мобильного робота приведена на рис. 3. Генератор траекторий на рис. 3 реализует решение системы уравнений (22) - (24).

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

2. Многослойный сетевой оператор. Решение задачи синтеза осуществляем методом сетевого оператора [1]. Метод сетевого оператора позволяет с помощью эволюционного алгоритма находить структуру и параметры математического выражения, закодированного в виде ориентированного графа или целочисленной матрицы. Поскольку вектор пространства состояний множества роботов имеет высокую размерность, в частности, для рассматриваемой модели (3) мобильного робота размерность вектора состояния равна 3Ы, то при использовании одного сетевого оператора необходимо задавать матрицу сетевого оператора большой размерности. Заметим, что количество строк в матрице должно превосходить величину, равную сумме количества аргументов и количества выходов. При условии включения в формулы искомого выражения в качестве аргументов оптимизируемых параметров, количество которых, допустим, равно количеству переменных, то размерность

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

Многослойный сетевой оператор состоит из нескольких соединенных между собой сетевых операторов. Структура соединений сетевых операторов описывается в матрице связей, которая имеет размерность К х 21, где К - число сетевых операторов или число слоев, I - количество входов в одном слое. Выходы многослойного сетевого оператора указываются в матрице выходов размерностью М х 2, где М - размерность векторной функции, описываемой сетевым оператором.

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

С08(х1 + эт( х2 + д2)) е"?1Х1+?2 С0Б(х22 - х2) _ .

Пусть заданы следующие множества функций

Р0 = {./0,1 = х1, /0,2 = Х2 , /0,3 = 41, /0,4 = 42}, Р1 = {/1,1(г) = ^ /1,2 (г) = -^ /1,3 (г) = , /1,4 (г) = 2^ /1,5 (г) = ЭЧ/1,6 (= 81п(*)}>

Р2 = {/2,1 (, 22 ) = + 22, /2,1 (, 22 ) = 22 } .

Построим граф сетевого оператора согласно известной методике [1]. Полученный граф сетевого оператора представлен на рис. 4.

Разобьем сетевой оператор на несколько подграфов. Каждый подграф называем слоем. Полученные после разбиения три слоя сетевого оператора представлены на рис. 5.

Построим матрицы сетевого оператора для каждого слоя, получаем

У1 У 2

6

0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 5 0 0 0 0 1 6 0 0 0 0 0 1

00 00 0 0

¥

0 0 0 1 0 0 0 0 0 2 0 0 0 0 0 0 1 0

0 0 0 1 1 0 0 0 0 0 1 3 0 0 0 0 0 1

¥

0 0 0 4 0 0 0 0 0 0 4 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0

2 0 1 6

000002

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

Е =

0 2 0 4 0 1 0 1 0 3 0 4 0 1 0 2 2 6

Рис. 5. Слои сетевого оператора

Информация о выходах сетевого оператора содержится в матрице выходов О = [юг у ],

которая имеет размерность М х 2. Для рассматриваемого примера матрица выходов имеет вид

О

1 б 3 б

Для вычисления результирующего математического выражения используем векторы узлов г *, где к - номер слоя. Компоненты вектора узлов каждого слоя соответствуют каждому узлу в графе, или строке в матрице сетевого оператора, и содержат результаты промежуточных вычислений. Сами вычисления осуществляем для каждой матрицы, последовательно просматривая каждую строку и находя в ней ненулевые элементы, по следующей формуле

I , если а, 9, , = О

г =1 ^, *,2г-1 , (25)

* „ - иначе

[ ак,2г-1,ак,2г

г ^ .[Л^к, у г (2к у , Л^, у (,г )), если У * г, у Ф 0 (26)

*,у [г*у - иначе

где Т к = [у к1 у ], 2 = [а кт ], т = 1,„.,2/, к - номер слоя, к = 1,—, ^, г - номер выхода, г = 1,—, I, г - номер строки в матрице сетевого оператора, г = 1,—, Ь -1, у - номер столбца в матрице сетевого операторе, у = г +1,■.., Ь, /1 d (г) - функция номером d с одним аргументом, /2 ^ (г1, г2 ) - функция номер g с двумя аргументами.

Выходы сетевого операторы определяем по матрице выходов в соответствии с формулой

уг = 2' г = 1,—,М • (27)

3. Вычислительный эксперимент. Рассмотрим пример решения задачи синтеза управления тремя роботами, N = 3 . В примере заданы три робота, математические модели которых описываются уравнениями (3). Габаритные размеры каждого робота определены величинами: Ь = 2, Ж = 1. Заданы восемь начальных значений:

Хо = { ((-10,2,0), (-10,4,0), (-10,6,0)), ((10,2,0), (-10,4,0), (-10,6,0)), ((-10,2,0), (10,4,0), (-10,6,0)), ((-10,2,0), (-10,4,0), (10,6,0)), ((10,2,0), (10,4,0), (-10,6,0)), ((10,2,0), (-10,4,0), (10,6,0)), ((-10,2,0), (10,4,0), (10,6,0)), ((10,2,0), (10,4,0), (10,6,0))}.

Заданы терминальные условия:

Х -хг,/ = 0, у - уг,/ = 0, 0г -9г,/ = 0,г = 1,2,3,

где х^ = -5, уХу = 0, 0! у = 0, х2 у = 0, у2 ^ = 0, 02 / = 0, х3 ^ = 5, у3 ^ = 0, 03 у = 0.

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

J = г ^ ^ шт

где

_ 11, если шах{ | х (г) - у,/ ^ | уг (г) - у,/ 10 (г) - 0г,/ ^ г = 1,2,3} < в

= 1 +

К - иначе

е = 0,01, г + = 12.

Заданы статические фазовые ограничения в виде двух прямоугольных областей с координатами углов: (х1, у1), (х2, у2), (х3, у3 ), (х4, у4 ), г = 1,2, где х° =-8, у1 = 1, х2 =-20, у1 = 1, х1 =-20, у1 =-1, х1 =-8, у1 =-1, х2 = 20, у\ = 1, х^ = 8, у2 = 1, х32 = 8, у32 =-1, х4 = 20, у2 =-1.

На первом этапе решали задачу стабилизации одного робота. Для решения задачи использовали метод сетевого оператора. В результате получили систему стабилизации

и +, если и у > и+

и, = 1 и -, если щ, < и - , у = 1,2,

' ] ] ] ^

и у - иначе

где

щ = 3А /2, щ = 88п(3В + В)(е|зв+в| -1):

А = (С + Б§п( А х )е "|40А х1) / 2 + (1 - е "с )/(1 + е "с) + Д3х, В = 8ёд( А)е "|3А|, С = -42 А0 А у + 41А у + 40 А х, В = Есоэ(Ах) + Е)(е|Е| -1) +1/Р, Е = Р + 8ёд(+ 8§п(А0 8ёд(Ах))(е|45А08§п(Ах^^^1 -1), Р = 45А0 §§П( А х )л/\ 46 А х I + 44 А у + 46 А х + (45А0 §§п( А х )л/| 46 А х I)-1 + §§п( А у ) - 46 А х, 40 = 10.218 , 41 = 0.4478 , 42 = 1.4932 , 43 = 0.421, 44 = 14.377 , 45 = 8.48 , 46 = 0.283,

А х = х * - х, Ау = у* - у, А0 =0*-0.

На втором этапе находим точки пространственных траекторий для каждого робота и каждого начального значения. При движении робота к терминальным состояниям используем по две промежуточные точки пространственных траекторий. С учетом начальных и терминальных условий каждая траектория будет содержать по 4 точки. Так как количество роботов N = 3, количество начальных условий | Х0 |= 8, искомых точек на траектории по 2 и каждая точка описывается тремя координатами, п = 3, то всего искомых точек 3 х 8 х 2 х 3 = 144. Для решения задачи используем вариационный генетический алгоритм. В результате получили следующие оптимальные пространственные траектории:

Т1,1 = ((-10,2,0), (-5,0.6,-0.7), (-5,0,-0.7), (-5,0,0)); Ти = ((-10,2,0), (-5.5,0.6,-0.7), (-5,0,-0.7), (-5,0,0)); Ти = ((-10,2,0), (-5.5,0.6,-0.7), (-5,0,-0.7), (-5,0,0)); Тм = ((-10,2,0), (-5.5,0.6,-0.71), (-5,0,-0.67), (-5,0,0)); Ти = ((10,2,0), (5,2.1,0), (0.1,1,0.24), (-5,0,0)); Т16 = ((10,2,0), (5,2.1,0), (0,1,0.24), (-5,0,0)); Т^ = ((10,2,0), (5,2.1,0), (0.1,1,0.24), (-5,0,0)); Т1,8 = ((10,2,0), (5,2.1,0),(0,1,0.24), (-5,0,0)); Т2Д = ((-10,4,0), (-7,4,0), (-2,4.2,0), (0,0,0)); Т2,2 = ((-10,4,0), (-7,4,0),(-2,4.2,0), (0,0,0)); Т2,з = ((10,4,0), (5.3,2.4,0.34), (0.7,0.42,0.52), (0,0,0)); Т2,4 = ((10,4,0), (5.2,2.45,0.33), (0.7,0.4,0.5), (0,0,0)); Т^ = ((-10,4,0), (-5,4,0), (-0.6,4,0.5), (0,0,0)); Т2,6 = ((-10,4,0), (-5,4.1,0), (-0.3,4,-0.5), (0,0,0)); Т^ = ((10,4,0), (9,3.8,0.27), (4.3,2.2,0.34), (0,0,0)); Т^ = ((10,4,0), (9,3.8,0.27), (4.3,2.35,0.34), (0,0,0)); Т„ = ((-10,6,0), (-5,6.1,0), (0,6.2,0), (5,0,0)); Т„ = ((10,6,0), (5.8,4.1,1), (5.1,0.47,1.4), (5,0,0)); Т33 = ((-10,6,0), (-5,6.1,0),(0,6.2,0), (5,0,0)); Тм = ((10,6,0), (7.4,5.8,0.62), (5.3,2.3,1.46), (5,0,0)); Т35 = ((10,6,0), (-5,6.1,0), (-0.9,6.2,0), (5,0,0)); Т^ = ((10,6,0), (6.6,5.1,0.74), (5.3,2.2,1.47), (5,0,0)); Т37 = ((-10,6,0), (-5,6.1,0), (0,6.2,0), (5,0,0)); Т^ = ((10,6,0), (7.3,5.7,0.66), (7.1,5.5,0.66), (5,0,0)).

На третьем этапе аппроксимируем многослойным сетевым оператором полученные оптимальные траектории. Для решения используем многослойный сетевой оператор с четырьмя слоями, с матрицами сетевого оператора размерностью 16 х 16.

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

т0 = [х* у* е* х* у* е; х* у* е3 - 9,2 5,2 - 9,1 - 8,2 - 9,0 7,3 - 8,1 - 9,9 - 2,2].

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

Т1

0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 17 0 0 0 0

0 0 0 0 0 0 0 1 0 0 5 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0

0 0 0 0 0 0 2 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 1 0 0 0 0 0 0

0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 , Т 2 = 0 0 0 0 0 0 0 2 0 0 1 0 0 0 0 0

0 0 0 0 0 0 0 0 2 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 1 0 0 18 0

0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 1 0 0 0

0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0

0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0

0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1

0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0

0 0 0 0 0 0 2 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0

0 0 0 0 0 0 0 2 0 0 1 0 0 0 0 0 , ¥ 4 = 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0

0 0 0 0 0 0 0 0 2 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0

0 0 0 0 0 0 0 0 0 2 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0

0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 1 0 0

0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0

0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1

0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 15 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1

Е =

0 1 0 10 0 2 0 11 0 3 0 12 040 13 05 0 14 060 15 070 16 080 17 090 18

1 15 1 16 2 15 2 16 3 15 3 16

П1

1 1 4 2 2 4 3 3 4 16 14 16 16 14 15 16 14 14

Номера бинарных и унарных операций в матрицах соответствует работе [ 1]. Полученные матрицы многослойного сетевого оператора представляют собой описание правых частей дифференциальных уравнений, решение которых аппроксимирует точки оптимальных траекторий Т1 _ Т 8. Начальные условия для всех 24 траекторий

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

Заключение. Представлен трехэтапный метод синтеза управления группой роботов. Метод состоит из этапа стабилизации, поиска оптимальных траекторий и аппроксимации. На всех этапах используются эволюционные алгоритмы. На этапах стабилизации и аппроксимации для синтеза структуры и параметров математического выражения предложено использовать метод многослойного сетевого оператора. Предложенный метод позволяет автоматизировать процесс создания системы управления группой роботов.

Работа выполнена при поддержке грантов РФФИ (№ 16-29-04224, № 14-08-00008-а) и Президента РФ (МК-6277.2015.8).

СПИСОК ЛИТЕРАТУРЫ

1. Дивеев А.И. Метод сетевого оператора. - М.: Изд-во ВЦ РАН, 2010. 178 с.

2. Дивеев А.И. Численный метод сетевого оператора для синтеза системы управления с неопределенными начальными значениями // Известия РАН ТиСУ, 2012. № 2. С. 63-78.

3. Дивеев А.И., Софронова Е.А., Шмалько Е.Ю. Метод идентификационного синтеза управления и его применение к мобильному роботу / Информационные и математические технологии в науке и управлении. Иркутск: ИСЭМ СО РАН, 2016. № 2. С. 53-61.

4. Дивеев А.И., Шмалько Е.Ю. Метод многослойного сетевого оператора в задаче синтеза системы управления группой роботов. Труды Второй молодежной научной конференции

«Задачи современной информатики» - М.: ФИЦ ИУ РАН, 2015. - 319 с. - Москва, 29-30 октября 2015. С. 241-247.

5. Chen J., Sun D., Yang J., Chen H. Leader-Follower Formation Control of Multiple Non-holonomic Mobile Robots Incorporating a Receding-horizon Scheme// The International Journal of Robotics Research Vol. 29, № 6, May 2010. Pp. 727-747.

6. Diveev A.I., Shmalko E.Yu. Automatic Synthesis of Control for Multi-Agent Systems with Dynamic Constraints. Preprints, 1st IFAC Conference on Modelling, Identification and Control of Nonlinear Systems, June 24-26, 2015, Saint Petersburg, Russia, pp. 394-399.

7. Diveev A.I., Shmalko E.Yu. Self-adjusting Control for Multi Robot Team by the Network Operator Method. Proceedings of the 2015 European Control Conference (ECC), July 15-17, 2015. Linz, Austria. Pp. 709-714.

8. Garg D.P., Fricke G.K. Potential Function Based Formation Control of Mobile Multiple-Agent Systems// Proceedings of the 1st International and 16th National Conference on Machines and Mechanisms (iNaCoMM2013), IIT Roorkee, India, Dec 18-20 2013. P. 816-822.

9. Liu L., Shell D.A. Physically Routing Robots in a Multi-robot Network: Flexibility through a Three Dimensional Matching Graph// The International Journal of Robotics Research October 2013 vol. 32 no. 121475-1494.

UDK 519.714

EVOLUTIONARY COMPUTATIONAL METHODS TO SOLVE PROBLEMS OF CONTROL SYSTEM SYNTHESIS FOR GROUPS OF ROBOTS

Askhat I. Diveev

Dr., Professor, Head. Sector «Problems of Cybernetics», Federal Research Center "Computer Science and Control" of Russian Academy of Sciences, 44, Vavilova str., 119333, Moscow, e-mail: aidiveev@mail.ru Elena A. Sofronova PhD, Assistant professor, Peoples' Friendship University of Russia 6, Miklukho-Maklaya str., 117198, Moscow, e-mail: sofronova ea@mail.ru

Elizaveta Yu. Shmalko

PhD, Researcher,

Federal Research Center "Computer Science and Control" of Russian Academy of Sciences, 44, Vavilova str., 119333, Moscow, e-mail: e.shmalko@gmail.com

Abstract. The problem of control system synthesis for a group of robots is considered. The goal is to displace the group of robots from different initial conditions to some terminal position with regard to phase constraints and avoiding to collisions between robots. We apply the method of multilayer network operator to solve the problem. Initially, a stabilization problem is considered. By the method of network operator we construct a feedback control which stabilize robots in a given point of the state space. At

the second stage we design spacial trajectories of robots' movement from a current position to the terminal position. At the third stage by the multilayer network operator method we build a system of differential equations which partial decision approximates spatial trajectories of the movement of robots received at the previous stage. In order to avoid collisions all robots are prioritized during the control process depending on their location with respect to the terminal state. The approach is illustrated on the example of control system synthesis for a group of three mobile robots. Keywords: control synthesis, robotic team control, network operator method.

References

1. Diveev A.I. Metod setevogo operatora [Network operator method]. Moscow, CC RAS, 2010. 178 p. (in Russian)

2. Diveev A.I. Chislennyi metod setevogo operatora dlia sinteza sistemy upravlenia s neopredelennymi nachal'nymi znacheniiami [Numerical method of the network operator for synthesis of a control system with uncertain initial values], Journal of Computer and Systems Sciences International. 2012, № 2. Pp. 63-78 (in Russian)

3. Diveev A.I., Sofronova E.A., Shmal'ko E.Ju. Metod identifikacionnogo sinteza upravlenija i ego primenenie k mobil'nomu robotu [Method of identificational synthesis control and its application to mobile robot] /Informacionnye i matematicheskie tehnologii v nauke i upravlenii = Information and mathematical technologies in science and management. Publ. Irkutsk: Melentiev Energy Systems Institute SB RAS, 2016. №2. Pp. 53- 61.

4. Diveev A.I., Shmalko E.Yu. Metod mnogosloynogo setevogo operatora v zadache sinteza sistemy upravlenia gruppoy robotov [Method of multilayer network operator for the problem of control system synthesis for a group of robots]. Trudy Vtoroi molodezhnoi nauchnoi conferentsii "Zadachi sovremennoi informatiki" = Proceedings of the second youth scientific conference "Problems of modern informatics", Moscow: FRC CSC RAS, 2015. - 319 p. -October 29-30, 2015. Pp. 241-247 (in Russian)

5. Chen J., Sun D., Yang J., Chen H. Leader-Follower Formation Control of Multiple Non-holonomic Mobile Robots Incorporating a Receding-horizon Scheme// The International Journal of Robotics Research Vol. 29, No. 6, May 2010, pp. 727-747.

6. Diveev A.I., Shmalko E.Yu. Automatic Synthesis of Control for Multi-Agent Systems with Dynamic Constraints. Preprints, 1st IFAC Conference on Modelling, Identification and Control of Nonlinear Systems, June 24-26, 2015. Saint Petersburg, Russia, Pp. 394-399.

7. Diveev A.I., Shmalko E.Yu. Self-adjusting Control for Multi Robot Team by the Network Operator Method. Proceedings of the 2015 European Control Conference (ECC), July 15-17, 2015. Linz, Austria. Pp. 709-714.

8. Garg D.P., Fricke G.K. Potential Function Based Formation Control of Mobile Multiple-Agent Systems// Proceedings of the 1st International and 16th National Conference on Machines and Mechanisms (iNaCoMM2013), IIT Roorkee, India, Dec 18-20 2013. P. 816-822.

9. Liu L., Shell D.A. Physically Routing Robots in a Multi-robot Network: Flexibility through a Three Dimensional Matching Graph// The International Journal of Robotics Research October 2013 vol. 32 no. 121475-1494.

i Надоели баннеры? Вы всегда можете отключить рекламу.