Научная статья на тему 'Мера важности научной периодики - "центральность по посредничеству“'

Мера важности научной периодики - "центральность по посредничеству“ Текст научной статьи по специальности «Математика»

CC BY
200
15
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
СЕТИ ЦИТИРОВАНИЯ / АЛГОРИТМЫ ПОИСКА КРАТЧАЙШИХ ПУТЕЙ / МЕРА „ЦЕНТРАЛЬНОСТЬ ПО ПОСРЕДНИЧЕСТВУ" / АЛГОРИТМ БРАНДЕСА

Аннотация научной статьи по математике, автор научной работы — Бредихин Сергей Всеволодович, Щербакова Наталья Григорьевна, Ляпунов Виктор Михайлович

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

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

Текст научной работы на тему «Мера важности научной периодики - "центральность по посредничеству“»

МЕРА ВАЖНОСТИ НАУЧНОЙ ПЕРИОДИКИ — „ЦЕНТРАЛЬНОСТЬ ПО ПОСРЕДНИЧЕСТВУ"

C.B. Бредихин, В.М. Ляпунов, Н.Г. Щербакова

Институт вычислительной математики и математической геофизики СО РАН,

630090, Новосибирск, Россия

УДК 001.12+303.2

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

Ключевые слова: сети цитирования, алгоритмы поиска кратчайших путей, мера „центральность по посредничеству", алгоритм Брандеса.

Subject of studying is the citation network reflecting structure of the distributed bibliographic database RePEc. Shortest-path algorithms and betweenness centrality computing algorithms are reviewed. Betweenness centrality computing algorithm for weighted graphs is developed. RePEc journal ranking based on that measure is executed.

Keywords: citation networks, shortest path algorithms, betweenness centrality measure, Brandes algorithm.

