ВЕСТНИКА
ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
морского и речного флота имени адмирала с. о. Макарова ..
5. Мирзаджанзаде А. X. Этюды о моделировании сложных систем нефтедобычи. Нелинейность. Неравномерность. Неоднородность / А. Х. Мирзаджанзаде, М. М. Хасанов, Р. Н. Бахтизин. — Уфа: ГИЛЕМ. — 1999. — 464 с.
6. Жиленков А. А. Применение нейронечёткого моделирования для задач идентификации многокрите-риальности в транспортной отрасли / А. А. Жиленков, С. Г. Черный // Вестник Самарского государственного университета путей и сообщений. — 2014. — № 1 (23). — С. 104-110.
7. Черный С. Г. Идентификация внешних параметров сигналов для экспертных подсистем в составе устройств судовых электроэнергетических систем / С. Г. Черный, А. А. Жиленков // Научно-технический вестник СПбГПУ Информатика. Телекоммуникации. Управление. — 2014. — № 3 (198). — С. 28-36.
8. Ильиных А. В. России есть возможности для изготовления бурового оборудования для континентального шельфа / А. В. Ильиных // Тезисы выступления главного конструктора ЗАО «Уралмаш — Буровое оборудование» 2005 года на заседании рабочей группы ТПП РФ по развитию производства отечественного оборудования для работы на шельфе. [Электронный ресурс]. — Режим доступа: http://www.derrick. ru/?f=z&id=8407 (дата обращения: 17.04.2015).
9. Черный С. Г. Интеллектуальная поддержка принятия решений при оптимальном управлении для судовых электроэнергетических систем / С. Г. Черный, А. А. Жиленков // Вестник Государственного университета морского и речного флота имени адмирала С. О. Макарова. — 2014. — № 3 (25). — С. 68-75.
10. Седов В. А. Нечеткая система удержания судна на курсе / В. А. Седов, Н. А. Седова, В. С. Перече-сов // Южно-Сибирский научный вестник. — 2012. — № 1. — С. 86-87.
11. Жиленков А. А. Перспективные пути повышения эффективности диагностирования параметров надежности эксплуатации морского бурового оборудования / А. А. Жиленков, А. А. Железняк, С. Г. Черный // Вестник Государственного университета морского и речного флота имени адмирала С. О. Макарова. — 2015. — № 1 (29). — С. 90-95.
УДК 681.51 А. А. Чертков,
канд. техн. наук, доц.
ИТЕРАЦИОННЫЙ АЛГОРИТМ ВЫБОРА ОПТИМАЛЬНОЙ СТРАТЕГИИ ГРУППОВОГО ВЗАИМОДЕЙСТВИЯ ПОДВИЖНЫХ ОБЪЕКТОВ
AN ITERATIVE ALGORITHM FOR CHOOSING THE OPTIMAL STRATEGY OF GROUP INTERACTION FOR MOVING OBJECTS
Создание эффективных алгоритмов оптимизации группового взаимодействия подвижных объектов экстремальными методами на основе компьютерных моделей представляет собой самостоятельную научную проблему, получившую важные приложения на водном транспорте и в других отраслях народного хозяйства.
Проблема выбора наиболее эффективной стратегии группового взаимодействия подвижных объектов (судов технического или транспортного флота, находящихся на внутренних водных путях) связана с решением оптимизационных многопараметрических задач, характеризующихся высокой размерностью, сложной зависимостью оценок эффективности (ценности) задач от технологических параметров подвижных объектов, внешних условий, что значительно усложняет разработку адекватных моделей и проведение машинных экспериментов. В связи с этим в решении данной проблемы, особенно в случае функционирования подвижных объектов в заранее неизвестной среде, отсутствуют общие подходы и методики.
Ключевым вопросом в проблеме создания систем группового взаимодействия подвижных объектов является разработка таких алгоритмов и программ функционирования их в динамически изменяющейся среде, которые бы обеспечивали экстремальное значение целевого функционала в достижении заданной цели. В статье рассмотрен итерационный алгоритм планирования групповых действий подвижных объ-
Выпуск 4
Выпуск 4
ВЕСТНИК
ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
МОРСКОГО И РЕЧНОГО ФЛОТА ИМЕНИ АДМИРАЛА С. О. МАКАРОВА
ектов при выборе целей. Алгоритм основан на использовании итерационной процедуры оптимизации группового взаимодействия подвижных объектов по выбору наиболее эффективной стратегии в достижении поставленной цели. На основе алгоритма разработана программа, реализуемая в кодах MatLab, и рассмотрен конкретный пример распределения целей между роботами, при котором обеспечивается максимум целевого функционала.
Creating effective group communication optimization algorithms for intelligent robots extreme methods based on computer models is an independent scientific problem, which has important applications in water transport and other economic sectors.
The problem for choosing the most effective group communication strategy for intelligent robots, connected optimal processes high dimensionality, a complex dependence of effectiveness evaluation (value) robots technological parameters tasks, the external environment, which considerably complicates machine experiments adequate models development. Therefore, in dealing with this problem, particularly in the case unknown environment robots, there are no common approaches and methodologies.
The key to creation group communication robots systems is the algorithms and programs development their dynamically changing environment that would be ensure extreme target functionality value in meeting the specified objectives.
Optimal planning group actions robots algorithm distribution targets is considered. The algorithm is based on an iterative procedure optimization of group communication robots for selecting the most effective strategy to achieve this goal. The program in MatLab code is developed for algorithm realization. Specific example for which the calculated selecting targets and choosing a solution that provides maximum target functional is presented.
Ключевые слова: алгоритм, группа, подвижные объекты, планирование групповых действий, целераспределение, целевой функционал, оценка эффективности, итерационная процедура.
Key words: the algorithm, group, moving objects, planning group activities, distribution targets, the target functional, effectiveness, evaluation, iteration procedure.
быть такие, как распознавание объектов и сцен, формирование моделей окружающей среды, планирование маршрутов движения и последовательности действий для достижения поставленной цели, управление динамикой движения объектов и др. [1] - [3].
Использование одиночных объектов не обеспечивает решение сложных задач при функционировании их в экстремальных ситуациях. Преимущества использования группы подвижных объектов очевидны: это и большой радиус действий, достигаемый за счет рассредоточения объектов по всей рабочей зоне, и расширенный набор выполняемых функций, и, наконец, более высокая вероятность выполнения задания, достигаемая за счет оперативного перераспределения целей между объектами группы в случае выхода из строя некоторых из них.
В настоящее время, в связи с развитием компьютерных технологий, проблеме группового взаимодействия подвижных объектов продолжает уделяться большое внимание. Вместе с тем, в решении данной проблемы, особенно при функционировании объектов в заранее неизвестной среде, не определены общие подходы и методики. Ключевым вопросом проблемы создания систем группового взаимодействия подвижных объектов является разработка таких алгоритмов и программ функционирования их в динамически изменяющейся среде, которые могут обеспечивать определение экстремальных значений целевых функционалов при достижении заданных целей.
Предлагаются алгоритм и компьютерная программа оптимального планирования групповых действий подвижных объектов, оснащенных бортовыми вычислительными устройствами, предназначенными для обеспечения функционирования управляемых объектов в реальном времени.
В общем виде задачу распределения целей между объектами можно сформулировать следующим образом. Предположим, что существует некоторое множество взаимосвязанных задач Z. е {Z}, обладающих ценностью P, определяющих различные целевые стратегии подвижных
РОБЛЕМЕ создания моделей подвижных объектов посвящено достаточно большое число исследований, проводимых как в нашей стране, так и за рубежом, начиная с середины 60-х гг. прошлого века. Основными областями применения подвижных объектов могут
объектов «коллектива». Пусть существует «коллектив», состоящий из n объектов Rj(j = 1, n), выполняющий задачи по выбору наиболее эффективной стратегии из множества
j < w- svj >. _ (1)
Задача состоит в получении такого распределения подвижных объектов Rj(j = 1, n) на множестве взаимосвязанных задач {Z}, при котором достигается экстремум функционала Y:
Y = F (S, Z, Q), (2)
Q = ip, S = Zk, Zk 6 Z, Z = {Zt\P}, n > m ,
i=1 __
где Z. e {Z} — цель подвижного объекта Rj (j = 1, n); P — вектор-функция оценок эффективности (ценности) задач. Если под точками пространства целей {Z} понимают, например, координаты точек расположения целей, то формулируют, соответственно, задачу нанесения максимального ущерба конкуренту или задачу максимального покрытия множества целевых задач. Если же под точками пространства целей {Z} имеют в виду различные подмножества запросов на обслуживание или различные подмножества задач из некоторого потока, то приходят, соответственно, к задаче распределения запросов между объектами или распределения потока задач в компьютерной сети [4] - [6].
Для учета эффективности выполнения задач управления группой подвижных объектов, вводится параметр мощности стратегии выбора i-й задачи j-м подвижным объектом у . С учетом эффективности конкретизируем задачу: для группы мобильных объектов R необходимо выбрать такую стратегию S* e {S}, когда каждый объект Rj по стратегии выбирает наиболее ценную задачу на дискретном отрезке времени At
max (S) = S*,
S* ={,S2,...,St_!,Sj, i e{R},
Si = \{k ,..., Zm } ,
(3)
k, m e{z},
Wzj = f (Pj, Yi, j) ^ maX At e T.
Задача (3) решается на основе математического аппарата многокритериальной оптимизации. Анализ методов многокритериальной оптимизации выявил целесообразность использования метода справедливых компромиссов для поиска Парето-оптимального множества стратегий, набора стратегий с максимальной суммарной мощностью W [7], [8].
Введем меру относительного изменения эффективности стратегий для каждого k-го подвижного объекта группы R при переходе от множества стратегий D к D
Лу * (D, D.) =
Ду * (D, D.)
max у * (D)
De(Di,Dj )
, * e [1,S];
(4)
где Дуk (P,Dj) = уk (Dt) - уk (Dj) — абсолютное изменение значений суммарной мощности стратегий Yk(W) при переходе от множества стратегий D. к Dj.
Суммарное снижение мощности для группы подвижных объектов при переходе от множества стратегий D.к множеству Dj определяется как
ДУ mn( Di, Dj) = ^Ду k (Di, Dj);
n
Дуk (Di,Dj) < 0.
где n — количество объектов в группе R.
Множество стратегий для группы объектов Dj эффективнее множества D если выполняется условие
(5)
Выпуск 4
Выпуск 4
Dj ^ DP еСЛИ |АУmax (Di, Dj )| > |АУ min (Di, Dj ) . (6)
При выполнении условия (5) происходит переход от выполнения группой объектов R множества стратегий D. к выполнению множества D
Наглядным примером сформулированной задачи распределения целей может служить модельная задача, в которой под состояниями подвижных объектов и целей понимаются их координаты, а под эффектом — ущерб, наносимый конкуренту. Поэтому рассмотрим ее подробнее, приняв условия (1) и (2) для того же коллектива из n объектов Rj (j = 1, n). Предположим также, что эффект от достижения объектом R. цели Xt е {X} определяется значением некоторой оценки эффективности
dji = F(Sj, Xt, Kt), (7)
где К. — приоритет цели X.
Кроме того, введем ограничение, заключающееся в том, что число объектов в группе n одновременно направляемых на одну и ту же цель X, не должно превышать некоторой величины
n max, т. е.
П < nmax(i = \м)- (8)
Тогда задача распределения целей для группы подвижных объектов состоит в следующем: необходимо таким образом распределить (назначить) объекты Rj (j = 1, n) по целям Xi (i = 1, m), чтобы получить с учетом ограничений (5) максимальный суммарный эффект
Y = Х j (9)
j =1
где i — номер цели X, выбранной j-м мобильным объектом R. с учетом ограничения (5).
С введением ограничения (8) на число подвижных объектов, направляемых на одну цель, исходная задача целераспределения (1) - (3) обретает существенную сложность. Так, величина n ™ах, ограничивающая число подвижных объектов, одновременно направляемых на одну и ту же цель из множества целей {X}, важна с точки зрения стратегии поведения группы. Действительно, если, например, необходимо достичь как можно больше целей из множества {X}, то величину n ™ах необходимо задать как можно меньшей (например, n “ах = 1). В результате подвижные объекты будут стараться «рассредоточиться» по целям. Если же для некоторых целей установить величину n ,max больше, чем для других, то это будет давать объектам из группы возможность сосредоточить «большее внимание» на этих целях. Иными
словами, величины n,max (i = 1,m) должны выбираться, исходя из требуемой стратегии управления группой объектов (например, в зависимости от приоритета целей или от соотношения числа объектов и целей).
В данной постановке задача целераспределения (7) - (9) может быть решена с применением метода коллективного планирования действий [9] - [11], [12], согласно которому проблема разделяется на две основные части:
во-первых, необходимо разработать алгоритм выбора очередной цели j-м объектом группы в k-м итерационном цикле оптимизации коллективного решения;
во-вторых, разработать алгоритмы информационных обменов (взаимодействий) между объектами в группе в процессе реализации очередного итерационного цикла.
Рассмотрим алгоритмы более подробно.
1. Алгоритм выбора цели отдельным подвижным объектом группы. Основная идея метода
коллективного планирования действий состоит в том, что в каждом итерационном цикле оптимизации коллективного решения каждый объект R. (j = 1, n) выбирает такое свое допустимое текущее действие, которое вносит максимально возможный вклад в достижение общей (коллективной) цели.
Для сформулированной задачи распределения целей между подвижными объектами общая (коллективная) цель — это достижение максимума суммарного эффекта (9). Поэтому в очередном цикле оптимизации коллективного решения объект R. должен выбирать такую цель, которая дает максимальное приращение суммарного эффекта
ДУ. = Yj+1 - j1, (10)
где Yk+1 — значение суммарного эффекта, полученного в (k + 1)-м (к = 0, 1, 2, ...) итерационном цикле в результате выбора объектом R i-й цели Xk+1; Y^1 — значение суммарного эффекта, полу-
ченное в (к + 1) -м цикле итерации в результате выбора i-й цели Хк^объектом R,у С учетом (6), последнее выражение можно переписать в следующем виде:
AYk+1 =
f i
Z d\
k+1 ii
\ dk
l=j+1 J
(1 -1
Z dk - Z di
4+1
Z d‘i
i=j
k+1 k
= a;; - a,.
i=1
i=1
где dki — значение оценки эффективности выбора объектом R. цели Хк в k-м цикле итерации; dk+' — значение оценки эффективности выбора объектом R. новой цели на (к + 1)-м цикле итерации.
Таким образом, в каждом итерационном цикле оптимизации коллективного решения объект R. (j = 1, n) должен выбирать цель X для которой величина оценки эффективности в наибольшей степени превышает величину оценки эффективности цели, выбранной им в предыдущем цикле. Если значения оценок d.. (j = 1,n, i = 1,m) известны заранее и не меняются в процессе выполнения итерационной процедуры оптимизации коллективного решения, то задача существенно упрощается. В этом случае для достижения максимального приращения суммарного эффекта в очередном итерационном цикле оптимизации коллективного решения объект R., очевидно, должен выбрать ту цель Х. из множества {X}, для которой значение оценки эффективности d максимально. При этом необходимо учитывать и ограничения, накладываемые на число подвижных объектов, направленных на одну и ту же цель. Если, например, объект R' выбирает цель X., при этом общее число подвижных объектов, выбравших ту же цель, становится равным и.тах, то остальные объекты группы уже не будут иметь возможности выбрать в качестве своей цели данную цель X.. В то же время, может оказаться, что выбор цели X. некоторым другим объектом Rf (f Ф.) обеспечивает больший эффект (т. е. вносит большее приращение в функционал (9)) по сравнению с объектом R.. Поэтому в процессе выбора подвижными объектами целей необходимо каким-то образом осуществлять сравнение эффектов, вносимых различными объектами коллектива в результате выбора той или иной цели.
Для этого вводится в рассмотрение некоторая матрица D, содержащая n строк и m столбцов, где n — число объектов в группе, a m — число целей в множестве {X}. Примем, что индексы j = 1, n, будут соответствовать номерам строк матрицы D, а индексы i = 1, m — номерам столбцов
матрицы D. Будем считать, что элементы матрицы D, стоящие на пересечении .-й строки и /-го столбца определяются выражением (4), т. е. равны эффекту d получаемому в результате выбора
роботом Rцели Х.. __
В дальнейшем матрицу D = [dj (j = 1, n, i = 1, m), будем называть матрицей эффективности. С использованием матрицы эффективности D процедуру выбора цели подвижным объектом R. в очередном итерационном цикле оптимизации коллективного решения можно организовать следующим образом. Предположим, что каждый объект из группы обладает полной информацией обо всех элементах матрицы эффективности D. Тогда при выборе цели объектом R. в очередном итерационном цикле оптимизации коллективного решения сначала в строке матрицы D, соответствующей его номеру ., осуществляется поиск максимального элемента d Минимальное значение индекса . этого максимального элемента соответствует номеру цели с наименьшим номером, выбор которой объектом Rj вносит не меньший вклад в суммарный эффект (9), чем выбор других целей.
Выпуск4
|Выпуск4
¥72
В то же время, как уже отмечалось, подобный выбор i-й цели j-м подвижным объектом может оказаться весьма далеким от оптимального с точки зрения достижения максимума суммарного эффекта Y. Поэтому полученное значение i фиксируется, и выполняется проверка, является ли выбранное значение d.. максимальным в i-м столбце. Таким образом, проверяется, имеются ли в коллективе объекты, для которых величина эффекта от достижения данной цели будет больше, т. е. имеются ли более эффективные «претенденты» на i-ю цель. Если таковых нет, цель с номером i «закрепляется» за j-м подвижным объектом, если его номер минимален из всех объектов группы, имеющих тот же эффект. В противном случае объект R «отказывается» от выбора цели в текущем итерационном цикле.
Если j-й объект в текущем итерационном цикле выбрал некоторую цель, этот выбор считается окончательным до завершения итерационной процедуры. Подвижный объект, выбравший цель, передает ее и свой номер другим объектам из группы. Те, в свою очередь, должны исключить объект R. из списка «претендентов» на оставшиеся цели. Наиболее просто это осуществляется путем присвоения элементам d j-й строки матрицы D нулевых значений. Таким образом, после каждого итерационного цикла список «участников» целераспределения сокращается.
После каждого выбора некоторой цели каким-либо объектом наращиваются счетчики подвижных объектов, выбравших эту цель, и, если, например, i-я цель выбрана n. = n,max объектами, то эту цель необходимо также исключить из списка распределяемых целей до конца итерационной процедуры. Это осуществляется путем присвоения элементам d i-го столбца матрицы D нулевых значений всеми объектами, продолжающими участвовать в процедуре распределения целей.
Если в процессе целераспределения оказывается, что n. = nimax, то i-ю цель будем называть обеспеченной; если n. < nimax, то i-я цель считается необеспеченной.
Процедура распределения целей продолжается до тех пор, пока матрица D полностью не
m
«обнулится». Если n < ^ п““ (т.е., число объектов меньше, чем необходимо для решения целевой
i=1
задачи), все подвижные объекты «выберут» цели, а часть целей останется необеспеченной. Если
m
же n > ^ n, то все цели будут распределены и обеспечены, но для части подвижных объектов
i=1
цели не будут определены.
2. Алгоритм информационных взаимодействий в «коллективе» подвижных объектов. Для реализации изложенного алгоритма выбора цели каждый подвижный объект группы должен располагать информацией о том, какие цели уже выбраны другими объектами группы. На основе этой информации объект R. должен осуществлять модификацию имеющихся у него массивов L и N, а также матрицы D для того, чтобы исключить объекты, уже сделавшие свой выбор, из процесса целераспределения. Для этого, в случае выбора объектом Rr некоторой цели X, он должен передать всем другим объектам группы сообщение вида < r,S“,lr >, т.е. свой номер г, текущее состояние Sr0 и номер выбранной им цели l Получив данное сообщение, остальные подвижные объекты группы
модифицируют свои массивы N и L. При этом r-му элементу своих массивов L = [lj, j = 1, n] они присваивают значение l Для формирования массива счетчиков выбранных целей N каждым подвижным объектом достаточно просмотреть массив L и выполнить несложную процедуру подсчета его ненулевых элементов, так как в исходном состоянии всем элементам массива L присваиваются нулевые значения, а в процессе выполнения итерационной процедуры эти массивы модифицируются в каждом цикле.
Для демонстрации практической реализации рассмотренного алгоритма разработана программа, составленная в кодах MatLab, позволяющая получить решение, соответствующее оптимальному распределению целей в группе подвижных объектов. Приводится пример с подробным решением для одного итерационного цикла процедуры оптимизации целераспределения.
Пример. Пусть имеется коллектив из 24 подвижных объектов и определены десять целей, т. е. n = 24, m = 10. Матрица оценок эффективности D0 и массив Nmsx имеют следующий вид:
D =
5.1 5.8 8.9 0.4 5.7 5.6 3.4 0.9 0.5 0.7
ОО 00 8.2 9.8 6.4 0.5 8.5 1.8 3.1 6.7 0.9
5.9 ОО 00 7.7 2.8 9.3 3.5 2.1 4.6 6.0 8.0
1.5 9.8 5.8 5.4 7.3 4.5 9.1 1.0 5.3 9.4
2.0 0.0 9.2 7.0 7.4 0.5 6.8 10.0 7.3 6.8
4.1 8.7 5.8 5.0 0.6 1.8 4.7 3.3 7.1 1.3
7.5 6.1 0.2 5.4 8.6 6.6 9.1 3.0 7.8 7.2
8.2 9.8 1.2 4.5 9.3 3.3 1.0 0.6 2.8 1.1
7.9 5.3 8.6 1.2 9.8 8.9 7.5 2.9 6.9 1.2
3.2 4.8 4.8 4.9 8.6 1.2 7.4 0.5 5.6 6.4
5.3 8.0 8.4 8.5 7.9 9.8 5.6 5.1 4.0 3.3
0.9 2.3 2.1 8.7 5.1 5.4 1.8 7.6 0.6 6.5
1.1 5 .0 5.5 2.7 1.8 7.1 6.0 6.3 7.8 7.5
1.4 9.0 6.3 2.1 4.0 10.0 3.0 0.9 3.4 5.8
6.8 5.7 0.3 5.6 1.3 2.8 1.3 0.8 6.1 7.4
5.0 8.5 6.1 6.4 0.3 4.1 2.1 7.8 7.4 2.3
1.9 7.4 3.6 4.2 9.4 4.6 8.9 9.1 1.0 7.3
5.0 5.9 0.5 2.1 3.0 7.6 0.7 5.3 1.3 9.7
1.5 2.5 4.9 9.5 3.0 8.2 2.4 1.1 5.5 8.6
0.5 6.7 1.9 0.8 3.3 1.0 0.5 8.3 4.9 0.8
8.5 0.8 1.2 1.1 4.7 1.8 4.4 3.4 8.9 3.7
5.6 6.3 2.1 1.4 6.5 3.6 0.1 3.0 8.0 3.7
9.3 6.6 1.5 1.7 0.3 0.6 9.0 7.5 7.3 6.9
7.0 7.3 1.9 6.2 8.4 5.2 2.0 0.1 0.5 6.0
N max = [3 1 2 1 3 2 1 2 3 2];
Необходимо распределить заданные цели между подвижными объектами так, чтобы функционал (9) имел максимальное значение.
Решение. В соответствии с изложенным алгоритмом образуем вспомогательные (в начале процедуры — нулевые) массивы
N = [0 0 0 0 0 0 0 0 0 0]
и L= [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0],
в которых число элементов равно числу целей и числу подвижных объектов, соответственно, а также переменную матрицу D, которая в начале процесса равна D0, т. е. D = D0.
В рассматриваемом случае L = [lj, j = 1, n], т. е. меньше числа объектов в группе (коллективе). Следовательно, по окончании работы алгоритма все цели должны быть обеспечены. Далее представлены результаты работы вычислительного алгоритма в виде фрагмента программы, отображающей первый цикл итерационного процесса.
Фрагмент программы завершается вычислением массивов L и N распределения объектов по номерам выбранных ими целей, представленных в виде элементов вектора N:
L = [0 3 0 2 8 0 7 0 5 0 0 0 0 6 0 0 5 10 4 8 9 9 1 0] N = [1 1 1 1 2 1 1 2 2 1]
Выпуск 4
D =
5.1 0 8.9 0 5.7 5.6 0 0 0.5 0.7
0 0 0 0 0 0 0 0 0 0
5.9 0 7.7 0 9.3 3.5 0 0 6.0 8.0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
4.1 0 5.8 0 0.6 1.8 0 0 7.1 1.3
0 0 0 0 0 0 0 0 0 0
8.2 0 1.2 0 9.3 3.3 0 0 2.8 1.1
0 0 0 0 0 0 0 0 0 0
3.2 0 4.8 0 8.6 1.2 0 0 5.6 6.4
5.3 0 8.4 0 7.9 9.8 0 0 4.0 3.3
0.9 0 2.1 0 5.1 5.4 0 0 0.6 6.5
1.1 0 5.5 0 1.8 7.1 0 0 7.8 7.5
0 0 0 0 0 0 0 0 0 0
6.8 0 0.3 0 1.3 2.8 0 0 6.1 7.4
5.0 0 6.1 0 0.3 4.1 0 0 7.4 2.3
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
7.0 0 1.9 0 8.4 5.2 0 0 0.5 6.0
Как видно из построенных векторов L и N, в первом цикле реализации алгоритма второй объект выбирает третью, четвертый — вторую, пятый — восьмую, седьмой — седьмую, девятый и семнадцатый — пятую, четырнадцатый — шестую, восемнадцатый — десятую, девятнадцатый — четвертую, двадцатый — восьмую, двадцать первый и двадцать второй — девятую, двадцать третий — первую цели. Остальные подвижные объекты «отказываются» от выбора, так как в этом цикле для других объектов выбор соответствующих целей более эффективен. В конце первого цикла происходит обмен информацией между объектами группы и формирование массива L, модификация массива N и матрицы D в соответствии с предложенным алгоритмом.
Так как часть подвижных объектов сделала свой выбор, соответствующие им строки в матрице D обнулены. Значения элементов массива L соответствуют номерам выбранных целей, а номера его элементов — номерам выбравших эти цели подвижных объектов. Оставшиеся подвижные объекты в следующем итерационном цикле распределяют между собой неиспользованные цели. В результате выполнения второго цикла массивы L, N принимают вид
L = [3 3528071506096 10 05 10 48991 1],
N = [312 1 3 2 1 2 3 2]
По окончании этого цикла получена нулевая матрица D размерностью (24 х 10).
Сравнивая массивы N и Nmax, видим, что они равны. Это означает, что все цели выбраны необходимым количеством подвижных объектов, и поставленная задача решена. Результирующий массив L отражает оптимальное решение задачи распределения целей между подвижными объектами данной группы. Шестой, десятый, двенадцатый и шестнадцатый подвижные объекты не выбрали цели, так как объектов оказалось больше, чем необходимо для обеспечения целей. Кроме того, эффективность выбора этими объектами целей ниже в сравнении с выбором, произ-
ВЕСТНИКА
ГОСУДАРСТВЕННОГО УНИВЕРСИТЕТА
морского и речного флота имени адмирала с. о. Макарова ..
веденным другими объектами группы. Можно показать, что суммарный эффект от решения задачи целераспределения, определяемый значением функционала (9), равным Y = 180,0, является локальным максимумом.
В приведенном примере число циклов итерационной процедуры оптимизации коллективного решения при реализации группового алгоритма распределения целей меньше числа объектов. На первой итерации цели выбраны тринадцатью подвижными объектами, на второй — семью подвижными объектами.
Как видно из алгоритма, выбор цели (принятие решения) каждый раз осуществляется подвижным объектом, который имеет наибольшую или одинаковую оценку эффективности своего действия по отношению к данной цели по сравнению с подвижными объектами группы, еще не принявшими решения о своем действии. Поэтому по окончании работы алгоритма функционал (9) имеет максимальное значение, т. е. принятое решение о распределении заданного массива {Х} целей между подвижными объектами группы является оптимальным.
Таким образом, на основе представленного вычислительного алгоритма и программы в кодах MatLab, возможно оперативно осуществлять выбор такого распределения целей, при котором достигается наибольшая эффективность групповых действий подвижных объектов.
Список литературы
1. Сахаров В. В. Алгоритм оптимального планирования группового взаимодействия роботов /
B. В. Сахаров, А. А. Чертков, Д. С. Тормашев // Морской вестник. — 2014. — № 4. — C. 119-122.
2. Шаповалов И. О. Применение групп мобильных роботов в сложных транспортных задачах / И. О. Шаповалов // Известия Южного федерального университета. Технические науки. — 2012. — № 2. —
C. 141-146.
3. Каляев И. А. Модели и алгоритмы коллективного управления в группах роботов / И. А. Каляев, А. Р. Гайдук, С. Г. Капустин. — М.: ФИЗМАТЛИТ, 2009. — 280 с.
4. Rochefort Y. Guidance of flocks of vehicles using virtual signposts / Y. Rochefort [et al] // Proceeding of the 18th IFAC World Congress. — Milan, Italy. — 2011. — Pp. 5999-6004.
5. Гайдук А. Р. Оптимальное перемещение тела интеллектуальным роботом / А. Р. Гайдук, С. Г. Капу-стян, И. О. Шаповалов // Мехатроника, автоматизация, управление. — 2009. — № 7. — С. 43- 46.
6. Каляев И. А. Распределенные системы планирования действий коллективов роботов / И. А. Каляев, А. Р. Гайдук, С. Г. Капустин. — М.: Янус-К, 2002. — 292 с.
7. Юревич Е. И. Управление роботами и робототехническими системами / Е. И. Юревич. — СПб.: Изд. СПбГПУ, 2001.
8. Шаповалов И. О. Распределенная система управления группой автономных мобильных роботов / И. О. Шаповалов // Информационное противодействие угрозам терроризма. — 2012. — № 19. — С. 105-108.
9. Каляев И. А. Использование принципов коллективного принятия решений при управлении группой автоматических лифтов / И. А. Каляев // Мехатроника. — 2001. — № 4. — С. 30-35.
10. Thomas R. Kurfess (Ed.). Robotics and Automation Handbook. CRC Press LLC, 2005. — 579 p.
11. Каляев И. А. Управление коллективом интеллектуальных объектов на основе стайных принципов / И. А. Каляев, А. Р. Гайдук, С. Г. Капустян // Вестник Южного научного центра РАН. — 2005. — Т. 1. — № 2. — С. 20-27.
12. Каляев И. А. Интеллектуальные роботы / Под общей ред. Е. И. Юревича / И. А. Каляев, В. М. Ло-хин, И. М. Макаров [и др.]. — М.: Машиностроение, 2007. — 360 с.
Выпуск4