PwC о масштабировании моделей: выполнить 100 000 запусков за несколько секунд

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

Как масштабировать модели и удовлетворить эти требования?

Старший менеджер по новым технологиям в PwC (англ.) Синди Ма – эксперт в области масштабирования имитационных моделей. В своей презентации на AnyLogic Conference 2021 она показала три реальных проекта, в которых получилось масштабировать модели для большего количества сценариев и пользователей и добиться большей детальности.

В этой статье мы кратко расскажем о выступлении PwC, рассмотрим три проекта по моделированию на корпоративном уровне (enterprise-scale simulation), а также поделимся видео и ответами на вопросы участников конференции.

Больше запусков – моделирование офиса

После пандемии одна компания решила с помощью моделирования определить, как работа из дома изменила поведение офисных сотрудников. Она также хотела оценить рентабельность сокращения офисных площадей и разные варианты планировки помещения.

У разработчиков была модель, отражающая ситуацию до пандемии. На ее основе они разработали новую, которая отражала ситуацию после пандемии.

Так они могли сравнить профили поведения сотрудников в разные периоды. Сложность для разработчиков была в количестве запусков модели, которые требовал заказчик.

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

Упрощенная структура инструмента для анализа поведения офисных работников: входные данные поступают в модель, которая отправляет результаты на сервер для визуализации в Tableau
Упрощенная структура инструмента для анализа поведения офисных работников

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

Разработчики сначала построили и протестировали модель на своих компьютерах. Чтобы сохранить высокую скорость работы модели, они старались избегать ее чрезмерного «утяжеления». При этом на прогон модели уходила целая ночь.

Готовую модель разработчики перенесли в AnyLogic Private Cloud (статья на англ.).

Теперь она запускалась и работала намного быстрее: можно было тестировать небольшие пробные партии и после этого запускать ее сотни тысяч раз за ночь. Кроме того, благодаря простому интерфейсу в Cloud заказчики смогли самостоятельно работать с моделью.

Больше пользователей – модель финансового благополучия

Еще один заказчик PwC хотел с помощью моделирования узнать, как разные события влияют на финансовые решения людей. В дальнейшем модель должна была встроиться в крупную финансовую платформу и быть доступной онлайн 24/7 для сотен тысяч пользователей одновременно. При этом задержка в работе модели должна была быть не более секунды.

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

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

Одна из особенностей этого проекта – отдельные Java-модули. Построенную в AnyLogic модель разделили на части – Java-модули, – которые запускались независимо друг от друга. Это упростило работу веб-приложения и ускорило время отклика.

Такой подход вместе с оптимизацией кода и налаженными каналами ввода и вывода данных через API помог справиться c неприемлемой задержкой в работе модели.

Детальное моделирование – цифровой двойник человеческого организма

Аналитики в области здравоохранения хотели на основе данных биологических и медицинских исследований оценить потенциал биомаркеров – индикаторов состояния организма – в медицине.

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

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

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

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

В ходе разработки специалисты адаптировали систему, чтобы ее можно было использовать и как веб-приложение, и как мобильное приложение для iOS. Для этого модель должна была работать онлайн 24/7.

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

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

Советы, как подходить к масштабированию моделей

Обобщая опыт работы над тремя проектами из выступления, Синди Ма из PwC подчеркнула, что лучше всего учитывать будущее масштабирование в самом начале разработки модели.

Имитационные модели всё чаще становятся частью крупных проектов, поэтому нужно уметь их интегрировать с другими платформами. Тут пригодятся навыки документирования, работы c данными, а также владение Java и Python.

AnyLogic Cloud помогает встраивать имитационные модели в более крупные системы. Эта платформа хорошо подходит для многочисленных запусков моделей и удобного управления ими. Cloud также предоставляет много дополнительных возможностей, доступных через API.

Синди Ма также отметила, что AnyLogic Cloud упрощает совместную работу членов команды над одним проектом. Например, один специалист может заниматься непосредственно моделью, пока другой разрабатывает её веб-интерфейс.

Видео выступления PwC с AnyLogic Conference 2021 и презентация [англ., PDF]. В конце видео вас ждут ответы на вопросы участников:



Похожие материалы