Хакатон «Светлый Путь» на УБС 2025 в Тамбове

Анализ данных для идентификации топологии энергосети.

Презентация идеи ПО

Исходные данные

В качестве основного набора данных предоставлен файл ubs2025.csv.gz, содержащий 2 274 876 504 строк. Для удобства обработки этот файл разделен на 10 частей.

Для первоначальной апробации и отладки алгоритмов доступен облегченный aggregated_data.csv.gz, содержащий данные, агрегированные по минутным интервалам за определенный промежуток времени.

Структура данных

Данные за период с марта по июнь 2024 года были экспортированы из NoSQL базы и собраны в единую таблицу. Её структура представлена следующими полями:

  • entity_type: Тип сущности (например, DEVICE). В нашем хакатоне будет только device.
  • entity_id: Уникальный идентификатор счетчика.
  • key: тип измерения, реальная физическая величина, описание к которой есть в паспорте прибора учета.
  • partition: Временной промежуток, может быть использован для поиска.
  • ts: Метка времени (timestamp). Время указано в миллисекундах, для перевода в unixtime надо отбросить три цифры справа.
  • bool_v, dbl_v, json_v, long_v, str_v: Колонки со значениями различных типов (логическим, числовым с плавающей точкой, JSON, целочисленным, строковым). В приведенном примере заполнено поле dbl_v.

Пример данных:
DEVICE, 468fcc20-4692-11ea-bd76-a73c738b665f, phi3, 1711929600000, 1712829605015, , -0.687
DEVICE, 468fcc20-4692-11ea-bd76-a73c738b665f, phi3, 1711929600000, 1712829610015, , -0.688

Контекст и постановка задачи

Каждый уникальный entity_id в наборе данных соответствует отдельному прибору учёта (электросчетчику), установленному в здании. Все счетчики расположены в различных точках ветвления электросети.

Инфраструктура объекта включает три понижающие подстанции 10/0.4 кВ, однако часть из них может быть выведена в резерв. На момент сбора данных в работе находились только два трансформатора.

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

Файл train.csv представляет из себя сокращенную версию файла devices, примерно по 70% строк были взяты от каждого трансформатора. Данный факт может быть использован для оценок предполагаемого количества счетчиков на каждом трансформаторе.

Ключевая задача хакатона — разработать алгоритм (численно black box approach, или подкрепить его аналитически grey box approach), который способен определить, к какому трансформатору принадлежит каждый индивидуальный счетчик, а в перспективе и восстановить топологию энергосети.

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

Предлагаемый трехуровневый подход к решению

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

  1. Этап 1: Решение с использованием частичной априорной информации.
    Использование тренировочного файла train.csv, в котором указана принадлежность лишь части устройств, по аналогии с подключением нового устройства к уже функционирующей и настроенной системе.
  2. Этап 2: Решение без использования файла принадлежности, но с учетом известной информации о числе цепей.
    Решение задачи без файла train.csv, но с использованием известного факта о том, что ветвление цепи осуществляется всего на две линии. Данный подход применим для объектов, по которым отсутствует проектная документация.
  3. Этап 3: Решение без использования какой-либо априорной информации.
    Решение задачи, основанное исключительно на анализе показаний счетчиков. На данном этапе необходимо применить методы кластеризации и обучения без учителя (unsupervised learning) для автоматического выявления структуры сети.