Научная статья на тему 'Раскладка на плоскости и кластеризация графа, представляющего собой электрическую сеть'

Раскладка на плоскости и кластеризация графа, представляющего собой электрическую сеть Текст научной статьи по специальности «Математика»

CC BY
482
54
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Cloud of science
ВАК
Область наук
Ключевые слова
РАСКЛАДКА ГРАФА НА ПЛОСКОСТИ / ВИЗУАЛИЗАЦИЯ ЭЛЕКТРИЧЕСКОЙ СЕТИ / КЛАСТЕРИЗАЦИЯ ЭЛЕКТРИЧЕСКОЙ СЕТИ

Аннотация научной статьи по математике, автор научной работы — Домышев А.В.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Домышев А.В.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Graph layout and clustering for electric grid

The results of applying different algorithms of graph layout for graph of electrical grid are described in this paper. The technique of automatic graph layout is presented, which allows to effectively perform the layout of the graph of a large electrical network. A method of clustering a graph of an electrical network is proposed, taking into account the conductivity of the branches and the initially unknown number of clusters.

Текст научной работы на тему «Раскладка на плоскости и кластеризация графа, представляющего собой электрическую сеть»

Cloud of Science. 2018. T. 5. № 2 http:/ / cloudofscience.ru

Раскладка на плоскости и кластеризация графа, представляющего собой электрическую сеть1

А. В. Домышев

Институт систем энергетики им. Мелентьева СО РАН 664033, Иркутск, ул. Лермонтова, 130

e-mail: domyshev@isem.irk.ru

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

Ключевые слова: раскладка графа на плоскости, визуализация электрической сети, кластеризация электрической сети.

1. Введение

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

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

- визуализация неизвестной электрической сети, когда имеются данные только о модели сети, но нет ее графического представления;

- кластеризация сети для целей противоаварийного управления;

- нахождение траекторий утяжеления для задачи анализа статической устойчивости ЭЭС.

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

1 Работа выполнена в рамках проекта III.17.4.2 программы фундаментальных исследований СО РАН, рег. № АААА-А17-117030310438-1.

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

На основе выполненной раскладки графа выполняется его кластеризация с помощью предложенного модифицированного алгоритма с-средних.

2. Общие понятия

Любая электрическая сеть может быть представлена в виде взвешенного графа. Узел графа — шины электрической станции или подстанции. Ребро графа — ветвь (элемент) электрической схемы, обладающий сопротивлением.

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

3. Раскладка графа

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

Рисунок 1. Пример электрической сети

Так как при построении графа сети важно учитывать электрическую удаленность узлов сети, были исследованы алгоритмы на основе сил (force directed). Такие алгоритмы раскладки неориентированного графа на плоскости основаны на представлении вершин графа как отталкивающихся частиц, а граней графа как пружин,

стягивающих соответствующие узлы. Для электрической сети сила стягивания узлов гранью пропорциональна проводимости ветви. Находя баланс путем оптимизационного процесса, получаем решение, при котором сильно связанные части сети концентрируются в кластеры. Задача минимизации при этом записывается следующим образом:

in X w, (Iх* - x,\ - h)

min

1<'< j<n

где n — количество вершин графа; wtJ — вес грани, определяющий силу стягивания соответствующих вершин; ^ — оптимальная длина грани.

Решая данную оптимизационную задачу методом градиентного спуска, достаточно легко можно попасть в локальный минимум. При этом раскладка графа может быть далекой от оптимальной. Кроме того, при перемещении только одной вершины на каждой итерации вычислительная сложность не может быть выражена через число вершин и граней. Система может перейти в колебательный режим и не сходиться к оптимуму.

Для исключения локальных минимумов применяется алгоритм имитации отжига. Применение плана для изменения температуры, предложенного в работах Фрухтермана и Рейнголда [1], позволяет решать эту задачу за приемлемое время. Вместе с тем для графа достаточно большой электрической сети этот алгоритм дает неудовлетворительные результаты (рис. 2).

