научная статья по теме ПРИМЕНЕНИЕ СУПЕРКОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ В ОБЩЕСТВЕННЫХ НАУКАХ Экономика и экономические науки

Текст научной статьи на тему «ПРИМЕНЕНИЕ СУПЕРКОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ В ОБЩЕСТВЕННЫХ НАУКАХ»

ЭКОНОМИКА И МАТЕМАТИЧЕСКИЕ МЕТОДЫ, 2013, том 49, № 4, с. 18-32

ТЕОРЕТИЧЕСКИЕ И МЕТОДОЛОГИЧЕСКИЕ ПРОБЛЕМЫ

ПРИМЕНЕНИЕ СУПЕРКОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ В ОБЩЕСТВЕННЫХ НАУКАХ*

© 2013 г. В.Л. Макаров, А.Р. Бахтизин

(Москва)

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

В статье мы рассмотрим опыт зарубежных ученых и практиков в запуске АОМ на суперкомпьютерах, а также на примере АОМ, разработанной в ЦЭМИ РАН, проанализируем этапы и методы эффективного отображения счетного ядра мультиагентной системы на архитектуру современного суперкомпьютера.

Ключевые слова: агент-ориентированные модели, параллельные вычисления, суперкомпьютерные технологии.

Классификация 1ЕЬ: С63, С88.

ВВЕДЕНИЕ

Компьютерное моделирование - широчайшая, интереснейшая и интенсивно развивающаяся область исследований, востребованная сегодня практически во всех сферах человеческой деятельности. Агент-ориентированный подход к моделированию универсален и удобен для прикладных исследователей и практиков в силу своей наглядности, но при этом предъявляет высокие требования к вычислительным ресурсам. Очевидно, что для прямого моделирования достаточно длительных социальных процессов в масштабах страны и планеты в целом нужны весьма значительные вычислительные мощности.

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

* Работа выполнена при финансовой поддержке Российского гуманитарного научного фонда (проекты 11-02-00258 и 12-02-00082).

1. ОПЫТ ЗАРУБЕЖНЫХ УЧЕНЫХ И ПРАКТИКОВ

1.1. Известные примеры запусков агент-ориентированных моделей на суперкомпьютерах. В сентябре 2006 г. стартовал проект по разработке крупномасштабной АОМ европейской экономики - EURACE, т.е. Europe ACE (Agent-based Computational Economics), с очень большим числом автономных агентов, взаимодействующих в рамках социально-экономической системы [Deissenberg, van der Hoog, Herbert, 2008]. В проект вовлечены экономисты и программисты из восьми научно-исследовательских центров Италии, Франции, Германии, Великобритании и Турции, а также консультант из Колумбийского университета США - нобелевский лауреат Джозеф Стиглиц.

Чтобы преодолеть ограничения широко распространенных моделей, рассматривающих агрегированные агенты, а также предполагающих их рациональное поведение и состояние равновесия, в основу исследования была положена методология ACE (Agent Based Computational Economics, агент-ориентированная экономика).

Для модели используется географическая информационная система, охватывающая широкий перечень объектов - предприятия, магазины, школы, транспортные сети и т.д.

Как отмечают разработчики, практически все существующие АОМ рассматривают либо отдельную отрасль, либо относительно небольшой географический район и, соответственно, небольшую популяцию агентов, а в EURACE представлен весь Европейский союз, так что по масштабам и сложности эта модель является уникальной, а ее численное разрешение требует использования суперкомпьютеров, а также специального программного обеспечения.

Для наполнения модели статистической информацией использовались данные (в виде геоинформационных карт) статистической службы Европейского союза уровня NUTS-21, представляющие сведения о 268 регионах 27 стран.

В модели - три типа агентов: домашние хозяйства (около 107), предприятия (около 105) и банки (около 102). Все они имеют географическую привязку, а также связаны друг с другом посредством социальных сетей, деловых отношений и т.д.

EURACE реализована с помощью гибкой масштабируемой среды для моделирования агент-ных моделей - FLAME (Flexible Large-scale Agent Modeling Environment), разработанной Симоном Коакли и Майклом Холкомбом2 первоначально для моделирования роста клеток, выращиваемых в различных условиях. Используемый в FLAME подход основан на так называемых X-машинах, напоминающих конечные автоматы, но отличающихся от них тем, что у каждой X-машины есть набор данных (своего рода память), а также тем, что переходы между состояниями являются функциями не только состояния, но и набора данных памяти.

