Научная статья на тему 'Линейные алгоритмы управления геометрическим расположением объектов в многоагентной системе'

Линейные алгоритмы управления геометрическим расположением объектов в многоагентной системе Текст научной статьи по специальности «Математика»

CC BY
466
94
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МНОГОАГЕНТНЫЕ СИСТЕМЫ / УПРАВЛЕНИЕ ФОРМАЦИЯМИ / ЛИНЕЙНЫЕ СИСТЕМЫ / MULTI-AGENT SYSTEMS / FORMATION CONTROL / LINEAR SYSTEMS

Аннотация научной статьи по математике, автор научной работы — Петрикевич Яна Игоревна

В статье предложены простейшие линейные локальные алгоритмы непрерывного перемещения агентов для их равномерного расположения на прямой или окружности. При этом используются следующие предположения: 1) общее число агентов, участвующих в построении, неизвестно; 2) перемещение каждого агента определяется его собственным положением и положением двух его ближайших (по номерам) соседей, при этом правила перемещения одинаковы для всех внутренних агентов; 3) один или оба крайних агента могут быть как закрепленными, так и свободно движущимися. При данных условиях доказана устойчивость рассматриваемых систем и глобальная сходимость к целевым положениям.

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

Simple and effective linear local algorithms for agents movement and allocation on a line and on a circle are proposed. They are based on the following assumptions: 1) the total number of agents in the system is unknown; 2) the future position of each agent is defined by its own coordinates and coordinates of its closest neighbors; 3) one or both of end agents may be fixed or movable. Stability and convergence for developed systems are proven and a number of examples are given to demonstrate the work of the proposed algorithms.

Текст научной работы на тему «Линейные алгоритмы управления геометрическим расположением объектов в многоагентной системе»

УДК 681.5 ББК 32.817

ЛИНЕЙНЫЕ АЛГОРИТМЫ УПРАВЛЕНИЯ ГЕОМЕТРИЧЕСКИМ РАСПОЛОЖЕНИЕМ ОБЪЕКТОВ В МНОГОАГЕНТНОЙ СИСТЕМЕ1

Петрикевич Я. И.2,

(Учреждение Российской академии наук Институт проблем управления им. В. А. Трапезникова РАН, Москва)

В статье предложены простейшие линейные локальные алгоритмы непрерывного перемещения агентов для их равномерного расположения на прямой или окружности. При этом используются следующие предположения: 1) общее число агентов, участвующих в построении, неизвестно; 2) перемещение каждого агента определяется его собственным положением и положением двух его ближайших (по номерам) соседей, при этом правила перемещения одинаковы для всех внутренних агентов; 3) один или оба крайних агента могут быть как закрепленными, так и свободно движущимися. При данных условиях доказана устойчивость рассматриваемых систем и глобальная сходимость к целевым положениям.

Ключевые слова: многоагентные системы, управление формациями, линейные системы.

Введение

Задачи о расположении точек (агентов, клеток и т.д.) вдоль заданной кривой известны также как задачи формообразования, управление формациями formation control) и имеют достаточно много практических приложений: мобильные роботы,

1 Работа выполнена при финансовой поддержке Российского фонда фундаментальных исследований (проект №08-08-00371-а)

2 Петрикевич Яна Игоревна, кандидат технических наук ([email protected]).

спасательно-разыскные и военные операции, транспортные сети, социальные и биологические системы.

Как правило, рассматривается распределённая система, состоящая из множества агентов и ориентированная на развитие группового действия при решении различных задач в условиях неопределенности. При этом в системе может выделяться «центр», или «лидер», связанный с каждым элементом системы и координирующий достижение цели агентами, - центральное управление, либо такого центра нет, все элементы системы равноценны, и каждый агент для достижения своей подцели использует лишь доступную ему информацию о системе - распределенное управление. При этом агенты могут взаимодействовать друг с другом и обмениваться информацией - управление с обменом информацией, либо такого обмена нет - автономное управление [8].

Одними из первых отечественных работ по разработке алгоритмов группового движения агентов с целью их размещения вдоль заданной траектории были статьи [3,4]. В них рассматривались задачи формообразования (спрямления и окруживания) применительно к эмбриологии. Были исследованы локальные правила перемещения конечного заданного набора точек (клеток) для получения желаемой формы. Основные предположения были следующими: 1) «процессы формообразования происходят за счет того, что каждая клетка обладает способностью двигаться в определенном направлении в зависимости от положения небольшого числа своих соседей» (т. е. существует обмен информацией между клетками); 2) правила движения для всех клеток данной группы должны быть одинаковы (т. е. вырабатываются однородные правила перемещения). Были получены сложные правила перемещения, в ряде которых присутствует явная зависимость от общего числа точек, участвующих в формообразовании (см., например, задачу окруживания [4]), а также используется коррекция правила перемещения каждой точки в зависимости от расстояния между ней и её соседями и их взаимного расположения на плоскости (как в задаче спрямления [3]). Существенным требованием было