Введение. В начале этого века в результате разработки и широкого внедрения языка разметки XML [1] удалось формализовать и „поставить на конвейер" процесс массивной оцифровки документов и репродуцирования цитат. Появилась возможность „добывать" библиометричеекую информацию в „промышленных" масштабах и хранить ее в удобных цифровых форматах. Современные библиографические базы данных (далее, ББД) являются основой для проведения исследований в области эволюции и динамики научной деятельности, структуры цитирования и последующего анализа „важности" конкретных журналов и статей. Наборы библиографических данных впервые были проанализированы в работе [2] с целью количественной оценки индивидуальной производительности ученого. Эмпирическим путем было установлено, что число авторов, опубликовавших п статей, с точностью до константы, зависящей от научной дисциплины, равно 1 /па (а ~ 2). После выхода в свет новаторской работы [3] стало ясно, что библиографические данные имеют естественное математическое представление в терминах графов. Прайс показал, что внутреннюю структуру связей между цитируемыми и цитирующими публикациями можно представить в виде ориентированного графа. Пусть рассматривается коллекция D. состоящая из п публикаций. Если документ dj цитирует (имеет ссылку на) документ ri¿. то акт цитирования можно изобразить в виде стрелки, идущей от вершины, представляющей dj, к вершине, представляющей d¿. Таким образом, рассмотрев все взаимосвязи документов коллекции D. мы будем иметь граф, названный „графом цитирования" или „сетью цитирования" (далее СЦ). Матрица смежности графа размерности пхп. такая что элемент этой матрицы C{j — 1, если публикация dj процитировала публикацию di названа „матрицей

цитирования" (с точностью до транспонирования). Для преобразования ориентированной СЦ в неориентированную, как правило, рассматриваются отношения библиографического сочетания [4] или коцитирования [5, 6].

Определение СЦ можно распространить на случай, когда рассматриваются взаимные цитирования между научными журналами, авторами публикаций, исследовательскими институтами или другими сообществами. Согласно [7], будем называть объекты сети, взаимосвязи между которыми рассматриваются, „акторами". Заметим, что сеть, акторами которой являются публикации, моделируется с помощью ориентированного ациклического графа без кратных ребер (пары вершин не могут соединяться более чем одним ребром). Если акторами являются журналы или авторы статей, граф имеет более сложную структуру-

В нашем случае в качестве акторов СЦ выступают научные журналы. На этапе построения сети фиксируются временные интервалы: окно цитирования (период, к которому относятся цитирующие работы) и окно публикации (период, к которому относятся цитируемые работы). Журнал представляет собой единый контент, состоящий из множества статей. Будем рассматривать матрицу цитирования С, такую, что Сц = 1, если публикация из журнала j за интервал цитирования процитировала работу/работы из журнала г. относящиеся к окну публикации, иначе с^- — 0. В этом случае сеть моделируется невзвешенным ориентированным графом. Однако при этом теряется важная информация о „силе связи" между акторами, поэтому рассмотрим „взвешенную матрицу цитирования", в которой с^-соответствует количеству цитирований, cit(i,j), полученных публикациями журнала г от публикаций журнала j за соответствующие периоды, а сеть моделируется взвешенным ориентированным графом. Отметим, что эта матрица может также рассматриваться как матрица смежности мультиграфа, когда с^ — это количество дуг, идущих из j г, г. В работе [8] показано, что в ряде случаев взвешенные графы можно анализировать с помощью перехода к невзвешенным мультиграфам, однако нельзя утверждать, что этот прием годен во всех случаях.

На основе СЦ можно вычислять различные полезные параметры, которые отражают свойства сетевой топологии. Многие из них были разработаны для анализа социальных сетей и, тем не менее, используются вне этой области, образуя важную часть базовых сетевых понятий. Одним из средств сетевого анализа является определение „важных" сетевых узлов, основанное на их взаимосвязанности. Формально мера, оценивающая взаимосвязанность узла в графе, так называемая „центральность", это отображение вершин графа на множество неотрицательных вещественных чисел, такое, что большее значение означает „лучшую" взаимосвязанность с другими вершинами. Существует несколько способов определять взаимосвязанность и, соответственно, индексы центральности, которые способны ранжировать акторов согласно их позиции в сети [9]. Простейший способ оценки центральности вершины неориентированного графа заключается в подсчете числа соединенных (incident) с ней ребер. Несмотря на простоту, эта мера, называемая „центральность по степени" (degree centrality), является достаточно информативной. Например, в случае социальных сетей, актор, имеющий больше связей, явно имеет большее влияние в группе. Для ориентированного графа различают степень вершины по входу (in-degree) — количество входящих дуг — и степень по выходу (out-degree) — количество выходящих дуг. Количество цитирований, которое публикация получает от других публикаций, используется как грубая оценка важности публикации, а это степень вершины по входу для сети цитирования.

В данной работе рассматривается мера „центральность по посредничеству" (Ье^шееппе«« сепЬгаШу, далее С в), говорящая о том, насколько часто рассматриваемая вершина графа лежит на путях между другими вершинами. Ее классическое определение, представленное в работе [10], основано на идее передачи сообщений между вершинами информационной сети по кратчайшему (геодезическому) пути, выбранному случайным образом. Вершины, через которые проходит большее количество геодезических путей, имеют больший индекс центральности, они могут обладать значительным влиянием, так как в этих вершинах можно, например, контролировать проходящую информацию. Удаление таких узлов может разрушить коммуникации между другими узлами. Центральность по посредничеству отличается от других определений центральности, поскольку интерес представляет не то, как вершина взаимосвязана с другими вершинами, а то, как часто вершина встречается на пути между другими.

Предметом настоящей работы является вычисление значения Св для вершин СЦ, образованной распределенной базой библиографических данных (далее РББД) ЯеРЕс [И], с целью их ранжирования по этой мере. Под термином ранжирование будем понимать установление такого отношения между любыми двумя вершинами СЦ, при котором можно утверждать, что „одна вершина имеет ранг выше другой" или „,,, ниже другой" или „их ранги равны"; при этом само множество „рангов" является упорядоченным. Отметим, что с помощью процедуры ранжирования нельзя однозначно выполнить упорядочивание вершин, поскольку СЦ может иметь вершины с одинаковым рангом,

1. Определения. Пусть Сг = (V,, Е) — связный неориентированный граф и ио — функция взвешивания ребер, такая что ги(е) > 0, е 6 Е для взвешенных графов и ги(е) = 1 для невзвешенных графов. Определим путь от вершины в Е V до вершины í 6 У как последовательность несовпадающих вершин и ребер (г^е^г^ег,... ,еп_1,?;п), начинающуюся в в (в = их) и заканчивающуюся в £ (£ = ьп). такую что каждое ребро соединяет предшествующую вершину с последующей. Если в графе нет кратных ребер, то путь можно представлять в виде последовательности вершин. Длина пути р — это сумма весов его ребер:

Расстояние между вершинами s и I, de (s. I) — это минимум среди длин путей, соединяющих s и t. По определению, dc(s,s) — 0,da(s,t) — s), Путь между вершинами я и t. длина которого равна расстоянию между я н t. называется кратчайшим. Заметим, что таких путей может быть несколько. Если все ребра в графе имеют единичный вес, то кратчайшим является путь с наименьшим количеством ребер.