б)

Рисунок 2. Раскладка графа: а) алгоритмом Фрухтермана и Рейнголда (пакетом Gephi); б) алгоритмом GEM (с использованием пакета Tulip)

2

Как видно из рис. 2а, получившийся граф не отражает удаленность узлов сети в зависимости от их взаимной проводимости. Алгоритм GEM, предложенный Арне Фрик, Андреас Людвиг и Хейко Мехлун [4], использующий концепцию локальной температуры, притяжение вершин к их центру тяжести и выявление колебаний, достаточно быстро сходится, но без учета сопротивлений ветвей в силах притяжения, раскладка графа получается также нереальна (не отражает электрическую удаленность узлов сети) (рис. 26). Алгоритмы Force Atlas и Force Atlas 2 [3], реализованные в пакете Gephi, дают наиболее адекватные результаты для представления электрической сети. Эти алгоритмы также основаны на модели отталкивающихся частиц (вершин), соединенных пружинами (грани).

Если принять формулы для сил притяжения и отталкивания как в их физическом эквиваленте (пружины и заряды), то сила притяжения F между вершинами будет определяться по формуле Fa = -kd, где d — длина грани, связывающей вершины, а сила отталкивания F = kd2, где d — расстояние между вершинами. Коэффициент к определяется в зависимости от размеров графа.

Для алгоритма Фрухтермана и Рейнголда силы притяжения и отталкивания равны:

F = d2Ik ; F =- k2/d.

В алгоритме ForceAtlas2 силы притяжения и отталкивания равны:

F = d/k ■ Fr =- k2 ¡d.

Как показано в работе Ноака [5], наибольшее влияние на алгоритмы, основанные на применении сил, оказывает степень учета расстояния между вершинами. Если определить степени в формулах учета расстояния, как a и r:

Fa = d/k ; F =- k2/dr. то визуально кластеры становятся более выражены при меньших значениях (a - r).

Рисунок 3. Применение алгоритма ForceAtlas2 — начальное разложение по окружности

Для графа, представляющего электрическую сеть, оптимально значение a -r = 2.

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

F = w(e) • d = k • Y • d, где Y — проводимость ветви; k — нормирующий коэффициент (для рассматриваемой сети равен 1000).

Так как в алгоритме Force Atlas 2 сила отталкивания модифицируется таким образом, чтобы она уменьшалась для сильносвязанных узлов, и для наиболее слабосвязанных. В результате наблюдаются отдельные далеко отстоящие узлы. Для исправления данного недостатка после работы алгоритма Force Atlas 2 выполняется подтягивание слабосвязанных узлов с заморозкой остальной части графа. Раскладка графа электрической сети после подтягивания слабых связей показана на рис. 3.

4. Инициализация начального состояния

Следует отметить, что алгоритмы, основанные на силах, в значительной степени зависят от начальной инициализации координат вершин графа. Результаты, представленные на рис. 3, были основаны на инициализации графа раскладкой по окружности. Так как нумерация узлов электрической сети была изначально отсортирована по территориальной принадлежности и классу напряжения, то раскладка по окружности неявным образом упорядочила граф. Если применить случайную инициализацию координат графа, то разложение алгоритмом Force Atlas 2 дает результат, далекий от удовлетворительного (рис. 4).

•Г

Рисунок 4. Применение алгоритмов ForceAtlas2 — случайная инициализация графа

Для обеспечения начального упорядочивания графа применен алгоритм OpenOrd [7], хотя и являющийся также основанным на применении сил, но использующий метод имитации отжига для решения оптимизационной задачи:

п ^ п / 2 \ ^

тХп Е Е( ^ •а (х,х))+

' >=1 V м

где ^ — вес грани, пропорциональный проводимости соответствующей ветви; Вх — плотность точек вблизи х1 вычисляется разбиением графа на сетку, по которой вычисляется плотность графа в каждой клетке сетки:

