Применение агентного моделирования для анализа социальных конфликтов этнических группировок
H.Г. Клаус
Аспирант НИИ М. И П.М, г. Ростов-на-Дону
I. Потенциал компьютерных симуляций и агентного моделирования в социальноэкономических науках
На сегодняшний день применение компьютерных симуляций и агентного моделирования в социальных науках является еще новой и не апробированной методикой. Известно, что в руках у учёных-социологов имеется обширный аппарат методов и технологий для анализа и изучения социальных взаимодействий и поведения людей. Методы варьируются от качественных до количественных и при работе с количественными методами, кто-то предпочитает точные модели с огромным количеством параметров, а кто-то пользуется упрощенными моделями, использующими всего несколько параметров. [1] В целом каждый из этих методов имеет свои области применения, и выбор конкретного метода для анализа зависит от поставленных задач. Например, простые малопараметризованные модели могут быть использованы для понимания взаимодействий социальных механизмов, тогда как сложные модели с большим количеством параметров используются при решении более конкретных задач. В любом случае все методы служат для упрощения сложности системы, и описания ее в том виде, который доступен нашему пониманию и позволяет на интуитивном уровне понимать как те или иные изменения повлияют на процессы происходящие в системе.[2]
Использование расчётных моделей в социальных науках на сегодняшний день не является общепринятым. Причиной тому, возможно, служит недоверие ученых к моделям такого рода, а также мнение, характеризующее эти модели как «неясные», «ненадежные» (по сравнению с другими аналитическими методами), «негодные для прогнозирования». Но на самом деле отдельно взятые примеры социальных моделей показывают, что, сделанные правильно, модели компьютерных симуляций могут выдавать надежные результаты еще лучшего качества, нежели привычные аналитические методы. Более того, такие модели симуляций способны давать прогнозы даже при отсутствии изменений, а конкретно ухудшений каких-либо показателей нестабильности системы. Кроме того положительные результаты работы таких моделей не ограничиваются только способностью моделей к прогнозированию, а показывают способность моделей преобразовывать и упорядочивать собранные данные, выявлять динамические аналогии, ставить новые вопросы и задачи, демонстрировать ключевые проблемные места, возможные компромиссы, а также поддерживать принятие решений в кризисных ситуациях. [3]
2. Математическое описание модели. Графическая реализация
2.1 Общее описание
Модель включает две категории агентов. «Агенты» - это местные жители (население), представители двух этнических групп, характеристики которых отличаются только принадлежностью к конкретной группе (в остальном совпадают), и миротворцы.
Представители этнических групп будут отличатся цветом: синие и зеленые. Агенты будут становиться красного цвета, когда они переходят в «активную» фазу, в этом случае, стать активным агентом, означает убить, (или быть готовым убить) агента другой этнической группы. Убийство не ограничивается убийствами членов противоположной группы, оно беспорядочно, то есть агент может убить и миротворца — любого участника модели, кроме членов его собственной этнической группы, представителем которой он является.
Важнейшим параметром модели является легитимность, которая интерпретируется как оценка каждой из групп права на существование противоположной группы, и на начальный момент времени, величина Ь экзогенна, и одинакова для каждой из групп. Наше представление латентной политической напряженности, или просто «напряженности» будет очень простым и будет включать только два сильно идеализированных компонента, которые за отсутствием лучшей терминологии назовем «Личный опыт» или относительная депривация (Н) и «Легитимность» (Ь), их определения следующие: Н это трудности, которые испытывает агент (предыдущие конфликты с представителями противоположной этнической группировки, личный негативный опыт/знания/точка зрения/убеждения). Это значение будет внешним по отношению к модели. Предполагается, что оно будет устанавливаться для каждого агента отдельно. Из за отсутствия конкретных данных, для каждого агента просто будет выставлено случайным образом значение, взятое из интервала (0, 1) — равномерное распределение на интервале (0, 1).
Уровень недовольства, который каждый из агентов испытывает по отношению к представителям противоположной этнической группы и к миротворцам, основывается на этих двух переменных. Вариантов описания этой зависимости может быть представлено множество, мы в данной модели полагаем:
О = Н(1-Ь)
Латентная политическая напряженность или, упрощая, «недовольство» (О) это результат умножения испытываемых трудностей и принимаемой «нелегитимности», получаемой из ( 1
- Ь ).
В модели также учитывается личностная расположенность агента к рискованным предприятиям. Соответственно определим Я. как уровень неприятия риска агента. Гетерогенно среди агентов, так же как и Н, значение Я распределено равномерно. Для каждого из агентов присваивается значение на интервале (0, 1) и остается фиксированным на протяжении всей жизни агента.
Все, кроме нейтрального значения риска будет оцениваться как вероятность ареста до перехода агента в активную фазу (готовность убить). Такая оценка полагается для увеличения области воздействия для агентов-миротворцев от уже активных агентов до включения под область влияния агентов-миротворцев и тех агентов, которые имеют сочувствующие взгляды активным агентам.
2.2 Область видимости агента
Как и в большинстве агентных моделей, область видимости агента ограничена; информация локальна. Обозначим отношение миротворец-к-активному-агенту в области видимости V как (С/Л)у . Положим в этом случае вероятность ареста:
Р = 1 — ехр[ - к (С / А) у].
Константа к положена с тем, чтобы гарантировать оценку (Р = 0.9), когда С = 1 и А = 1. Заметьте, что А всегда по крайней мере равна 1, потому, что агент всегда считает себя активным, когда подсчитывается Р. Он спрашивает «Какова вероятность того, что меня арестуют, если я перейду к активным действиям?». Полезно будет определить N=RP, чистый риска агента — результат перемножения показателя неприятия риска и оценённой вероятности ареста. Все эти формулы и понятия в совокупности описывают правило поведения агентов, которое приведено в Таблице 1.
Состояние (О-К) Переход состояния
0 >т 0=>А
0 <=т 0=>0
А >т А=>А
А
А=>д
Таблица 1. Переход состояний агента
Если для агента в состоянии Q, разница G-N превышает какой-то неотрицательный порог N который может быть и нулем, тогда этот спокойный агент становится активным. Если для агента в состоянии А разница превышает Т, тогда этот активный агент и остается активным, иначе он становится спокойным. Подытожим простое правило для агента в модели:
Правило Агента A: Если G — N > T, будь активным (убивай), иначе будь спокойным. [4]
2.3 Динамика населения
В модели, кроме того, показана простая динамика населения. Агенты клонируют потомков на незанятые соседние территории с вероятностью р на каждом шаге. Потомки наследуют родительскую идентификацию и степень недовольства. В связи с тем, что у нас имеется в модели рождаемость, должна быть и смертность, для предотвращения перенасыщения. Соответственно, агенты подвержены смерти, наступающей случайным образом у агентов в возрастном периоде от (0, max_age), где max_age = 200.
2.4 Описание агентов-миротворцев
Миротворцы арестовывают тех агентов из поля своего зрения, цвет которых стал красным, беспристрастно.
Миротворцы гораздо проще, нежели потенциальные активные агенты. Их атрибуты следующие.
V*, область видимости миротворца — количество его позиций которые миротворец может инспектировать. Эта характеристика является внешней и одинаковой для всех миротворцев. Миротворцы, как и другие агенты имеют одно простое правило поведения.
Правило поведения Миротворца С: инспектировать все направления в области видимости и арестовать случайно выбранного активного агента (убивающего). В этой модели миротворец не может убивать, только сажает в тюрьму.
2.5 Условия движения и попадания в тюрьму. Несмотря на то, что диапазон перемещения агента будет различаться в зависимости от цифровых значений выбранных для V и V*, синтаксис правила передвижения одинаковый для агентов-представителей этнических группировок и миротворцев:
Правило передвижения Ы: Передвинуться на случайную точку, в поле зрения И хотя диапазон видимости (V) фиксированный, информация агента (количество миротворцев, представителей противоположной группировки и активных восставших из своей группировки в поле зрения агента) гетерогенна из за движения.
Терминология тюрьмы для арестованных агентов, является внешним параметром и устанавливается пользователем. А именно, пользователь выбирает максимальное значение для тюрьмы J_max. Затем, в процессе работы модели, любому арестованному агенту присваивается значение «тюрьма», полученное случайным образом на промежутке и(0, J_max). Максимальное значение J_max будет влиять на динамику, убирая активных агентов из процесса циркуляции (работы модели) на различные промежутки времени. Предполагается, что агенты покидают тюрьму ровно с тем же отношением к представителям противоположной этнической группировки, с которым они в нее вошли.
2.6 Графики и счетчики модели
Модель снабжена графиками и счетчиками, которые показывают динамику населения, общее количество представителей каждой из этнических группировок а также количество миротворцев. NetLogo — среда, в которой была реализована модель, имеет широкий спектр инструментов для графического представления модели.[5]
#Groupl
1 0F!
gnoupl
0
!) time 1400
#Cops
144
(Л о. о и
0
0 time 1400
#Group2
10S
1400
groupl
91
gr(Hip2
91
cops
131
Рисунок 1. Графики и счетчики модели
На рисунке 1 показаны графики и счетчики по которым можно определять и отслеживать динамику изменения количества представителей обоих группировок, а также миротворцев.
3. Описание модели с помощью унифицированного языка UML
Для упрощения разработки исходного кода программы была создана абстрактная UML модель, показавшая все ключевые моменты, которые необходимо учесть при программировании модели. Приведем в этом разделе лишь некоторые из UML-диаграмм,
визуализирующих работу модели:
'4_______
/ ’ Выбрать одного "\
I случайным образом ’• из области \ видимости /
/ подсчет латентной политической \ нэп ряжен ос ти
Рисунок 2. Диаграмма вариантов использования. Член группировки
На рисунке 2 мы видим различные наборы действий, которые доступны агенту -представителю любой из этнических группировок, в зависимости от его состояния. У агента, находящегося в тюрьме, вариантов действий, кроме «пропустить ход» нет.
Patch
+СОІОГ
+ID
♦coordinates
♦type: enum = [land, mountain
♦neighborhood
♦typeVision
♦countNeighborhood()
Turtle
-»■type: enum = [groupl, group2, cops
+ID: integer
■»■form
+СОІОГ
-»■createcops() : cop
+move()
+to-enforce()
Groupl Group2
♦age: integer -»■risk-aversion: float - [0-1] +perceived hardship: float = [0-1] ■»■active: boolean = false, true +jail term: integer = [0-max_jail_term +vision: integer = [0-max vision] -»■tolerance: float - [0-max_tolerance] -»■k-faktor: float = 2.3 -►threshold: float = 0.1 +age: integer ♦risk-aversion: float - [0-1] -♦-perceived hardship: float = [0-1] -»-active: boolean = false, true +Jail term: integer = [0-max_jail_term -»-vision: integer = [0-max vision] -»■tolerance: float = [0-maxtolerance] -»-k-faktor: float = 2.3 -»-threshold: float = 0.1
+create_groupl(): memberl +move() +determine-behaviour-groupl() -»■reproduce-groupl() : memberl +death() -»■report grievance() -»■report-estimated- arrest -probability() -»■kill-group2() +kill-cops() +create_group2(): member2 -»-move() +determine-behaviour-group2() +reproduce-group2(): memberl +death() -»•report grievance() -»-repo rt-estimated-arrest - probability () +kill-groupl() -»-kill - cops ()
Cops
♦vision: integer - [G-maxvision^ ♦create cops(): cop +move()
+to-enforce()
Рисунок 3. Диаграмма классов: патчи, группы, миротворцы
На диаграмме классов на рисунке 3 мы видим перечисление всех существующих в модели классов с набором функций, которые необходимо реализовать в программном коде модели.
Рисунок 4. Диаграмма состояний. Переход агентов активен — не активен
4. Запуск модели. Опыты
4.1 Мирное сосуществование. Для первого запуска модели мы ставим легитимность в очень высокое значение, для того, чтобы проверить, будет ли возможно мирное сосуществование при отсутствии миротворцев.
При высоком уровне легитимности в модели наблюдалась пространственная разнородность и мирное смешение групп при отсутствии красных агентов. Общий уровень недовольства агентов представителей обеих этнических группировок низкий. Превалирует гармоничное разнообразие. Но при отсутствии миротворцев, регулирующих противостояние, если Ь упадет хотя бы до 0.8, картина в значительной степени изменится, произойдет этническая чистка.
4.2 Этническая Чистка.
При многократных запусках модели, при средней легитимности модель демонстрировала локальные эпизоды этнической чистки, ведущей в конечном итоге к уничтожению одной группы другой группой: геноциду.
При большом количестве запусков модели (п=30), мы каждый раз наблюдаем геноцид. Победитель определяется случайным образом. Феномен сильно напоминает «Конкурентное исключение», или «Принцип Гаузе» из теории популяции в биологии. Когда два близкородственных вида борются на ограниченной территории за право обладания ресурсами, и один из видов, завладевая преимуществом, вытесняет второй вид. Хотя, в случае, если эта межвидовая конкуренция регулируется хищником, который может поедать представителей обоих видов, оба вида могут выжить. Миротворцы являются аналогом такого хищника.
4.3 Участки безопасности. Запустим модель с теми же показателями, что и в прошлом случае геноцида, но добавим в модель миротворцев. Они займут свободные участки территории случайным образом. Эти участки можно назвать участками безопасности. Результат запуска модели можно увидеть на рисунке 5.
ф # ФФ ФФФФФФФФ Ф ФФФ ФФФ • ••• • ФФ
А Ф ФФ ФФФ*«ФФФ Ф Ф Ф ФФФ ФФФФ ФФФФ ФФФФ
Ф • ФФ ФФФФФФФФ ФФФФ ФФФ ФФФФ ФФФ ФФФФ
# # ФФ ФФФФФФФФ Ф ФФФФФ ФФФ ФФФФ ФФ Ф ФФФФ
ФФ • Ф ФФФФФФФФ ФФФФФФ ФФФ ФФФФ ФФФ Ф ФФФФ
ф ф # # ФФФФФФФФ ФФФФФ ФФФ ФФФФ ФФФФ • ФФФФ
• Ф ФФ ФФФФФФФФ ФФФФФ ФФФ ФФФФ ФФФФФ Ф ФФФФ
ФФ ФФ ФФФФФФФФ ФФФФФ ФФФ ФФ Ф ФФФ«« ФФФФ
Ф ф • • ФФФФФФФФ ФФФФФ ФФФ ФФФ • ••• ФФФФ
ФФ ФФ ФФФФФФФФ • ФФ ФФФ ФФФФ ФФФ •• Ф
• Ф • Ф ФФФФФФФФ ФФФФ ФФФ • ••• • • Ф ФФФФ
Ф ф • • ФФФФФФФФ Ф Ф ФФФ • • Ф • ФФФФ
ф ф # # ФФФФФФФФ ФФ • ФФ • ••• ФФФФФФ ФФФФ
ФФФФФФФФ ФФФФФФФФ • • • ••• Ф ФФФФ
■
Рисунок 5. Участки безопасности появляются под миротворческими силами.
«г
ч 1 ■
/и
Поведение модели анализировалось как при полном отсутствии миротворцев (первоначальные запуски), так и при наличии миротворцев в большом количестве. Когда модель стабилизировалась, миротворцы были удалены из модели. В этом опыте, при наличии с начала запуска модели значительного влияния со стороны миротворцев (высокая плотность распределения миротворцев, равная 0,04), режим стабилизировался, но был довольно строгим. Наличие миротворцев не дает ни одной из сторон уничтожать другую, но их сосуществование не является мирным: широко распространяется этническая враждебность на всем протяжении работы модели. Когда (при прочих равных условиях) все миротворцы извлечены из модели (миротворцы неожиданно покидают территорию и отправляются домой), появляется реверсия конкурентного исключения и одна из сторон вытесняет другую.
Очевидно, что миротворцы могут предотвратить геноцид. Но какая общая зависимость между количеством присутствующих миротворцев началом геноцида? Для ответа на этот вопрос необходимо проводить анализ необходимой плотности присутствия в модели миротворцев.[6]
4.4 Плотность миротворцев и период ожидания до наступления геноцида. Для
проведения этого анализа, все миротворцы находятся на своих местах в момент времени, равный 0. Но вариации их начальных позиций, и последующих передвижений, будут разниться от запуска к запуску. Эти начальные плотности распределения полицейских систематически варьируются от 0.0 до 0.1 с приращениями в 0.002. Для каждого такого значения, модель запускалась 50 раз, не начиналось резкое падение численности одной из
групп - достигалось состояние геноцида. (Если оно не достигалось после 15,000 шагов, запуск прерывался). Результаты отображены на Рисунке 6.
Необходимо отметить три вещи: 1) при низкой плотности распределения миротворцев, (от 0 до 0.02), сходимость (конвергенция) к геноциду стремительна; 2) такая же сходимость к геноциду наблюдалась при всех (любых) распределениях сил; 3) наверху графика, при высоких распределениях плотностей сил (0.08 и выше), наблюдается значительная дисперсия. Можно наблюдать как высокую эффективность (задержка более 15 000 циклов), так и очень низкую эффективность, сходимость (конвергенция) к геноциду происходила в 10 циклов работы модели. Кажется, что ответ на этот вопрос кроется непосредственно в конкретных действиях миротворцев.
Как было замечено ранее, модель запускалась 50 раз, для каждой плотности. И для каждой плотности есть образец распределения времени ожидания, по всем 50 запускам. График значений этих распределений по каждой начальной плотности на Рисунке 6.
16000
14000
12000
сс 10000
х
пз
ст
| 8000 о к г
Ф
С!- 6000 оо
4000
2000 0
0 0.02 0 04 0.06 0.08
Плотность миротворцев
Рисунок 6. Изменяемая плотность распределения миротворцев.
В среднем, чем больше начальные силы миротворцев, тем больше времени у одной из групп до полного уничтожения.
Таким образом, пока среднее время ожидания до начала геноцида растет, у нас понижается уверенность в его наступлении, только по мере оценки получаемых результатов
работы модели.
Методология агентного моделирования позволяет нам изучать результаты воздействия ранних и поздних вмешательств внешних сил (миротворцев) в процесс, что является очень важным для планирования действий, масштабов внедрения и расположения миротворческих сил на проблемной территории. [7]
5. Обзор результатов работы модели. При высоком уровне легитимности (восприятие каждой из групп права на существование второй группы) наблюдается мирное сосуществование обеих этнических групп и вмешательство миротворческих сил не требуется. Тем не менее, если плотность распределения миротворцев равна нулю, и легитимность понижена до 0.8, на некоторых участках появляются случаи этнических чисток, которые в последствии распространяются на близлежащие территории, и в конечном итоге наблюдается полное уничтожение одной из групп. Если ввести миротворцев на ранней стадии, этот процесс может быть остановлен, при этом на исследуемой территории появляются «участки безопасности». При начальной высокой плотности миротворцев, с тем же уровнем легитимности (0.8) мы получаем общество, с регулярными вспышками насилия. Если миротворцев убрать из процесса работы модели, получим полное истребление одной из этнических групп — геноцид. Установлена статистическая взаимосвязь между плотностью распределения миротворцев и временем ожидания до начала геноцида.
Литература:
1.Розин М.Д. Модельный подход к анализу и прогнозированию процессов социальных взаимодействий на Юге России // Инженерный вестник Дона, 2010. - №2. - Режим доступа: http://www.ivdon.ru/magazine/archive/n2y2010/184/
2. Розин М.Д., Свечкарев В.П. Проблемы системного моделирования сложных процессов социального взаимодействия // Инженерный вестник Дона, 2012. - №2. - Режим доступа: http://www.ivdon.ru/magazine/archive/n2y2012/306/(доступ свободный).
3.Dirk Helbing, Stefano Balietti, How to Do Agent-Based Simulations in the Future: From Modeling Social Mechanisms to Emergent Phenomena and Interactive Systems Design , ETH Zurich, CLU, Clausiusstr. 50, 8092 Zurich, Switzerland , Santa Fe Institute, 1399 Hyde Park Road, Santa Fe, NM 87501, USA
4.Joshua M. Epstein, Modeling civil violence: An agent-based computational approach, Proceedings of the National Academy of Sciences, Vol. 99, Suppl. 3, May 14, 2002, and is available at http: //www.pnas.org/content/99/suppl .3/7243.short
5.Клаус Н.Г., Свечкарев В.П., Сурков Ф.А. Сравнительный анализ программных пакетов Anylogic и Netlogo — инструментов для имитационного моделирования сложных систем и процессов // Современные информационные технологии в образовании: Южный федеральный округ: Материалы научно-метод.конф., 11-13 мая 2011/Южный федер.ун-тет. -Ростов/Дон: ЮГИНФО, 2011. - С.153-154.
6.Майерс Дэвид Дж. Социальная психология / Изд.7-е. - СПб.: Питер, 2005. - 500 с.
7.Сущий С.Я. Террористическое подполье на Востоке Северного Кавказа (Чечня, Дагестан, Ингушетия). - Ростов-на-Дону: ЮНЦ РАН, 2010. - 217 c.