также достижение заданного расстояния между соседними точками.

В [6] рассматривается похожая задача: задается случайный полигон и предлагается дискретный алгоритм перемещения вершин полигона так, что они выстраиваются вдоль эллипса. Каждой вершине в каждый момент времени доступна информация о координатах одной соседней вершины (т. е. рассматривается распределённая система с обменом информацией). Перемещение точек описывается линейным законом, однако затем используется нелинейная операция нормирования, и таким образом на этом шаге должна использоваться полная информация о системе: о координатах всех вершин полигона, а не только ближайших для каждой вершины соседей. Для такого алгоритма показана глобальная сходимость к эллипсу определённого вида.

В работах [1,7] рассматриваются более сложные многоагентные системы. Так, в [7] множество агентов в трехмерном пространстве составляет единую динамическую систему (многосвязную систему) и с однотипными локальными регуляторами. Решается задача о формировании агентами некоторой геометрической структуры для окружения цели. При этом каждый объект владеет информацией о своих координатах и о положении цели, а для решения задачи используется схема циклического преследования. В [1] исследуется формация в виде плоской цепочки объектов, движущихся друг за другом. В цепочке имеется лидер, который может совершать некоторые ограниченные маневры. Каждый из ведомых объектов должен управлять своим движением (вектором скорости) так, чтобы сохранялась дистанция до предыдущего объекта и направление движение на него. Объекты описываются набором динамических характеристик, а управление строится в виде стабилизирующего ПД-регулятора в обратной связи. Таким образом в работе [1] реализуется принцип «движение за лидером».

В настоящей работе мы будем рассматривать системы с распределённым управлением и с обменом информацией между агентами (в данном случае - точками). При этом под управлени-

ем будем понимать алгоритм движения агентов в виде указания правила перемещения (стратегии) для каждого агента. Для выработки правил будем использовать следующие предположения: 1) общее количество точек, участвующих в построении, неизвестно; 2) движение каждой точки зависит только от положения её самой и двух её соседей - предыдущего и следующего по номерам, и эта зависимость одна и та же для всех внутренних вершин; 3) одна или обе концевые вершины могут быть как закрепленными, так и подвижными. Таким образом, используется минимум информации. Будем далее рассматривать случай непрерывного движения.

1. Расположение точек на прямой

Общая задача формулируется следующим образом: дано п точек с фиксированными номерами 1,..., п, произвольно расположенных в пространстве Мт, т ^ 1, с координатами хі, ..., хп. Каждой точке х^ доступна информация о координатах двух соседних (по номерам) точек хі-і, хі+1, і = 1,... ,п. Все точки двигаются по своим собственным траекториям.

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

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

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

1.1. ОДНОМЕРНЫЙ СЛУЧАЙ (т = 1)

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

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

Случай 1. Пусть концевые точки Х1 и хп неподвижны. Предлагается использовать следующий алгоритм: каждая внутренняя точка стремится занять среднее положение между двумя своими соседями. При этом траектории перемещения ищутся как решение линейной системы ОДУ

(І)

x1 = x1(0),

xi-1 + Xi+1

x i

xn

2

— xi, i = 2,..., n — 1,

= Xn(0).

Обозначим x = (x2,..., xn-1) Є Mn-2, тогда в матричном представлении

(2) X = Ax + b, где

(3) A =

-І І/2 0

І/2 -І І/2

0

0

M(n—2)x(n—2)

0

І/2 -І

b = (x1(0)/2,0,...,0,Xn(0)/2)T Є Rn-2.

Теорема 1. Система (2) устойчива и существует стационарное положение точек: xi(t) ^ x1(0) + П—1 (xn(0) — x1(0)) при t ^ ж, i = 2,..., n — 1, т. е. все «внутренние» точки из любого начального положения стремятся выстроиться на отрезке с фиксированными концами x1 и xn на равном расстоянии друг от друга.

