УДК 519.711 ББК 22.18
КРАТКИЙ ОБЗОР МНОГОАГЕНТНЫХ МОДЕЛЕЙ
Кузнецов А. В.1,
(Воронежский государственный университет, Воронеж)
Представлен обзор различных областей применения многоагент-ных систем. Рассматриваются примеры многоагентных моделей разных типов в механике, биологии, транспорте, моделировании роя и строя роботов и в экономике.
Ключевые слова: агентно-ориентированное моделирование, автономные агенты, многоагентные системы.
Введение
В настоящее время многоагентные системы находят все большее применение в самых разных отраслях науки и техники. В отличие от традиционных способов математического моделирования они позволяют работать не с интегральными характеристиками описываемой системы, а с каждым ее элементом в отдельности. Пользуясь агентной парадигмой, можно уйти от решения громоздких или просто неизвестных уравнений, описывающих исследуемый объект, можно легко применять параллельные вычисления. Наконец, часто при достаточно большом количестве агентов можно получить и традиционные модели из агентных.
В данном обзоре будет идти речь о примерах применения агентных моделей. Разумеется, этот обзор ни в коей мере не претендует на полноту, но автор ставил цели привести примеры моделей из самых разных отраслей знания. Для ясности дальнейшего изложения дадим следующие определения.
Сложная система - система, которая может быть разложена на многие компоненты, имеющие относительно много взаимосвя-
1 Александр Владимирович Кузнецов, кандидат физико-математических наук, доцент ([email protected]). 6
зей между ними, так что поведение каждого компонента зависит от поведения остальных [60].
Агент - это реальная или виртуальная автономная сущность, работающая во внешней среде, способная воспринимать и действовать в этой среде. Агент может общаться с другими агентами, проявлять независимое поведение, которое может рассматриваться как следствие его знаний, взаимодействия с другими агентами и целей, которых он должен достичь [21].
Часто то, чем агенты воспринимают внешнюю среду, называют сенсорами, а то, чем агенты воздействуют на среду - эффекторами (или актуаторами). Под данное определение подпадает довольно большое количество сущностей - от компьютерных программ и роботов до людей.
Таким образом, многоагентная система - это сложная система, которая состоит, в основном, из агентов. Агентные модели представляют собой своего рода микромасштабную модель, которая имитирует одновременные действия и взаимодействия нескольких агентов в попытке воссоздать и предсказать появление сложных явлений. Этот процесс является результатом выхода из нижнего (микро) уровня систем на более высокий (макро) уровень.
В одном из наиболее полных учебников по искусственному интеллекту [54, с. 47] приводится следующая классификация агентов на основе их степени их «интеллектуальности», которая, по мнению авторов, охватывает все агентные системы:
1. Простые рефлекторные агенты, которые осуществляют действие на основе своего текущего восприятия. Они могут эффективно действовать только лишь в случае полностью наблюдаемого окружения.
2. Основанные на модели рефлекторные агенты. Данный тип агентов имеет внутри себя модель ненаблюдаемой в настоящий момент части окружения, например, историю предыдущих восприятий и действий агента. Такие агенты могут действовать в частично наблюдаемом окружении.
3. Основанные на цели агенты. Это основанные на модели
агенты, имеющие информацию о цели, т.е. перечень желательных состояний.
4. Основанные на полезности агенты. Эти агенты при функционировании максимизируют функцию полезности, которая позволяет сортировать возможные состояния, в которых может оказаться агент, по степени их полезности.
5. Обучающиеся агенты. Данная категория агентов может работать в изначально неизвестных средах и постепенно накапливать сведения о наиболее эффективных стратегиях поведения.
Модель убеждений, желаний и намерений (belief, desire, and intention model, BDI) - популярная техника проектирования агентов [49]. В этой модели «убеждения» - это известные агенту сведения о мире, а также правила вывода новых сведений из доступных, «желания» соотносятся с планируемыми задачами агента, а «намерения» - с действиями, которые агент должен выполнить для осуществления своих задач. В эту модель включают также «события» - то, что может изменить «убеждения», «желания» и «намерения». Классические модели BDI используют темпоральную Computational Tree Logic CTL*, однако следует понимать, что буквальное (а не концептуальное) следование таким конструкциям может существенно затруднить разработку программного обеспечения в силу трудности реализации CTL*.
Автор настоящей работы хочет подчеркнуть, что он не ставил себе целью составить обзор методологий построения мно-гоагентных систем. Такие обзоры, особенно в части логико-семиотического направления, уже существуют, в том числе и на русском языке (например, [11]). Вместо этого автор попытался подобрать показавшиеся ему интересными многоагентные модели из разных отраслей науки и техники, уже реализованные в виде программного (или аппаратного) обеспечения, чтобы создать у читателей общую картину практического применения много-агентной методологии.
Говоря об агентах, следует упомянуть близкую концепцию «актора» [26]. Актор - это сущность, которая в ответ на полученное сообщение может:
1) отправить конечное количество сообщений другим акторам;
2) создать конечное число новых акторов;
3) определить поведение, которое будет использоваться для следующего полученного актором сообщения.
Главные различия между актором и агентом в том, что агент активен постоянно, тогда как актор активизируется при получении сообщения, и что агенты общаются, изменяя окружающую обстановку, таким образом, для общения нет необходимости заранее знать, что агент существует, тогда как акторы сообщаются по заранее известному адресу. Модель агентов может быть реализована с помощью акторов.
1. Предыдущие обзоры общего характера
В одном из первых (1999 г.) обзоров [27] было предложено следующее деление методологий построения агентных систем на
1. Объектно-ориентированные методологии, в которых агенты (в том числе и BDI-агенты) рассматриваются как активные объекты.
2. Методологии инженерии знаний (Knowledge engineering, KE), в которых используются онтологии и решатели задач.
3. Формальные подходы, основанные на применении формальных языков и темпоральной модальной логики.
4. Смешанные варианты.
В более поздней работе [11] содержится более подробный вариант вышеприведенной классификации:
1. Моделирование индивидуального и коллективного поведения агентов в многоагентной системе.
2. Теоретико-игровое моделирование взаимодействия агентов.
3. Лингвистическое направление, связанное с моделированием речевых актов для построения протоколов коммуникации между агентами.
4. Организационное моделирование многоагентных систем, связанное с общей теорией систем и организаций.
5. Построение моделей распределенных систем на базе сетей Петри.
6. Программистское направление, связанное с моделями акторов, параллельным и агентно-ориентированным программированием.
7. Логико-семиотическое направление, связанное с моделированием ментальных свойств (интенциональных характеристик) агентов с помощью неклассических логик.
В обзоре 2000 г. [62] многоагентные системы (Multiagent Systems) рассматривались вместе с распределенным решением задач (Distributed Problem Solving) как составные части распределенного искусственного интеллекта (Distributed Artificial Intelligence). В указанном обзоре излагались различные обычные сценарии для многоагентных систем и перечислялись возможности для применения техник машинного обучения. Предлагалась классификация систем агентов по двум измерениям:
1. Степень неоднородности агентов (гомогенные и гетерогенные системы).
2. Количество и вид взаимодействия агентов друг с другом.
По первому измерению системы агентов можно подразделить на гомогенные и гетерогенные, по второму - различать общающихся и необщающихся агентов, кооперативных и соревнующихся агентов и т.п.
В докладе 2004 г. [17] различалось аналитическое (с помощью уравнений) и имитационное моделирование (Simulation), применяемое в случае затруднительности решения или формулировки аналитической модели. В имитационном моделировании выделялись такие подходы, как System Dynamics, дискретно-событийное моделирование и агентное моделирование. При этом демонстрировалось, что решение в агентной модели при достаточно большом количестве агентов соответствует решению в рамках System Dynamics и предлагался довольно известный сейчас инструмент мультипарадигменного моделирования AnyLogic.
К 2006 г. уже существовали десятки сред разработки агент-ных систем. Например, в обзоре [50] перечислялись декларативные, императивные и смешанные языки описания агентов и многие существовавшие на тот момент IDE. Одним из ключевых свойств агентных систем является способность к параллельному и распределенному вычислению и различные решения в этой области рассмотрены в обзоре 2014 г. [51]. В упомянутом обзоре сравнивалась производительность систем Repast Simphony, Mason, NetLogo, Gama, а также нативно поддерживающих параллельные вычисления систем RepastHPC, D-Mason, Pandora, Flame и JADE. Один из наиболее полных обзоров поддерживаемых в настоящее время агентных платформ приведен в [36]. В числе прочего, там указано, что наиболее популярной средой агентного моделирования является написанная на java JADE.
Существуют работы, в которых многоагентные системы исследуются с точки зрения классической теории управления (так называемое сетевое управление) [9]. Для сетевого управления характерно сочетание классического аппарата теории управления с методами теории графов. Например, в работе [14] указывается, что задачи управления, такие как управление коллективом роботов, распределенный интеллект, роевой интеллект, распределенное принятие решений, распределенное познание, управление перегрузками в сетях, коллективное движение в биологии, синхронизация осцилляторов в физике, распараллеливание в теории оптимизации, распределенная оценка, совместная оценка, равновесие в экономике, моделирование социальных взаимодействий и теория игр могут быть проанализированы в соответствии с теорией взаимосвязанных динамических систем. Эти науки имеют несколько взаимопересекающихся исследовательских сообществ; по этой причине они характеризуются различными определениями и различными подходами, начиная от строгого математического анализа и заканчивая экспериментальным исследованием. По этой же причине отсутствует общая терминология: например, динамические системы могут именоваться роботами, агентами, узлами, процессорами и объектами. Ансамбль называется груп-
пой, сетью, взводом, роем, командой и кластером, а алгоритмы получают разные названия, такие как контроллеры, протоколы и динамика. В цитируемой работе термин «агент» используется для обозначения отдельной динамической системы, а «сеть» или «коллектив» - для ансамбля. Формулируются задачи нахождения консенсуса, построения строя, оптимального размещения ресурсов на языке динамических систем.
В диссертации [65] рассматриваются задачи поиска консенсуса и синхронизации агентов, возникающие во многих отраслях науки. Агенту соответствует некоторая динамическая система, консенсус и синхронизация исследуются в сетях отдельных динамических систем, связанных в соответствии с некоторой топологией, которая определяется графом связи. Сами системы моделируются обыкновенными дифференциальными уравнениями. В вышеупомянутой диссертации описывается куб сложности связанных систем (рис. 1). Если положить, что связь между отдельными системами описывается некоторой топологией, то можно выделить три независимых измерения сложности: сложность отдельных систем, сложность топологии связности и сложность самих связей.
©о
Рис. 1. Куб сложности для связанных динамических систем
В диссертации [65] выделяются диффузионно связанные системы, которые, в свою очередь, подразделяются на статически связанные и динамически связанные. В статически связанных системах, например (1)-(2), есть лишь зависимость от мгновенных значений состояний и нет состояния связи. Входы системы связаны с относительными состояниями алгебраическим уравнением:
(1) x(t) = u(t),
(2) u(t) = -L(t)x(t),
где x(t) £ Rra - вектор состояний систем, u(t) £ Rra - вектор входов систем, L(t) - зависящая от времени матрица Кирхгофа связи отдельных систем (в зарубежной литературе матрица Кирхгофа чаще называется матрицей Лапласа или дискретным лапласианом). Для графа Q = (V, Е, А) с матрицей весов ребер А матрица Кирхгофа определяется как
ЦА) = (-"«■t = 1: .
,г = j.
В противоположность этому динамически связанные системы характеризуются тем свойством, что они зависят от мгновенного значения относительных состояний и от состояния связи, т.е. сами описываются динамической системой. В динамических соединениях входы систем связаны с относительными состояниями дифференциальным уравнением. Пример динамически связанных систем:
(3) х к (t) = Axk (t)+Buk (t),
(4) Ук (t) = Cxk (t),
(5) zk (t)=E zk (t) + F 5k (t),
(6) uk (t) = G zk (t) + HS k (t),
N
(7) h(t) = £ wk,j(t)(yk(t) - y3(t)),
3=1
где xk (t) £ Rra - вектор состояний к-й системы; uk (t) £ W -вектор ее входов; ук (t) £ W - выходов; zk(t) £ Rm - состояние связи; Sk (t) - относительный выходной сигнал.
Следует отметить сборник лекций [19], в котором обобщается и систематизируется проблематика, связанная с сетевыми системами, т.е. с системами взаимосвязанных агентов (вид связей определяется графом). В указанном сборнике производится следующая классификация сетевых систем:
1) линейные системы, например, модели динамики мнений, компартментальные модели живых систем, модели оптимального патрулирования периметра и т.п., включающие
а) системы усреднения c дискретным временем вида
х(к + 1) = Ах(к), где А = (aij) - матрица п х п, aij ^ 0, ^™=1 а^ = 1,
б) системы усреднения с непрерывным временем вида
x(t) = Ax(t),
включая модели образования роя, непрерывные модели динамики мнений, модели соединения RC-элементов электрической цепи и пр. Во всех случаях, матрица А связана с графом связи отдельных систем через матрицу Кирхгофа.
2) нелинейные системы, включая
а) модели Лотка-Вольтерра популяционной динамики вида
х 1 = Xi(ri + апХ1 + ai2 Х2), X 2 = Х2(Г2 + а21Х1 + а22 Х2),
б) модели распространения вирусов вида
x(t) = р(I - diag(x(t)))Ax(t),
в) сети соединенных осциляторов с моделью Курамото
г) модели построения строя роботов, в которых необходимо поддерживать постоянное расстояние между определенными элементами строя.
Задачи сетевого управления освещаются во многих статьях отечественных авторов (например, [1, 4, 5, 18]): П.Ю. Чеботарева, Р.П. Агаева, Н.О. Амелиной, Я.И. Квинто и др.
2. Задачи, решаемые с помощью агентного подхода
2.1. Математика
Существуют многочисленные многоагентные подходы (роевая оптимизация и близкие методы) к решению задач дискретной оптимизации. Из них наиболее известны генетические алгоритмы, алгоритм муравьиной колонии и метод роя частиц. Менее известны алгоритм пчелиной колонии, искусственные иммунные системы, алгоритмы разумных капель, алгоритм кукушки и другие алгоритмы, основанные на биологических и физических метафорах. Данные подходы хорошо исследованы и им посвящено большое количество обзоров, например [61]. Однако следует отметить, что наблюдается тенденция к злоупотреблению подобными метафорами, когда под экзотической аналогией скрывается уже хорошо известный метод [32].
2.2. Механика
В механике твердого тела, в механике жидкости и газа существуют подходы, в которых среда рассматривается как множество последовательно движущихся по дискретной решетке или сталкивающихся фиктивных частиц, т.е. как клеточный автомат. Примерами таких методов является movable cellular automaton
вида
3 = 1
(MCA, [10]), Lattice Gas cellular automata и Lattice Boltzmann methods (LBM).
Пусть fi(x,t) - одночастичная функция распределения, дающая вероятность нахождения частицы со скоростью щ в клетке х в момент времени t. Скорость щ может принимать значение из некоторого конечного множества, зависящего от типа решетки, например vi = (cos(2m/6), sin(2^i/6)) для гексагональной сетки. Функция перехода клеточного автомата в LBM обычно состоят из двух шагов вида:
1. Релаксация (также говорят «шаг коллизий»)
fi(x,t + St) = fi(x,t) + -иг - fi),
т
где х - вектор координат клетки в решетке; - локальная функция равновесия, аппроксимирующая распределение Больцмана
it (R - универсальная газовая посто-
/ед= (2пКт)В/2 е 2-
янная; Т - температура; р - плотность среды; и - макроскопическая скорость газа; И - размерность пространства); т - время релаксации; 81 - шаг дискретного времени. 2. Распространение потоков:
№ + ёг5и Ь + 51) = й(х, Ь + 51).
Рис. 2. Тактовое функционирование клеточного автомата для LBM вида
В работе С. Вольфрама [66] рассматривается применение LBM к моделям жидкостей, описываемых уравнениями Навье-Стокса. Отметим, что в этих моделях применяют автоматы с треугольными, квадратными, шестиугольными и другими ячейками. 16
Общая схема классификации моделей имеет вид Оп(т. Здесь Вп - это размерность п решетки, (т - количество т соседей для клетки, включая ее саму. Преимуществом данных методов над традиционными методами вычислительной механики является легкость применения параллельных вычислений. Существуют специализированные обзоры таких подходов, составленные специалистами по механике (например, [63]), автору же данного обзора хочется отметить, что именно клеточные автоматы, первоначально описывающие динамику газа, породили многие из моделей поведения толпы.
2.3. Биология и медицина
Биомедицинские многоагентные модели обычно напоминают модели из предыдущего подраздела. В качестве клеток клеточного автомата в модели обычно берутся живые клетки. Например, в статье [13] описан двухмерный клеточный автомат (рис. 3), моделирующий развитие опухоли. В качестве ячеек автомата рассматриваются нормальные и опухолевые клетки, а функция перехода автомата учитывает уровень насыщенности кислородом, близость клетки к сосуду и разное поведение нормальных и раковых клеток. Показывается, что ток крови и неоднородность красных кровяных телец играют главные роли в развитии таких колоний клеток, даже когда красные кровяные тельца проходят через сосуды в нормальной, здоровой ткани.
Правила эволюции вышеуказанного клеточного автомата таковы:
1. Пустой или занятый сосудом элемент не развивается, за исключением случая, когда в соседнем занятом элементе происходит деление клетки.
2. Распределение кислорода рассчитывается путем решения соответствующей краевой задачи
(8)
(9)
(10)
— = У2Р - к(х)Р,
БРУР = V (Рв -Р), п|да ■ У Р = 0,
10 20 30 40 50 ео
Рис. 3. Начальное распределение элементов клеточного автомата. Черные клетки пустые, белые заняты сосудами, светло-серые -раковыми клетками и темно-серые -нормальными клетками
где Р - распределение внеклеточного кислорода, Др - коэффициент диффузии, к(х) - скорость потребления кислорода в позиции х, - вектор внешней к стенке сосуда единичной нормали, V - проницаемость сосуда, Рв - уровень кислорода внутри сосуда, п|да - вектор внешней единичной нормали к границе области. Величина к(х) обновляется на каждом шаге функционирования клеточного автомата и зависит от клеток в позиции х.
3. Тип клетки в занятом элементе хранится в векторе состояния. Клетки пытаются делиться на каждом шаге.
4. Правила процесса деления зависят от типа клетки. Для нормальной клетки определяется локальная концентрация кислорода. Если концентрация кислорода ниже порогового значения, клетка погибает, в противном случае пытается делиться. Пороговое значение определяется по состоянию ближайших соседей. Если клетка окружена по большей части нормальными, а не раковыми клетками, то фиксируется пороговое значение Ыт 1, в противном случае фиксируется Ир2 > ^р 1.
Правила для раковых клеток аналогичны правилам для нормальных клеток, за исключением того, что сравнение между уровнем кислорода и пороговым значением определяет только то,
будет ли клетка делиться. Правила гибели раковой клетки определяются по-другому. Если с клеткой соседствует больше раковых клеток, чем нормальных, тогда для нее фиксируется пороговое значение Ст 1, в противном случае фиксируется Ст2 > Ст1.
Неравенства Ст 1 < Ст2 и Ыт 1 < Мт2 означают, что клетки с большей вероятностью делятся, если они, в основном, окружены клетками того же типа.
5. Элементы, занятые раковыми клетками, в которых локальная концентрация кислорода ниже порогового, входят в покоящееся состояние, в течение которого большая часть функций клетки приостанавливается, включая пролиферацию. При входе в это состояние запускается таймер, увеличивающийся на единицу каждый шаг, когда ячейка остается в состоянии покоя. Если таймер достигает заданного значения, клетка погибает. Однако, если в какой-то момент уровень кислорода перейдет выше порогового значения, ячейка вернется к размножающемуся состоянию, а ее таймер сбросится до нуля.
6. Элементы, занятые нормальными и раковыми клетками, являются потребителями кислорода.
7. Если уровень кислорода в элементе, занятом клеткой, выше порога, то клетка будет делиться, если в ее окрестности радиуса К есть пустые элементы. Если свободное место есть, то новая клетка переходит в свободный элемент с наибольшей концентрацией кислорода. Иначе клетка не может делиться и погибает.
Модель роста опухоли в статье [44] также основана на клеточном автомате, подобном вышеупомянутому, но учитывает генетические особенности злокачественных клеток, делающих их нечувствительными к сигналам прекращения роста, выключающими программу клеточной смерти (апоптоза) и т.п.
В статье [45] моделируется процесс функциональной адаптации костной ткани с помощью гибридного (т.е. сочетающего дискретные и непрерывные правила) клеточного автомата, подобного используемым в механике твердого тела.
В статье [24] приведена простая многоагентная модель эпидемии. Модель была предназначена для исследования влияния та-
ких факторов, как начальное количество инфицированных, плотность популяции и максимальное количество клеток, через которое может распространяться инфекция. Далее это направление исследований получило определенную популярность и сейчас существуют агентные модели эпидемии, учитывающие образцы человеческого поведения, полученные из реальных данных, мобильность и т.д., например, [22].
2.4. Неклассические вычисления
Многоагентный подход применяется в неклассических вычислениях, например, в биологических вычислениях. Слизевик РНузатит ро1усерка1ыт (гигантское многоядерное одноклеточное существо, рис. 4) часто применяется как модельный организм для биологических вычислений, который может быть запрограммирован различными внешними стимулами. В ответ на эти стимулы он растет, меняет конфигурацию, выпускает ложноножки и т.п. [30], что и кодирует определенные операции над числами, помимо этого слизевик способен к обучению и самообучению. Например, в свое время этот слизевик был использован в качестве системы управления роботом, избегающим света.
Рис. 4. РНу8атит ро1усерка1ыт на стволе дерева (фотография /тапкетгоеп -/Искт, СС БУ 2.5, НИр8://соттоп8^1Ытей1а.ог£^/Мех.ркр?сиг1й=18930526)
Существует сайт http://www.phychip.eu/, посвященный проекту PhyChip - построению вычислительной системы на основе слизевиков Physarum. В статье [29] рассматривается многоагент-ная среда, симулирующая поведение Physarum polycephalum.
Поведение слизевиков привело к созданию моделей движения толпы [33]. Предлагается основанная на клеточном автомате модель Physarum, которая имитирует процесса поиска и диффузии пищи, роста организма, создания ложноножек для каждого организма. При этом выбору оптимального пути эвакуацией толпы соответствует оптимальный выбор ложноножки моделируемого организма Physarum.
Также существуют связанные с поведением слизевиков модели из различных видов неклассической логики и теории игр [55, 57, 58]. В статье [56] рассматривается клеточные автоматы с правилами, меняющимися на каждом ходу. Используя эти автоматы, возможно формализовать рефлексивные игры на основе контекста для к игроков на разных конечных или бесконечных уровнях рефлексии. Каждый игрок имеет собственное правило принятия решения, определяемое логической функцией на своих выигрышах в контексте, который постоянно изменяется. Это правила нулевого уровня рефлексии. Если игрок 1 следует правилу принятия решения, которое является логической комбинацией с решающим правилом игрока 2 нулевого уровня рефлексии, то мы говорим, что правило решения игрока 1 относится к первому уровню. Между тем, если игрок 2 следует правилу принятия решения, которое является логической комбинацией с решающим правилом игрока 1 первого уровня рефлексии, то говорится, что правило решения игрока 2 относится к второму уровню и т.д.
В работе [59] рассматривается роевое поведение алкоголиков с точки зрения неклассической логики. В качестве роев рассматриваются небольшие группы собутыльников. Было обнаружено, что алкоголики образуют сеть, состоящую из нескольких небольших групп. Задача оптимизации обычных напитков решена не небольшой группой, а всей сетью, т.е. несколькими группами, члены которых взаимосвязаны.
Дело в том, что каждая небольшая группа алкоголиков появляется и исчезает в разных условиях, но сеть, к которой относятся эти алкоголики, остается практически постоянной. Оказалось, что небольшие группы лиц, страдающих алкоголизмом, нестабильны и, обмениваясь своими членами, могут слиться или разделиться для оптимизации потребления алкоголя. Те же поведенческие закономерности наблюдаются у слизевиков: сплавление и расщепление перед аттрактантами для оптимизации их захвата.
Внешние стимулы (аттрактанты) для слизевиков представляют собой кусочки питательных веществ, разбросанных перед этим организмом. Аттрактанты для алкоголиков представлены местами, где они могут спокойно пить в небольших группах. 38% респондентов предпочитают пить в одном месте и 62% в разных местах. Аргументы при выборе мест следующие: короткое расстояние от дома, низкая цена, качество напитков.
2.5. Транспорт
Агентные (микроскопические) модели применяются для моделирования транспортных потоков, обычно однополосных. В основе подходов лежит концепция «о желании придерживаться при движении безопасной дистанции до лидера». В монографии [3] приводятся, например, модель оптимальной скорости Нагеля-Шрекенберга, основанная на клеточных автоматах, которая является простейшей. В этой модели на каждом шаге т ^ т + 1 состояние всех автотранспортных средств в системе обновляется в соответствии со следующими правилами (здесь Vп ^ - скорость, а вп - координата п-го транспортного средства):
1) ускорение (отражает тенденцию двигаться как можно быстрее, не превышая максимально допустимую скорость):
уп(т + 1) = тт{уп(т) + 1,утаХ};
2) торможение (гарантирует отсутствие столкновений с впе-
реди идущими автотранспортными средствами):
уп(т + 1) = тт[уп(т), 8п+1(т) - зп(т) - й], где (I ~ 7,5 м;
3) случайные возмущения (учитывают различия в поведении транспортных средств):
В работе [35] приводятся модели кратковременной динамики следования за лидером, которые описывают непрерывные задачи обратной связи (ускорение и торможение) и задачи дискретного выбора как ответ на окружающий транспортный поток. Стиль вождения агентов характеризуется параметрами модели - временем реакции, желаемой скоростью и т.п. Также используются переменные внутреннего состояния, соответствующие уму агента, для описания опыта водителя. На поведение водителя действуют соседние транспортные средства и другие внешние воздействия.
2.6. Модели толпы
Предположительно самая первая работа, описывающая агентный подход к моделированию роя или стаи, - это статья Рейнольдса [52]. В ней выделено три основных принципа построения роя:
• избегание столкновений: избегать столкновений с ближайшими соседями по рою;
• совпадение скоростей: пытаться двигаться с той же скоростью, что и ближайшие соседи по рою;
4) движение:
вп(т + 1) = 8п(т) + уп(т).
• центрирование по рою: пытаться держаться близко к ближайшим соседям по рою.
Автор предлагал применять вышеизложенные принципы для графического отображения роя частиц, но вскоре они нашли и другие применения.
В работе [31] использован двухмерный клеточный автомат (так называемый world-space cellular automaton, рис. 5, изображение из цитируемой ниже работы Ross Mead) с правилами, близкими к Game of Life Конвея, симулирующий образование роя (swarm) агентов с помощью поля социального потенциала. Агенты отталкиваются друг от друга, если слишком сильно приблизятся или притягиваются, если находятся достаточно далеко друг от друга. Сила отталкивания и (или) притяжения между двумя агентами описывается как
J ( ) - ¿ai ¿a2 '
где с1 , с2 ^ 0 , а1 > а2 > 0 - параметры агентов, d - расстояние между агентами. Если агент А обнаруживает соседей N\,... N на расстояниях di,... ,dk, то сила, примененная к агенту г соседом Ni будет
Си +
dZu + d™2i.
Суммарная сила, примененная к агенту А будет
k
F (А)- £ fA(di).
i=1
Предполагалось использование миниатюрных роботов, снабженных сенсорами и системой связи, с таким поведением при ликвидации чрезвычайных ситуаций.
Так вышло, что самая первая работа по моделированию движения группы людей, которую автор настоящего обзора прочел и которая определила его интерес к агентным системам - это
ÍA(di)
Рис. 5. World-Space Cellular Automaton и его ограничения: (а) робот между клетками сетки; (б) граница, окружающая автомат; (в) автомат оборачивается вокруг границы; (г) два робота пытаются занять одну и ту же клетку
статья [7]. В ней применяется клеточный автомат с вероятностной локальной функцией перехода, изначально предложенный для моделирования динамики газов, для построения модели движения неорганизованной группы людей между препятствиями, например, между ограждениями в метро.
Следует отметить, что в России сложилась своя собственная школа математического моделирования поведения толпы, и стоит упомянуть в связи с этим монографию [2], посвященную математическим моделям управления толпой, поведение которой описывается как пороговое (конформное) коллективное принятие решений ее элементами.
2.7. Управление строем
Стоит отметить, что для данного направления характерно, что одни и те же результаты используются и для моделирования строя агентов на компьютере, и для проектирования искусственного интеллекта наземных роботов и БПЛА.
В [16, 39, 41, 42] и других работах того же коллектива авторов описан алгоритм, позволяющий организовывать строй (formation) агентов, определенный с помощью одной или
25
нескольких математических функций. Формация агентов рассматривается как одномерный клеточный автомат (так называемый robot-space cellular automaton), каждая клетка которого содержит координаты агента на плоскости, его реальное и желаемое взаимное расположение с соседними агентами (см. рис. 6).
XS Js) в • - - ® ^ * ■ *
... 0 1 2 3 4 5 6 7 В 9 10
л2У
Рис. 6. Роботы как ячейки в одномерном клеточном автомате пространства роботов (Robot-Space Cellular Automaton)
Каждый агент (робот) представим клеткой Ci одномерного клеточного автомата. Каждая клетка имеет окрестность [сг-\, Ci, Ci+i}. Пусть желаемая формация задана функцией f (х), которая известна одному из агентов cseed и каждый агент Ci знает свои координаты р^. Желаемое отношение ri^.j,des между Ci и Cj определяется как вектор с началом в р^ и концом в точке пересечения f (х) и окружности радиуса R с центром в pi, R - это желаемое расстояние между агентами. Используя данные сенсоров, агент выясняет действительное отношение ri^j,act. Данные о желаемой формации, заданной через f (х), распространяются локально от cseed к соседям и от них далее. Все агенты вычисляют свои желаемые и действительные отношения с соседями и движутся таким образом, чтоб минимизировать — ^i^j,act\\. Агенты (наземные роботы) могут сохранять как уже созданный строй, так и создавать новый. Демонстрируется работа алгоритма на примере колесных роботов, распознающих друг друга по цветным штрих-кодам и общающихся по радиосети XBee.
В работе [34] для решения сходной проблемы применен иной подход. Желаемый строй агентов задан графом и задача построения строя сводится к деформации взвешенного графа, описы-26
вающего исходное расположение агентов, к желаемому виду, с учетом ограничений по возможностям связи агентов друг с другом (7). При этом необходим поиск изоморфизма между желаемым и существующим графом строя. Координаты агентов с номером г задаются как обыкновенное дифференциальное уравнение вида (т.н. интегратор первого порядка)
<1г = «г,
где - координаты агента, а щ - его скорость, являющаяся в данном случае управлением.
2.5
-2 -'-'-'-'-'-'-'-'-'-
-2.5 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 2.5 X-axis
Рис. 7. Траектории агентов, занимающих желаемое положение
Статья [8] описывает построение строя роботов во многом аналогично ранее цитированной статье, однако, предлагаемый в работе подход корректно обрабатывает ситуации возможной поломки, присоединения новых агентов к строю и смены положения цели, работоспособность подхода проверена при помощи компьютерного моделирования. Также проанализирована работа алгоритма в условиях введения ошибки измерений и при наличии препятствий.
В статье [5] также решается задача управления формациями, а именно задача обобщения алгоритма равноудалённого распо-
ложения агентов на заданном фиксированном отрезке. Показана связь между задачей расположения на отрезке и классической задачей достижения консенсуса. Поведение агентов здесь описывается, из соображений большей физичности модели, интеграторами второго порядка:
<ii = Ui,
где qi - координаты агента, а щ - его ускорение, являющаяся в данном случае управлением.
Работа [20] описывает построение такого строя БПЛА, который позволял бы поддерживать сеть связи БПЛА в максимально связном состоянии. Положения агентов задаются системой дифференциальных уравнений и задача рассматривалась с точки зрения теории устойчивости.
Довольно большой обзор по задачам построения строя приведен в [46].
2.8. Модели системы связи
В этом направлении существуют два (возможно пересекающихся) класса агентных моделей. Один из них описывает построение реального протокола связи внутри телекоммуникационной сети, а второй предназначен для компьютерных симуляций телекоммуникационных сетей.
В одном из ранних обзоров [64] перечисляются различные многоагентные модели построения сетей связи. В качестве агентов рассматриваются, естественно, сами узлы телекоммуникационной сети (рис. 8), при этом для таких агентов также может применяться модель BDI. Приводятся примеры распределенного и децентрализованного управления сетью, муравьиных алгоритмов маршрутизации и прочие решения, основанные на агентном подходе. Многие из них сохраняют актуальность и развиваются и по сей день.
В статье [43] было, вероятно, впервые описано применение многоагентного подхода к моделированию сети связи. В статье указывалось, что такие традиционные модели телекоммуникационной сети, как теория очередей, сети Петри или исчисление про-28
CDRBA/KQIY1L Layer
Рис. 8. Пример структуры агента телекоммуникационной сети
цессов, не вполне подходят для представления мобильных сетей или основанных на применении политик (policy-based) сетей, так как приводят к сложным и трудноразрешимым уравнениям, игнорируют индивидуальное поведение узлов и требуют задания ограниченного числа возможных состояний сети. Моделировалась система связи с сообщениями трех классов по QoS и пятью типами поведения узлов, включающими поведение узлов с динамической и статической маршрутизацией, а также разными способами построения очереди сообщений.
В связи с появлением концепции «интернета вещей» мно-гоагентные системы как основа для разработки [38] и моделирования [15] сети связи становятся все более актуальными. В этом случае реальным прототипом агентов являются смартфоны, встраиваемые сетевые устройства и т.п., оснащенные специальными программными компонентами, позволяющими отображать в Web данные, задачи и службы всей системы агентов.
В работе [6] решается задача, во многом аналогичная задаче построения строя агентов, однако в ней с помощью графа зада-
ется не пространственные взаимоотношения между агентами, а желаемая форма сети связи. Агенты, обмениваясь сообщениями о фрагментах желаемой системы связи, организуют каналы связи со своими соседями в соответствии с полученными данными так, чтоб разница между желаемым и возможным для построения фрагментом графа связи была минимальным.
2.9. Модели боевых действий
Многоагентные модели применяются при моделировании боевых действий, особенно современных локальных конфликтов (так называемых stability operations), для которых оказались не применимыми традиционные модели, оперирующие, главным образом, некоторыми интегральными показателями для больших военных соединений. С конца 1990-х - начала 2000 гг. получили определенную известность среды моделирования конфликта ISAAC и EINSTein, разработка US Marine Corps Combat Development Command. В монографии [28] дано подробное описание алгоритмов и интерфейсов вышеуказанных систем, а также исследованы различные феномены типа самоорганизующейся тактики агентов.
Также известны, например, модель Map Aware Non-uniform Automata (MANA), разработанная Operations Analysis group в Defence Technology Agency (DTA), Новая Зеландия или же Pythagoras - разработка Marine Corps Warfighting Laboratory министерства обороны США [40, 53]. Кроме того, конфликты моделируют и в средах агентного моделирования общего назначения типа NetLogo.
Помимо упомянутых систем, автором настоящего обзора была разработана программа моделирования движения и боевых действий иерархически организованных агентов «Бокоход» (номер свидетельства о государственной регистрации Роспатентом 2016615934), которая имела в своей основе алгоритм, близкий к описанному в [28]. Данный алгоритм изложен в работе [37], и, в отличие от ранее упомянутых алгоритмов ISAAC, сфокусирован, главным образом, на конфликте агентов в условиях неизвестного и, возможно, постоянно изменяющегося окружения, состоя-30
щего из ячеек разной степени проходимости. Для этой цели в программе «Бокоход» реализован поиск локально-оптимальных маршрутов агентов. Также используется особый математический формализм, в котором агент не является отдельной от среды сущностью, а является частью состояния ячейки world-space cellular automaton, моделирующего окружающую среду. В результате этого достигается определенный прирост производительности программы. При этом если имеется несколько агентов, претендующих на одну ячейку, ячейка разыгрывается между ними по определенному алгоритму.
2.10. Социально-экономические науки
Наконец, многоагентное моделирование применяется и в социально-экономических науках. Применение таких моделей в экономике стало распространенным, по всей вероятности, после мирового финансового кризиса 2008 г., как утверждается в монографии [25]. Преимущество агентного моделирования в том, что оно хорошо отражает сложность взаимоотношений различных людей, домохозяйств и фирм в динамике. Агентное моделирование позволяет непосредственно связать микроуровень и макроэкономическую ситуацию и не требует равновесия экономической системы.
При этом следует отметить, что обзорные статьи на тему применения агентного моделирования в экономике появились намного раньше, как, например статья [48], изданная в виде отчета еще в 2005 г.
Агентные модели используются и для описания социальных сетей, как естественно и давно существующих в обществе, так и для компьютерных социальных сетей. Например, работа [12] предлагает многоагентную модель добавления «друзей» в социальной сети Facebook, построенную по результатам анализа данных студентов Калифорнийского технологического института (Caltech).
В работе [47] приведен большой обзор (по сути, учебник) моделей динамики мнений в социальных сетях. Рассматриваются предложенные в 1950-90 гг. модель эволюции мнений Френча-де
31
Управление большими системами. Выпуск 71 Гроота
х(к + 1) = Wx(k),k = 0,1,...,
где W = (Wij ) - п х п матрица весов влияния, Wij ^ 0, модель Абельсона
x(t) = -L[A]x(t), где L[A] - матрица Кирхгофа, модель Фридкина-Джонсена
х(к + 1) = AWx(k) + (1 — Л)и,
где Л = diag(\l,... ,Хп), где Xi G [0,1] означает восприимчивость г—го агента к процессу социального влияния, и - постоянный вектор предубеждений агентов, и Тэйлора
п m
ài(t) = ^2 dij(Xj(t) — Xi(t)) + bik(sk — Xi(t)), j=\ k=i
где A = (aij) - n х n матрица весов, В = (bik) - n х m неотрицательная матрица «констант убедительности». Также исследуется взаимосвязь этих моделей с современными многоагентными моделями.
В статье [23] исследуется поведение группового консенсуса, который зависит от нескольких утверждений, одно из которых является ложным. Показывается, как существование логических ограничений на убеждения влияет на коллективную сходимость к общей системе убеждений и, напротив, на то, как набор произвольно связанных убеждений, разделяемых меньшинством, может стать разделяемым большинством. В качестве примера рассматривается динамика мнений жителей США относительно ввода войск в Ирак при изменении их уверенности в утверждениях
1. У Саддама Хусейна есть запас оружия массового уничтожения.
2. Оружие массового уничтожения у Саддама Хусейна является реальным и представляет опасность для региона и всего мира.
32
3. Упреждающее вторжение в Ирак является справедливой войной.
Математической моделью динамики убеждений является обобщение модели Фридкина-Джонсена.
X(к + 1) = AWX(к)СТ + (1 - А)Х(0),к = 0,1,...,
где X(к) - п хт матрица позиций п индивидуумов по т взаимозависимым вопросам; W = (ч^) - п хп матрица весов влияний; А = (а^) - диагональная пхп матрица со значениями на главной диагонали ац = 1-тц, г = 1,п; С - тхт матрица зависимостей между вопросами; I - п х п тождественная матрица. В данной модели консенсус может не достигаться.
3. Заключение
Подытожим, что многоагентные системы можно условно поделить на
1) системы агентов с непрерывными и дискретным временем, которое может быть как общее для всех агентов системы, так и разное для разных агентов;
2) системы агентов на сетке и в обычном евклидовом пространстве (и, возможно, в других топологических пространствах);
3) системы, в которых агенты перемещаются по некоторому пространству и системы, в которых пространство состоит исключительно из агентов;
4) системы, в которых агенты являются исключительно виртуальными сущностями среды моделирования и в которых агенты являются реальными устройствами, например, радиостанциями.
В некоторых случаях, из дискретных агентных моделей могут в пределе получаться соответствующие непрерывные, хотя в общем случае это не очевидно. Можно видеть, что некоторые модели пришли из биологии, но стали затем использоваться для
33
производства вычислительной техники, другие модели заимствованы из механики, но нашли широкое применение в моделировании социально-экономических процессов. Это показывает некую глубинную общность, присутствующую во всех сложных системах, универсальность неприменимости самоорганизации в самых разных науках.
Также можно отметить, что сам подход к конструкции мно-гоагентной модели может сильно различаться. Часть исследователей описывают модель языком дифференциальных уравнений и видят в ней соединенные динамические системы, тогда как другая часть представляет похожую модель как состояния и переходы и обращается, в основном, дискретному аспекту процесса моделирования, например, к разработке неклассических логик различных типов.
Далее планируется продолжить свой обзор многоагентных технологий и провести сравнение основных языков описания агентных моделей и средств моделирования.
Литература
1. АГАЕВ Р.П., ЧЕБОТАРЕВ П.Ю. Модели латентного консенсуса // Автоматика и телемеханика. - 2017. - №1. -С. 106-120.
2. БРЕЕР В.В. НОВИКОВ Д.А. РОГАТКИН А.Д. Управление толпой: математические модели порогового коллективного поведения. - Москва : Ленанд, 2016. - 168 с.
3. ГАСНИКОВ А.В., КЛЕНОВ С.Л., НУРМИНСКИЙ Е.А. и др. Введение в математическое моделирование транспортных потоков - Москва : МЦНМО, 2013. - 427 с.
4. ПЕТРИКЕВИЧ Я.И. Линейные алгоритмы управления геометрическим расположением объектов в многоагентной системе // Управление большими системами. - 2010. -Вып. 30.1. - С. 665-680.
5. КВИНТО Я.И., ПАРСЕГОВ С.Э. Равноудаленное расположение агентов на отрезке: анализ алгоритма и его обобщения // Автоматика и телемеханика. - 2012. - №11. -С. 30-41.
6. КУЗНЕЦОВ А.В. Распределение ограниченных ресурсов в системе с устойчивой иерархией (на примере перспективной системы военной связи) // Управление большими системами. - 2017. - Вып. 66. - С. 68-93.
7. МАЛИНЕЦКИЙ Г.Г., СТЕПАНЦОВ М.Е. Применение клеточных автоматов для моделирования движения группы людей // Ж. вычисл. матем. и матем. физ. - 2004. - Т. 44, №11.-С. 2094-2098.
8. МОРОЗОВА Н.С. Децентрализованное управление движением строя роботов при динамически изменяющихся условиях // Искусственный интелект и принятие решений. -
2015. - Т. 1. - С. 65 - 74.
9. ПРОСКУРНИКОВ А.В., ФРАДКОВ А.Л. Задачи и методы сетевого управления // Автоматика и телемеханика. -
2016.-№10.-С. 3-39.
10. ПСАХЬЕ С.Г., ОСТЕРМАЙЕР Г.П., ДМИТРИЕВ А.И. и др. Метод подвижных клеточных автоматов как новое направление дискретной вычислительной механики. I. Теоретическое описание // Физическая мезоме-ханика. - 2000. - Т. 3, №2. - С. 5-13. - URL: http://www.ispms.ru/ru/journals/290/459/.
11. ТАРАСОВ В.Б. Нетрадиционные и гибридные логики в моделировании интеллектуальных агентов. I. Искусственные деятели, интенциональные характеристики и пути моделирования // Известия РАН. Теория и системы управления. -2000. - №5. - С. 5-17.
12. ABBAS S.M.A. An agent-based model of the development of friendship links within Facebook // Computational and Mathematical Organization Theory. - 2013. - Vol. 19, No. 2. -P. 232-252. - URL: http://dx.doi.org/10.1007/s10588-013-9156-z.
13. ALARCON T., BYRNE H.M., MAINI P.K. A cellular automaton model for tumour growth in inhomogeneous environment // J. of Theoretical Biology. -2003. - Vol. 225, No. 2. - P. 257-274. - URL: http://www.sciencedirect.com/science/article/pii/S0022519303002443.
14. ANTONELLI G. Interconnected dynamic systems: An overview on distributed control // IEEE Control Systems. - 2013. -Vol. 33, No. 1.-P. 76-88.
15. BATOOL K., NIAZI M.A. Modeling the internet of things: a hybrid modeling approach using complex networks and agent-based models // Complex Adaptive Systems Modeling. - 2017. - Vol. 5, No. 1. - P. 4. - URL: http://dx.doi.org/10.1186/s40294-017-0043-1.
16. BEER B., MEAD R., WEINBERG J.B. A Distributed Method for Evaluating Properties of a Robot Formation // Proc. of the Twenty-Fourth AAAI Conference on Artificial Intelligence (AAAI-2010), Atlanta, Georgia, USA, July 11-15, 2010. - 2010. - URL: http://www.aaai.org/ocs/index.php/AAAI/AAAI10/paper/view/1677.
17. BORSHCHEV A., FILIPPOV A. From System Dynamics and Discrete Event to Practical Agent Based Modeling: Reasons, Techniques, Tools // The 22nd Int. Conference of the System Dynamics Society, July 25 - 29, 2004, Oxford, England. - 2004.
18. BUDAEV D., AMELIN K., VOSCHUK G. et al. Realtime task scheduling for multi-agent control system of UAV's group based on network-centric technology // Int. Conference on Control, Decision and Information Technologies (CoDIT-2016). -2016. - P. 378-381.
19. BULLO F. Lectures on Network Systems / With contributions by J. Cortes, F. Dorfler, and S. Martinez. - Version 0.95, 2017. -URL: http://motion.me.ucsb.edu/book-lns.
20. DUTTA R., SUN L., KOTHARI M. et al. A cooperative formation control strategy maintaining connectivity of a multi-agent system // IEEE/RSJ Int. Conference on Intelligent Robots and Systems - 2014, Chicago, IL, USA, September 14-18, 2014. - 2014. - P. 1189-1194. - URL: https://doi.org/10.1109/IROS.2014.6942708.
21. FERBER J. Les Systemes multi-agents: vers une intelligence collective. I.I.A. Informatique intelligence artificielle. - InterEditions, 1995. - URL: https://books.google.ru/books?id=R7VBAAAACAAJ.
22. FRIAS-MARTINEZ E., WILLIAMSON G., FRIAS-MARTINEZ V. An Agent-Based Model of Epidemic Spread Using Human Mobility and Social Network Information // IEEE 3rd Int. Conference on Privacy, Security, Risk and Trust - 2011 and IEEE 3rd Int. Conference on Social Computing - 2011. -2011. - P. 57-64.
23. FRIEDKIN N. E., PROSKURNIKOV A. V., TEMPO R., PARSEGOV S. E. Network science on belief system dynamics under logic constraints // Science. -2016. - Vol. 354, No. 6310. - P. 321-326. -http://science.sciencemag.org/content/354/6310/321.full.pdf.
24. GORDON T.J. A simple agent model of an epidemic // Technological Forecasting and Social Change. -2003. - Vol. 70, No. 5. - P. 397-417. - URL: http://www.sciencedirect.com/science/article/pii/S0040162502003232.
25. HAMILL L., GILBERT N. Agent-Based Modelling in Economics. - 1st edition. - Wiley Publishing, 2016. - 256 p.
26. HEWITT C. Viewing control structures as patterns of passing messages // Artificial Intelligence. - 1977. - Vol. 8, Iss. 3. -P. 323-364. - URL: https://doi.org/10.1016/0004-3702(77)90033-9.
27. IGLESIAS C.A., GARIJO M., GONZALEZ J.C. A Survey of Agent-Oriented Methodologies // Proc. of the Intelligent Agents V: Agents Theories, Architectures, and Languages: 5th Int. Workshop, ATAL'98 Paris, France, July 4-7, 1998. / Ed. by J.P. Muller, A.S. Rao, M.P. Singh. - Berlin, Heidelberg: Springer Berlin Heidelberg, 1999. - P. 317-330. - URL: http://dx.doi.org/10.1007/3-540-49057-4_21.
28. ILACHINSKI A. Artificial War: Multiagent-Based Simulation of Combat. - Singapore : World Scientific Publishing Company, 2004. - 747 p.
29. JONES J. Applications of multi-agent slime mould computing // IJPEDS. - 2016. - Vol. 31, No. 5. - P. 420-449. - URL: https://doi.org/10.1080/17445760.2015.1085535.
30. JONES J., MAYNE R., ADAMATZKY A. Representation of shape mediated by environmental stimuli in Physarum polycephalum and a multi-agent model // IJPEDS. -2017. - Vol. 32, No. 2. - P. 166-184. - URL: https://doi.org/10.1080/17445760.2015.1044005.
31. JONES M.P., DUDENHOEFFER D.D. A formation behavior for large-scale micro-robot force deployment // Winter Simulation Conference. - Vol. 01. - Los Alamitos, CA, USA : IEEE Computer Society, 2000. - P. 972-982.
32. Journal of Heuristic Policies on Heuristic Search Research. - URL: http://www.springer.com/cda/content/document/cda_downloaddocument/ Journal+of+Heuristic+Policies+on+Heuristic+Search.pdf?SGWID=0-0-45-1483502-p35487524.
33. KALOGEITON V.S., PAPADOPOULOS D.P., GEORGILAS I. et al. Cellular automaton model of crowd evacuation inspired by slime mould // Int. J. General Systems. - 2015. - Vol. 44, No. 3. - P. 354-391. - URL: https://doi.org/10.1080/03081079.2014.997527.
34. KAN Z., NAVARAVONG L., SHEA J.M. et al. Graph Matching-Based Formation Reconfiguration of Networked Agents With Connectivity Maintenance // IEEE Transactions on Control of Network Systems. - 2015. - Vol. 2, No. 1. - P. 24-35.
35. KESTING A., TREIBER M., HELBING D. Agents for Traffic Simulation. - URL: https://arxiv.org/pdf/0805.0300.pdf.
36. KRAVARI K., BASSILIADES N. A Survey of Agent Platforms // J. of Artificial Societies and Social Simulation. - 2015. - Vol. 18, No. 1. - URL: http://EconPapers.repec.org/RePEc:jas:jasssj:2014-71-2.
37. KUZNETSOV A.V. A simplified combat model based on a cellular automaton // J. of Computer and Systems Sciences International. - 2017. - Vol. 56, No. 3. - P. 397-409. - URL: http://dx.doi.org/10.1134/S106423071703011X.
38. LEPPANEN T., LIU M., HARJULA E. et al. Mobile Agents for Integration of Internet of Things and Wireless Sensor Networks // IEEE Int. Conference on Systems, Man, and Cybernetics - 2013. - 2013. - P. 14-21.
39. LONG R.L., MEAD R., WEINBERG J.B. Distributed Auction-Based Initialization of Mobile Robot Formations // Proc. of the 24th AAAI Conference on Artificial Intelligence (AAAI-2010), Atlanta, Georgia, USA, July 11-15, 2010. - 2010. - URL: http://www.aaai.org/ocs/index.php/AAAI/AAAI10/paper/view/1673.
40. MCINTOSH G.C., GALLIGAN D.P., ANDERSON M.A. et al. Recent Developments in the MANA Agent-based Model // Scythe : Proc. and Bulletin of the International Data Farming Community, Scheveningen, Netherlands, November 12-17, 2006. - 2006. - P. 38-39. - URL: https://calhoun.nps.edu/handle/10945/35694.
41. MEAD R., WEINBERG J.B. 2-Dimensional Cellular Automata Approach for Robot Grid Formations // Proc. of the 23rd AAAI Conference on Artificial Intelligence (AAAI-2008), Chicago, Illinois, USA, July 13-17, 2008. - 2008. - P. 1818-1819. -URL: http://www.aaai.org/Library/AAAI/2008/aaai08-299.php.
42. MEAD R., WEINBERG J.B. A Single- and MultiDimensional Cellular Automata Approach to Robot Formation Control // Proc. of IEEE Int. Conference on Robotics and Automation (ICRA-08). - 2008. - URL: http://robotics.usc.edu/ rossmead/docs/2008/ 2008WeinbergMead_ICRA08.pdf.
43. MERGHEM L., LECARPENTIER H. Agents: A Solution for Telecommunication Network Simulation // Network Control and Engineering for QoS, Security and Mobility: IFIP TC6 / WG6.2 & WG6.7 Conference on Network Control and Engineering for QoS, Security and Mobility (Net-Con 2002) October 2325, 2002, Paris, France / Ed. by D. Gaiti, N. Boukhatem. -Boston, MA : Springer US, 2003. - P. 165-176. - URL: http://dx.doi.org/10.1007/978-0-387-35620-4_14.
44. MONTEAGUDO A., SANTOS J. A Cellular Automaton Model for Tumor Growth Simulation // 6th Int. Conference on Practical Applications of Computational Biology & Bioinformatics / Ed. by M.P. Rocha, N. Luscombe, F. Fdez-Riverola, J.M. Corchado Rodriguez. - Berlin, Heidelberg: Springer Berlin Heidelberg, 2012. - P. 147-155. - URL: http://dx.doi.org/10.1007/978-3-642-28839-5_17.
45. NARVAEZ C.A., TOVAR A., GARZON D.A. Topology Synthesis of Compliant Mechanisms Using the Hybrid Cellular Automaton Method with an Efficient Mass Control Strategy // III European Conference on Computational Mechanics: Solids, Structures and Coupled Problems in Engineering: Book of Abstracts / Ed. by C.A. Motasoares, J.A.C. Martins, H.C. Rodrigues et al. - Dordrecht : Springer Netherlands, 2006. - P. 490-490. - URL: http://dx.doi.org/10.1007/1-4020-5370-3_490.
46. OH K.-K., PARK M.-C., AHN H.-S.. A survey of multi-agent formation control // Automatica. - 2015. - Vol. 53. -
P. 424-440. - URL: http://www.sciencedirect.com/science/article/pii/ S0005109814 004038.
47. PROSKURNIKOV A.V., TEMPO R. A tutorial on modeling and analysis of dynamic social networks. Part I // Annual Reviews in Control. - 2017. -Vol. 43, No. Supplement C. - P. 65-79. - URL: http://www.sciencedirect.com/science/article/pii/S1367578817300172.
48. PYKA A., FAGIOLO G. Agent-based Modelling: A Methodology for Neo-Schumpetarian Economics // Elgar Companion to Neo-Schumpeterian Economics. -Edward Elgar Publishing, 2007. - URL: http://EconPapers.repec.org/RePEc:elg:eechap:2973_29.
49. RAO A.S., GEORGEFF M.P. BDI Agents: From Theory to Practice // Proc. of the 1st Int. Conference on Multiagent Systems. - 1995. - P. 312-319.
50. RAFAEL H.B., LARS B., MEHDI D. et al. A Survey of Programming Languages and Platforms for MultiAgent Systems// Informatica (Slovenia). - 2006. -Vol. 30, No. 1. - P. 33-44. - URL: http://dblp.uni-trier.de/db/journals/informaticaSI/informaticaSI30.html.
51. ROUSSET A., HERRMANN B., LANG C. et al. A Survey on Parallel and Distributed Multi-Agent Systems // Euro-Par-2014: Parallel Processing Workshops - Euro-Par-2014 Int. Workshops, Porto, Portugal, August 25-26, 2014, Revised Selected Papers, Part I. - 2014. - P. 371-382. - URL: https://doi.org/10.1007/978-3-319-14325-5_32.
52. REYNOLDS C.W. Flocks, Herds and Schools: A Distributed Behavioral Model // SIGGRAPH Comput. Graph. - 1987. - Vol. 21, No. 4. - P. 25-34. - URL: http://doi.acm.org/10.1145/37402.37406.
53. ROSS J.L. A Comparative Study of Simulation Software for Modeling Stability Operations. - 2012. - URL: https://ccl.northwestern.edu/papers/2012/ross.pdf.
54. RUSSELL S.J., NORVIG P. Artificial Intelligence: A Modern Approach. - Upper Saddle River, New Jersey: Prentice Hall, 2010. - 1132 p.
55. SCHUMANN A., PANCERZ K., ADAMATZKY A. et al. Bio-Inspired Game Theory: The Case of Physarum Polycephalum // 8th Int. Conference on Bio-inspired Information and Communications Technologies (BICT-2014), Boston, MA, USA, December 1-3, 2014. - 2014. -URL: https://doi.org/10.4108/icst.bict.2014.257869.
56. SCHUMANN A. Payoff Cellular Automata and Reflexive Games // J. Cellular Automata. - 2014. - Vol. 9, No. 4. -P. 287-313. - URL: http://www.oldcitypublishing.com/journals/jca-home/jca-issue-contents/jca-volume-9-number-4-2014/jca-9-4-p-287-313/.
57. SCHUMANN A. Go games on plasmodia of physarum polycephalum // Federated Conference on Computer Science and Information Systems - 2015 (FedCSIS-2015), Lodz, Poland, September 13-16, 2015. - 2015. - P. 615-626. - URL: https://doi.org/10.15439/2015F236.
58. SCHUMANN A. Towards Context-Based Concurrent Formal Theories // Parallel Processing Letters. - 2015. - Vol. 25, No. 1. - URL: https://doi.org/10.1142/S0129626415400083.
59. SCHUMANN A., FRIS V. Swarm Intelligence among Humans - The Case of Alcoholics // Proc. of the 10th Int. Joint Conference on Biomedical Engineering Systems and Technologies (BIOSTEC-2017). - Porto, Portugal, February 21-23, 2017. - Volume 4: BIOSIGNALS. - P. 17-25. - URL: https://doi.org/10.5220/0006106300170025.
60. SIMON H.A. The Architecture of Complexity // Facets of Systems Science. - Boston, MA : Springer US, 1991. -
P. 457-476. - URL: http://dx.doi.org/10.1007/978-1-4899-0718-9_31.
61. SORENSEN K., SEVAUX M., GLOVER F. A history of metaheuristics // Annual Int. Conference of the German Operations Research Society (OR-2016). - Hamburg, Germany, 2016. - URL: http://leeds-faculty.colorado.edu/glover/ 468%20-%20A%20History%20of%20Metaheuristics%20w%20 Sorensen%20&%20Sevaux.pdf.
62. STONE P., VELOSO M.. Multiagent Systems: A survey from a machine learning perspective // Autonomous Robots. - 2000. -Vol. 8, No. 3. - P. 345-383.
63. SUCCI S. The Lattice Boltzmann Equation: For Fluid Dynamics and Beyond. Numerical Mathematics and Scientific Computation. - Clarendon Press, 2001. - 288 p. - URL: https://books.google.ru/books?id=OC0Sj_xgnhAC.
64. TSATSOULIS C., KIAT S.L. Intelligent Agents in Telecommunication Networks // Computational Intelligence in Telecommunications Networks. - CRC Press, 2000. - P. 23-28.
65. WIELAND P. From Static to Dynamic Couplings in Consensus and Synchronization among Identical and Non-Identical Systems : Ph.D. thesis. - Universitat Stuttgart. Institut für Systemtheorie und Regelungstechnik, 2010.- 154 p.
66. WOLFRAM S. Cellular automaton fluids 1: Basic theory // J. of Statistical Physics. - 1986. - Vol. 45, No. 3. - P. 471-526. -URL: http://dx.doi.org/10.1007/BF01021083.
THE SHORT REVIEW OF MULTI-AGENT MODELS
Alexander Kuznetsov, Voronezh State University, Voronezh, Cand.Sc., associate professor ([email protected]).
Abstract: The article reviews various fields of application of multiagent systems. At first, we briefly recall basic conceptions of multi-agent systems and previous reviews. Next, we discuss a few classifications of agents and multi-agent methodologies based on type of agent, ways of communication between agents, system complexity etc. Also, we list software tools for development of multiagent systems. Then we consider examples of multi-agent models of different types in mechanics such as Lattice Boltzmann methods, non-classical computations (Physarum logics models). We continue with models from biology and medicine (models of tumor growths and epidemy) constructed as cellular automata with combined discrete and continuous rules. Then we describe applications of multi-agent systems in transport, telecommunications, warfare, simulation of robots' swarms and formations (world-space and agent-space cellular automata), in economics and sociology (models of opinion formation). So, we present discrete, cellular automata-like multi-agent models, the models ofdynamical systems, for example, consensus models, and mixed models.
Keywords: agent-based modeling, autonomous agents, multi-agent systems.
Статья представлена к публикации членом редакционной коллегии М.В. Губко.
Поступила в редакцию 11.07.2017. Дата опубликования 31.01.2018.