Как это работает
Зачастую бывает, что смоделировать ту или иную ситуацию с использованием обычных вычислительных средств крайне сложно. Например, если необходимо сопоставлять слишком много критериев или данных между собой — мощности компьютера может просто не хватить. Возможна и обратная ситуация: чтобы учесть все варианты развития событий, не хватает данных. Модель можно построить, но крайне проблематично настроить ее по существующим данным. Кроме того, иногда систему реального мира, которую нужно смоделировать, невозможно наблюдать целиком по разным причинам.
Тут на помощь и приходят методы предсказательного моделирования. Процесс моделирования начинается с «загрузки» в компьютер, а точнее в суперкомпьютер, необходимых данных. На основе этих сведений создается и настраивается компьютерная модель — виртуальный образ ситуации. Затем в дело вступают эксперты, которые формулируют к образу всевозможные сценарии его развития. Это не значит, что они предсказывают саму ситуацию, — они лишь определяют условия, в которых ситуация будет предположительно развиваться.
«Например, если мы делаем прогноз экстремальных природных явлений, то эксперты формулируют различные сценарии, учитывающие изменение внешних факторов, вплоть до возможности наличия где-нибудь извержения вулкана или даже атомного взрыва. Затем на основе таких сценариев мы можем делать расчеты поведения системы „океан-атмосфера“», — отметил лектор.
По данной логике усилиями научной команды Университета ИТМО было разработано математическое и программное обеспечение системы, которая помогает операторам комплекса защитных сооружений Санкт-Петербурга от наводнений решать, когда закрывать и открывать затворы дамбы. Она дает рекомендации, как не допустить затопления города как со стороны Финского залива, так и со стороны Невы. Ведь если затворы комплекса будет закрыты слишком долго, то разлиться может и сама река.
Восстания машин не будет
Смоделировать можно почти все городские процессы: от перемещений населения и движения транспортных потоков до прогнозов распространения инфекций и действий криминальных структур. Моделирование помогает выработать эффективные методы управления городской системой. В качестве основы используются данные УФМС о прописке, видео с камер наблюдения, информация о пассажиропотоках метрополитена, данные социальных сетей с геолокализацией и другая информация. Можно даже решать обратные задачи — например, вычислить, где и сколько потребуется датчиков исходной информации, чтобы модель работала достоверно.
Получается, что суперкомпьютер может вычислить все? А что если передать управление городом машине?
«Предсказательное моделирование — это не управление принятием решений, а лишь инструмент, который помогает человеку вырабатывать и обосновывать решения. Люди могут действовать не так, как предсказала модель. Кроме того, если в систему моделирования никто не загрузит корректные данные, если не будет связки с экспертным сценарием, то это будет бесполезный инструмент», — прокомментировал Александр Бухановский.
Кроме того, всегда есть проблема неопределенности — ошибки в исходных данных, неточности в сценарии, абстракция в самой модели, добавил он. Социальные системы всегда тяжело поддаются анализу, в том числе из-за такого фактора как свобода выбора: почему человек вдруг свернул направо, а не налево? А если этот же человек поймет, что на основе его решений что-то рассчитывается и прогнозируется, он может намеренно уклоняться от наблюдения, что также затруднит процесс предсказательного моделирования.
Когда не хватает данных
А что если на суперкомпьютере реализуется модель совершенно новой для исследователя системы, и человек не может качественно сформулировать все необходимые сценарии? Или, наоборот, когда уже существующая модель не отражает новые данные? Здесь ученые используют метод так называемого эволюционного (суррогатного) моделирования.
«Компьютер начинает как бы „выращивать“ новую модель на основе некоторого разумного прототипа. При этом он использует методы машинного обучения. Это значит, что компьютер создает целую популяцию различных вариантов моделей, из которой выбирает лучшие, и затем снова осуществляет процесс моделирования (подробнее об эволюционных алгоритмах можно прочитать здесь). Также используется такой метод, как ансамблевое моделирование: компьютер строит модель на основе комбинации разных решений, которые выглядят наиболее логично», — пояснил профессор Университета ИТМО.
Линейные процессы моделируй «методом тыка»
Предсказательное моделирование удобно использовать для циклических процессов, которые повторяются с определенной периодичностью и подчиняются определенным закономерностям. А что если взять линейный процесс? Предположим, что есть владелец магазина одежды, который хочет знать, какие вещи ему закупать, чтобы угадать с трендами следующего сезона. Может ли моделирование предсказать поведение законодателей мод?
«Нужно сначала выстроить модель на основе имеющихся данных, затем маленькими шагами опробовать ее в действии. Например, закупить небольшую партию одежды и посмотреть, как ее реализация совпадает с моделью. Если различия незначительные, значит, прогноз сделан правильно. Если чрезмерно большие — в модели нужно что-то менять. При этом для дальнейшего прогноза нужно использовать усвоение данных, то есть корректировку параметров модели, минимизируя различия между текущими прогнозами и наблюдениями. Такого варианта, чтобы все быстро решилось, нет», — объяснил лектор.
Знать то, что никто не знает
Теоретически предсказательное моделирование может помочь найти ответы, которые не могли прийти в голову экспертам, или расширить их.
«Например, если рассматривать движение большой толпы. Эксперт может сказать, что плотность людей будет, скажем, в среднем два человека на квадратный метр по всей территории. С помощью компьютерных вычислений можно увидеть более детальную картинку: в одном месте плотность будет один человек на квадратный метр, а в другом — четыре. Можно заранее устранить такие „узкие места“ и тем самым избежать неприятных последствий», — привел еще один пример Александр Бухановский.
Казалось бы, все просто: поставьте везде по суперкомпьютеру, и не будет никаких проблем. Но здесь есть тонкости. В частности, далеко не всегда вычислительные процессы, связанные со сложными системами, хорошо распараллеливаются. Дело в том, что общую модель считают несколько компьютеров разной мощности и архитектуры. И перед разработчиками всегда стоит отдельная задача заставить их работать синхронно и не мешать друг другу. Кроме того, встает вопрос эффективного использования вычислительных ресурсов, поскольку для работы суперкомпьютеров требуются большие затраты электроэнергии. Для решения этой проблемы профессор Университета ИТМО предлагает использовать технологии распределенных облачных вычислений.
«Заказчиком предсказательных моделей для таких глобальных систем, как город или регион, традиционно выступает наше государство. Кроме того, мы ведем ряд зарубежных проектов по заказу Нидерландов и Индии. Но это пока не открытый бизнес, хотя, безусловно, информационные услуги на основе таких моделей представляют интерес для промышленности и представителей коммерческого сектора экономики», — подвел итог лектор.
Добавим, что профессор Александр Бухановский выступит 25 февраля на Дне открытых дверей кафедры высокопроизводительных вычислений (ВПВ) и НИИ наукоемких компьютерных технологий. Мероприятие состоится в Университете ИТМО на Биржевой линии, 4.