Доказательство. Собственные значения матрицы A (3), согласно [2], вещественны, различны и равны Лк = —2 sin2 2(П-1), k = 1,..., n — 2, т. е. A отрицательно определена при любых n, следовательно, система (2) устойчива и, кроме того, существует A-1. Положим x* = —A-1b и в (2) сделаем замену переменной z = x — x*; в результате получим устойчивую однородную систему Z = Az с той же матрицей A. Так как z ^ 0 при t ^ ж,

669

то Xi ^ х* = хх(0) + П-х (хп(0) - хх(0)) при £ ^ ж, где компоненты вектора х* найдены в явном виде как решение системы Ах* = —Ь, i = 2, ...,п - 1.

Оценим скорость сходимости. Обозначим Л = шахд. ЛеЛд. Так как 0 < Х) < § при любых п и к = 1,..., п — 2, то в силу

монотонности функции f (у) = — 8ш2(у) на этом интервале Л = Лх = — 2 8т2 2(га7-1). Для системы г = Аг верна оценка ||г(£)|| ^

ел*||г(0)||, откуда с учётом замены ||х(£) — х*|| ^ ел*||х(0) — х*||.

л 2

При больших п получим оценку скорости сходимости: Л ~ — 2^2 .

Пример 1. Начальное положение восьми точек задается координатами хо = [—1,1; 0,2; —4,8; 4,109; 9,5; 8,84; —3,7; 5,62]. Траектории точек х^£), найденные в результате решения системы (1), отображены на рис. 1. Пунктирами обозначены неподвижные концевые точки.

t

Рис. 1. Начальное положение и траектории точек из примера 1

Согласно оценке ||х(£) — х*|| ^ ел*||х(0) — х*||, в момент времени £ = 50 гарантированная точность равна е = 0,0947, что

670

соответствует результатам моделирования: ||x(50)-x*|| = 0,0189. К указанному моменту времени точки уже достигли требуемого расположения и расстояния di = xi+l — xi, i = 1, ...,n — 1, получающиеся между ними в этот в момент времени, равны

d = [0,9644; 0,9634; 0,9622; 0,9597; 0,9583; 0,9563; 0,9557],

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

Замечание 1. Все расчеты в настоящей статье производились в системе MATLAB 7 с использованием функции решения ДУ ode45.

Рассмотрим чуть более усложненную постановку задачи. Случай 2. Пусть концевая точка xn свободна и целью является привести ее в положение xn = xl + R, R = const, а остальные точки выстроить на отрезке [xl,xn] на равном расстоянии друг от друга.

В общем случае, когда xl тоже не закреплена, система имеет

вид

Xl = ^(t),

(4)

Xi =

xi_ 1 + xi+l 2

— xi, i = 2, . . . , n — 1,

X n

= xl + R — xn,

где функция <^(t) непрерывно дифференцируема по t. В частном случае, когда конец xl = <^(t) = const, в матричном виде получаем систему вида

(5) X = Ax + b,

в которой x = (x2,..., xn) є R

n_ l

(б) A =

—1 1/2 0

1/2 —1 1/2

0 0

... 0

... 0

—1 1/2

0 —1 У

R(n_l)x(n-l)

b = (xi(0)/2, 0,..., 0,xi(0) + R)T є R

nl

t

Теорема 2. Система (5) устойчива и Жі(і) ^ жі(0) + 1Е

при і ^ ж, і = 2,... ,п, т. е. все «внутренние» точки стремятся выстроиться вдоль отрезка [ж1,ж1 + Е] на равном расстоянии друг от друга.

Доказательство. Для доказательства отрицательной определенности матрицы А (6) используем теорему Лапласа о разложении определителя [2, 5] и результаты теоремы 1. Так, разложив определитель ! = ёе^А — АЕ) (Е - единичная матрица в М(п-1)х(п-1)) на сумму элементов последней строки, умноженных на их алгебраические дополнения, получаем ! = (—1 — А)!єі(А — АЕ). Здесь матрица А полностью совпадает с матрицей (3), для которой ранее была доказана устойчивость (см. теорему 1), а дополнительное собственное значение А = — 1. Следовательно, система (5) устойчива. Значения ж* : Жі(і) ^ ж*, і = 2,...,п — 1, находятся как решение системы уравнений Аж* = — Ь и выписываются в явном виде: ж* = ж1(0) + (—11) Е. Так как набор собственных значений матрицы (6) отличается от множества собственных значений матрицы (3) лишь одним значением А = — 1 = шах^ ЕвА^, то при больших п для рассматриваемой системы верна оценка скорости сходимости, полученная в теореме 1: А ^ .

