Помощь в написании студенческих работ
Антистрессовый сервис

Многоязыковые возможности среды многоагентного моделирования Repast Symphony

РефератПомощь в написанииУзнать стоимостьмоей работы

Repast Simphony состоит из двух частей: среда разработки и среда моделирования и анализа. Среда разработки Repast построена на базе Eclipse — популярной свободной интегрированной среды разработки модульных кроссплатформенных приложений. Eclipse служит в первую очередь платформой для разработки расширений, чем он и завоевал популярность: любой разработчик может расширить его своими модулями… Читать ещё >

Многоязыковые возможности среды многоагентного моделирования Repast Symphony (реферат, курсовая, диплом, контрольная)

Стремительное проникновение методологии многоагентного моделирования в различные отрасли научного знания столь же стремительно расширяет круг специалистов, использующих методологию для проведения исследований. В последние годы наблюдается значительный интерес к многоагентному моделированию и у российских ученых [1−3]. Среди других важных при освоении новой методологии вопросов отметим для себя и рассмотрим далее в настоящей статье проблему выбора программной среды для многоагентного моделирования.

На данный момент существует несколько продуктов для многоагентного моделирования с различными вариантами распространения и лицензирования. Но среди всего этого многообразия, есть очень гибкий инструмент, в основу которого изначально было заложена возможность его использования исследователями с разным уровнем подготовки и знаний — Repast.

Имеются и соответствующие примеры проведения исследований в данной среде и в России (например, [4, 5]).

В начале 2000;х в университете Чикаго исследователями и разработчиками Sallach, Collier и др. [6] был разработан пакет Repast 3 — семейство библиотек для многоагентного моделирования: Repast J основано на JAVA, Reapast .NET как видно из названия базируется на C# и NQP (подмножество языка Python) и является основой для Reapst Py. Эти библиотеки распространяются под лицензией «new BSD» (Berkley Software Distribution).

В дальнейшем эти разработки были расширены и улучшены Национальной Лабораторией Аргон (Argonne National Laboratory). Так как Repast распространяется под лицензией открытого исходного кода, в его разработке участвует несколько университетов, организаций и просто заинтересованные специалисты.

В последствие, основываясь на опыте эксплуатирования этих трёх библиотек, был создан Repast Simphony (RS). Он был переписан заново и использует полностью свою кодовую базу. RS проектировался с сильным фокусом на хорошо учтённые абстракции. В итоге получился инструмент с модульно-ориентированной архитектурой, которая позволяет любую часть (сетевые компоненты, система логирования и т. п.) заменить на другую. Также модульная архитектура позволяет наращивать функционал практически на любом слое взаимодействия компонентов без переписывания основной кодовой базы.

Сообщество Repast Simphony с каждым годом набирает обороты, что особенно видно в последние годы (выпущена новая версия, участие в летней школе Google с моделями, написанными на Repast и т. д.). Вот лишь несколько наиболее интересных вариантов промышленного применения RS в разных областях исследований.

Лаборатория изучения виртуального рынка является крупномасштабной моделью рынков потребления, построенной в сотрудничестве Национальной Лабораторией Аргон и корпорацией Procter & Gamble (P&G).

Она представляет покупательское поведение потребителей, бизнеса розничной торговли и производителей в симулированном национальном рынке. Аргон и P&G успешно скалибровали, верифицировали и подтвердили результаты многоагентной модели. В ней было задействовано огромное количество реальных данных, по которым были проведено более 60-ти модульных тестов для подтверждения модели на истории. В последствие P&G использует модель для принятия управленческих решений в сложных ситуация для уменьшения финансовых потерь [7].

Мониторинг, анализ и диагностика распределённых процессов в многоагентных системах (MADCABS). Эта модель создавалась для изучения процессов и контроля в сложных сетях. MADCABS использовался в многих разработках и исследованиях для изучения эффективности персептрон-ориентированного обучения для изучения процессов сетей распределённых химических реакций [8].

