Труды Карельского научного центра РАН №10. 2015. С. 34-41 DOI: 10.17076/mat167
УДК 004.421.2, 519.178
РАНЖИРОВАНИЕ ВЕРШИН ГРАФА ПУБЛИКАЦИЙ МАТЕМАТИЧЕСКОГО ПОРТАЛА MATH-NET.RU
А. Б. Жижченко1, В. В. Мазалов2, Б. Т. Цынгуев3
1 Межведомственный суперкомпьютерный центр РАН
2 Институт прикладных математических исследований Карельского научного центра РАН
3 Забайкальский государственный университет
В данной работе предлагается новый способ определения центральности для взвешенных графов на основе законов Кирхгофа. Рассматриваемый метод имеет относительно невысокую вычислительную сложность. Метод иллюстрируется результатами расчетов электрической центральности для ранжирования вершин графа публикаций математического портала Math-Net.ru. Сделано сравнение с широко используемым методом PageRank.
Ключевые слова: мера центральности, взвешенный граф, анализ социальных сетей.
A. B. Zhizhchenko, V. V. Mazalov, B. T. Tsynguev. RANKING OF NODES IN THE MATHEMATICAL PORTAL MATH-NET.RU PUBLICATIONS GRAPH
We propose a new method for determining betweenness centraity for weighted graphs based on Kirchhoff's law. This method has low computational complexity. The results of numerical experiments are presented for the coauthors graph from the math portal Math-Net.ru. A comparison is drawn with the PageRank method.
K e y w o r d s: betweenness centrality, weighted graph, social networks analysis.
Введение
Современные методы исследования сетевых структур получили бурное развитие в связи с появлением феномена социальных сетей (social network analysis). Методы анализа социальных сетей применяются во многих областях науки, таких, как экономика, физика, социология, биология и информационные технологии.
Одним из базовых понятий в анализе сетевых структур является центральность (betweenness centrality). Центральность вершины - это важная мера, отражающая то, насколько вершина участвует в процессе рас-
пространения информации между остальными вершинами в графе. Пусть задан граф С = (V, Е), где V - множество вершин, Е - множество ребер. Обозначим число вершин как п = IV|, а число ребер как т = |Е|. Тогда центральность вершины V € V определяется следующей формулой [9]:
г \ 1 V^ as,t(v)
св (v) = — x ,
пв
s,tev
(1)
где - число геодезических путей между вершинами в € V и £ € V, - число геодезических путей между вершинами в и проходящих через вершину V. Коэффициент
нормировки ив равен ив = (n — 1)(n — 2), если вершина v не может быть начальной s или конечной t вершинами, и ив = и(и — 1) иначе. Наилучшая вычислительная сложность алгоритма поиска центральности равна О(ти) и представлена в [5].
Для определения центральности можно использовать методы кооперативной теории игр. Здесь вершины графа представляют игроков, а ребра представляют связи между игроками. Игроки могут кооперироваться только если они связаны, т. е. кооперация ограничена неориентированным графом. Далее задается характеристическая функция, определяющая выигрыш коалиции. Таким образом, задается коммуникационная игра, в которой, определив вектор Майерсона [11], можно определить центральность всех вершин.
Известно, что поиск вектора Майерсона имеет высокую вычислительную сложность. В [10] была предложена специальная характеристическая функция, которая существенно упростила процесс вычисления вектора Май-ерсона.
В [6, 12] мера центральности вычисляется на основе модели электрической цепи. В данной модели граф рассматривается как электрическая цепь с идеальными элементами, где каждое ребро имеет некую пропускную способность (значение обратное сопротивлению), а вершины графа являются ее узлами. Для поиска меры центральности в модели электрической цепи используются правила Кирхгофа. Для этого электрическая цепь заземляется в некоторой вершине t и подается электрический ток в некоторой вершине s. В [6] ток подается в некоторой единственной вершине s, а также в единственной вершине t сеть заземляется. Мерой центральности вершины v служит средняя величина тока, проходящего через вершину v по всем возможным парам s и t. Таким образом, в модели электрической цепи при расчете меры центральности учитываются не только геодезические пути.
Наилучшая вычислительная сложность известного на текущий момент алгоритма поиска меры центральности в модели электрической цепи равна O(I(и — 1) + ти log и), где I(и — 1) - сложность вычисления обратной матрицы размерности и — 1.
В [2] рассматривается модель электрической цепи, где пропускная способность всех ребер графа принимается равной некоторому постоянному параметру а. В отличие от [6] в модели [2] в электрическую цепь искусственно вводится и + 1 заземленная вершина, и каждая вершина сети соединена с ней ребром с
пропускной способностью 1 — а. Эти изменения позволили существенно уменьшить вычислительную сложность алгоритма. Кроме того, это дало возможность применить стохастические методы в вычислении меры центральности в графах с большой размерностью. Но данная модель была предусмотрена только для невзвешенных графов.
В данной работе предлагается новый способ определения центральности для взвешенных графов на основе законов Кирхгофа. Метод имеет относительно невысокую вычислительную сложность. Метод иллюстрируется результатами расчетов электрической центральности для ранжирования вершин графа публикаций математического портала МаЛ-Net.ru [1, 8]. Сделано сравнение с широко используемым методом PageRank [7].
Мера центральности для взвешенных графов на основе закона Кирхгофа
Пусть дан взвешенный граф С = (V, Е, Ш), где V - множество вершин, Е - множество ребер, Ш - матрица весов:
W (G) =
/ 0 Wi,2 ... Wi,n\ W2,1 0 ... W2,n
\Wn, 1 Wn, 2
0
где Wi,j ^ 0 - вес ребра между вершинами vi и Vj, п = IV| - число вершин. Если вершины Vi и Vj несмежные, то Wi,j = 0. Если С - неориентированный граф, то wi,j = Wj,i.
Обозначим ^(С) диагональную матрицу вида:
D(G) =
/dVl 0
0
dv о
00
0 0
dvJ
где dVi = Y^n=i Wi,j - сумма весов ребер инцидентных вершине Vi в графе G.
Определение. Матрица L(G) называется матрицей Кирхгофа (Laplacian matrix) взвешенного графа G, если
L(G) = D(G) — W (G) =
/ dvi —Wi,2 ... —Wi,n\ —W2,1 dv2 ... — W2,'I
V—Wn,1 —Wn,2 ... dvn )
(2)
Пусть граф С получен из графа С путем добавления дополнительной ып+\ вершины, связанной со всеми вершинами графа С
35
ребрами с постоянной проводимостью 5. Таким образом, получим следующую матрицу Кирхгофа графа С':
Представим (7) в следующем виде. ф*(С) = [(Б(С) + 51) - W(С)]-\ =
= [1 - (Б(С) + 51 )-1 В(С)Б-1(С)Ш(С)]-1 х
-ъ
1-1.
Ь(С') = Б(С') - W(С') =
+ 5 -^Ш1,2 —И>2,1 &о2 + 5
-5 -5
-™2л
-5 5
+ 5 -5
5
(3)
5п
Ч>8(С') = Ь(С')-1 Ь'8,
(4)
где Ь'3 - вектор-столбец, состоящий из п + 1 элементов, значения которых равны:
К (V) =
1 V = в, 0 иначе.
(5)
ф*(С') = Ь(С')-1 Ь
(6)
К
х(Б(С)+ 51 )-1Ь3.
Матрицы (Б(С) + 51)-1 и (Б(С) + 51 )-1Б(С) диагональные с элементами на диа-
1
гонали 2+ и , я = 1, ...,п, обозначим их 01 и 02, соответственно. Матрица D-1(С)W(С) стохастическая, обозначим ее Р. Тогда
ф3(С) = [Т - D2P=
Предположим, что единица электрического тока подается в некоторую вершину в € V, а вершина vn+1 заземлена. Пусть ф% обозначает абсолютный потенциал в вершине V при условии, что источник электрического тока подключен к вершине в. Тогда вектор абсолютных потенциалов фs(С') = [ф^,..., ф%п ,ф1п+^ в вершинах графа С' определится следующей системой уравнений (правила Кирхгофа) [6]:
2Р )к DlЬs.
(8)
к=0
Так как матрица Кирхгофа (2) является вырожденной, примем в вершине vn+l абсолютный потенциал равным 0. Тогда из (3) получим:
Из (8) следует, что потенциал можно вычислить рекуррентно в виде
Фк+1(С) = D2PфSk (С) + DlЬs, Ф0(С) = 0.
Ток, протекающий через ребро е = ), согласно закону Ома равен х% = |ф^-ф%61 .
Величину тока, протекающего через вершину V, можно найти, определив сумму токов на ребрах, инцидентных ей, и поделив полученную сумму на 2. Отметим, что необходимость в делении на 2 возникла в связи с тем, что при суммировании всех токов на ребрах, инцидентных вершине, учитывается электрический ток как входящий в вершину, так и выходящий из нее.
Соответственно величину тока, протекающего через некоторую вершину V, при условии, что источник тока находится в вершине в, можно найти по формуле
где фs(С') и Ьs получены из фs(С') путем удаления элементов, соответствующих вершине vn+1, а Ь(С') получен из Ь(С') путем удаления строки и столбца, соответствующих вершине vn+l. Отметим, что при этом из фs(С') и Ь'3 удаляются элементы равные нулю.
Несложно видеть, что
фs(С') = С) - W(С) + 51]-1Ь8, (7)
где I - единичная матрица размерности п.
Так как абсолютные потенциалы могут быть определены с точностью до постоянного слагаемого, то абсолютные потенциалы фs(С') можно принять в качестве абсолютных потенциалов в вершинах графа С, т. е.
фs(С) = [Ь(С) + 51]-%.
^) = къ^) о,
2
(9)
где Ьs(v) =
1 V = в, 0 иначе.
Таким образом, меру центральности в вершине V для взвешенных графов СР$ (и) можно определить по формуле:
(V) = ПЕ х»
(10)
Вычислительная сложность алгоритма поиска меры центральности для взвешенных графов (10) равна сложности поиска обратной матрицы размерности п, т. е. 0(п3).
Пример 1. Частный случай графа С в форме звезды.
Рассмотрим частный случай, когда граф С - звезда с п вершинами, у которой одна из ребер имеет вес равный к, а остальные ребра имеют вес равный единице. Пусть 1 - центр звезды, 2 - вершина, инцидентная ребру с весом к. Тогда матрица Кирхгофа имеет вид
/п — 2 + к + 6 —к —1 —к к + 6 0 — 1 0 1 + 6
1
Обратная матрица имеет вид
—1 0 0
1+6
£ = Ь + 6/ = £(С) — Ш (С) + 6/ =
£-1 = (Ь + 6/)-1 =
-1
0
0
1
6(1 + 6)Х
/(к + 6)(1 + 6)2 к(1 + 6)2 (к + 6)(1 + 6)
V (к + 6)(1 + 6)
к(1 + 6)2 (к + (п — 1)6 + к6 + 62)(1 + 6) к(1 + 6)
к(1 + 6)
где X = пк + (п — 1)6 + 2к6 + 62. При в = 1 получим следующее
= 1(1 + к(1 + 6) + (п — 2)(к + 6) ) х (в) 2(1 + пк + (п — 1)6 + 2к6 + 62),
Х(2) = -
к(1 + 6)
®в(0 = 1
1
2 пк+ (п — 1)6 + 2к6 + 62:
к + 6 .
, 2 = 3,
2 пк + (п — 1)6 + 2к6 + 62
, п.
При в = 2
Х(1) = тг
1 к(6 + 2п — 3)
2 пк + (п — 1)6 + 2к6 + 62'
Х(в) = 1(1 +_к(6 + п — 1)_
Х (в) 2( + пк + (п — 1)6 + 2к6 + 62
ж5(г) = 1
(к + 6)(1 + 6) к(1 + 6) к + 6 + 6Х
к+6
к
2 пк + (п — 1)6 + 2к6 + 62 При в = 2, где 2 = 3,..., п
(к + 6)(1 + 6)\ к(1 + 6) к+6
к + 6 + 6Х
2 = 3,..., п.
в (1) = 1 62 + 6(3к + 2п — 5) + к(2п — 3) Х () = 2 (пк + (п — 1)6 + 2к6 + 62)(1 + 6),
Х(2) = -
1
1_к_
2 пк + (п — 1)6 + 2к6 + 62:
1 к + 6
Х(в) 2 (1+1 + 6 (пк + (п — 1)6 + 2к6 + 62)(1 + 6)),
Х(г) = -
к+6
2 (пк + (п — 1)6 + 2к6 + 62)(1 + 6) Получаем следующий результат
,2 = 3, . . . , п.
<1> = 2п (1 +
1 2к(6 + п — 1) 2(п — 2)(62 + 6(2к + п — 2) + к(п — 1))
X
+
(1 + 6)Х
С* (2) = ^ + ),
1 ^ 1 (к + 6)(п — 4) 2к + 6, . 0
^(2) = 2п(1 + К6 + ( (1 +(6)х ) + —),2 = 3,...,п.
На рис. 1 представлены графики зависимо- С другой стороны, с увеличением п централь-
стей значений электрической центральности ности С^(2) и С^(2) уменьшается. Измене-
от значений п и к при 6 = 1. С увеличением ние к незначительно влияет на изменение цен-
значений п и к центральность С^(1) растет. тральностей CFs(2) и С^(г).
),
),
Рис. 1. Зависимость значений (1), С^(2) и (2) от п и к при 6 =1
Пример 2. Расчет центральности вершин графа публикаций математического портала Math-Net.ru.
На рис. 2 представлен фрагмент графа публикаций, составленного на основе данных математического портала Math-Net.ru. Общее число авторов математического портала МаЛ-Net.ru на момент написания данной работы со-
ставляло 78839. Фрагмент графа публикаций Math-Net.ru, исследуемый в данной работе, содержит 7606 авторов и 10747 статей, написанных в соавторстве. Здесь вершины графа - это авторы статей, а вес ребра - это число совместных научных статей авторов. Отметим, что при построении данного графа не учитывались статьи, имеющие более 6 соавторов.
Рис. 2. Фрагмент графа публикаций Math-Net.ru
Для большей наглядности результатов ранжирования на рис. 3 представлена главная компонента графа, полученная путем удаления ребер с весом меньше 7 из графа, представленного на рис. 2.
Из рис. 3 видно, что вершины 40, 34, 56 и 20 являются центрами «локальных» звезд и, соответственно, должны иметь высокую центральность. Заметим, что вершина 32 также должна иметь высокую центральность, т. к.
она соединяет в единый граф две отдельные тодов ранжирования используются электриче-
компоненты. ская центральность, рассчитанная по формуле
В табл. 1 приведены результаты ранжи- (10) с параметром 5 = 1, PageRank с парамет-
рования для 11 первых вершин графа, пред- ром а = 0.85, и электрическая центральность
ставленного на рис. 3. Здесь в качестве ме- (СР-Ье1№гееппе88), описанная в [6].
Рис. 3. Главная компонента графа публикаций Math-Net.ru
Таблица 1. Результаты ранжирования вершин для графа публикаций Math-Net.ru
Вершина Центральность (СРб) Вершина PageRank Вершина CF-betweеnness центральность
40 0.15740 40 0.04438 56 0.54237
34 0.14981 34 0.03285 32 0.53027
20 0.13690 20 0.03210 47 0.48222
47 0.12566 56 0.02774 22 0.41668
56 0.12518 47 0.02088 33 0.41361
26 0.10880 39 0.01874 34 0.39517
30 0.09098 28 0.01824 30 0.39426
9 0.08149 21 0.01695 52 0.37421
33 0.08024 65 0.01632 40 0.36946
32 0.07959 26 0.01552 26 0.35259
22 0.07903 107 0.01424 20 0.34413
Как и предполагалось ранее, вершины 40, 34, 56 и 20 получили высокие ранги по всем рассматриваемым методам ранжирования. Однако для метода PageRank вершина 32 по-
лучила относительно низкий ранг (34-е место). Это связано с тем, что метод PageRank дает малое значение центральности для вершин, имеющих небольшое число инцидентных ре-
бер, но связывающих компоненты в единый граф.
В качестве примера раскроем только некоторые данные по вершинам графа публикаций Math-Net.ru. Вершина 40 - Гельфанд И. М., 34 - Олейник О. А., вершина 56 - Кутателад-зе С. С., а вершина 32 - Новиков С. П.
Рис. 1 подготовлен в программном комплексе Gephi [3]. Рис. 2 подготовлен с использованием компоненты NETDRAW, входящей в состав программного продукта «UCINET» [4].
Работа частично поддержана Отделением математических наук РАН и грантом РГНФ (проект 15-02-00352).
Литература
1. Жижченко А. Б., Изаак А. Д. Информационная система Math-Net.Ru. Применение современных технологий в научной работе математика // Успехи математических наук. 2007. T. 62, № 5 (377). С. 107-132.
2. Avrachenkov K., Litvak N., Medyanikov V., Sokol M. Alpha current flow betweenness centrality // Lecture Notes in Computer Science. 2013. Vol. 8305. P. 106-117.
3. Bastian M., Heymann S., Jacomy M. Gephi: an open source software for exploring and manipulating networks // International AAAI Conference on Weblogs and Social Media. 2009.
4. Borgatti S. P., Everett M. G., Freeman L. C. Ucinet for Windows: Software for Social Network Analysis // MA: Analytic Technologies. 2002.
5. Brandes U. A faster algorithm for betweenness centrality // Journal of Mathematical Sociology. 2001. Vol. 25. P. 163-177.
6. Brandes U., Fleischer D. Centrality measures based on current flow //In Proceedings of the 22nd annual conference on Theoretical Aspects of Computer Science. 2005. P. 533-544.
7. Brin S., Page L. The anatomy of a large-scale hypertextual Web search engine. Computer Networks and ISDN Systems. 1998. Vol. 30, N 17. P. 107-117.
8. Chebukov D., Izaak A., Misurina O., Pupyrev Yu., Zhizhchenko A. Math-Net.Ru as a digital archive of the Russian mathematical knowledge from the XIX century to today. Lecture Notes in Computer Science. 2013. Vol. 7961. P. 344-348.
9. Freeman L. C. A set of measures of centrality based on betweenness // Sociometry. 1977. Vol. 40. P. 35-41.
10. Mazalov V. V., Trukhina L. I. Generating functions and the Myerson vector in communication networks // Discrete Mathematics and Applications. 2014. Vol. 24, N 5. P. 295-303.
11. Myerson R. B. Graphs and cooperation in games // Math. Oper. Res. 1977. Vol. 2. P. 225229.
12. Newman M. E. J. A measure of betweenness centrality based on random walks // Social networks. 2005. Vol. 27. P. 39-54.
Поступила в редакцию 30.04.2015
References
1. Zhizhchenko A.B., Izaak A.D. Informatsionnaya sistema Math-Net.Ru. Primenenie sovremennykh tekhnologii v nauchnoi rabote matematika [Informational system Math-Net.Ru. Application of modern technologies in mathematical scientific work]. Uspekhi Matematicheskikh Nauk [Russian Mathematical Surveys]. 2007. Vol. 62, N 5 (377). P. 107-132.
2. Avrachenkov K., Litvak N., Medyanikov V., Sokol M. Alpha current flow betweenness centrality. Lecture Notes in Computer Science. 2013. Vol. 8305. P. 106-117.
3. Bastian M., Heymann S., Jacomy M. Gephi: an open source software for exploring and manipulating networks. International AAAI Conference on Weblogs and Social Media. 2009.
4. Borgatti S.P., Everett M.G., Freeman L.C. Ucinet for Windows: Software for Social Network Analysis. MA: Analytic Technologies. 2002.
5. Brandes U. A faster algorithm for betweenness centrality. Journal of Mathematical Sociology. 2001. Vol. 25. P. 163-177.
6. Brandes U., Fleischer D. Centrality measures based on current flow. In Proceedings of the 22nd annual conference on Theoretical Aspects of Computer Science. 2005. P. 533-544.
7. Brin S. and Page L. The anatomy of a large-scale hypertextual Web search engine. Computer Networks and ISDN Systems. 1998. Vol. 30, N 17. P. 107-117.
8. Chebukov D., Izaak A., Misurina O., Pupyrev Yu., Zhizhchenko A. Math-Net.Ru as a digital archive of the Russian mathematical knowledge from the XIX century to today. Lecture Notes in Computer Science. 2013. Vol. 7961. P. 344-348.
9. Freeman L. C. A set of measures of centrality based on betweenness. Sociometry. 1977. Vol. 40. P. 35-41.
10. Mazalov V. V., Trukhina L. I. Generating functions and the Myerson vector in communication
networks. Discrete Mathematics and Applications. 2014. Vol. 24, N 5. P. 295-303.
11. Myerson R. B. Graphs and cooperation in games. Math. Oper. Res. 1977. Vol. 2. P. 225-229.
12. Newman M. E. J. A measure of betweenness centrality based on random walks. Social networks. 2005. Vol. 27. P. 39-54.
Received April 30, 2015
СВЕДЕНИЯ ОБ АВТОРАХ:
Жижченко Алексей Борисович
профессор, академик РАН, д. ф.-м. н. Межведомственный суперкомпьютерный центр РАН Ленинский пр. 32а, Москва, Россия, 119991 эл. почта: om@ras.ru
Мазалов Владимир Викторович
профессор, д. ф.-м. н. Институт прикладных математических исследований Карельского научного центра РАН ул. Пушкинская, 11, Петрозаводск, Республика Карелия, Россия, 185910 эл. почта: vmazalov@krc.karelia.ru тел.: (8142) 781108
Цынгуев Булат Тимурович
аспирант
Забайкальский государственный университет
ул. Александро-Заводская, 30, Чита, Забайкальский
край, Россия, 672039
эл. почта: btsynguev@gmail.com
CONTRIBUTORS:
Zhizhchenko, Aleksei B.
Joint Supercomputer Center of Russian Academy of Sciences
32a Leninski st., 119991 Moscow, Russia e-mail: om@ras.ru
Mazalov, Vladimir V.
Institute of Applied Mathematical Research, Karelian Research Centre, Russian Academy of Science 11 Pushkinskaya St., 185910 Petrozavodsk, Karelia, Russia
e-mail: vmazalov@krc.karelia.ru tel: (8142) 781108
Tsynguev, Bulat T.
Transbaikal State University
30 Aleksandro-Zavodskaya St., 672039 Chita, Russia e-mail: btsynguev@gmail.com