25.02.2020

25 февраля 2020 года Президиум Российской академии наук присудил премию имени Л.В. Канторовича за применение суперкомпьютерных технологий в общественных науках.

«Премию Канторовича было единогласно решено присудить авторскому коллективу в составе: академик Валерий Леонидович Макаров, член-корреспондент Альберт Рауфович Бахтизин, кандидат экономических наук Елена Давидовна Сушко за цикл научных работ: «Суперкомпьютерные технологии в общественных науках». Центральный экономико-математический институт известен такими фундаментальными работами» – отметил академик-секретарь отделения общественных наук РАН Андрей Вадимович Смирнов.

Леонид Витальевич Канторович (1912-1986) – советский математик и экономист, один из создателей линейного программирования, лауреат нобелевской премии по экономике 1975 года за «вклад в теорию оптимального распределения ресурсов». Премия имени Л.В. Канторовича присуждается с 1996 года Российской академией наук за выдающиеся работы в области экономико-математических моделей и методов.

Kantorovich.jpg

История работы.

В марте 2011 года на суперкомпьютере Ломоносов была запущена агент-ориентированная модель, которая смоделировала развитие социально-экономической системы России на ближайшие 50 лет. Реализованная модель была основана на взаимодействии 100 млн. агентов, которые условно представляли социально-экономическую среду России. Поведение каждого агента определялось набором алгоритмов, которые описывали действия агента и взаимодействие с другими агентами в реальном мире. При реализации той демографической модели России была использована библиотека ADEVS для мультиагентного моделирования, а для распараллеливания пришлось полностью переписать ее на язык низкого уровня C++.

В 2016 году, совместно со специалистами МГУ им М.В. Ломоносова (В.А. Васенин, В.А. Роганов, В.А. Борисов, И.А. Трифонов), был разработан другой вариант технологии эффективного переноса вычислительного ядра мультиагентной системы на архитектуру современного суперкомпьютера с использованием суперкомпьютерной технологии для моделирования агентов. Она использовала исходный код, написанный на языке высокого уровня Java, а затем с помощью компилятора Avian Ahead-Of-Time (AOT) Compiler преобразовывала его в исполняемый код. Это позволило перенести большую часть работы на компилятор AOT и реализовать только самое необходимое в C++. Технология получила название STARS (Supercomputer Technology for Agent-oRiented Simulation).

В последние годы авторами была разработана третья версия системы для проведения многоагентных симуляций, изначально построенная для запуска на суперкомпьютерах и использования большого числа процессорных ядер. Эта реализация совмещает использование языка программирования высокого уровня C# для написания кода логики модели и низкоуровневого языка C++ для привязки к системной среде обмена сообщениями MPI. Такой подход позволяет минимизировать трудозатраты на разработку АОМ для суперкомпьютеров, при этом не происходит заметной потери эффективности работы программы. Использование технологии MPI позволяет запускать программу как на многоядерных рабочих станциях, так и на кластерных суперкомпьютерах.

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

Для балансировки нагрузки между процессами были выбраны алгоритмы METIS / ParMETIS, которые обычно используются для декомпозиции больших графов (до 109), расчетных сеток и матриц. Эти алгоритмы позволяют разделить граф агентов и связи между ними на части сходного размера с наименьшим возможным числом связей между частями. Алгоритм можно применять рекурсивно для эффективного расчета иерархического распределения графа. Использование алгоритма позволяет строить как начальную декомпозицию (распределение) системы, так и проводить уточнение декомпозиции в процессе расчета, что необходимо для поддержания балансировки нагрузки по мере добавления новых агентов в систему и удаления части старых агентов. Динамическая декомпозиция и перераспределение агентов должны позволять нам эффективно использовать до нескольких тысяч процессорных ядер современных суперкомпьютеров.

Основное содержание работы с указанием полученных результатов.

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

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

Также была разработана технология построения многоагентных симуляций, позволяющая эффективно масштабировать агент-ориентированные модели до 109 агентов (для систем с экзафлопсной производительностью). Технология была применена при реализации совместной с Национальным суперкомпьютерным центром Китайской народной республики крупномасштабной агентной модели стран Евразии, имитирующей основные процессы движения населения этих стран и их экономики, а также последствия реализации крупных инфраструктурных проектов как результата действий множества самостоятельных агентов. Тестирование модели было проведено на различных суперкомпьютерах (включая самые быстродействующие в мире – Sunway TaihuLight и «Млечный путь-2»).

rss
Назад

Статьи
Суперкомпьютерные технологии Демография Cуперкомпьютерные технологии Агент-ориентированные модели БРИКС METIS Высокопроизводительные вычисления Транспортные модели пешеходная модель МЁБИУС Монография Parallel computing Параллельные вычисления Биомедицина Axum SWAGES Публикации CUDA Microsoft Social Simulation Conference ГИС Междисциплинарное исследование Новости Революция Экономические процессы цунами Case HPS POLARIS TSUBAME Методология запуска О проекте Социальная сеть Эксафлопная производительность XAXIS Иерархическая платформа Механизм раделяемой памяти Пандемия Ссылки Эпидемия D-MASON Repast Исследования Моделирование мира Пандора Стратегии распараллеливания Ядерная атака на США FuturICT Russian Supercomputing Days Агент-ориентированный подход Исторические процессы Моделирование эпидемий Суперкомпьютерная Академия автоматическое распараллеливание GPU SEGMEnT Клеточные автоматы Модель экономики Евросоюза Пространственно-распределенные агентные модели Суперкомпьютерные дни агентная модель HPABM SSC Контакты Мониторинг планеты Пространственные модели большие данные