Итак, каждый агент в системе FLAME представлен X-машиной, причем предусмотрено общение между агентами посредством передачи сообщений. При работе в параллельном режиме на суперкомпьютере обмен сообщениями между агентами требует больших вычислительных затрат, в связи с чем агенты изначально были распределены по процессорам в соответствии с их географическим положением. Тем самым разработчики программы минимизировали вычислительную нагрузку, исходя из предположения, что в основном общение между агентами происходит в рамках небольшой социальной группы, локализованной в определенной местности. Таким образом, весь модельный ландшафт был поделен на небольшие территории и распределен между узлами суперкомпьютера.

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

1 NUTS (фр. Nomenclature des unités territoriales statistiques) - Номенклатура территориальных единиц для целей статистики, представляющая собой стандарт территориального деления стран для статистических целей, разработанный Европейским союзом и охватывающий входящие в него страны. Существуют NUTS-единицы трех уровней, при этом второй уровень (NUTS-2) соответствует административным округам в Германии, графствам в Великобритании и т.д.

2 Более подробно см. www.flame.ac.uk.

нов со схожими условиями (ресурсы, развитие экономики и т.д.) в течение продолжительного периода (10 лет и более) могут значительно разойтись за счет первоначальной неоднородности агентов3.

В АOM EpiSims, разработанной исследователями из Института биоинформатики Вирджинии (Virginia Bioinformatics Institute), рассматриваются как перемещения агентов, так и их контакты в рамках среды, максимально приближенной к реальности и содержащей дороги, здания и прочие инфраструктурные объекты (Roberts, Simoni, Eubank, 2007). Для построения модели потребовался большой массив данных, включающий информацию о здоровье отдельных людей, их возрасте, доходе, этнической принадлежности и т.д.

Исходная цель исследования заключалась в построении для запуска на суперкомпьютере АOM большой размерности, с помощью которой можно будет изучать распространение болезней в обществе. Oднако впоследствии в процессе работы также решалась задача, связанная с созданием специализированного программного обеспечения ABM++, которое позволяет осуществлять разработку АOM на языке C++, а также содержит функции, облегчающие распределение исполняемого программного кода на узлах кластеров суперкомпьютера. Помимо этого ABM++ предоставляет возможность динамического перераспределения потоков вычислений, а также синхронизации происходящих событий.

ABM++, первая версия которого появилась в 2009 г., представляет собой результат модернизации инструмента, разработанного в 1990-2005 гг. в Лос-Аламосской национальной лаборатории в процессе построения крупномасштабных АOM (EpiSims, TRANSIMS, MobiCom).

Mежпpоцессоpные связи между вычислительными узлами в АOM часто требуют синхронизации происходящих в модели событий. ABM++ позволяет разрабатывать модели, отвечающие этому требованию. К примеру, в социальных моделях агенты часто перемещаются между различными точками пространства (работа, дом и т.д.), а на программном уровне этому соответствует смена узла кластера, и здесь важно, чтобы модельное время принимающего узла было синхронизировано со временем узла, который агент только что покинул.

Также в ABM++ реализована библиотека MPIToolbox, которая соединяет интерфейс C++ API (Application Programming Interface) и Message Passing Interface (MPI) суперкомпьютера и ускоряет передачу данных между узлами кластеров.

ABM++ создавалось в Ubuntu Linux - операционной системе с компиляторами gcc/g++. В качестве интегрированной среды разработки рекомендуется пакет Eclipse с плагином для поддержки C и C++, а также с плагином PTP (Parallel Tools Platform), обеспечивающим разработку и интеграцию приложений для параллельных компьютерных архитектур. Eclipse поддерживает интеграцию с TAU (Tuning and Analysis Utilities) Performance System - инструментом для разностороннего анализа и отладки программ для параллельных вычислений, что также упрощает разработку агентных моделей.

Специалисты другой исследовательской группы из того же Института биоинформатики Вирджинии создали инструмент для изучения особенностей распространения инфекционных заболеваний внутри различных групп населения - EpiFast, к достоинствам которог

Для дальнейшего прочтения статьи необходимо приобрести полный текст. Статьи высылаются в формате PDF на указанную при оплате почту. Время доставки составляет менее 10 минут. Стоимость одной статьи — 150 рублей.

Показать целиком