Пусть ast — количество кратчайших путей от вершины s G V до вершины t G V, а &8t(v) ~ количество кратчайших путей от s до t. проходящих через v G V. Тогда индекс Cb(v) Для вершины v определяется следующим образом:

71—1

г=1

п ( ч Vstjv)

Cb(v)= ^ —

s^t^vev Œst

В случае ориентированного графа путь строится с учетом направления ребер, так что de (s. t) не обязательно равно da(t, я). Для адаптации определения для случая, когда не

+ ast ^ п I \

существует пути из s в г, принято соглашение: -= 0, если числитель <Jst{v) и знаме-

" " " &st

натель crst равны нулю.

Значения индекса Сц иногда удобно нормализовать. Одним из естественных способов нормализации является деление значения центральности на количество пар вершин \V\2, т, е, определять „центральность по посредничеству" следующим образом:

Тогда [9] значения Cb(v) будут находиться в интервале [0, 1],

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

2.1, Одним из базисных алгоритмов, составляющим основу многих других, является „алгоритм поиска в ширину" (breadth-first search, BFS) [12]. Он применяется к невзвешен-ным ориентированным и неориентированным графам и относится к числу алгоритмов обхода графа (traversal algorithms). Пусть имеется граф G = (V,E) и зафиксирована начальная вершина s. Алгоритм перечисляет все достижимые из s вершины в порядке возрастания расстояния от s. При этом сначала рассматриваются все соседи, потом соседи соседей и т, д, В процессе поиска из графа выделяется часть, называемая „деревом поиска в ширину", с корнем в в. Для каждой вершины путь из корня в дереве поиска будет одним из кратчайших путей (из начальной вершины) в графе. Поскольку граф невзвешенный, то расстояние от s совпадает с числом ребер кратчайшего пути. Время работы алгоритма оценивается как 0(|У| + |.Е|),т. е. пропорционально размеру представления графа в виде списков смежных вершин,

2.2, Алгоритм Дейкетры (Dijkstra algorithm) [13] решает задачу о кратчайших путях из одной вершины для взвешенного ориентированного графа G = (V,E), в котором веса всех ребер неотрицательны, т, е, w(u, v) > 0 для всех ребер (и, v) G Е. Алгоритм начинает работу с некоторой вершины s £ V и на каждом шаге добавляет ближайшую вершину к множеству уже обнаруженных вершин, лежащих на кратчайших путях, таким образом добиваясь выявления всех кратчайших путей из источника до всех остальных. Алгоритм основан на ряде свойств кратчайших путей; первое: отрезки кратчайших путей сами являются кратчайшими путями; второе: для всякой вершины s G V и для всякого ребра (и, v) G Е выполняется неравенство dc{s,v) < da{s,u) +w(u,v). При работе алгоритма используется прием, называемый „релаксацией" (relaxation), На начальный момент для всех v G V верхняя оценка d[v] для расстояния от исходной вершины s устанавливается равной оо. Релаксация ребра состоит в следующем: d[v] уменьшается до d[u]+w(u,v), если d[v] > d[u] + w(u,v).

В процессе работы алгоритм строит множество S С V, состоящее из вершин, для которых dc(s,v) уже найдено. Алгоритм выбирает вершину и G У\5" с наименьшим d[u] и добавляет ее в множество S, производя релаксацию ребер, выходящих из и, после чего цикл повторяется. При работе алгоритма поддерживается очередь Q с приоритетами, определяемыми значениями функции d. Если эта очередь реализуется в виде массива, то время работы алгоритма оценивается как 0(|У|2), Для разреженных графов используется модифицированный алгоритм Дейкетры, в котором время оценивается как 0(\Е\ log |У|). Если же реализовать очередь Q в виде „фибоначчиевой кучи" (Fibonacci heap), то можно