Пример 2. Начальное положение десяти точек задается вектором жо = [3,8; 1,55; —1,47; 2,82; —3,37; 0,15; —2,52; —4,75; 3,8; —0,5]. Рассмотрим для примера более общую ситуацию, когда движение первой точки задано в виде Ж1 = —ж1 — ж2/2 — 2,5, Е = 7,85. Матрица системы здесь будет иметь вид

—1 —1/2 0

1/2 —1 1/2

А=

0

0 0 ... —11/2

0

0

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

Ь = (—2,5;0;..., 0;7,85)т Є М"

Є М"

0 —1

0

все её собственные значения отрицательны, т. е. система устойчива.

672

Сетецентрическое управление и многоагентные системы Траектории точек жДЬ) отображены на рис. 2.

6

4

2

0

Рис. 2. Начальное положение и траектории точек из примера 2

При Ь = 50 точки уже достигли желаемого взаимного расположения и ||ж(50) — ж* У = 0,2467, что

соответствует теоретическим оценкам. В этот в момент времени получаем следующие расстояния между точками: й = [0,8268; 0,8310; 0,8410;0,8556; 0,8723;

0,8894; 0,9037; 0,9137; 0,9177] и они продолжают выравниваться с течением времени, а дистанция К между концевыми точками к этому моменту равна К = 7,8512. •

1.2. ДВУМЕРНЫЙ СЛУЧАЙ (т = 2)

Если концы отрезка закреплены, то для п точек получаем систему размерности 2п, аналогичную (1), - в ней отдельно находятся значения первой и второй координаты каждой точки, которые

мы стандартно обозначим х и у, в каждый момент времени:

(7)

Хі

Х »

= хі(0), х„ = х„(0),

х»—і + х»+і 2

— хі, і = 2,..., п — 1,

Уі = Уі(0), Уп = Уп(0),

= У»-1 + ут _ у»

у» — 2 ,

і = 2,..., п — 1.

Матрица системы в этом случае выглядит следующим образом:

(8)А =

( —1 1/2 1/2 —1

0 0 0 0

0 0 ...

0 0 ...

—1 0 ...

0 -1 1/2

0 1/2 -1

0 0 ...

0 0

0 0 0

-1

п—2)х2(п—2)

Ь = (хі/2, 0,..., 0, х„/2, уі/2, 0,..., 0, у„/2)т є М2(п-2).

Теорема 3. Система с матрицей (8) устойчива и

(хй(^),Уй(£)) ^ (хі + п—Г (хп — хі) ,Уі + П—і (Уп — Уі))

і ^ ж, к = 1,..., п — 2.

при

Доказательство. Матрица данной системы является блоч-

где А і = А2 - устойчивые и совпада-

ной вида А

А1 0

0 А 2

ют с матрицей (3). Таким образом, для каждой из этих подсистем выполняются условия теоремы 1, что обеспечивает сходимость каждой из координат г-го агента к желаемой позиции со скоростью, оценка которой получена в теореме 1.

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

є

Пример 3. Зададим начальные координаты восьми точек: Хо = [3,1410; 28,5591; 26,2366; 10,6667; 34,1505; 21,1505; 11,0968; 31,8710], уо = [26,9677; 6,8387;37,6344; 6,4946; 17,2473; 15,4516; 21,6344; 30,7519.] Решение системы типа (7) показано в фазовом пространстве на рис. 3; получены следующие расстояния между точками на отрезке (при Ь ~ 500, когда точки остаются в малых окрестностях целевых равноудалённых позиций): й = [4,1374; 4,1463; 4,1303; 4,1503; 4,1303; 4,1463; 4,1374]. •

X

Рис. 3. Начальное положение, траектории и конечное положение точек из примера 3

2. Расположение точек на окружности

ПОЛЯРНЫЕ КООРДИНАТЫ (т = 2)

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

Дано п ^ 2 точек с полярными координатами (0г, рг). Считаем начало координат фиксированным центром желаемой окружности (этого всегда можно достичь путем параллельного сдвига). Пусть в этой точке располагается некий «информационный центр» который имеет возможность измерять координаты (0г, Рг) каждого из агентов и передавать эти данные участникам движения так, что каждой точке доступна информация о координатах двух соседних (предыдущей и следующей по номерам) точек. Далее считаем, что углы измеряются в пределах от 0 до 2п и возрастают по направлению против часовой стрелки (правильный порядок следования точек).

