Метод распределения целей в группах интеллектуальных мобильных роботов

Известия ТулГУ. Технические науки. 2016. Вып. 11. Ч. 3 УДК 681.51/004.896

МЕТОД РАСПРЕДЕЛЕНИЯ ЦЕЛЕЙ В ГРУППАХ ИНТЕЛЛЕКТУАЛЬНЫХ МОБИЛЬНЫХ РОБОТОВ

Д. А. Белоглазов, В.В. Соловьев, А.Е. Титов, В.И. Финаев, И.О. Шаповалов

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

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

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

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

Одним из первых алгоритмов, разработанных для решения проблемы распределения целей (задач, функций) между группой агентов, является Венгерский алгоритм [3], который позволяет распределить агентов по целевым функциям таким образом, чтобы минимизировать затраты на их выполнение.

Также в области распределения целей находят применение алгоритмы на основе рыночной экономики [2], согласно которым роботы предлагают собственные цены за подходящие для них цели. Однако в этом случае оптимальное целераспределение не гарантируется. Кроме того, желаемые целевые позиции должны быть известны заранее для вычисления цены каждым участником аукциона.

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

Кроме того, для решения задачи целераспределения нередко используются подходы с применением метода релаксаций Лагранжа [7], линейного целочисленного программирования и нелинейных сетевых потоков [8], динамического программирования [9], нечетких моделей [6], нейронных сетей [10], генетических алгоритмов [5], муравьиных алгоритмов

[4].

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

Большая часть представленных в литературе алгоритмов предназначена для решения задачи назначения роботам из ^ целевых точек в структуре строя группы GW или распределения среди них некоторого набора целевых задач (функций). Их использование ограничивается случаем, когда количество целевых точек (задач, функций) совпадает с числом роботов (M = N), то есть такие алгоритмы не позволяют назначить цели более одного робота либо, как в [1], они предполагают наличие дополнительной априорной информации. Это значительно ограничивает эффективность организации роботами кластеров и групп и не гарантирует максимального приращения общего целевого функционала.

В текущий момент времени в зависимости от выбранного набора критериев (дистанция, энергоресурс и т.п.) может потребоваться обеспечение некоторой цели gj более чем одним роботом из совокупности ^. При этом необходимое число роботов заранее не известно, например, если совокупность ^ роботов является гетерогенной и требуется объединение

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

gj.

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

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

Предположим, что все цели из множества G и роботы из совокупности ^ пронумерованы произвольным образом. Как отмечено ранее, одни и те же задачи разные роботы из совокупности ^, даже гомогенные, выполняют с различной эффективностью. Это может быть обусловлено положением роботов, их энергозапасом, состоянием их различных подсистем и т.п. В системе управления робота ^оценивается эффективность достижения данным роботом каждой цели, и полученная оценка передается остальным роботам из ^.

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

На каждой итерации величина оценки эффективности целераспределения определяется следующим выражением:

t *

Yg = Z AYg

t =to 124

где DYg - вариации оценки, зависящие от произошедшего на данной итерации выбора роботами из совокупности Ж целей из множества G.

Общая оценка эффективности достижения i-м роботом j-й цели определяется соотношением

n

Fi, j = I KCl - fpj,

l=1

где KC - весовой коэффициент, определяющий степень важности некоторого критерия из множества С = {c1, c2,..., cb...,cn}; fJ - частная оценка эффективности достижения цели относительно этого критерия,

fcl = с1 max - cl

, J с1 max

где с}, с} max - оценки текущего и максимального значений критерия c.

Задача распределения целей состоит в том, чтобы в каждый момент времени t цели из множества G были распределены роботами из совокупности Ж между собой с точки зрения обеспечения максимума функционала

N M

Yg = II Fij  max

i=1J=1

при условии, что роботы из совокупности Ж не всегда обладают полной информацией об обеспеченности целей.

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

1) распределение роботами из Ж между собой целей из G на основании текущей информации о параметрах каждого робота и расстоянии до каждой цели gj g G. Эта информация содержится в виде оценок эффективности (2) в массиве F = [FiJ };

2) оценка необходимости перераспределения целей между роботами с учетом информации о текущей обеспеченности целей, содержащейся в одномерном массиве P = {PXJ}, а также прогноза обеспеченности целей и

изменения коммуникационных связей между роботами в результате перераспределения. В случае необходимости происходит перераспределение целей gJ между роботами R.

Рассмотрим алгоритм распределения целей. На первом этапе роботы из совокупности Ж по очереди выбирают цели из множества G на основе максимальных оценок эффективности F, вычисленных без учета критерия обеспеченности целей. Результаты выбора каждого робота передаются остальным роботам. При этом максимальные оценки FiJ для вы-