добиться оценки 0(|V|log|V| + |i£|). Для получения кратчайших путей для всех вершин нужно применить алгоритм |V| раз [12].

2,3, Алгоритм Флойда — Уоршолла (Floyd — Warshall algorithm) [14], [15], использующий технику динамического программирования, решает задачу о нахождении кратчайших путей для всех пар вершин взвешенного ориентированного графа (без циклов отрицательного веса). Время работы алгоритма оценивается как 0(|^|3), Пусть дана матрица W = (wij), где:

О, если г = j,

w^ = ^ вес ребра(i,j), если г Ф j, (i,j) € Е, оо, если г ф j, (i,j) ^ Е.

Обозначим через d\j вес кратчайшего пути из вершины г в вершину j с промежуточными вершинами из множества {1,2, ...А;}, При к = 0 промежуточных вершин нет, поэтому d= Wij. Алгоритм основан на рекуррентной формуле для длин кратчайших путей:

{Wij, если к = О,

min dt1] + , если к > 0.

Он производит преобразование матрицы W в матрицу D^ = содержащую искомые

решения, т, е, dff = do(i,j) для всех i,j G V. При этом можно не только вычислять длины и количество кратчайших путей для всех пар вершин, но и строить сами пути. Обобщением подхода Флойда — Уоршолла является способ решения задач о путях в ориентированных графах, основанный на понятии идемпотентного замкнутого полукольца [16],

3. Алгоритмы вычисления индекса Сд и их сложность. Пусть парная зависимость (pair dependency) вершин s и t от промежуточной вершины v определяется как

х I \

Ost(V) = -•

О si

С использованием определения парной зависимости „центральность по поередниче-ству" для вершины v можно представить следующим образом:

Cb{V)= Y,

зфгфу^у

Процедура вычисления центральности традиционно состоит из двух шагов:

1) вычислить длины и количество всех кратчайших путей между всеми парами вершин;

2) просуммировать все парные зависимости.

Заметим, что если известно количество кратчайших путей от вершины и до вершины v, то для того, чтобы вычислить количество тех путей, которые проходят через промежуточную вершину t, используется свойство отрезка кратчайшего пути:

а (t) = / х atv, если dG(u,t) +dG(t,v) = dG{u,v),

0, в противном случае.

Для каждой вершины все парные зависимости можно вычислить за время 0(|У|2), так что общее время вычисления зависит от времени нахождения кратчайших путей.

3.1. Работа [10] ссылается на матричный метод подсчета и нахождения кратчайших путей для всех пар вершин, который может служить основой для подсчета центральности вершин. Пусть d]™* обозначает минимальный вес пути из вершины г в вершину j с не более чем т ребрами. Построение основано на формуле, утверждающей, что путь из г в j длины т > 1 можно разбить на отрезок из (m — 1) ребер, ведущий из г в некоторую вершину А; и на последнее ребро (k,j), так что

4m) = min (¿4m-1)' Ж, + •

Вычисление путей идет „снизу вверх", преобразование аналогично произведению матриц. На основании матрицы W = (Wij) строится последовательность матриц =

W, ..., D^"-1). где = (4m)). Последняя матрица будет содержать веса крат-

чайших путей. Одновременно строятся матрицы предшествования ПМ , такие что — это вершина, предшествующая j на каком-либо кратчайшем пути из г в j, состоящем не более чем из т ребер. В худшем случае время работы оценивается как 0(|У|4). Возможно улучшить время до 0(|V|3log |У|) [12].

3.2. В работе [17] задача вычисления „центральности по посредничеству" решается с помощью построения „геодезического" полукольца, то есть рассматривается обобщенная схема Флойда — Уоршолла. Предложен алгоритм вычисления центральности по посредничеству с оценкой времени 0(|У|3).

