1 of 15

Хакатон “Светлый путь”

на УБС 2025 в Тамбове

2 of 15

Detailed Analysis of Energy Consumption for an Office BuildingN Bazenkov, I Petrov

На основе собранных Центром за 2021 г. данных подготовлено исследование, посвящённое описанию и анализу этих данных. Результаты доложены на конференции International Conference on Mathematical Modeling in Physical Sciences September 30 - October 3, 2024, и планируются к публикации в IOP JPCS и Springer POMS.

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

Наблюдается дневная, недельная периодичность и сезонные колебания. Средняя нагрузка в рабочие дни больше на 25%, а максимальная – на 38%, чем в выходные. Зимнее и осеннее потребление отличается от весеннего и летнего

3 of 15

Соревнование по анализу данных центра в рамках конференции УБС-2023

Подготовлено соревнование по анализу данных центра в рамках конференции УБС-2023. Участникам предлагалось решить задачу прогнозирования энергопотребления на основе данных электрических счетчиков, установленных в зданиях Института. В рамках конференции были проведены вводная лекция (1.5 часа) и итоговое собрание с обсуждением решений, вопросами от участников и ответами организаторов и Директора Института. На решение задачи отводилось 40 часов. В итоге от 11 участников было зарегистрировано 149 решений. Список победителей:

  1. Алексей Тюрин (ЛГТУ, НЛМК);
  2. Павел Лысенко (ИПУ РАН);
  3. Егор Гришин и Семён Галахов (ИПУ РАН).