Модель транспорта на водороде для Лос-Анджелеса, Калифорния. Эта модель построена на базе ГИС, где основные агенты — водители и инвесторы. Построена модель всего трафика, видов распределение видов транспорта, достатка водителей, количества заправок и т. п. Модель позволяет выстраивать сценарий для водородных заправок и просчёт инвестиций в нужные районы для их постройки [9].

Процесс построения моделей в RS

В Repast Simphony реализовано несколько вариантов создания модели:

Java или Groovy (подмножество языка Java) проект;

ReLogo. Язык примитивов агентного моделирования;

Блок-схемы.

ReLogo и блок-схемы генерируют, в конечном счете, проект на Java. Так что по сути, можно работать со всеми тремя вариантами, начиная от прототипирования на блок-схемах или ReLogo и более тонкой настройки впоследствии исходного кода. Также можно использовать огромную библиотеку Java приложений, в которой собраны десятки тысяч готовых решений для практически любых задач.

Repast Simphony состоит из двух частей: среда разработки и среда моделирования и анализа. Среда разработки Repast построена на базе Eclipse — популярной свободной интегрированной среды разработки модульных кроссплатформенных приложений. Eclipse служит в первую очередь платформой для разработки расширений, чем он и завоевал популярность: любой разработчик может расширить его своими модулями. На данный момент существует огромное количество готовых модулей, которые существенно облегчают написание программ, их тестирование, отладку, совместную работу и т. п. Также существуют модули для работы с GIS, базами данных, математическими вычислениями. Eclipse является платформо-независимой и может быть запущена практически в любой операционной системе (Windows, OSX, Linux).

Самый простой способ описания модели — это блок-схемы (см. рис.1). Он не требует от исследователя знания языков программирования или каких-то специальных умений. Но построить серьёзную модель, используя только этот метод, не получится. Он скорее подходит для создания прототипов или быстрой проверке идей.

Блок-схема Repast Simphony.

Рисунок 1 — Блок-схема Repast Simphony.

Следующим достаточно мощным средством создания моделей является ReLogo. Это обёртка библиотеки RS в семантический простой, но мощный пакет. С его помощью исследователь может быстро создать симуляцию, которая в дальнейшем очень просто может быть масштабирована. К тому же, в академических кругах в процессе обучения часто используется инструмент NetLogo [10], так что в дальнейшем обучающиеся очень просто смогут перейти к использованию промышленного инструмента при необходимости. ReLogo использует те же примитивы, что и в NetLogo: черепашки, связи, обозреватели и патчи. Код, написанный на ReLogo, в последствие генерирует Java код в читаемом виде.

Процесс запуска эксперимента и работа с данными

Среда моделирования и анализа представляет собой отдельную программу, в которую компилируется сама модель. Интерфейс с изменяемыми элементами управления, графиками, а также входные данные и место, куда экспортируются выходные данные — всё это настраивается по усмотрению проектировщика.

Конечный пользователь сможет управлять моделью, задавать необходимые параметры и входные данные, не прибегая к изменению в исходном коде с помощью визуальных средств управления.

Для работы с данными реализовано несколько механизмов. Они могут поступать как программы, интерфейсных значений, так и из любой базы данных. Выходные данные (их вид, количество и необходимые значения) могут быть сохранены в файл, загружены в базу или же выведены сразу в виде графиков, вид которых настраивается прямо из интерфейса.

Работа с многоагентной моделью подразумевает под собой также наглядный анализ данных в виде визуальной репрезентации. Для этого в Repast Simphony встроены 2D и 3D системы визуализации, причём 3D может тесно интегрироваться с ГИС. Обе системы могут задействовать OpenGL — платформонезависимую библиотеку для работы с графикой. В качестве примера на рис. 2 представлена в среде моделирования и анализа трёхмерная модель Земли. визуализация модель архитектура repast.

Трёхмерная модель Земли.

Рисунок 2 — Трёхмерная модель Земли.

Ещё одна встроенная функция может быть полезна исследователям и аналитикам — возможность замораживать модель в текущем состоянии. В последствие этим состоянием можно поделиться с коллегой или продолжить дальнейший эксперимент, скорректировав немного входные данные.