к

Dx Е

x d.. +5'

XJ 'Jc

Здесь Xj e G(x); j — центр ячейки G(xi).

Имитация отжига в алгоритме OpenOrd предусматривает 5 фаз:

- жидкая — 25% от общего времени;

- расширение — 25% от общего времени;

- остывание — 25% от общего времени;

- растрескивание (crunch) — 10%;

- кристаллизация — 15%.

Граф после начальной раскладки алгоритмом OpenOrd представлен на рис. 5.

Рисунок 5. Раскладка OpenOrd

Применение алгоритма Force Atlas 2 после начальной раскладки с помощью алгоритма OpenOrd показывает стабильные результаты на различных схемах реальных энергосистем (рис. 6, 7). Граф, представляющий сеть, визуально близок к разложению, основанному на изначально упорядоченном по окружности графе.

Рисунок 6. Последовательное применение алгоритмов ОрепОгё, ГогсеЛйа$2, подтягивание наиболее слабых и наиболее сильных связей, избавление от наложения узлов

Рисунок 7. Применение методики раскладки на примере сети ОЭС Востока

5. Кластеризация

Под кластером понимается группа вершин графа, имеющая сильные взаимные связи (множество ребер с относительно небольшим весом). Ребра, соединяющие кластеры, имеют достаточно большой вес. Для графа электрической сети кластеры соответствуют электрически сильносвязанным районам, а ребра, соединяющие кластеры соответствуют сечениям, по которым может разделиться система в случае нарушения устойчивости.

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

Для кластеризации графа был применен модифицированный нечеткий алгоритм с-средних.

В классическом нечетком алгоритме ^средних [10, 11] решается следующая оптимизационная задача:

п с

^^ х - с.

а^тп р ЕЕр- ' X -

¡=1 ]=\

гдк р — величина в диапазоне от 0 до 1, определяющая вхождение вершины / в кластер вычисляется как

Р =

к=1

х - с

V X - ск у

центроид кластера с на каждом шаге оптимизации вычисляется по формуле

Ск=Е р: • х Е рт;

¡=1 / ¡=1

т > 1 определяет степень размытости кластеров (вхождения одной вершины в несколько кластеров). Чем больше ш, тем сильнее размыты кластеры. Чаще всего т принимают равным 2.

Для решения нашей задачи мы модифицировали нечеткий алгоритм с-средних таким образом, чтобы решалась следующая оптимизационная задача:

а^тт р £

ЕЕ

¡=1 -=1

ж

РкР-к

X с» X • с»

+ -

I

Е >*+1

В результате грани, соединяющие кластеры, не учитываются в оптимизируемой сумме. Граф стремится разделится по наиболее длинным граням.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

к=1

Чтобы исключить разделение системы на кластеры по числу вершин, в сумму по каждому кластеру был добавлен член, обратно пропорциональный весу кластера (количеству вершин в кластере). Коэффициент пропорциональности l регулирует данную корректировку. Чем больше l, тем крупнее кластеры.

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

6. Заключение

Разработанная методика раскладки на плоскости графа электрической сети была опробована автором на различных реальных схемах энергосистем (Иркутская энергосистема, ОЭС Сибири, ОЭС Востока).

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

Методика может применяться для кластеризации схем электрических сетей большой размерности (более 1000 узлов).

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

Литература

[1] Fruchterman T. M. J., Reingold E. M. Graph drawing by force-directed placement // Software: Practice and experience. 1991. Vol. 21. No. 11. P. 1129-1164.

[2] Hu Y. Efficient, high-quality force-directed graph drawing // Mathematica Journal. 2005. Vol. 10. No. 1. P. 37-71.

[3] Kobourov S. G. Force-directed drawing algorithms // Handbook of Graph Drawing and Visualization. — CRC Press, 2013. P. 383-408.

