Введение 4
1. Общая информация о работе 4
2. Цель работы 6
Анализ поведения животных в реальном мире 8
1. Как возникают скопления животных 8
2. Размеры скоплений, стай и стад у людей и животных 9
3. Координация движения в стадах и стаях 10
4. Процесс превращения группы в стадо или стаю 11
5. Цели и задачи моделирования толпы 12
Методы реализации моделей поведения 13
1. Метод на основе клеточных автоматов 14
2. Метод на основе непрерывных моделей 16
3. Метод на основе броуновского движения 17
4. Метод с использованием Ньютоновской механики 18
Создание алгоритма поведения 20
1. Поиск объекта 21
2. Избегание объекта 22
3. Преследование движущегося объекта 23
4. Избегание движущегося объекта 24
5. Бегство от преследователя 25
6. Случайное движение 26
7. Избежание столкновений в толпе 27
8. Поддержание группового состояния 28
9. Сохранение общего направления группы 29
10. Отделение от стада 30
11. Следование за вожаком 31
Обоснование средств реализации 34
1. Unreal Engine 4 34
2. Blueprint Visual Scripting 35
3. PhysX 3.3 36
Обоснование алгоритма 37
Реализация 39
1. Использование модульного подхода 39
2. Структура агента 40
3. Область навигации 42
4. Реализация агента 43
5. Сценарий и дерево поведения 45
6. Выводы 46
Эксперименты 47
1. Реакция агентов на отдаление 47
2. Реакция агентов на попадание в зону комфорта 50
3. Эксперимент на избежание столкновений 52
4. Сравнение с другими реализациями поведения толпы 54
5. Вывод 55
Заключение 57
Список используемой литературы 58
1. Общая информация о работе
Данная дипломная работа нацелена на рассмотрение процесса моделирования реалистичного контроллера поведения групп объектов. Одним из основных факторов при этом является достижение ориентации объектов и их передвижений, схожих с реальным, окружающим нас миром. При этом, помимо модели передвижения объектов, немаловажную роль играет и само поведение объектов.
В качестве объектов подразумеваются сущности, используемые в медиа индустрии, а именно, в таких областях как графика, компьютерная анимация, моделирование и разработка игр. Поскольку данные сущности должны обладать поведением, аналогичным с реальными миром, в качестве них должны выступать разумные одушевленные объекты. Важным фактором также является такое свойство объектов, как умение адаптироваться к окружающему миру, подстраиваться под его изменение и характерным образом реагировать на него. Такое свойство значительно отличает объекты от классических NPC (non player characters, неигровой персонаж, НПЦ), поведение которых зависит в основном от скриптов. В отличии от НПЦ, наши объекты в соответствии с контроллером, при моделировании поведения должны учитывать множество окружающих факторов, и корректно на них реагировать.
В работе будут представлены 3 уровня:
1) Уровень цели
2) Уровень определения пути
3) Уровень перемещения
В отличии от поведения одного объекта, группа обладает некоторыми особенностями. Так, например, при нахождении в группе, объект частично теряет свою индивидуальность.
В рамках данной работы будут рассмотрены такие группы животных, как стада, стаи, прайды, косяки рыб. Кроме того, будут рассмотрены модели поведения групп людей, поскольку они в некоторых ситуациях аналогичны поведению животных.
Благодаря животным инстинктам и поведенческим механизмам, при скоплении животных возникает стадо. Поведение животных в этом случае становится взаимосвязанным.
Кроме того, будут подробно рассмотрены определенные направления в области этологии (науки, изучающей поведенческие инстинкты животных и людей).
2. Цель работы
Целью данной курсовой работы является исследование основных приемов и принципов, используемых при создании реалистичного контроллера поведения автономных агентов, объединенных в связанные группы.
На основе этих данных создан контроллер поведения, обладающий рядом преимуществ по сравнению с существующими реализациями.
В дальнейшем, данный контроллер может быть применен для моделирования поведения групп объектов, с возможностью последующего изучения. Кроме того, данная модель может быть использована во множестве областей реальной жизни:
• Сельское хозяйство (скотоводство, овцеводство и т.п.)
• Рыболовная промышленность (разведение рыбы, облагораживание водоема в зависимости от показателей модели поведения; рыбная ловля, моделирование поведения рыбного косяка)
• Лесная промышленность (моделирование поведения животных, вычисление доступных для вырубки лесных массивов без вреда для животных)
• Группа объектов как часть транспортно-логистической системы (корректировка пропускных способностей общественного транспорта) [1]
• Моделирование поведения толпы в экстренных ситуациях (техногенная катастрофа, пожар, терроризм) [2]
• Моделирование безопасных мест массового пользования (спортивные стадионы, вокзалы, метро; возможность быстрой эвакуации большого количества людей) [3]
Исходя из этого, данная работа является крайне актуальной, поскольку может быть эффективно применена в реальной жизни, тем самым, решить
множество задач.
В рамках данной курсовой работы будут установлены следующие целевые направления:
1) Анализ реализованных моделей поведения групп объектов (модели, существующие на текущий момент; их преимущества, недостатки, возможности улучшения)
2) Вычисление эффективности поведения групп автономных агентов
3) Рассмотрение возможности использования системы локальных скалярных полей с целью построения максимально точной математической модели
4) Анализ возможности создания иерархической системы мультиагентных подгрупп в рамках группы, с целью реализации движения этих самых групп, в качестве составной части.
5) Использование структурированного подхода для создания эффективной архитектуры контроллера
6) Проведение практических экспериментов для оценки корректности полученных данных
Для достижения поставленных целей были задействованы вычислительные методы теории оптимизации, математическая статистика, а также аналитические методы аппарата математического моделирования.
В процессе изучения основных методологий моделирования реалистичного поведения были изучены и исследованы указанные выше методы. В рамках этого был обнаружены некоторые недостатки, которыми обладают существующие методы моделирования - многие из них вообще не были сверены с реальным поведением групп агентов.
Были проведены исследования в области поведения животных, выявлены основополагающие факторы, влияющие на формирование и поддержание групп животных. Затем проведена декомпозиция поведения до базовых методов и указаны способы комбинации этих методов для достижения реалистичных результатов.
Далее была выполнена реализация контроллера и проведены эксперименты, подтверждающие его эффективность. В качестве платформы реализации применен игровой движок Unreal Engine 4 в связке с BlueprintVS. Данный движок в настоящее время является крайне популярным инструментом для разработки.
Полученный в результате контроллер реалистичного поведения обладает большой практической значимостью и в дальнейшем может быть применен во множестве областей: разработка игр, моделирование групп динамических объектов для кинематографа, моделирование поведения толпы в экстренных ситуациях, моделирование объектов как части транспортно-логистической системы, моделирование поведения животных для лесной промышленности, моделирование безопасных мест массового пользования и т.д.
В дальнейшем, данный контроллер может быть дополнен методами, реализующими поведение животных в частных случаях. Кроме того, можно спроектировать несколько контроллеров с разными уровнями проработки этих случаев и предоставить несколько готовых решений в данной области.
[1] Bovy P. Route choice: way finding in transport networks / Bovy P., Stern E. // Berlin: Kluwer, 1990.
[2] ГОСТ 12.1.033-81. ПОЖАРНАЯ БЕЗОПАСНОСТЬ. Термины и
определения
[3] Mech L.D., Boitani L. (Editors). Wolves: Behavior, Ecology, and Conservation. — Chicago, University of Chicago Press, 2003. — 428 p.
[4] Богомолова Е.М., Курочкин Ю.Л., Минаев А.Н. Системная
организация брачного поведения лосей // 111 съезд Всесоюз. териол. о- ва: Тез. докл. —
М.: Наука, 1982. — Т. 2. — С. 115-116
[5] Zhao D.L. Exit dynamics of occupant evacuation in an emergency / Zhao D.L, Yang L.Z, Li J. // Physica A 363. - 2006. - P. 501-512.
[6] Якушкин Г.Д., Мичурин Л.Н., Павлов Б.М., Зырянов В.А. Численность и миграции диких северных оленей на Таймыре // Труды IX Международного конгресса биологов-охотоведов, 1970. — С. 335-338.
[7] Estes R. Behavioural study of East African ungulates. 1963—1965. // Nat. Geol. Soc. Res. Repts, Projects. — 1969. - P. 45—47; Estes R. D. Social organization of the African bovids. // IUCN Publ. — 1974. — N. S., Vol. 1, N 24. — P. 165-205
[8] Smith R.A. Engineering for crowd safety // Amsterdam: Elsevier, 1993. - 442c.
[9] Sullivan T.J. The “critical mass in crowd behavior: Crowd size, Contagion and the Evolution of Riots. // Humboldt Journal of Social Relations. —
1977. —
Vol. 4, No. 2. — P. 46-59.
[10] Breder Jr. C.M., Halpern F. Innate and Acquired Behavior Affecting the Aggregation of Fishes // Physiological Zoology. — 1946. — Vol. 19, No. 2. —
P. 154-190
[11] Павлов Д.С., Касумян А.О. Стайное поведение рыб. — М.: Московский университет, 2003. — 74 с.
[12] Баскин Л.М., Бальчаускас Л., Жесткова И.А 1989. Пространственная структура стада коров // Доклады ВАСХНИЛ. Вып. 3. С. 36-38.
[13] Капица С., Модель роста населения земли и экономического развития человечества // Вопросы экономики. - 2000. - №12.
[14] Копылов В.А. Исследование параметров движения людей при вынужденной эвакуации // Дис. канд. техн. наук. - М., 1974.
[15] Hughes R.L. A continuum theory for the flow of pedestrians. Transp. Res. B 36. - 2002. - 507-35
[16] Partridge B. L. The Structure and Function of Fish Schools // Scientific American, June 1982. - 1982. - c. 114-123.
[17] Письмиченко Д.В. Мультиагентная модель поведения толпы /
Письмиченко Д.В., Божич В.И. // Известия ТГРТУ. - Таганрог:
2002. - №26(3). - с 19-22.
[18] Varas A. Cellular automata model for evacuation process with
obstacles / Varas A, Cornejo MD, Mainemer D, Toledo B, Rogan J, Munoz V. // Physica A 382. - 2007. - c. 631-642.
[19] Reynolds C.W. Flocks, herds and Schools: A distributed behavioral model // Computer Graphics 21(4) SIGGRAPH’87 conference proceedings. - 1987. - c. 25-34.
[20] Neumann J. The general and logic theory of automata // Cerebral Mechanics in Behavior. -- New York: Wiley, 1951. - c. 1-31.
[21] Kirchner A. Simulation of competitive egress behavior: comparison with aircraft evacuation data / Kirchner A, Klupfel H, Nishinari K, Schadschneider A, Schreckenberg M. // Physica A 324. - 2003. - c. 689-97.
[22] Varas A. Cellular automata model for evacuation process with obstacles / Varas A, Cornejo MD, Mainemer D, Toledo B, Rogan J, Munoz V. // Physica A 382. - 2007. - c. 631-642.
[23] Степанцов М.Е. Математическая модель направленного движения группы // Математическое моделирование, 2004. - т. 16(3).- с. 43-49.
[24] Moroshita S. Evacuation of billboards based on pedestrian flow in the
concourse of the station / Moroshita S, Shiraishi T. // Lecture notes in computer science. - Berlin, Heidelberg: Springer, 2006.
- №4173. - c. 716-719
[25] Dogbe N.O. Modeling crowds by the mean-field limit approach // Mathematical and Computer modeling, 2010. - Volume 52, Issues 9¬
10. - с.1506-1520.
[26] Reynolds, C. W. // Flocks, Herds, and Schools: A Distributed Behavioral Model, in Computer Graphics, 21(4) (SIGGRAPH 087 Conference Proceedings) P. 25-34.
[27] Reynolds, C. W. // Not Bumping Into Things, in the notes for the SIGGRAPH 88 course Developments in Physically-Based Modeling, P. G1- G13, published by ACM SIGGRAPH.
[28] Isaacs, Rufus // Differential Games: A Mathematical Theory with Application to Warfare and Pursuit, Control and Optimization, John Wiley and Sons, New York.
[29] Cliff, Dave and Miller, Geoffrey // Co-Evolution of Pursuit and Evasion II: Simulation Methods and Results, From Animals to Animats 4: Proceedings of the Fourth International Conference on Simulation of Adaptive Behavior (SAB96), Maes, Mataric, Meyer, Pollack, and Wilson editors, ISBN 0-262¬63178-4, MIT Press.
[30] Алексеев П.Г. Разработка модели поведения персонажей // Квалификационная работа бакалавра, Т., 2011 - с. 23-28.
[31] Гребенников Р.В. Модель поведения толпы на основе локальных потенциальных полей // Вестник ВГУ, Системный Анализ и информационные технологии. - Воронеж: 2009. - Т.1. - с. 46-50
[32] Гребенников Р.В. Модель поведения толпы на основе локального планирования пути // Вестник ВГТУ - Часть 9, Т.5. - Воронеж: ВГТУ, 2009 - с. 77-81.
[33] Дерягина М.А. 1986. Манипуляционная активность приматов. М.: Изд. Наука. 110 с.
[34] Хайнд Р. 1975. Поведение животных. М.: // Изд. Мир. 245-286 с.
[35] Гребенников Р.В. Разработка индивидуальных характеров
поведения при моделировании толпы // Вестник ВГУ, Системный Анализ и информационные технологии. - Т.2. - Воронеж: ВГУ,
2008. - с. 41-44
[36] Аптуков А.М., Моделирование групповой динамики толпы,
паникующей в ограниченном пространстве / Аптуков А.М.,
Брацун Д.А. // Вестник Пермского университета. Серия: Математика. Механика. Информатика, 2009. - №3. - с. 18-23.
[37] Богданов К.Ю. Динамика паникующей толпы // М.: Квант, 2005. - №5. - с. 2-7
[38] Гребенников Р.В. Апробация различных методов поведения толпы / Гребенников Р.В., Тюкачев Н.А. // Сборник работ участников конференции «ИТ-2010». - Н.Новгород: 2010. - с. 10-12
[39] Гребенников Р.В., Метод имитационного моделирования групповой
динамики толпы // Материалы Международного
молодежного научного форума «ЛОМОНОСОВ-2010»,
Вычислительная математика и кибернетика. - Москва: МГУ, 2010.
- с. 47-48.
[40] Гребенников Р.В. Обзор и анализ существующих математических моделей поведения толпы с точки зрения социальной психологии // Сборник работ участников конференции «Гибридный Интеллект 2010». - Воронеж: МИКТ, 2010. - с. 13-19
[41] Гребенников Р.В. Обзор классических методов моделирования
поведения толпы // Межвузовский сборник научных трудов.
Серия: Оптимизация и моделирование в автоматизированных
системах. - Воронеж: ВГТУ, 2010. - с. 50-53