Дополнительные модули и приложения

Как писалось выше, модульная архитектура Repast Simphony и достаточно либеральная лицензия позволяет использовать огромное количество дополнительных приложений. Некоторые из них интегрированы в запускаемый интерфейс. В частности: JUNG (Java Universal Network/Graph Framework) — аналитическая система графов (сетей) и JoSQL — использование SQL для объектов Java. С помощью этого механизма, можно производить SQL запросы во время паузы модели. Это существенно упрощает возможности всевозможные возможности выборок.

Таким образом, для решения наиболее проблемной части многоагентного моделирования, а именно, для построения модели в программной среде, в качестве последней целесообразно использовать распространяемый под лицензией открытого исходного кода программный продукт Repast Simphony. Описанные выше возможности формирования модели, определения её архитектуры, проведения исследований, визуализации и т. п., соответствуют современным требованиям к средствам моделирования и значительно расширяют возможности исследователей сложных систем.

  • 1. Макаров, В. Л. Социальное моделирование — новый компьютерный прорыв (агент-ориентированные модели) / В. Л. Макаров, А. Р. Бахтизин. — М.: Экономика, 2013. — 295 с.
  • 2. Современная практика социального моделирования конфликтных процессов /Под ред. Розина М. Д. — Р/Д: Изд-во СКНЦВШ ЮФУ, 2010. — 120 с.
  • 3. Современная практика моделирования этносоциокультурной конфликтности на Юге России /Под ред. М. Д. Розина. /Авторы: Иванова М. И., Клаус Н. Г., Литвинов С. В., Мощенко И. Н., Носко В. И., Розин М. Д., Свечкарев В. П., Сущий С. Я., Тымчук Д. А., Угольницкий Г. А.- Р/Д: Изд-во СКНЦВШ ЮФУ, 2012. — 160 с.
  • 4. Свечкарев, В.П., Тымчук, Д. А. Многоагентное моделирование критических социальных поведений [Электронный ресурс] // «Инженерный вестник Дона», 2010. № 1. — Режим доступа: http://www.ivdon.ru/magazine/archive/n1e2010/175 (доступ свободный) — Загл. с экрана. — Яз. рус.
  • 5. Тымчук, Д. А. Многоагентная модель социальных взаимодействий на основе групповой идентичности [Электронный ресурс] // «Инженерный вестник Дона», 2011. — № 1. — Режим доступа: http://www.ivdon.ru/magazine/archive/n1y2011/402 (доступ свободный) — Загл. с экрана. — Яз. рус.
  • 6. Collier N, Howe T, North MJ: Onward and upward: The transition to Repast 2.0. In Proceedings of the first annual North American Association for Computational Social and Organizational Science conference. Edited by Carley K. Carnegie Mellon University, Pittsburgh; 2003.
  • 7. North MJ, Macal CM, St. Aubin J, Thimmapuram P, Bragen M, Hahn J, Karr J, Brigham N, Lacy ME, Hampton D: Multi-scale agent-based consumer market modeling. Complexity 2010, 15(5):37−47
  • 8. Artel A, Teymour F, North MJ, Cinar A: A multi-agent approach using perceptron-based learning for robust operation of distributed chemical reactor networks. Int Sci J Eng App Artif Intell 2011, 24:1035−1045
  • 9. Mahalik, M., G. Conzelmann, C. Stephan, M. Mintz, T. Veselka, G. Tolley, and D. Jones, Transition to Hydrogen Transportation Economy, Poster presentation at the National Hydrogen Association Annual Conference: Ramping up Commercialization, Sacramento, CA (March 30 — April 3, 2008).
  • 10. Клаус Н. Г., Свечкарев В. П. Многоагентное моделирование конфликтных ситуаций: Учебное пособие. — Ростов-на-Дону: Изд-во СКНЦ ВШ ЮФУ, 2012. — 124 с.
Показать весь текст
Заполнить форму текущей работой