3.3. Алгоритм с оценкой 0(|V||i£|) для невзвешенных графов и оценкой 0(|V||.E| +\V\2 log |V|) для взвешенных предложен в работе [18]. Это наиболее эффективный из известных алгоритмов вычисления „центральности по посредничеству". В нем техника аккумулирования значений центральности интегрирована с поиском кратчайших путей.

Зависимость (dependency) вершины s G V от единичной вершины v G V определяется

как

*..(«) = £**(«)■ (1)

tev

Тогда „центральность по посредничеству" для вершины v можно представить в виде:

ад = $>.(*)• (2)

sev

Обозначим через Ps(v) множество предшественников (predecessors) вершины v G V на кратчайшем пути in ,s G V:

Ps (v) = {и G V : (и, v) G E, dG(s, v) = dG(s, u) + w(u, г>)} .

Связь количества кратчайших путей от s до v (s ф v G V) с количеством путей до предшественников:

(3)

В работе [18] показано, что для вычисления значения зависимости вершины в £ V от любой вершины V 6 V можно применять следующую ключевую формулу:

Выявление кратчайших путей от начальной вершины s до всех других производится с использованием алгоритмов обхода графа в порядке неубывания расстояния от s: BFS для невзвешенных графов и Дейкетры для взвешенных, В конце каждой итерации, соответствующей вершине s G V, взятой в качестве начальной, рассматриваются все пройденные вершины v в порядке невозрастания расстояния от s, переечитываютея зависимости от предшественников, а зависимость s от v,Ss.(v) добавляется к значению индекса Gb(v). Таким образом, для любой вершины s G V выполняются два шага:

1) производится подсчет длин и количества кратчайших путей от s G V до всех остальных вершин;

2) вычисляются зависимости s от всех вершин на путях с использованием (1), (3), (4) и суммируются со значениями центральности согласно (2),

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

