ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION.
TECHNICAL SCIENCE. 2020. No 2
УДК 519.175.1, 621.3.011.712 DOI: 10.17213/1560-3644-2020-2-13-18
КРИТЕРИЙ ИЗОМОРФИЗМА ГРАФОВ НА ОСНОВЕ РЕЗИСТИВНОГО РАССТОЯНИЯ
© 2020 г. А.Н. Иванченко, К.Н. Иванченко
Южно-Российский государственный политехнический университет (НПИ) имени М.И. Платова, г. Новочеркасск, Россия
GRAPH ISOMORPHISM CRITERION BASED ON RESISTANCE DISTANCE
A.N. Ivanchenko, K.N. Ivanchenko
Platov South-Russian State Polytechnic University (NPI), Novocherkassk, Russia
Иванченко Александр Николаевич - канд. техн. наук, Ivanchenko Alexandr N. - Candidate of Technical Sciences,
профессор, кафедра «Программное обеспечение вычисли- Professor, Department «Software Computer Engineering», Platov
тельной техники», Южно-Российский государственный South-Russian State Polytechnic University (NPI), Novocherkassk,
политехнический университет (НПИ) имени М.И. Платова, Russia. E-mail: [email protected] г. Новочеркасск, Россия. E-mail: [email protected]
Иванченко Кирилл Николаевич - магистрант, кафедра Ivanchenko Kirill N. - Master Student, Department «Software
«Программное обеспечение вычислительной техники», Computer Engineering», Platov South-Russian State
Южно-Российский государственный политехнический Polytechnic University (NPI), Novocherkassk, Russia. E-mail:
университет (НПИ) имени М.И. Платова, г. Новочеркасск, [email protected] Россия. E-mail: [email protected]
Рассматривается проблема построения критерия изоморфизма графов. Предложен новый инвариант графа - R-спектр, представляющий собой мультимножество резистивных расстояний между всеми парами вершин графа. Описан оригинальный алгоритм формирования R-спектра простого связного графа, основанный на эквивалентных преобразованиях резистивных электрических цепей с использованием теоремы Розена. Выполнены численные эксперименты на эталонных наборах неизоморфных графов, показавшие высокую эффективность применения R-спектра в качестве критерия изоморфизма графов.
Ключевые слова: проблема изоморфизма графов; инварианты графа; спектр графа; эквивалентные преобразования резистивных электрических цепей; резистивное расстояние; матрица Лапласа-Кирхгофа.
The article discusses problem of constructing a criterion for isomorphism of graphs. A new graph invariant is proposed - the R-spectrum, which is a multiset of resistance distances between all pairs of graph vertices. An original algorithm for generating the R-spectrum of a simple connected graph based on equivalent transformations of resistances electric circuits using the Rosen theorem is described. Numerical experiments on reference sets of nonisomorphic graphs were performed, which showed high efficiency of using the R-spectrum as a criterion for graph isomorphism.
Keywords: graph isomorphism problem; graph invariants; graph spectrum; equivalent transformations of resistances electric circuits; resistance distance; Kirchhoff (Laplacian) matrix.
Введение во многих областях науки, техники и технологий
и поэтому возможность сравнивать графы, т.е. Формализм графов даёт универсальный выявлять сходство (или различие) между ними, способ представления разнообразных сведений является важным инструментом. Как известно, об объектах и связях между ними. Графы исполь- два структурно одинаковых графа называются зуют для кодирования структурной информации изоморфными; такие графы могут отличаться
ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION.
TECHNICAL SCIENCE. 2020. No 2
только маркировкой вершин. Однако установление факта изоморфности (или неизоморфности) графов является ЫР--трудной задачей, точное решение которой в общем случае может быть получено только прямым перебором.
В то же время востребованность эффективных алгоритмов проверки графов на изоморфность сегодня исключительно велика. Так, например, в работе [1] конспективно даётся перечень областей применения подобных алгоритмов: криптография, теория автоматов, параллельные вычисления, компиляция программ, поисковые системы, анализ изображений, анализ социальных структур, химическая информатика, автоматизация проектирования в электронике и многие другие.
Известные на сегодняшний день критерии изоморфности, использующие различные инварианты графа, задают необходимые условия наличия изоморфизма (подробный перечень известных инвариантов графа собран в работе [2]). Если же инвариант обеспечивает и достаточные условия для установления изоморфизма, то он будет называться полным, но такой инвариант, вычисляемый за полиномиальное время, пока не найден. Следовательно, актуальным является поиск новых инвариантов графа, которые должны различать как можно больше неизоморфных графов, но в то же время должны быть и легко вычисляемыми (например, за полиномиальное по числу вершин время) [3].
Основные идеи и алгоритмы
Вполне обоснованно можно предположить, что новый инвариант должен иметь форму набора чисел (мультимножества или, в случае упорядочения элементов, кортежа), отражающего структуру графа, и его условно можно считать «спектром» по аналогии со спектрами матриц, описывающих структуру графа [4, 5]. Такой набор способен нести в себе гораздо больше информации о структуре, чем скалярный инвариант.
В настоящей статье предлагается сконструировать инвариант на основе одной из известных метрик графа - резистивного расстояния Ят между двумя вершинами и и V простого неориентированного связного графа Г(п,т) [6 - 8], которое равно эквивалентному сопротивлению между двумя узлами и и V электрической резистивной цепи, построенной путём замены каждого ребра графа на сопротивление в 1 Ом.
Назовём резистивным спектром (или Л-спектром) графа Г(п,т) мультимножество из п(п-1)/2 элементов (эквивалентных сопротивлений):
8рк(Г(п,т))={Ет | и, V = 1,2,...п; и^}.
Утверждение. Если графы Г1(п,т) и Г2(п,т) имеют одинаковые Л-спектры 5ря(Г1) и 5рЛ(Г2), то эти графы изоморфны. В противном случае графы неизоморфны.
Равенство Л-спектров у изоморфных графов очевидно, а неравенство Л-спектров у неизоморфных графов не удаётся доказать теоретически и оно может быть продемонстрировано в результате проведения численных экспериментов.
Для вычисления резистивного расстояния Лт обычно применяют матричный метод, в основе которого лежит матрица Лапласа (Кирхгофа) [9]:
1 = Б - А,
где А - матрица смежности графа, Б - диагональная матрица степеней вершин; при этом Ят рассчитывают по формуле [8]:
det Ь (и, V)
Kv -
det L [м, u ]'
где detL(u,v) - определитель матрицы, полученной из L вычёркиванием двух строк и двух столбцов с номерами u и v; detL[u,u] - определитель матрицы, полученной из L вычёркиванием строки и столбца с номером u. Заметим, что значение detL[u,u] одинаково для всех вершин графа и, согласно матричной теореме о деревьях (теореме Кирхгофа), равно количеству всех остов-ных деревьев графа Г(п,т).
Вычисление определителей достаточно трудоёмко, поэтому предлагается следующий алгоритм расчёта Ruv, основанный на известной из теории электрических цепей теореме Розена [10], позволяющей выполнить эквивалентное преобразование q-лучевой «звезды» в полный граф Kq и тем самым сократить на единицу количество вершин графа.
Определение резистивного расстояния Ruv будем рассматривать как итерационный процесс эквивалентных преобразований электрической цепи, начинающийся с цепи, описываемой взвешенным графом Г(п,т), и заканчивающийся двухполюсником с вершинами u и v и ребром (u,v), вес которого и будет равен искомой величине Ruv. Очевидно, что этот процесс будет состоять из n-2 шагов.
ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION. TECHNICAL SCIENCE. 2020. No 2
Целью каждого шага является удаление из графа одной «внутренней» вершины (т.е. вершины, отличной от u и V), которая рассматривается как центр «звезды», а инцидентные ей рёбра - как «лучи» (ветви). Пусть 5 - текущая вершина, q - её степень (валентность). Для определённости примем, что смежные с 5 вершины пронумерованы от 1 до q. При удалении вершины 5 удаляются q инцидентных ей рёбер и добавляются q(q-1)/2 новых рёбер, веса (сопротивления) которых определяются по формуле Розена [10]: ч -1
Г = X(гь ) , и] =1,2,..ч,г <]. к=1
В случае q = 2 («двухлучевая звезда») вместо формулы Розена можно использовать более простую формулу для последовательного соединения резисторов (которая, впрочем, выводится из общей формулы).
После включения в граф новых рёбер возможно появление петель, параллельных и висячих рёбер. При этом петли и висячие рёбра просто удаляются, а пара параллельных рёбер заменяется одним ребром с весом, рассчитанным по формуле параллельного соединения резисторов.
При вычислении весов (сопротивлений) новых рёбер целесообразно использовать формат рациональных чисел. Это позволит оперировать в расчётах только с целыми числами и исключить операции деления в формуле Розена для вычисления проводимостей лучей звезды.
Для определения Л-спектра 8рК(Т(п,ш)) необходимо п(п-1)/2 раз применить описанный выше алгоритм для всех пар вершин графа. Получаемое в результате этого расчёта мультимножество из рациональных чисел может быть представлено в более компактном виде, удобном для визуального восприятия и выполнения операций проверки на равенство двух Л-спектров.
Если привести все элементы мультимножества к общему знаменателю Z, то само мультимножество в памяти компьютера удобно представлять как простое множество, состоящее из ^<п(п-1)/2 различных пар натуральных чисел (х, р), где х - числитель дроби, р - кратность числа х/2 в мультимножестве. Для удобства визуального восприятия будем записывать кратности элементов как показатели степени и тогда формализованное представление Л-спектра графа будет таким:
ЯРя (г(п,т)) = {хрг | г = 1,...к; Р1 + Р2 +
+ Pk = n(n -!)/2}.
Для определённости примем, что числа xt записываются в порядке возрастания и, следовательно, образуют кортеж.
Покажем интересный результат применения описанного алгоритма построения R-спектра к полным графам (здесь верхний индекс означает кратность элемента спектра, а не показатель степени):
SPr(K3) = {23 | Z=3}, SPr(K4) = {26 | Z=4}, SPr(K5) = {210 | Z = 5}, ... .
Этот ряд легко обобщается для произвольного n: SpR(Kn) = {2n(n-1)/2 | Z = n}. Другими словами, все резистивные расстояния полного графа Kn одинаковы и равны 2/n.
Численные эксперименты
Корректность использования R-спектра в качестве критерия изоморфизма графов продемонстрируем на результатах численных экспериментов, проведённых на тестовых наборах неизоморфных графов с помощью компьютерной программы на языке С++, разработанной на основе описанного выше алгоритма.
Примем, что один тестовый набор должен содержать графы, у которых три простейших инварианта: число вершин, число рёбер и последовательность степеней вершин одинаковы. Желательно также, чтобы каждый из тестовых наборов являлся полным множеством неизоморфных графов с заданными инвариантами.
Для создания тестовых наборов воспользуемся свободно распространяемой программой генерации графов geng, входящей в пакет программ «nauty and Traces» [11]. Теоретическое обоснование алгоритма работы программы geng приведено в [12, 13]. Эта программа позволяет генерировать полные множества связных неизоморфных графов с заданными характеристиками.
Сформируем небольшой тестовый набор, являющийся полным множеством из восьми неизоморфных графов Г(7,11), имеющих последовательность степеней вершин 4, 4, 4, 3, 3, 3, 1. В табл. 1 представлены рисунки этих графов и их R-спектры. Как видно, R-спектры всех графов оказались различны.
В следующей серии экспериментов используем тестовые наборы (полные множества) из регулярных неизоморфных графов невысоких степеней. Результаты, представленные в табл. 2, демонстрируют, что ни один из неизоморфных графов не был ошибочно идентифицирован как изоморфный.
ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION.
TECHNICAL SCIENCE. 2020. No 2
Таблица 1 / Table 1
й-спектры полного множества из восьми неизоморфных графов / й-spectra of the complete set out of eight nonisomorphic graphs
Граф
Общий знаменатель Z
45
45
114
115
120
130
130
R-спектр
211, 34, 41, 63, 72
181, 226, 253, 272, 303, 451. 703, 722
181, 226, 253, 272, 303, 451. 672, 701, 752
481, 502, 532, 592, 601, 692, 712, 951, 1102, 1141, 1832, 2091, 2242
461, 492, 542, 551, 592, 701. 752, 851, 942, 1101, 1151, 1902, 2092, 2251
512, 562, 594, 601, 752, 801. 961,1042,1201,1952,2161,
2242
551, 612, 642, 662, 692, 751. 792, 942, 951, 1301, 1911, 1961, 1991, 2241, 2251
551, 612, 642, 662, 692, 751. 792, 942, 951, 1301, 1941, 1991, 2051, 2091, 2241
Таблица 2 / Table 2
Результаты сравнения й-спектров регулярных графов / Comparison of й-spectra of regular graphs
Число вершин Число рёбер Степень графа Количество связных неизоморфных графов Количество совпадающих й-спектров
8 12 3 5 0
8 16 4 6 0
8 20 5 3 0
10 15 3 19 0
10 20 4 59 0
10 25 5 60 0
10 30 6 21 0
12 18 3 85 0
12 24 4 1544 0
12 30 5 7848 0
12 36 6 7849 0
14 21 3 509 0
14 28 4 88168 0
Следующие эксперименты проводились на больших наборах из нерегулярных графов. Из результатов, представленных в табл. 3, видно, что почти во всех случаях исследуемый инвариант (т.е. Л-спектр графа) уверенно различал неизоморфные графы. Исключение составил лишь один эксперимент (см. последнюю строку табл. 3), в котором 20 неизоморфных графов из 39044 (т.е. 0,05 %) были ошибочно идентифицированы как изоморфные некоторым другим графам из этого набора.
Таблица 3 / Table 3
Результаты сравнения й-спектров для полных множеств нерегулярных графов с заданными параметрами / Results of й-spectra comparison for complete sets of irregular graphs with given parameters
Число вершин Число рёбер Последовательность степеней вершин Количество связных неизоморфных графов Количество совпадающих й-спектров
9 20 6, 6, 5, 5, 4, 4, 4, 3, 3 2027 0
9 20 6, 5, 5, 5, 4, 4, 4, 4, 3 1757 0
9 20 6, 6, 5, 5, 5, 4, 4, 3, 2 1532 0
9 20 6, 5, 5, 5, 5, 4, 4, 3, 3 1702 0
10 30 8, 7, 7, 6, 6, 6, 6, 5, 5, 4 8824 0
10 30 7, 7, 7, 7, 6, 6, 6, 5, 5, 4 5739 0
10 30 7, 7, 7, 6, 6, 6, 6, 5, 5, 5 4363 0
12 50 10, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8 1464 0
12 50 9, 9, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8 1999 0
13 15 4, 4, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1 39044 20
Для выяснения причин «сбоя» исследуемого критерия из тестового набора были взяты две пары взаимно неизоморфных графов (табл. 4), которые имеют одинаковые ^-спектры и поэтому идентифицируются как изоморфные.
Таблица 4 / Table 4
Неизоморфные графы с одинаковыми й-спектрами / Nonisomorphic graphs with identical й-spectra
Граф
Общий знаменатель Z
24
24
96
96
R-спектр
574, 603, 654, 682, 801
178, 206, 245, 326, 338, 363, 4112, 446, 484, 566, 574, 603, 654, 682, 801
641, 674, 768, 964, 1084, 1126, 1152, 1232, 1394, 1442, 1602, 1634, 1712, 17210, 1921, 2043, 2083, 2352, 2403, 2563, 2592, 2683, 3041, 3 361, 3521
641, 674, 768, 964, 1084, 1126, 1152, 1232, 1394, 1442, 1602, 1634, 1712, 17210, 1921, 2043, 2083, 2352, 2403, 2563, 2592, 2683, 3041, 3 361, 3521
4
178. 206. 245. 326. 338
363. 41 . 446. 484. 566
ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION. TECHNICAL SCIENCE. 2020. No 2
Таблица 5 / Table 5
Результаты преобразования неизоморфных графов, содержащих сбалансированные резистивные мосты / Results of transformation of nonisomorphic graphs containing balanced resistive bridges
Исходные пары неизоморфных граф
Пары изоморфных графов без «мостов»
Можно предположить, что причина «ложной» идентификации этих пар неизоморфных графов заключается в том, что в графах имеются простые циклы длиной 4, включенные по схеме сбалансированного резистивного моста, а так как входящие в мосты резисторы имеют сопротивление 1 Ом, то каждый из мостов эквиваленти-руется в один резистор сопротивлением 1 Ом, после чего пары графов становятся взаимно изоморфными (см. табл. 5).
Заключение
Предложенный в статье новый инвариант графа - резистивный спектр (R-спектр) может быть рекомендован в качестве критерия изоморфизма для простых связных графов. Разработанный алгоритм прямого вычисления элементов R-спектра прост в реализации и не требует больших затрат вычислений. Большое количество численных экспериментов, проведенных на корректно сформированных тестовых наборах, показало высокий процент правильной идентификации графов с помощью нового инварианта.
Литература
1. What are the applications of the isomorphic graphs? URL: <https://math.stackexchange.com/questions/120408/what-are-the-applications-of-the-isomorphic-graphs/120482# 120482> (дата обращения 25.02.2020).
2. Graph_property. URL: <https://en.wikipedia.org/wiki/Graph _property> (дата обращения 25.02.2020).
3. Ландо С.К. Графы и топология. URL: <https://electives. hse.ru/data/ 2018/04/19/1150479911/GraphTopology18.pdf> (дата обращения 25.02.2020).
4. Cvetkovic D.M., Doob M., Sachs H. Spectra of Graphs. 3rd revised and enlarged edition. Heidelberg/Leipzig, Johann Ambrosius Barth Verlag, 1995. 447 p.
5. Cvetkovic D. Applications of graph spectra: an introduction to the literature // Zbornik Radova. Matematicki institut SANU, Beograd, 2011. Issue: 14(22), P. 9-34. URL: <http://elib.mi.sanu.ac.rs/files/journals/ zr/22/zbr14009.pdf> (дата обращения 25.02.2020).
6. Resistance Distance. URL: <https://mathworld.wolfram.com/ ResistanceDistance.html> (дата обращения 25.02.2020).
7. Klein D.J., Randic M. Resistance distance // Journal of Mathematical Chemistry, 12(1993) P. 81-95. URL: <https://www.researchgate.net/ publication/226420782_ Re-sistance_Distance> (дата обращения 25.02.2020).
8. Ravindra B. Bapat, Ivan Gutman, Wenjun Xiao A. Simple Method for Computing Resistance Distance. URL: <http://yaroslavvb.com/papers/bapat-simple.pdf> (дата обращения 25.02.2020).
9. Laplacian Matrix. URL: <https://mathworld.wolfram.com/ LaplacianMatrix.html> (дата обращения 25.02.2020).
10. Rosen A. A new network theorem // Journal of the Institution of Electrical Engineers. 1924. Vol. 62, Iss. 335, Р. 916 -918. DOI: 10.1049/jiee-1.1924.0120
11. McKay B.D., Piperno A. Nauty and Traces. Software distribution web page. URL: <http://users.cecs.anu.edu.au /~bdm/nauty/> (дата обращения 25.02.2020).
12. McKayB.D. Practical Graph Isomorphism // Congressus Numerantium, 30 (1981). Р. 45-87. URL: <http://users.cecs.anu. edu.au/~bdm/nauty/pgi.pdf> (дата обращения 25.02.2020).
13. McKay B. D., Piperno A. Practical Graph Isomorphism, II // J. Symbolic Computation (2013) Vol. 60, p. 94-112. URL: <https://arxiv.org/pdf/1301.1493.pdf> (дата обращения: 25.02.2020).
References
1. What are the applications of the isomorphic graphs? Available at: <https://math.stackexchange.com/questions/120408/what-are-the-applications-of-the-isomorphic-graphs/120482#120482> (accessed 25.02.2020).
2. Graph_property. Available at: <https://en.wikipedia.org/wiki/ Graph_property> (accessed 25.02.2020).
3. Lando S.K. Graphs and Topology. Available at: <https://electives.hse.ru/ data/2018/04/19/1150479911/GraphTopology18.pdf> (accessed 25.02.2020).
ISSN 1560-3644 IZVESTIYA VUZOV. SEVERO-KAVKAZSKIYREGION. TECHNICAL SCIENCE 2020. No 2
4. Cvetkovic D.M., Doob M., Sachs H. Spectra of Graphs. 3rd revised and enlarged edition. Heidelberg/Leipzig, Johann Ambrosius Barth Verlag 1995. 447 pp.
5. Cvetkovic D. Applications of graph spectra: an introduction to the literature // Zbornik Radova. Matematicki institut SANU, Beograd, 2011. Issue: 14(22), P. 9 - 34 Available at: <http://elib.mi.sanu.ac.rs/files/journals/ zr/22/zbr14009.pdf> (accessed 25.02.2020).
6. Resistance Distance. Available at: <https://mathworld.wolfram.com/ ResistanceDistance.html> (accessed 25.02.2020).
7. Klein D.J., Randic M. Resistance distance // Journal of Mathematical Chemistry, 12(1993) P. 81 - 95. Available at: <https://www.researchgate.net/ publication/226420782_Resistance_Distance> (accessed 25.02.2020).
8. Ravindra B. Bapat, Ivan Gutman, and Wenjun Xiao A. Simple Method for Computing Resistance Distance. Available at: <http://yaroslavvb.com/ papers/bapat-simple.pdf>_(accessed 25.02.2020).
9. Laplacian Matrix. Available at: <https://mathworld.wolfram.com/ LaplacianMatrix.html> (accessed 25.02.2020).
10. Rosen A. A new network theorem // Journal of the Institution of Electrical Engineers. 1924. Vol. 62, Iss. 335, Р. 916 - 918. DOI: 10.1049/jiee-1.1924.0120
11. McKay B.D., Piperno A. Nauty and Traces. Software distribution web page. Available at: <http://users.cecs.anu.edu.au/ ~bdm/nauty/> (accessed 25.02.2020).
12. McKay B.D. Practical Graph Isomorphism // Congressus Numerantium, 30 (1981) Р. 45 - 87. Available at: <http://users.cecs.anu.edu.au/ ~bdm/ nauty/pgi.pdf> (accessed 25.02.2020).
13. McKay B.D., Piperno A. Practical Graph Isomorphism, II// J. Symbolic Computation (2013) Vol. 60, Р. 94 - 112. Available at: <https://arxiv.org/pdf/1301.1493.pdf (accessed 25.02.2020).
Поступила в редакцию /Received 24 марта 2020 г. /March 24, 2020