[4] Frick A., Ludwig A., Mehldau H. A fast adaptive layout algorithm for undirected graphs (extended abstract and system demonstration) // International Symposium on Graph Drawing. — Berlin, Heidelberg : Springer, 1994. P. 388-403.

[5] Noack A. Energy Models for Graph Clustering // Journal of Graph Algorithms and Applications. 2007. Vol. 11. No. 2. P. 453-480.

[6] Jacomy M. et al. ForceAtlas2, a continuous graph layout algorithm for handy network visualization designed for the Gephi software // PloS one. 2014. Vol. 9. No. 6. P. e98679.

[7] Martin S., Brown W. M., Klavans R., Boyack K. W. OpenOrd: an open-source toolbox for large graph layout // Proc. SPIE 7868, Visualization and Data Analysis 2011, P. 786806.

[8] Лопатин А. С. Метод отжига // Стохастическая оптимизация в информатике. 2005. Т. 1. №. 1. С. 133-149.

[9] Ornberg D. Comparison and implementation of graph visualization algorithms using JavaFX. Student thesis [Электронный ресурс]. — Linkoping University, 2016. (https://liu.diva-portal.org/smash/get/diva2:1054973/FULLTEXT01. pdf)

[10] Bezdek J. C., Ehrlich R., Full W. FCM: The fuzzy c-means clustering algorithm // Computers & Geosciences. 1984. Vol. 10. No. 2-3. P. 191-203.

[11] Wu K. L., Yang M. S. Alternative c-means clustering algorithms // Pattern recognition. 2002. Vol. 35. No. 10. P. 2267-2278.

Автор:

Александр Владимирович Домышев — научный сотрудник, Институт систем энергетики им. Мелентьева СО РАН (Иркутск)

Graph layout and clustering for electric grid

A. V. Domyshev

Melentiev Energy Systems Institute Siberian Branch of the Russian Academy of Sciences Lermontov Str., 130, Irkutsk, Russia, 664033

e-mail: domyshev@gmail.com

Abstract. The results of applying different algorithms of graph layout for graph of electrical grid are described in this paper. The technique of automatic graph layout is presented, which allows to effectively perform the layout of the graph of a large electrical network. A method of clustering a graph of an electrical network is proposed, taking into account the conductivity of the branches and the initially unknown number of clusters. Key words: graph layout, graph visualization, electric grid clasterisation.

References

[1] Fruchterman T. M. J., Reingold E. M. (1991) Software: Practice and experience, 21(11): 1129-1164.

[2] Hu Y. (2005) Mathematica Journal, 10(1):37-71.

[3] Kobourov S. G. Force-directed drawing algorithms. In Handbook of Graph Drawing and Visualization. CRC Press, 2013, pp. 383-408.

[4] Frick A., Ludwig A., Mehldau H. (1994) A fast adaptive layout algorithm for undirected graphs (extended abstract and system demonstration). In International Symposium on Graph Drawing, Springer, pp. 388-403.

[5] Noack A. (2007) Journal of Graph Algorithms and Applications, 11(2):453-480.

[6] Jacomy M. et al. (2014) PloS one, 9(6):e98679.

[7] Martin S., Brown W. M., Klavans R., Boyack K. W. (2011) OpenOrd: an open-source toolbox for large graph layout. In Proc. SPIE 7868, Visualization and Data Analysis 2011, p. 786806.

[8] Lopatin A. S. (2005) Stohasticheskaya optimizaciya v informatike, 1(1):133-149. [In Rus]

[9] Ornberg D. Comparison and implementation of graph visualization algorithms using JavaFX. Student thesis, Linkoping University, 2016.

[10] Bezdek J. C., Ehrlich R., Full W. (1984) Computers & Geosciences, 10(2-3):191-203.

[11] Wu K. L, YangM. S. (2002) Pattern recognition, 35(10):2267-2278.

i Надоели баннеры? Вы всегда можете отключить рекламу.