бранной каждым из N роботов цели j номер выбранной цели ^.сохраняются в массиве D2Xm . Таким образом, для каждой из целей формируется кластер роботов, выбравших эту цель.

На втором этапе в (2) учитывается и критерий обеспеченности целей в виде слагаемого KP  fPj. В соответствии с (3) чем больше роботов

выбирают цель g, тем меньше для нее оценка fPj и, следовательно, меньше интерес к этой цели со стороны других роботов из ^. Результаты вычисления KP  fpi сохраняются в массиве FP. Общие оценки эффективности F обновляются. При этом у робота Ri приращение AF j для j-й цели будет тем больше, чем меньше она обеспечена. Для уменьшения количества вычислительных операций массив D перезаписывается с учетом приращения AF}, j для целей из G, выбранных на предыдущем этапе роботами из ^.

На третьем этапе из совокупности ^ выбираются роботы, для которых оценка эффективности для текущей цели g, пересчитанная на втором этапе с учетом обеспеченности целей, стала меньше, чем оценка эффективности для другой цели g*. По результатам обмена информацией между роботами составляется дополнительный двумерный массив B n X 2, в который записываются либо нули, либо номера целей g* и новые значения F, j оценки эффективности каждого робота R}, у которого это значение выше, чем значение Fi, j для цели gj.

На четвертом этапе выполняется проверка массива B. Если он содержит только нулевые элементы, то в этом случае считается, что достигнуто наиболее эффективное распределение целей между роботами ипро-цесс решения задачи завершается.

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

функционала (4) путем замены текущей цели gj на новую цель gj, определяют робота Rj, для которого выгоднее всего осуществить указанную замену. Другими словами, из массива B выбирается наибольшее значение

оценки эффективности F*j.

На пятом этапе выполняется прогноз вариации AYg для принятия решения о выборе роботом Rj новой цели g*. Если согласно прогнозу вариация AYg положительна, то текущая цель gj. заменяется роботом Ri на

новую цель g*. Для этого сначала необходимо вычислить:

- сумму оценок эффективности Fj j всех роботов, входящих в кластер, в котором находится выбранный робот Ri,

vgj = ZF j,

J 1

- сумму оценок эффективности Fi, j всех роботов, входящих в кластер, в котором будет находиться робот Rj, если выберет новую цель g*

Y * = Z Flj,

g* i

сумму

Y

~gj+gj gj+g*

Y

gj + gj gj gj

Затем анализируются возможные изменения (5) - (7) в результате выбора роботом новой цели g*. Для этого рассчитываются новые массивы оценок эффективности Fa и обеспеченности целей Pa и аналогично

(5) - (7) рассчитываются суммы Y , y * и Y(new) * .

gj g * gj+g *

Далее проверяется условие

г

*

h

Выполнение условия (8) означает, что выбор роботом Rj новой цели g* приведет к увеличению функционала (4).

Если условие выполняется, то робот R} переходит в новый кластер, и происходит переход ко второму этапу алгоритма. Если условие (8) не выполняется, то в массив B для данных робота Ri и цели g* записываются нули и происходит переход к четвертому этапу алгоритма.

Рассмотрим пример реализации представленного в настоящей работе алгоритма распределения целей.Пусть в начальный момент времени t0 количество целей из множества G равно двум (M = 2), количество роботов из совокупности ^ равно четырем (N = 4). Стратегическая ситуация на карте показана на рис. 1. Необходимо, чтобы роботы из ^ распределили цели из G таким образом, чтобы обеспечить максимум функционала (4).

Согласно алгоритму на первом этапе роботы по очереди выбирают цели на основе максимальных оценок эффективности F, отражающих характеристики и состояния роботов и целей, а также среды Е. В качестве критерия c(3) будем учитывать только расстояния Sj между каждым роботом Rj и каждой достижимой целью gj.

В соответствии с рис. 1 для каждого робота из St расстояния^ до каждой из целей множестваС сохраняются массивы = [3 5,5], S2 = [2 3,5], S3 = [З 4], S4 = [4,5 2,5].

Для определения общей оценки эффективности FUj (2) каждым роботом Rj вычисляется частная оценка эффективности /Л (3) достижения

им каждой цели gj относительно критерия расстояния S,/.

fS _ ^ij шах ~ SiJ

JUj о

0 j max

где Sj jmax - максимальное расстояние от /'-го робота до j-й цели; Sfj -текущее расстояние от z-го робота до j-й цели.

Робот 4

Робот 1

Робот 3

Рис. 1. Расположение роботов относительно целейв момент времени t0

о

Положим весовой коэффициент , определяющий степень важности критерия SIJ? равным единице. Поэтому ffj (9) согласно (2) будет совпадать с Ffj. Далее роботы формируют общий массив этих оценок:

F =

0,45 0,63 0,45 ОД 8 0 0,36 0,27 0,54

Роботы RVR3 выбирают первую цель gi и создают первый кластер, а робот R4 выбирает вторую цель g2 и создает второй кластер.

Роботами формируется массив Р = [3 l] обеспеченности ими целей из множества G.

На втором этапе роботами вычисляется частная оценка эффективности f^ (3), которая влияет на интерес к этой цели со стороны роботов:

j = ^jpL, N = Pjmax,

где Pj - обеспеченность j-й цели; Pjmax - максимально возможная обеспеченность j-й цели, численно соответствующая общему количеству роботов Nиз совокупности ^ .Положим коэффициент KP, определяющий сте-

P P

пень важности критерия Pj, равным единице. Поэтому слагаемое K • fj j согласно (2) будет совпадать с ffj. Таким образом, массив FP = [0,25 0,75] .Далее роботы для каждой цели из G обновляют значения

Fjj в массиве F:

F =

0,70 0,88 0,70 0,43 0,75 1,11 1,02 1,29

На третьем этапе роботы делятся между собой информацией, составляя массив B: для кого из них оценка эффективности Fj из массива F' стала больше для другой цели, чем для той, которую они уже выбрали:

"0,75 1,11 1,02 0"

B'

2 2 2 0

где номер j-й строки совпадает с номером робота, в первом столбце записаны оценки эффективности Fj*j достижения новой цели g* для робота R,

а во втором - номер цели g* . Так как массив B содержит ненулевые элементы, на четвертом этапе роботы выбирают между собой, для кого потенциально выгоднеепоменять текущую цель gj на новую цель gj. Роботы

выбирают максимальное значение оценки эффективности F**2 = 1,11 (элемент b21) и определяют номера новой цели j = 2 и робота i = 2.

На пятом этапе для выполнения прогноза вариации AYg и приня-

*

тия решения роботом R2 о выборе новой цели g2 вычисляются:

- сумма оценок эффективности Fjj всех роботов, входящих в кластер, в котором находится выбранный робот

R2 Y = Z F-1 = 0,7 + 0,88 + 0,7 = 2,28; i

- сумма оценок эффективности Fj j всех роботов, входящих в кластер, в котором будет находиться робот R2, если выберет новую цель g2

Y *= ZF*2 = 1,29;

g2 ,

- сумма Y(ргеУ] = Y + Y л = 2,28 +1,29 = 3,57. Sl+Sl gl si

Затем роботами анализируются возможные изменения в распреде-

лении в результате выбора роботом R2 новой цели g?. Для этого рассчитываются новые массивы Fa оценок эффективности, Ра обеспеченности целей

и Ff:

Т>а=[2 2], Ff = [0,5 0,5],

, "0,95 1,13 0,95 0,68 F' =

а также суммы Ygl, Y^ и Y

0,5 0,86 0,77 0,94

S2 ~~ Z\+g*2

=2^,1=1^,Y * =Y + Y „ = 3,7.

gli Si i S\+Si Si

Далее проверяется условие

Y&ew) > y(prev) ^

~~ S\+Si S\+Si

Условие (16) выполняется. Это означает, что выбор роботом R2 новой цели g*2 приведет к увеличению функционала (4). Поэтому осуществляется переход робота R2 во второй кластер (рис. 2).

Кластер_2

Кластер!

Рис. 2. Распределение роботов по кластерам относительно каждой из целей на основе массива оценок эффективности F

Далее происходит переход ко второму и третьему этапам. Выполняется перерасчет массивов F, Р и Fp (принимают значения массивов (14) соответственно) и перезаписываются массивы D и В:

D =

0,95 0,86 0,95 0,94 12 12

, в =

0 1,13 0 0 0 10 0

На четвертом этапе роботы проверяют массив В' (17), выбирают максимальное значение оценки эффективности F*1 = 1,13 (элемент Ь21) и

определяют номера новой цели j = 1 и робота i = 2.

На пятом этапе роботы производят вычисления, которые приводят к необходимости выполнения роботом R2 операции, обратной той, что была выполнена на предыдущем этапе - его переходу в первый кластер. Но условие, обратное (16), выполняться не будет. Поэтому в соответствующую строку массива B робот R2 запишет нули, и четвертый этап повторится. Теперь массив B будет содержать только нулевые элементы, что означает достижение наиболее эффективного распределения целей из множества G между роботами из совокупности ^ и увеличение оценки эффективности целераспределения (2) на текущей итерации за счет положительной вариации DYg, определяемой выполнением условия (16).

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

Работа выполнено за счет гранта Российского научного фонда (проект №14-19-01533) в Южном Федеральном университете.