Задача: синтезировать алгоритм движения такой, чтобы все точки расположились на одной окружности заданного радиуса К в правильном порядке на равном расстоянии друг от друга (или, что эквивалентно, через равные углы).

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

Зададим движение точек системой:

Легко показать, что данная система также устойчива и точки из любого начального положения сходятся к позициям на окружности: 0г(£) ^ 01 (0) + Пі--!(0га(0) -01 (0)), Рг(і) ^ К (доказательство аналогично теореме 1), и в результате все точки выстраиваются на заданном расстоянии К от центра и через равные углы друг от друга, а следовательно, на равном расстоянии друг от друга.

Пример 4. Координаты восьми начальных точек зада-

ны векторами Хо = [-1,9571; 3,7802; -3,3512; 5,7105; -0,8847;

01(0),

0п(0),

—(Рі — К), і = 1,..., п.

1,7426; 1,5818; -0,2949]; уо = [1,8499; -3,6729; -1,3137; -0,3485;

-3,7265; 2,9223; -3,8338; 2,4933]. Радиус целевой окружности К = 4,86.

X

Рис. 4. Начальное положение, траектории и конечное положение точек из примера 4

При £ = 50 получаем й(0) = [0,7752; 0,7783; 0,7894;0,7964;0,8102;0,8159; 0,8220] или расстояния между точками

й = [3,6737; 3,6879; 3,7374; 3,7692; 3,8307; 3,8561; 3,8834]. • Возможны также другие постановки задачи о расположении вдоль окружности: один или оба конца могут быть незакрепленными; может не существовать «центра», относительно которого задаются расстояния-радиусы (решение с помощью нелинейных алгоритмов) и т. д.

3. Заключение

Предложены эффективные локальные линейные правила перемещения точек для их выстраивания вдоль прямой и окружности. Основными преимуществами предлагаемых алгоритмов яв-

677

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

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

Литература

1. ВАСИЛЬЕВ С. Н., КОЗЛОВ Р. И., УЛЬЯНОВ С. А. Анализ координатных и других преобразований моделей динамических систем методом редукции // Труды Института математики и механики РАН. - 2009. - Т. 15, №3. - С 38-55.

2. ВОЕВОДИН В. В., КУЗНЕЦОВ Ю.А. Матрицы и вычисления. - М.: Наука, 1984. - 320 с.

3. ЛЕОНТОВИЧ А.М., ПЯТЕЦКИЙ-ШАПИРО И.И., СТАВ-СКАЯ О.Н. Некоторые математические задачи, связанные с формообразованием // Автоматика и телемеханика.

- 1970. - №4. - С. 94-107.

4. ЛЕОНТОВИЧ А.М., ПЯТЕЦКИЙ-ШАПИРО И.И., СТАВ-СКАЯ О.Н. Задача окруживания в математической модели формообразования // Автоматика и телемеханика. -1971.-№2.-С. 100-110.

5. ХОРН Р., ДЖОНСОН Ч. Матричный анализ. - М.: Мир, 1989. - 655 с.

6. ELMACHTOUB A.N., VAN LOAN C.F. From Random Polygon to Ellipse: An Eigenanalysis // SIAM Review. - 2010. -Vol. 52, №1. - P. 151-170.

7. HARA S., TAE-HYOUNG K. Stabilization of Multi-agent Dynamical Systems for Cyclic Pursuit Behavior // Proc. 47th IEEE Conf. CDC 2008, Cancun. - P. 4370-4375.

8. YANG QUAN CH., ZHONGMIN W. Formation Control: A Review and A New Consideration // Proc. IEEE Int. Conf. on Intelligent Robots and Systems, 2005. - P. 3664-3669.

LINEAR ALGORITHMS FOR CONTROL OF GEOMETRICAL ALLOCATION OF AGENTS IN MULTI-AGENT SYSTEMS

Yana I. Petrikevich, Institute of Control Sciences of RAS, Moscow, Cand.Sc. ([email protected]).

Abstract: Simple and effective linear local algorithms for agents movement and allocation on a line and on a circle are proposed. They are based on the following assumptions: 1) the total number of agents in the system is unknown; 2) the future position of each agent is defined by its own coordinates and coordinates of its closest neighbors; 3) one or both of end agents may be fixed or movable. Stability and convergence for developed systems are proven and a number of examples are given to demonstrate the work of the proposed algorithms.

Keywords: multi-agent systems, formation control, linear systems.

Статья представлена к публикации членом редакционной коллегии Б. Т. Поляком

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