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