1. Каляев И.А., Гайдук А.Р., Капустян С.Г. Модели и алгоритмы коллективного управления в группах роботов. М.: Физматлит, 2009.

2. Bertsekas D., Castanon D. Parallel synchronous and asynchronous implementations of the auction algorithm // Intern. J. of Parallel Computing. 1991. Vol. 17. P. 707 - 732.

3. Kuhn H. The Hungarian Method for the Assignment Problem // Naval Research Logistics. 1955. Vol. 52. P. 7 - 21.

131

Список литературы

278 с.

4. A Hybrid Heuristic Ant Colony System for Coordinated Multi-Target Assignment / B. Liu, Z. Qin, R. Wang, Y-B. Gao, L-P. Shao // Information Technology Journal. 2009. Vol. 8. № 2. P. 156 - 164.

5. Lu Y., Miao W., Li M. The Air Defense Missile Optimum Target Assignment Based on the Improved Genetic Algorithm // J. of Theoretical and Applied Information Technology. 2013. Vol. 48. № 2. P. 809 - 816.

6. Mukhedkar R., Naik S. Weapon Target Allocation Problem Using Fuzzy Model // Intern. J. of Application or Innovation in Engineering & Management. 2013. Vol. 2. № 6. P. 279 - 289.

7. Ni M., Yu Z., Ma F., Wu X. A Lagrange Relaxation Method for Solving Weapon-Target Assignment Problem // Hindawi Publishing Corporation Mathematical Problems in Engineering. 2011. Vol. 1. P. 1 - 10.

8. Rockafellar R. Network Flows on Monotropic Optimization // USA, New-York: Wiley, 1984.616 p.

9. Sikanen T. Solving Weapon Target Assignment Problem with Dynamic Programming // Independent research projects in applied mathematics. 2008. 32 p.

10. Wachholder E. A Neural Network-Based Optimization Algorithm for the Static Weapon-Target Assignment Problem // ORSA J. on Computing 4. 1989. P. 232-246.

11. Zavlanos M., Pappas G. Dynamic assignment in distributed motion planning with limited information // Proc. of the American Control Conference. USA, New-York City, 2007. P. 1173 - 1178.

Белоглазов Денис Александрович, канд. техн. наук, доц., d. beloglazov@gmail. com, Россия, Таганрог, Южный федеральный университет,

Соловьев Виктор Владимирович, ст. преп., soloviev-tti@mail.ru, Россия, Таганрог, пер. Некрасовский, 44, Южный федеральный университет,

Титов Алексей Евгеньевич, канд. техн. наук, ассист, alex. evgeny. titov@gmail. com, Россия, Таганрог, Южный федеральный университет,

Финаев Валерий Иванович, д-р техн. наук, проф., зав. кафедрой, finaev val iv@tsure.ru, Россия, Таганрог, Южный федеральный университет,

Шаповалов Игорь Олегович, ассист., shapovalovio@gmail.com, Россия, Таганрог, пер. Некрасовский, 44, Южный федеральный университет

METHOD OF DISTRIBUTION OF GOALS IN GROUPS OF INTELLIGENTMOBILE ROBOTS

D.A. Beloglazov, V.V. Soloviev, A.E. Titov, V.I. Finaev, I.O. Shapovalov

132

In this paper the problem of the distribution of goals between intelligent mobile robots in groups is considered. An iterative method with the prediction of changes in the total target functional determining the effectiveness of the distribution task solution is proposed. Distribution of goals between the robots is done in a decentralized way. This method allows development on its basis the goal distribution algorithms characterized by the properties of versatility, flexibility and scalability. The common target functional, which is the basis of the method, belongs to a class of multi-criteria functional for the estimation of efficiency. An enlarged description of the iterative algorithm that implements the method proposed by the authors for the distribution of goals in groups of robots is presented. To improve the understanding of the principles of the proposed algorithm, there is a model example in which the process of distribution of two goals among four intelligent robots is described in details with specific numerical values.

Key words: distribution of goals, allocation of goals, robotics, group robot control, target functional.

Beloglazov Denis Aleksandrovich, candidate of technical sciences, docent, d. beloglazov@gmail. com, Russia, Taganrog, Southern Federal University,

Soloviev Victor Vladimirovich, senior lecturer, soloviev-tti@mail.ru, Russia, Taganrog, Southern Federal University,

Titov Alexey Evgenievich, candidate of technical sciences, assistant, alex. evgeny. titov@gmail. com, Russia, Taganrog, Southern Federal University,

Finaev Valeri Ivanovich, doctor of technical sciences, professor, head of chair, fin, val iv@tsure.ru, Russia, Taganrog, Southern Federal University,

Shapovalov Igor Olegovich, assistant, shapovalovio @gmail. com, Russia, Taganrog, Southern Federal University