4. Вычислительный эксперимент. Целью является вычисление индекса С в для данных, извлеченных из РББД RePEc (Research Papers in Economics — „Исследовательские статьи по экономике"), В состав этой базы входят периодические издания из области экономики, финансов, менеджмента и маркетинга, В работе [19] мы уже обращались к этой базе с целью вычисления метрик Eigenfactor и Articlelnfluence, опирающихся на понятие „центральности собственного вектора" (eigenvector centrality, [20]),

Пусть граф G = (V, Е) представляет сеть цитирования. Дуга (и, v) G Е тогда и только тогда, когда публикация из издания и за рассматриваемый год (окно цитирования, в данном случае 2013 год), цитирует публикацию из издания v. относящегося к пяти предыдущим годам (окно публикации), В качестве веса дуги w(u,v) рассматриваем величину, обратную количеству цитирований от и к г; (1 /cit(v,u)). Для вычисления индекса Св для вершин невзвешенного и взвешенного графов используется подход Брапдеса, Псевдокод алгоритма для невзвешенных графов предложен в работе [18], псевдокод алгоритма для взвешенных графов предложен авторами данной статьи и приведен в Приложении,

На время извлечения данных о цитировании в РББД насчитывалось 5811 коллекций документов, из них 1708 журналов. Из этого набора журналов отобраны 317, каждый из которых получил более 5 цитирований, опубликовал более 20 статей за „окно цитирования", и его процент самоцитирований меньше или равен 50 %. Обозначим это множество через L.

Полной коллекции соответствует граф Gi, имеющий 3011 изолированных вершин, 2 связанных только друг с другом и 2798 вершин, образующих слабо связанную компоненту, Максимальное расстояние между связанными вершинами Gi равно 14, Взвешенный вариант графа G i обозначим через G2- Получены значения С в для вершин графов G\ и

ш= £

(4)

w:v(EPs(w)

Таблица 1

Ранг журналов множества L (взвешенный вариант)

Ранг Индекс С в Название журнала / Издательство In-degree Out-degree

1 190236.67 American Economic Review /

American Economic Association 629 27

2 102555.33 Research Policy / Elsevier 155 100

3 83201.83 Journal of Economic Dynamics and Control / Elsevier 219 171

4 78716.17 Journal of International Economics / Elsevier 276 142

5 69437.00 Journal of Development Economics / Elsevier 288 58

6 56479.33 Journal of Econometrics / Elsevier 285 74

7 55815.67 Economics Letters / Elsevier 316 157

8 47609.00 Games and Economic Behavior / Elsevier 165 66

9 47265.33 Journal of Health Economics / Elsevier 147 74

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

10 44213.67 Journal of Financial Economics / Elsevier 246 57

11 42868.17 World Development / Elsevier 177 50

12 39539.50 Labour Economics / Elsevier 203 43

Таблица 2

Ранг журналов множества L (невзвешенный вариант)

Ранг Индекс С в Название журнала/Издательство In-degree Out-degree

1 80793.32 Economics Letters / Elsevier 316 157

2 65131.82 American Economic Review /

American Economic Association 629 27

3 58862.80 Journal of Economic Dynamics and Control / Elsevier 219 171

4 48286.68 Research Policy / Elsevier 155 100

5 46557.76 Journal of International Economics / Elsevier 276 142

6 38765.05 Journal of Econometrics / Elsevier 285 74

7 25770.87 World Development / Elsevier 177 50

8 25218.45 Review of Economic Dynamics / Elsevier for the

Society for Economic Dynamics 160 124

9 24026.93 Applied Economics / Taylor & Francis Journals 224 34

10 23265.53 Journal of Development Economics / Elsevier 288 58

11 23160.63 Journal of International Money and Finance / Elsevier 182 90

12 21225.93 Journal of Economic Literature /

American Economic Association 359 29

Сг2, и произведено ранжирование по невозрастанию журналов полной коллекции на основе значений индексов соответствующих вершин.

Для представления результатов из ранжированной коллекции выбирается упорядоченное множество журналов Ь. Двенадцать журналов, имеющих наивысший ранг для взвешенного варианта, представлены в табл. 1 (для невзвешенного варианта в табл. 2), Там же приведены значения центральности соответствующих вершин по степени в графе С\. Для графического представления результатов взаимного цитирования журналов множества Ь (рис, 1) использован программный продукт Рщек [21]. Рис, 1 иллюстрирует связность журналов с наивысшим рангом между собой, при этом величина „кружка" пропорциональна значению степени по входу (см, значение 1п-ёедгее). Вершины расположены по часовой стрелке, начиная с вершины с наивысшим рангом. Номера вершин соответствуют рангам журналов, приведенных в табл. 1,

Сравнение табл. 1 и 2 показывает, что по составу есть различие в пяти журналах,

Рис. 1. Взаимное цитирование журналов множества L

имеющих наивысший ранг. Для сравнения результатов для всей коллекции изданий были рассчитаны коэффициенты ранговой корреляции Снирмена (0,850) и коэффициент корреляции Пирсона (0,823). То есть, дня этой коллекции различия между взвешенным и невзвешенным вариантом не столь существенны.

Приложение. Псевдокод алгоритма вычисления индекса С в для вершин ориентированного взвешенного графа.

CB{v)^0,veV-, for s G V do

S <— empty stack; P[w] empty list, w G V: a[t] <- 0,t G V; a[s] <- 1; d[t\ <-oo,teV; d[s] <- 0;

Q empty queue ; enqueue v —> Q, v G V;

// найти расстояние от s до всех вершин while Q not empty do

// взять вершину с минимальным значением d

cxtract_min v Q\

enqueue v —> Qi,

/ / рассмотреть всех соседей v

foreach neighbor w of v do

// путь до w через v является, кратчайшим? if d[w] > d[v] + w(v, w) then d[w] — d[v] + w(v, w)

end end end

// вычислить количество кратчайших путей до всех вершин и их состав // в Qi вершины находятся в порядке не убывания расстояния от s while Qi not empty do dequeue v •<— Q±; push v —>• S;

foreach neighbor w of v do

// путь до w через v является, кратчайшим? if d[w] = d[v] + w(v, w) then a[w] a [tu] + a [u]; append v —> P[w]; end end

end

// Пересчитать зависимости от предшественников и переопределить центральности,:, S возвращает вершины в порядке невозрастания расстояния от s while S not empty do pop w S;

for V € P[w] do JM iM + -^14(1 + ¿M);

a[w\

if w Ф s then Cb[w] Cb[w] + 5[го]; end

end

Здесь d[t] — верхняя оценка длины кратчайшего пути от начальной вершины до вершины t. Q очередь вершин с приоритетами, определяемыми значениями функции d; P[w] — список предшественников w на кратчайших путях от начальной вершины до w, a(w) — оценка количества кратчайших путей от начальной вершины до w,S(v) — оценка зависимости начальной вершины от v; Q\ — очередь, в которой вершины хранятся в порядке неубывания расстояния от начальной вершины; S — стек, в котором вершины хранятся в порядке невозрастания расстояния от начальной вершины.

Замечание, При реализации вместо использования стека S (приведенного для совместимости с изложением алгоритма Брапдеса в части расчета центральности) Q\ формируется как массив, который в первом цикле (while Q1) просматривается с начала, во втором случае (while S) — просматривается с конца.

Список литературы

1. XML Media Types, IETF RFC 3023. Jan. 2001.

2. Lotka A. The frequency distribution of scientific productivity //J. Washington Acad. Sci. 1926. V. 16, N 12. P. 317-324.

3. Price D. A general theory of bibliometric and other cumulative advantage process //J. Amer. Soc. Inform. Sci. 1976. N 27. P. 292-306.

4. Kessler М. М. Bibliographic coupling between scientific papers // Amer. Documentation. 1963. V. 14, iss. 1. P. 10-25.

5. Маршакова И. В. Система связей между документами, построенная на основе ссылок: по данным Science Citation Index // НТИ. Сер. 2. 1973. № 6. С. 3-8.

6. Small Н. Co-citation in the scientific literature: A new measure of the relationship between two documents //J. Amer. Soc. Inform. Sci. 1973. V. 24, iss. 4. P. 265-269.

7. Латур, Б. Пересборка социального: введение в акторно-сетевую теорию. М.: Высш. шк. экономики. 2014. 384 с.

8. Newman М. Е. J. Analysis of weighted networks // Phvs. Rev. 2004. E 70, 056131.

9. Newman M. E. J. Networks. An Introduction. NY: Oxford University Press. 2010. 772 P.

10. Freeman L. C. A set of measures of centralitv based upon betweenness // Sociometrv. 1977. V. 40. P. 35-41.

11. RePEc. General principles. [Electron, resource], http://repec.org/.

12. Кормен Т., лейзерсон Ч., Ривест Т. Алгоритмы: построение и анализ. М.: Ml III.МО. 2002. 960 с.

13. Dijkstra Е. W. A note on two problems in connexion with graphs. // Numerische Mathematik. 1959. V. 1. P. 269-271.

14. Floyd R.W. Algorithm 97: Shortest path // Communications of the ACM. 1962. V. 5, iss. 6. P. 345.

15. Warshall S. A theorem on Boolean matrices //J. Assoc. Сотр. Math. 1962. V. 9, N. 1. P. 11-12.

16. Ахо А., Хопкрофт Дж., Ульман Дж. Построение и анализ вычислительных алгоритмов. М.: Мир, 1979. 536 с.

17. Batagelj V. Semirings for social network analysis // J. of Math. Sociology. 1992. V. 19, iss. 1. P. 53-68.

18. Brandes U. A faster algorithm for betweenness centralitv // J. of Mathematical Sociology. 2001. V. 25, iss. 2. P. 163-177.

19. Бредихин С. В., Ляпунов В. М., Щербакова Н. Г. Ранжирование коллекции периодических изданий базы данных RePec на основе метрик Eigenfactors // Проблемы информатики. 2014. № 1. С. 36-42.

20. Bonacich P. F. Power and centralitv: A family of measures // Am. J. Sociol. 1987. V. 92. P. 1170-1182.

21. Batagelj v., Mrvar A. Pajek. Program for Large Network Analysis [Electron, resource], http: / / vlado.fmf.uni-lj .si / pub / networks / doc / pajek.pdf.

Бредихин Сергей Всеволодович — канд. техн. наук, зав. лабораторией Института вычислительной математики и математической геофизики СО РАН;

e-mail: [email protected]; Щербакова Наталья Григорьевна — ст. науч. сотр.

Института вычислительной математики и математической геофизики СО РАН;

e-mail: [email protected]

Дата поступления — 19.08.20Ц

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