141
обладает активностью, автономным поведением, может принимать решения в
соответствии с
некоторым набором правил, может взаимодействовать с
окружением и другими агентами, а также может изменяться».
Согласно работе (Macal C., 2010) агент должен обладать следующими
характеристиками (рис. 90):
Агент является «идентифицируемым», т.е. представляет собой
конечного индивидуума с набором определенных характеристик и
правил, определяющих его поведение и правила принятия решений.
Агент автономен и может независимо действовать и принимать
решения по взаимодействию с другими агентами.
Агент находится в определенной среде, позволяющей ему
взаимодействовать
с
другими
агентами.
Агент
может
коммуницировать с другими (контактировать
при определенных
условиях и отвечать на контакт).
Агент имеет определенную цель (но не обязательно целью является
максимизация блага, как принято считать в классической
экономике), влияющую на его поведение.
Агент гибок и обладает способностью самообучения с течением
времени на основе собственного опыта. В ряде случаев агент может
даже изменять правила поведения на основе полученного опыта
Рис. 90. Агентное моделирование
В рамках имитационной модели исследователь может ставить
эксперименты над сложными социально-экономическими системами. Причем
мультиагентные модели могут иметь как абстрактно-теоретический, так и
прикладной
характер.
Например,
моделирование
пешеходного
и
Агент:
характеристики;
правила
поведения;
память;
особенности принятия
решений;
алгоритм изменения правил
поведения.
142
автомобильного трафика, поведение людей в чрезвычайных ситуациях,
распространение эпидемий и т.д.
Например, в одном из своих экспериментов Д. Хелбинг и его коллеги
(Helbing D., 2000) смоделировали ситуацию эвакуации людей из помещения с
единственным выходом. Эксперимент был построен таким образом, что в
случае спокойного поведения (средняя скорость менее 1,2 м/сек) все люди
могли спокойно покинуть помещение без ущерба для себя. В случае
возникновения опасности скорость движения агентов увеличивалась (до 1,5
м/сек), что кардинально меняло ситуацию: в дверях образовывалось слишком
большое
скопление людей, которое препятствовало выходу и закупоривало
помещение. В случае же еще более высокой скорости (до 5 м/сек) происходило
сдавливание в дверях некоторых агентов, которое способствовало тому, что в
результате движение было полностью парализовано.
Модель показала интересный результат, когда условия эксперимента
были немного модифицированы: в помещении перед дверями устанавливалось
небольшое искусственное препятствие — в данном случае в виде колонны. В
этом случае при прочих равных условиях скорость эвакуации из помещения
существенно возрастала, так как колонна подобно волнорезу «рассекала»
толпу, тем самым увеличивая пропускную способность выхода (видео модели
можно найти на сайте http://angel.elte.hu/panic/).
В целом специалисты (Каталевский Д.Ю., 2011)
выделяют четыре
базовых стадии построения агентной модели:
1.
определение границ модели: какое явление/событие моделируется,
каковы его рамки;
2.
определение поведения/взаимодействия агентов: разработка модели
поведения/принятия решений агентом и его взаимодействия с
остальными агентами;
3.
разработка и апробация модели;
4.
проведение анализа чувствительности и калибровка модели.
Агентное моделирование может быть полезно, когда агенты могут
адаптироваться и изменять собственное поведение с течением времени;
когда
важно отразить активное взаимодействие агентов между собой, изменяющее их
поведение; когда агенты самообучаются; когда моделируемой системе
свойственно «возникающее» поведение.
Значительное развитие за последние годы программного обеспечения для
имитационного моделирования позволило успешно интегрировать системную
динамику с агентным моделированием. В частности, одним из наиболее
интересных решений комбинированного моделирования является программа
Anylogic российской компании XJ Technologies, которая позволяет достаточно
успешно интегрировать агентное моделирование в системно-динамические
модели, тем самым значительно повышая глубину проработки проблемы.