Описание соревнования и итоговые результаты доступны на платформе kaggle (https://www.kaggle.com/competitions/challenge23/leaderboard).

4 of 15

Прототип веб-приложения для интерактивного анализа данных о микроклимате и энергопотреблении доступен из внутренней сети Института по ссылке http://193.232.208.53:3838/energy/, для внешних пользователей - https://lab79.shinyapps.io/Energy/. Инструменты - R/Shiny (Javascript + CSS + HTML + R).

Прототип веб-приложения на основе Flask (Python) и React (JavaScript)

Тестовый деплой основного приложения: https://energy-web-app-m79t.onrender.com/

Код основного приложения: https://github.com/Astronomax/energy-web-app

Инструменты – Flask/React (JavaScript + CSS + HTML + Python).

В данный момент на платформе доступны агрегированные данные с метеостанции и микроклиматических датчиков за 2021 год. В скором времени (январь 2024) будут добавлены данные за 2022 и 2023 гг.

В дальнейшем предполагается, что прототип 1 будет использован в дополнение к полигону «Умная комната»; прототип 2 – продолжает дорабатываться.

Пример загрузки алгоритма в веб-приложении на основе Flask (Python) и React (JavaScript)

Прототип веб-приложения на основе R и Shiny для интерактивного анализа данных о микроклимате и энергопотреблении

Прототипы веб-приложений

5 of 15

Наша IoT платформа = SCADA

IoT-платформа Thingsboard выполняет функции SCADA и имеет функционал анализа данных. Но!

  • Урезанный функционал анализа и преобразования данных.
  • ТВ не предназначен для сложных запросов к историческим данным.

6 of 15

Наше ПО

7 of 15

Общая идеяРазработка программного обеспечения для анализа данных об энергопотреблении.

SCADA (аббр. от англ. supervisory control and data acquisition — диспетчерское управление и сбор данных).

8 of 15

Классификация ПО*

Единый реестр российских программ для электронных вычислительных машин:

https://ru-ikt.ru/reestrpo

11. Средства анализа данных.

11.03 Средства аналитической обработки в реальном времени (OLAP).

11.04 Средства интеллектуального анализа данных (Data Mining).

11.05 Средства поддержки принятия решений (DSS).

*Приказ Министерства цифрового развития, связи и массовых коммуникаций РФ от 22.09.20 №486

9 of 15

Общая идея: детали архитектуры ПОРазработка программного обеспечения для анализа данных об энергопотреблении

Вне зависимости от выбранного вида ПО, эффективно разделить архитектуру на 2 составляющие по модели локальных вычислительных сетей (ЛВС):

Сетевой оркестратор /

планировщик задач

Объект

ЛВС №1 – то, что есть у клиента

ЛВС №2 – то, что должно составлять ПРОДУКТ ИПУ

Получение данных,

Extract

Transform

Load

тонкие клиенты, рабочие места, телеграм-боты и т.д.

Архив предобр. данных,

СУБД для OLAP

Блок алгоритмов анализа

Архив результатов анализа, СУБД для визуализации

– блоки, для которых имеются прототипы или опыт создания (но их, всё равно, надо будет трансформировать)

10 of 15

Планировщик задач сетевой оркестратор

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

Содержит в себе (зависит от):

– информацию об устройстве объекта;

– расписание обновления данных;

– сценарии взаимодействия клиента и продукта.

Варианты реализации:

– Apache Airflow;

– Apache Kafka;

– Luigi;

– KuberFlow.

Некоторые задачи для оркестратора общей системы:

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

Управление пользователями и доступами: исключение человеческого фактора.

Автоматическое реагирование на инциденты: перезапуск ПО, информирование сотрудников поддержки.

Централизованное управление обновлениями и конфигурациями. Поддержание баз данных в актуальном состоянии.

Автоматизация резервного копирования и восстановления данных. Комментарии излишни.

11 of 15

Преобразование данных. Extract Transform Load

Состоит из трех подсистем - скачивания данных, преобразования данных и планировщик задач (м.б. будет использоваться оркестратор системы)

Задачи при проектировании и разработке

– Понимание бизнес-требований к данным.

– Анализ источников данных (базы данных, API, файлы и т.д.).

– Определение структуры целевой системы (например, хранилища данных, Data Lake).

Вариант реализации

– Python + SQL (самописный модуль)

– Apache Airflow

– Talend Open Studio

– Pentaho Data Integration

Задачи модуля ETL:

– подключение в БД клиента, возможно несколько БД;

– анализ структуры данных в БД;

– анализ качества “сырых” данных (поиск пропусков, возможности интерполяции);

– синхронизация данных во времени;

– отправка результатов в БД хранения.

12 of 15

Архив предобработанных данных. OLAP-DB

Представляет собой инфраструктуру для быстрой аналитической обработки больших объемов данных.

Задачи при проектировании и разработке

– Разработка структуры таблиц, оптимизация.

– Интеграция с модулем анализа и модулем ETL.

– Анализ и переписывание "тяжелых" запросов.

– Настройка кэширования запросов, предагрегатов, OLAP-кубов.

Вариант реализации

– Postgres

– Clickhouse

– др., напр. HDFS, Vertica, BigQuery, Druid, SSAS

Задачи модуля АРХИВ:

– хранение скачанных от клиента данных;

– обеспечение данными алгоритмов анализа.

13 of 15

Блок алгоритмов

Предлагаемые принципы анализа:

многомерность, декомпозиция и агрегация данных

– Многомерность означает, что данные анализируются по различным измерениям, таким как время, вид энергии, вид потребителя, регион и др.

– Декомпозиция подразумевает разбивку данных для проведения более детального анализа.

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

Состав блока анализа

  1. Удобный API к данным (clickhouse).
  2. Интерфейс для реализации алгоритмов.
  3. Набор алгоритмов ( вот что должно быть нашей фишкой).
  4. Запись результатов работы алгоритма в Архив 2.

Блок анализа – инструмент для реализации на практике тех исследований, которые проводятся/проводились научными сотрудниками ИПУ РАН в области электроэнергетики. Это должен быть не один раз написанный “монолит”, а платформа для создания и запуска алгоритмов. Гибкость такого подхода позволит создать эволюционирующий под требования заказчика продукт.

Варианты реализации:

Набор библиотек на ЯП

– Python

– C

– …

14 of 15

Визуализация / тонкий клиент

Набор инструментов для отображения данных из Архива 2 там, где пожелает заказчик. Это может быть отдельно устанавливаемое приложение, веб-страница, Telegram-бот и т.д. Возможен конструктор пользовательского анализа, который будет запускаться по запросу клиента.

Варианты исполнения:

– Скрипт синтеза статического отчета в pdf, рассылка по почте

– Статические страницы + библиотеки отрисовки

– Сторонний конструктор дашбордов

– Базовый web-движок, динамические алгоритмы компоновки страниц, вызов анализа “по клику”

– Телеграмм-боты

15 of 15

Этап 1

Предобработка данных

Этап 2

Анализ данных

Динамика объемов данных внутри модуля

Исходные объемы данных

Объемы данных на выходе