7.2 Аналитический движок

Аналитический движок платформы “Цифровой Двойник Города” представляет собой совокупность вычислительных компонентов и математических моделей, реализованных в виде независимых модулей, обслуживающих расчёт, прогнозирование и симуляцию различных социально-экономических процессов. Он обеспечивает исполнение как встроенных моделей, так и пользовательских сценариев, с высокой скоростью и воспроизводимостью.

Компоненты аналитического движка включают:

  • Модуль расчётных моделей — отвечает за последовательное выполнение моделей, реализованных на языках R, С++, Java, с возможностью подгрузки внешних сценариев, выборки из БД и возврата результатов в стандартизированном формате;
  • Библиотека моделей — содержит реализованные модули демографии, макроэкономики, межотраслевого баланса (МОБ), анализа дефицитов, устойчивости, индексов развития и др.;
  • Кеширующий обработчик — промежуточный слой, ускоряющий доступ к повторяющимся расчётам и поддерживающий быстрый отклик для пользовательского интерфейса;
  • Логгер модели — фиксирует метаинформацию: дату запуска, исходные параметры, версию модели и сохраняет след вычислений.

Технологическая реализация основана на:

  • языке R и его библиотеках (targets, forecast, dplyr, ggplot2, data.table, прочие);
  • механизме пакетного запуска расчетов через Rscript;
  • взаимодействии с ClickHouse для чтения входных данных и записи итоговых результатов;
  • использовании интерактивных Shiny дашбордов - для визуализации результатов;
  • использовании RMarkdown — для экспорта промежуточной аналитики.

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

Такая структура обеспечивает модульность, масштабируемость и возможность подключения новых моделей — без вмешательства в другие компоненты системы. Это делает аналитический движок гибкой и расширяемой основой для расчётных процессов в рамках ЦДГ.