М атематические проблемы управления
УДК 681.3.06
СЛУЧАЙНЫЕ ГРАФЫ С НЕЛИНЕЙНЫМ ПРАВИЛАМ ПРЕДПОЧТИТЕЛЬНОГО СВЯЗЫВАНИЯ
В.Н. Задорожный
Установлено точное распределение локальной степени связности вершин в случайных графах, выращиваемых по нелинейному правилу предпочтительного связывания. Разработаны методы калибровки генераторов случайных графов.
Ключевые слова: случайные графы, большие сети, моделирование.
ВВЕДЕНИЕ
Классический случайный граф на N вершинах определяется процедурой его построения: каждая пара вершин случайно и независимо с заданной вероятностью p соединяется ребром [1]. Характеристики такого графа выражаются через его параметры N и p. Локальная степень к связности его вершин имеет биномиальное распределение вероятностей со средним (k) = p(N — 1). При (к) = const и N о распределение степени вершин графа сходится к пуассоновскому распределению. Классический случайный граф хорошо изучен, однако для моделирования ряда реальных сетей корректно применить его не удается. Это привело к появлению большого числа работ, посвященных исследованию других видов случайных графов, так же (как правило) определяемых процедурами их построения.
Многие изучаемые прикладными науками сети, состоящие из миллионов элементов, развиваются из небольших сетей путем неограниченного наращивания их новыми узлами с постоянным или случайным числом связей. Такие сети моделируются случайными графами, которые выращиваются с помощью простых алгоритмов (генераторов), воспроизводящих способы развития моделируемых сетей. В теории scale-free (безмасштабных) сетей [2—6] наиболее широко известен граф Бара-баши—Альберт (БА-граф), предложенный в работе [2], который выращивается из графа-затравки путем циклического добавления к нему новых вершин с постоянным числом m 1 1 ребер. В соответствии с правилом предпочтительного связывания («богатые становятся богаче») вероятность p.
связывания нового ребра с i-й вершиной графа пропорциональна ее локальной степени связности к.:
p = к/.. (i)
Для бесконечного БА-графа, выращиваемого по правилу предпочтительного связывания (1), в работе [5] найдено точное распределение степени связности вершин: вероятность Qk того, что случайно выбранная вершина имеет степень к, определяется выражением
Qk = к' ■ к = m, m + 1, ... (2)
k к( к + 1)(к + 2)
Асимптотически степенные при к ^ да («масштабно инвариантные») распределения степени связности, обнаруживаемые в больших сетях, обусловливают их специфические свойства и отражаются в названии теории scale-free сетей. Развитый аппарат асимптотического анализа таких сетей позволяет эффективно исследовать их, не привлекая точные решения, подобные (2). Однако для анализа свойств, обусловленных узлами с малыми степенями k и для анализа сетей, имеющих существенно не степенное распределение степени связности узлов, нужны точные решения. В статье выводится точное распределение вероятностей степени вершин для графа, выращиваемого по нелинейному правилу предпочтительного связывания, которое определяет вероятность связывания pi в виде:
p = /(кг)/Еу /(к.), (3)
где /(к) = /к 1 0 — вес (ценность выбора) вершины со степенью к — произвольная функция от к. На
основе полученных формул разрабатываются методы калибровки генераторов, позволяющие выращивать графы с заданным распределением степени связности вершин.
1. СТАЦИОНАРНОЕ РАСПРЕДЕЛЕНИЕ СТЕПЕНИ СВЯЗНОСТИ
1.1. Вывод формул распределения
Рассмотрим процесс выращивания графа генератором со стохастическим приращением, представляющим собой добавляемую вершину со случайным числом х (£ < х < А) ребер. Будем считать, что в качестве «затравки» используется конечный граф, для которого выражение 2. Дку.) в формуле (3) не равно нулю (он должен содержать вершины со степенями к, для которых f(к) > 0) и все ку 1 £. На каждом шаге генерации к имеющимся N вершинам графа добавляется новая вершина и связывается х ребрами с вершинами графа, выбираемыми случайно в соответствии с правилом (3). Тогда с ростом числа N вершин выращиваемого графа при их минимальной степени g средняя степень сходится к величине (к) = 2т, где т (х) — математическое ожидание х.
Обозначим через гк (к 1 g) вероятность того, что приращение содержит к ребер. Предполагая, что при N ^ да существует стационарный режим развития графа, выпишем уравнения баланса для финальных вероятностей 0к степеней вершин. Для этого определим слой Лк как множество вершин графа, имеющих степень к. Вероятность qk слоя Лк определим как вероятность того, что случайно (равновероятно) выбранная вершина принадлежит слою Лк: #к = |Лк|/Д где |Лк| — число вершин со степенью к. Вероятность 0к определим как финальное значение вероятности qk при N ^ да.
Финальное значение Рк вероятности у р. то-
‘ е Ак
го, что для связывания с ребром новой вершины будет выбрана вершина слоя Лк, к 1 g, найдем, исходя из правила (3):
У л к)
у = /У___________ = Л( к) |Лк| = Лк|Лк| / N
/ Га/ у л( к) у Л( 0| Л,| УЛ Л/| /
Ул (V I > g I > g
у = 1
Ок Л _ Ок Л = р
Р 1
у О//I < />
I > £
к
(4)
где </) = у Qlfl — средний вес вершины графа.
/ > я
Финальные вероятности Ок найдем из уравнений баланса, которые выпишем следующим образом. За один шаг генерации в граф добавляется одна вершина с х ребрами. Число \А | вершин слоя А^ увеличивается в среднем на г (в этот слой с вероятностью попадает новая вершина) и одновременно уменьшается (так как из этого слоя уходят вершины, когда к ним присоединяется новое ребро) в среднем на тР^ = //< /) вершин. Первое
уравнение баланса получаем, приравнивая выражения для О^ до и после шага генерации в стационарном режиме развития графа (при N ^ да):
А1 = І А I + - т ° /я/ < /)
N N + 1
Отсюда + |А^| = N |А^ | + - №тО^ //</)
или |А^|/N = ^ - тО///). Учитывая, что ~ О^,
получаем О^ = т& - тО^ //</) и находим:
О = < /)
* < /) + т/
(5)
где Л — вес вершины с наименьшей степенью связности.
Аналогично выписываем уравнения баланса при к > g. Число |Лк| вершин слоя Лк возрастает за шаг генерации в среднем на гк + тРк _ 1 = гк + т£к _ 1 х х Лк _ 1/( Л) (за счет попадания с вероятностью гк новой вершины в слой Лк и прихода вершин из слоя Лк _ 1), и уменьшается в среднем на тРк = т£к Л/(Л) (за счет ухода вершин из слоя Лк в слой Лк + 1). Получаемое уравнение
\ Ак\ = N
|Ак
+ +
тОк - 1/к - 1 т°кЛ
< /)
< /)
N + 1
решаем аналогично первому уравнению баланса и находим:
Ок =
_ гк </) + т/к -1 °к -1
< /) + т/к
(6)
При т = g (при г = 1) стохастическое приращение графа вырождается в постоянное, т. е. в вершину с постоянным числом т 1 1 ребер. Найденное для него в работе [7] распределение степени вершин является соответствующим частным случаем распределения (5), (6):
< /) + т/„’
Ок = < т/к -1 / Ок - 1, к 1 £ + 1.
к < /) + т/к к 1
(7)
(8)
Если /, = к, то (/ > = (к) = 2m, / = g = m, и
Qg = о
g 2 + m
2 , Qk = I—1 Qk _ i, (k l g + 1). Отсюда
~к 2 + к ^к
индукцией по к легко выводится известная формула (2).
Заметим, что весовую функцию /(к) = /к, как это видно из формулы (3), можно определять с точностью до мультипликативной константы, и, следовательно, веса с/к (с > 0) индуцируют то же распределение Ок, к 1 g что и веса /к.
1.2. Численный расчет распределения степеней
Непосредственное использование рекурсивных формул (5), (6) для численного расчета вероятностей Ок затрудняется тем, что при известных т, гк и /к средний вес (/) неизвестен. Его можно определять из уравнения, получаемого в результате подстановки (5), (6) в равенство (к) = у к£к = 2т. Так > g
кой расчет (/) легко реализуется в среде электронных таблиц следующей процедурой.
1. Формируем столбцы значений к, /к, гк и ячейку т.
2. В отдельную ячейку таблицы в качестве начального приближения (/) вводим произвольное значение а > 0.
3. Со ссылкой на ячейку а как на параметр (/) по рекурсивным формулам (5), (6) формируем столбец вероятностей 0к (его начальное приближение).
4. Вводим в отдельные ячейки:
— формулу, вычисляющую (к) как сумму произведений столбцов к и 0к,
— формулу, вычисляющую (/) как сумму произведений столбцов /к и 0к.
5. Используя сервис «Подбор параметра», находим искомое а, доставляющее равенство ячейки (к) значению 2т. При таком а автоматически выполнится и равенство ячейки (/) значению а. В результате одновременно получаем искомые значения (/) и 0к.
При расчете вероятностей (7), (8) эта процедура упрощается: столбец гк в этом случае не формируется, а столбец 0к рассчитывается, соответственно, по формулам (7) и (8).
2. СВОЙСТВА РАСПРЕДЕЛЕНИЙ, РЕАЛИЗУЕМЫХ ПРИ ПОСТОЯННОМ ПРИРАЩЕНИИ
2.1. Общая формула вероятностей
При анализе свойств распределения вероятностей (7), (8) весовую функцию /(к) = / удобно рассматривать как произвольный упорядоченный на-
бор чисел ^ = /, / + р ..., /к, ..., в котором / > 0 и /к 1 0 при к 1 ^
Как можно видеть из формулы (8), первым в наборе 1 нулевым значением /м + 1 = 0, М1 g, предопределяется равенство 0к = 0 для всех к > М + 1. Поэтому веса 1 будем задавать либо конечным набором fgM = /, / + р ..., /м, 0, все числа которого, кроме последнего /М + ! = 0, положительны, либо
бесконечным набором положительных чисел.
В сокращенной записи = /, / + р ..., /м, содержащей лишь положительные числа, вес /м + х равен нулю по умолчанию.
При некотором а 1 0 конечный набор весов индуцирует по формулам (7), (8) распределение
вероятностей Q тором
M + 1
g
= Qg, Qg + 1, ..., Q
M + 1
в ко-
Qg = a
-g a + m/g ’
Q = _______________a_____________________ ... Q
g + 1 a + m/g a + m/g + 1, , M + 1
= a m/g m/M
a + m/g a + m/g +1 a + m/M +1
или, в более компактном виде:
Qk = от/ П_ irm/ ■ g m k m M + L (9)
g
Произведение П в котором верхний предел
г = g + 1
меньше нижнего, здесь равно единице по определению. Так как /М + 1 = 0, то для QM + 1 имеем также выражение
QM
a
m/g
m/M -1 . m/M _
M + 1 a + m/g a + m/g + 1"'a + m/M a + m/M + 1
m/
g g +
M
П a + m/ ’
г = g г
(10)
в котором при а = 0 не возникает неопределенности типа 0/0.
Для случая а = 0 из формулы (9) с учетом выражения (10) при любых ненулевых весах 1м получаем:
Q
M+ 1 g
= Qg, ..., Qm, Qm + 1 = 0, ..., 0,1. (11)
Здесь (/) = /^ + ... + /М + !@м + 1 = 0 = а, и случайная величина к вырождается в константу к = М + 1. Условие реализуемости случая а = 0 и распределения (11) уточняется далее в п. 2.4.
Полагая М ^ да, из (9), (10) находим, что в общем случае набор fg0 индуцирует распределение
Qg = 0?, + 1, ..., Ок, ..., в котором вероятность
0о, определяемая как предел произведения (10) при М ^ да, может быть положительной.
2.2. Индуцируемые распределения
Покажем, что для ряда Qg (9) условие нормировки у Ок = 1 на самом деле выполняется при
к > g
любых а 1 0 и, таким образом, с учетом свойства Qg 1 0, формула (9) определяет параметрический класс распределений с параметром а.
При М < да условие нормировки проверяется непосредственно:
I о*
* > g
+
«Л
а + а + а + 1
+
+
а
«Л
£_
а + «/,
1 +
а + +1
1 + ... +
а + «/м -
1 +
«м - 1 а + «/м
1 +
а + «/,
1 +
«Л
1 +
1 + ... +
а + «/м -
м -1
а + «/м
а +
м
а +
а +
= 1.
В приведенной выкладке учитывается, что /м + 1 = 0.
Выполнение условия I е* = 1 для QJ =
* > ё
+ 1, ... вытекает из определения 0^ как предела вероятности 0м + 1 при М ^ да.
2.3. Точное определение среднего веса а = (О
Финальное распределение вероятностей для степени вершин графа, выращиваемого генератором с постоянным приращением, принадлежит классу индуцируемых распределений (9) и опре-
деляется значением а, удовлетворяющим условию м+ 1
(к) = I к0* = 2«, или, с учетом (9), (10), условию:
к = ё
м+ 1 *
а к і—г
к1 а + / п!а + «у;
«Л- 1 =2«о
м
ак
к
«У; -1
м
+
(м + 1) п
«У/ а + «/і
= 2«.
(12)
Условие (12) в любой из его двух эквивалентных форм можно использовать как уравнение для среднего веса а = (/) в распределении (7), (8). Левая часть уравнения (12) в обеих его формах есть функция аргумента а, в промежутке 0 < а < да монотонно убывающая от М + 1 до ^ = т. Это гарантирует существование и единственность решения при М + 1 > т и позволяет эффективно находить его численным методом, описанным в п. 1.2.
2.4. Условие существования стационарного режима.
Псевдорешетки
Назовем вакансией еще неиспользованную возможность связывания вершины с новым ребром.
В случае конечного набора весов число вакансий у любой вершины ограничено и составляет М + 1 — к, где к — степень связности этой вершины. Для выращивания бесконечного графа необходимо, чтобы число вакансий, добавляемых в граф новой вершиной, было не меньше числа вакансий, используемых ее ребрами, т. е. должно выполняться условие
(13)
При М + 1 = 2«, на границе условия (13), уравнение (12) при любых/, ..., /м > 0 имеет решение а = 0, определяющее вероятности 0* (11). Так как при М + 1 = 2« число вакансий в растущем графе не изменяется, то вершины бесконечного графа с вероятностью 1 имеют степень М + 1. Такой граф можно назвать псевдорешеткой, так как постоянством степени вершин он подобен решетке. Варьируя « и вычисляя М = 2« — 1, можно получать разные виды псевдорешеток. При « = 1, М = 1 генерируется бесконечная цепь со степенями вершин М + 1 = 2, при « = 2, М = 3 степени почти всех вершин равны 4 и т. д.
X
1
X
а
X
1
X
а
а
3. КАЛИБРОВКА ГЕНЕРАТОРОВ С
3.1. Задача калибровки
Для заданного распределения (^М +1 требуется
м
найти веса Ig > 0, при которых степень вершин
~М + 1 А М + 1
имеет распределение Qg = Qg .
3.2. Реализация экспоненциального распределения
Дискретное экспоненциальное распределение является геометрическим распределением вероятностей. Из выражений (7), (8) легко видеть, что оно реализуется при использовании равных весов,
например при 10 = 1, 1, ...
3.3. Общий метод калибровки: обращение рекурсии
Найти набор весов ^, индуцирующих нужное
.M + 1
M + 1
распределение Qg > 0 у (к = 1, можно пу-
к = g
тем обращения зависимости, заданной рекурсивными соотношениями (7), (8). Выражая в них веса
/к через заданные вероятности (к = £>к, к 1 £, получаем:
f = _а_ - a f = - i f - a
g - m ’ k ^ k- 1 m ’
mQg m Qk
(k = g + 1, M), /
m + 1
= 0.
Найденные веса имеют общую мультипликативную константу а/т, заменяя которую единицей (и определяя этим равенство а = т), находим решение задачи калибровки в виде
J = — — 1 J = Qk - 1 f _ 1 Jg Jk ~ Jk - 1
Qk
(к = я + 1, ..., М), /м + 1 = 0, (14)
позволяющем вычислять все /к непосредственно
по заданным (?к. Равенства (14) вместе с условием стационарности (13) и необходимым условием
~ м + 1
(к) = 2т реализуемости распределения Qg со-
~ м + 1
ставляют достаточное условие реализуемости Qg .
Докажем это.
Действительно, пусть при М + 1 1 2т, (к) = 2т правило предпочтения использует веса (14). Тогда
м+ 1
стационарное распределение Qm существует и
определяется формулами (7), (8). При этом сред-
ний вес а = (/) = m известен, так как значение а = m выбрано при выводе формул (14). Убедимся, что это значение а = m является корнем уравнения (12):
MJ+1 _jak_ П fi. =
k = g а + f =V+ 1а + m/
M+ 1 k
= z mk т n mJ-- 1 = z m + m/g . n 1 m + m/
k = g
M + 1
z
k
M+ 1 k
Z k -p-i- J - - 1 —
î+j n Т+У
k=g i=g +1 ■/i
k
П
/i -1
k = g 1 + T/Qg - 1 i = g + 1 1 + ( Qi- 1/Qi)J-- 1 - 1 M+ 1
= Z Qmk П
k = g î = g + 1 Qi - 1 k = g
Z kQk
= 2m
(последнее из равенств совпадает с посылкой (к) = 2т). Подставляя теперь в формулы (7), (8) известное среднее ( /) = а = т и веса (14), получаем
0к = (3 к для всех к 1 я.
3.4. Реализация равномерного и треугольного распределений
Найдем набор весов ^ для выращивания графа с равномерным распределением м + 1. Пос-
кольку здесь ( = ( +1 = ... = (м+ 1 = 1/и, где и = М — я + 2, то, используя формулы (14), находим: / = 1/ ^ - 1 = (и - 1), / + 1 = / - 1 = (и - 2), ..., /к = и - (к - я + 1), ..., /м = и - (М - я + 1) = 1, /м + 1 = 0. Таким образом, получен набор весов
= и - 1, и - 2, ..., 2, 1. Для выполнения условия реализуемости (к) = 2т, или (я + М + 1)/2 = 2g, должно выполняться соотношение М = 3я - 1. Так,
например, при я = 3, М = 3я - 1 = 8 и 13 = 6, 5, 4, 3, 2, 1 генерируется граф с распределением степени связности QM +1 = Q3 = 1/7, ..., 1/7.
Аналогично находим веса ^, индуцирующие
M+ 1
g
при M = 3g — 1 треугольное распределение Q = Qg, 2Qg, ..., mQg, (m + 1)Qg, mQg, ..., 2Qg, Qg (где
Qg = 1/(g + 1)2):
/ = j(g + 1 )2/(k - g + 1 ) - (k - g)/2 - 1, k l(3g- k)/2, 2g< k< 3g.
- 1, g < k < 2g,
3032530002540101310221
Так, генератор с весами Г3 = 15, 13/2, 10/3, 3/2, 1, 1/2 реализует граф с распределением степени вершин 03 = 1/16, 2/16, 3/16, 4/16, 3/16, 2/16, 1/16.
3.5. Задача реализации усеченного степенного распределения
Усеченные степенные распределения степени связности, обнаруживаемые при исследовании больших сетей [6], реализуются генератором с постоянным приращением приближенно.
Рассмотрим в качестве примера реализацию распределения
Qk = cka = 1,677k 2, k = 2
20.
(15)
Множитель c = 1,677 обеспечивает равенство суммы вероятностей единице. Здесь имеем g = m = = 2, M + 1 = 20 и среднее (k) = 4,3574, близкое к 2m = 4. Это позволяет реализовать распределение (15) приближенно, задавая веса по формулам (14). Расчет получаемого при этих весах распределения
Q20 (см. п. 1.2) показывает, что его среднее составляет (k) = 2m = 4, и что реализуемые вероятности Qk (рис. 1, см. светлые маркеры) отличаются от заданных формулой (15) значений Qk (см. рис. 1, черные маркеры). В конце диапазона 2 m к m 20 погрешность реализации заданных вероятностей
Qk достигает 88 %.
В работах по теории scale-free графов используется другой способ: используются веса fk = к при g < к < M и fM + 1 = 0. Получаемое при g m к m M асимптотически-степенное распределение Qk (см. рис. 1, сплошная линия) хорошо согласуется с заданным степенным распределением. Однако значение QM + j на порядки превосходит заданное. Это происходит потому, что интенсивный приход вершин в слой AM + j при генерации графа не компенсируется их уходом из этого слоя (так как с ними ребра новых вершин не связываются).
Рис. 1. Графики реализаций распределения (15) (шкалы логарифмические)
Точно реализовать усеченные степенные и любые другие распределения 0§ со средним (к) 1 2# позволяют генераторы со стохастическим приращением.
4.КАЛИБРОВКА ГЕНЕРАТОРОВ СО СТОХАСТИЧЕСКИМ ПРИРАЩЕНИЕМ
4.1. Задача калибровки
м +1
Для заданного распределения Qg со сред
ним (k) l 2g требуется найти вероятности rg, ..., rh,
(г§ + ... + г, = 1, к т М) и веса ^ 1 0, при которых степень вершин выращиваемого графа будет иметь
распределение Q
м+ 1
g
Q
м+ 1
g
4.2. Обращение рекурсии
По аналогии с выводом из выражений (7) и (8) формул (14) из выражений (5) и (6) выводятся формулы для калибровки генератора со стохастическим приращением:
f = .л — 1 f =
Jg А5 fk
= У¿к - 1
, ___________________1 f +
Jg Jk Jk - 1
Qg
Qk
(к = # + 1, ..., М), /м + 1 = 0, (/) = т, (16) где т = (х) = Екгк. При г§ = 1 формулы (16) сводятся
к §
к формулам (14) и реализуется наименьшее для данного # среднее (к) = 2#. Вероятности г§,..., г, при
§ ™
Л м +1 с
заданном 0§ следует задавать так, чтобы выполнялось условие (к) = 2т. Если генератор ис-
~ м +1
пользует вычисленные по заданному 0§ неот-
рицательные веса (16), выполняется условие стационарности и (к) = 2т 1 2, то а = (/) = т и
~м + 1 Ам+ 1
генератор реализует распределение 0§ = 0§ .
Справедливость этого утверждения доказывается подстановкой формул (16) в формулы (5) и (6).
Примечание 1. Значения г§, ..., г,, выбираемые для выполнения условия (к) = 2т, должны быть такими, чтобы веса (16) были неотрицательными. Из формул (16) вытекает, что для этого необходимо и достаточно, чтобы при всех к < к выполнялось уск к
ловие у г; 1 у 21. Это позволяет обеспечивать
I = § I = §
равенство (к) = 2т при любом (к) 1 2#.
Примечание 2. Стационарный режим существует, если М + 1 1 2 т. Вероятность р^ его реализации, однако, может быть меньше единицы. Так, при г1 = ... = г4 = 1/4 и любом > 0 в стационарном
Рис. 2. Начальный фрагмент псевдорешетки, выращиваемой из 10-вершинной цепочки при ^ =1, 10, 100, 1000
режиме (который существует, поскольку т = 2,5, М + 1 = 5 = 2т) псевдорешетка со степенями вершин к = 5 (рис. 2) выращивается с вероятностью р8 = 0. Действительно, при любом конечном числе
> 0 вакансий в затравке их число К(0 в ходе генерации псевдорешетки определяется процессом случайного блуждания на прямой, стартующим из точки Р0. И за конечное число / шагов генерации К(0 возвращается к нулю. В подобных случаях для достоверной реализации стационарного режима те приращения, которые не могут быть реализованы на данном шаге, можно помещать в очередь для их последующей реализации при первой возможности. Тогда при / ^ ад если М + 1 1 2т, то средняя длина ДО очереди приращений сходится к нулю, а если М + 1 = 2т, то ДО ^ ад, но ДО/# - ДОЛ ^ 0.
Примечание 3. Если гк > 0 при к = # + 1, ..., М, то требование / - 1 > 0 можно заменить требованием /к - 1 1 0. Если при некотором к имеем гк > 0 и /к = 0, то приращения с числом ребер х = к, связывая к вакансий в графе, не добавляют новых вакансий, так как с вершинами этих приращений новые ребра связываться не могут. С учетом этого условие стационарности принимает вид к
у (М + 1 — к)гкшк 1 т, где шк = 0 при / = 0 и
к = §
®к = 1 при / > °-
Примечание 4. При / - 1 = 0 слой Ак может формироваться только путем задания гк > 0, т. е. прямым «посевом» вершин со степенью к. При задан-
ном наборе !§м посевом можно формировать слои Ак с номерами к вне отрезка [#, М + 1], в том числе и слой А0.
4.3. Точная реализация усеченного степенного распределения
Для точной реализации распределения (15) достаточно ввести две положительные вероятности г2 = 0,8213 и г3 = 0,1787, формируя т = 2г2 + 3г3 =
= 2,1787, которое удовлетворяет условию (к) = 2т реализуемости распределения (15). После этого по
формуле (16) рассчитываются веса f29 = /2, ..., /19, 0 (рис. 3). В компьютерном эксперименте генератор с этими /к и гр г2 выращивает граф с точным распределением степени связности (15).
4.4. Калибровка генераторов по эмпирическим данным
Публикуемые в Интернете данные о структуре больших сетей позволяют рассчитывать и использовать для калибровки их моделей эмпирические
оценки 0 § распределения степени связности.
Оценки 0 §, как правило, неоднородны. Обычно начало ряда О § представлено оценками ( к, которые имеют хорошую точность и соответствуют установившимся стационарным вероятностям (к, зависящим от к специфическим нелинейным образом. Середина ряда О § требует сглаживания оценок их теоретической зависимостью от к. Оценки в хвостовой части ряда имеют высокую относительную погрешность, содержат длинные цепочки нулей и соответствуют не стационарным вероятностям дк нарождающихся слоев.
Пошаговое описание методики калибровки генераторов по эмпирическим данным приведем на примере данных [8] о сети автономных систем Интернет (22 963 узла).
Л
2 8 14 *
Рис. 3. График весовой функции, индуцирующей распределение (15)
Рис. 4. Определение весовой функции для сети автономных систем Интернет
Шаг 1. После удаления из графа исходной сети [8] двух «подозрительных» вершин с петлями и расчета частот пк (числа узлов со степенью к) вычисляем оценки ()к = пк/^ (где N = 22961, 1 < к < 1713).
Например, первые оценки (?х, ..., £>ю равны, соответственно, 0,3414; 0,4225; 0,0966; 0,0395; 0,0205; 0,0126; 0,0087; 0,0075; 0,0057; 0,0049.
Шаг 2. Вычисляем оценки V к =
'[(Эк
,к(1 - )/пк / (к коэффициентов вариации
оценок (2 к. Учитывая, что при к < 4 вариации V к невелики (Vк < 0,2), принимаем решение использовать оценки (21, ..., <24 как «истинные» вероятности (1, ... , (4.
Шаг 3. Определяем по данным [8] среднее число т ребер в приращении и среднюю степень (к) связности: т = Я/# = 2,014 (где Я — число ребер в сети), (к) = 2Я/# = 4,027.
Шаг 4. Задаем для стохастического приращения минимальное число положительных вероятностей гк, обеспечивающих требуемое т при положитель-
ных/к (16). В данном примере, задавая г1 = 0,342, г2 = 0,432, г3 = 0,096, г4 = 0,13, имеем т = г1 + 2г2 + + 3г3 + 4г4 = 2,014 и /1, ..., /4 = 0,0017, 0,0245, 0,0999, 2,5303 соответственно.
Шаг 5. По набору оценок (1, ..., (55, ограниченному первым нулем (256 = 0, используя формулы (16), находим веса/х, ...,/55, изображаем их на графике (рис. 4, см. маркеры) и определяем характер зависимости /к от к. Так как линия тренда близка к прямой /к = ск, принимаем гипотезу о пропорциональной зависимости /к от к.
Шаг 6. Веса /5, ..., /2000 (длина набора весов взята
с небольшим по сравнению с длиной выборки (2 к запасом) задаем в виде /к = с0к и полагаем /2001 = 0. В первом приближении коэффициент с0 принимаем равным единице.
Шаг 7. Полагая а = т, рассчитываем реализуемое по полученному набору весов распределение
О?001 = 01, ..., (2001 (см. п. 1.2).
Шаг 8. Завершаем калибровку подбором с0,
2001
при котором распределение 01 имеет среднее
(к) = 2т (равенство (/) = а при таком с0 выполняется автоматически). Получаем с0 = 0,8603, и при к 1 5 задаем веса общей формулой /к = 0,8603к. На рис. 5 сравниваются заданное (маркеры) и реализуемое калиброванным генератором (сплошная линия) распределения.
Графики на рис. 5—7 построены в логарифмических шкалах.
Калиброванные генераторы выращивают графы с распределениями степени связности (РСС) (рис. 5—7, см. сплошные линии), хорошо согласующимися с эмпирическими вероятностями степеней (см. маркеры). Эти генераторы можно рассматривать и как результаты идентификации сетей
Рис. 5. Распределение степени связности калиброванного графа и сети автономных систем Интернет
Рис. 6. Распределение степени связности калиброванного графа и сети маршрутизаторов Интернет
Рис. 7. Распределение степени связности калиброванного графа и сети участия актеров в общих фильмах
МАТЕМАТИЧЕСКИЕ ПРОБЛЕМЫ УПРАВЛЕНИЯ
I
предпочтительного связывания. Рис. 6 характеризует качество идентификации сети маршрутизаторов Интернет по данным [9] (N = 124651, R = 207214). Параметры генератора: тх = 0,435, r2 = 0,565, f = = 0,272, f2 = 1,224, fk = 0,512ln(k) + 0,372k, k 1» 3. Рис. 7 характеризует идентификацию сети участия актеров в общих фильмах [10] (N = 511 416 — без изолированных узлов, R = 1 463 331). Два соответствующих актерам узла связаны ребром, если эти актеры снимались в одном фильме. Здесь г», ..., r8 > 0, численно фиксированы fj, ..., f10, и при k > 10 общая формула весов имеет вид fk = 4,429ln(k).
Калиброванные графовые модели сетей можно использовать для анализа и оптимизации различных сетевых процессов. Интернет — «сеть сетей», представляет собой иерархическую структуру, модулями которой являются автономные системы (АС). Каждая АС — это система IP-сетей (IP — Internet Protocol), имеющих свои уникальные IP-адреса, и маршрутизаторов (шлюзов), управляемую одним или несколькими операторами, которые осуществляют единую политику маршрутизации сообщений в пределах АС, независимую от остальной части Интернета. В состав АС может входить от единиц до нескольких тысяч компьютеров. Связь между АС осуществляют «граничные» шлюзы, реализующие основной протокол динамической маршрутизации в Интернете — «протокол граничного шлюза» (англ. Border Gateway Protocol, или BGP). Используя BGP, граничные шлюзы прокладывают маршруты не между отдельными маршрутизаторами, а между АС, рассматриваемыми как неделимые элементы сети, имеющие минимальный набор параметров, необходимых для маршрутизации. Этот набор включает в себя уникальный номер АС, число IP-сетей в АС, их адреса и внутренние расстояния до этих сетей от данного граничного шлюза. Граф сети автономных систем, выращиваемый калиброванным генератором, можно использовать для анализа ее связности при случайных отказах элементов (т. е. при потере связи с отдельными АС) и для расчета критической вероятности отказа, при достижении которой сеть распадается на несвязные компоненты. Администраторы АС, учитывая результаты такого анализа, могут уточнять свой выбор числа провайдеров и смежных АС для соединения с Интернетом. Уточнение выбора может привести к системному эффекту, несколько изменяющему ход развития Интернета. Этот эффект можно оценивать заранее, генерируя графы по первоначальным и по скорректированным правилам предпочтительного связывания, и используя в качестве затравки известное мгновенное состояние сети АС (например, опубликованное в работе [8]), близкое к текущему состоянию.
Калиброванный случайный граф, многократно реализуемый для определения средних значений искомых показателей, обладает рядом преимуществ по сравнению с графом известного мгновенного состояния сети. Поскольку большие сети (например, отдельные АС и Интернет в целом) быстро изменяются, сохраняя лишь свои существенные структурные свойства, то оптимизация решений под фиксированное мгновенное состояние сети может приводить при их реализации к результатам, далеким от ожидаемых. Отладку решений, тиражируемых для применения в разных вариантах системы (например, алгоритмов внутренней в пределах АС маршрутизации), также лучше осуществлять на нескольких реализациях калиброванного случайного графа, моделирующего систему. Кроме того, калиброванные графы позволяют моделировать развитие сетей в будущем.
Для эффективной отладки алгоритмов маршрутизации нужны гетерогенные калиброванные графы, содержащие вершины двух и более типов (для внутренней маршрутизации в пределах АС — вершины маршрутизаторов и 1Р-сетей). Это требует дальнейшего обобщения правила предпочтительного связывания в направлении использования приращений двух и более типов. Для выбора пути передачи сообщений алгоритмы маршрутизации используют метрики, учитывающие число промежуточных маршрутизаторов, задержки передачи, пропускную способность каналов и 1Р-сетей, денежную стоимость связи и т. д.; соответствующие параметры также следует правильно распределять по вершинам графа. Заметим, что подобные параметры каналов учитываются и владельцами новых АС при выборе узлов для подключения АС к Интернету. В этом состоит одна из возможных причин нелинейного характера зависимости веса /к узла от его степени к в сети АС (для к = 1, ..., 4).
Графы социальных сетей, подобных сети участия актеров в общих фильмах, могут применяться в социальных исследованиях и проектах. Логарифмическая весовая функция в генераторе графа сети участия актеров, найденная при калибровке, может быть объяснена типичной для человека логарифмической шкалой восприятия уровня сигналов (в данном случае — актерской славы). Важное приложение найденных методов в социальной сфере заключается в исследовании сетей распространения инфекций и разработке на калиброванных моделях этих сетей надежных методов борьбы с эпидемиями. В целом область приложения разработанных методов не менее широка, чем у БА-графов, и наряду с Интернетом и социумом включает в себя сеть биохимических реакций в организме и разработку новых лекарств, пищевые цепи и экосистемы, энергетические и транспортные сети и др. [3].
4.5. Задача структурной идентификации сетей
Моделирование на калиброванных графах сетевых процессов (таких, как распространение инфекции при вакцинации узлов или формирование контактных кластеров при случайных отказах элементов сети) приводит к результатам, близким к результатам моделирования этих процессов непосредственно на исходных графах сетей. Однако при этом наблюдается небольшое, но устойчивое различие сравниваемых результатов, объясняемое тем, что выращиваемый граф, согласованный с исходной сетью по числу вершин и по распределению их степени связности, отличается от нее более тонкими структурными характеристиками. Например, коэффициент кластеризации С = 3пд/пк [11], определяемый отношением среднего числа пд «треугольников» в графе к среднему числу пу «вилок» (т. е. путей длины 2), у калиброванных по распределению степеней графов, представленных на рис. 5—7, получается в несколько раз меньшим, чем у исходных сетей. Обнаружение подобных различий приводит к задаче структурной идентификации сетей и структурной калибровки генераторов. А для этого необходимо глубже исследовать структуру графов предпочтительного связывания.
Одно из направлений такого исследования, развиваемое в работе [7], состоит в изучении вероятностных характеристик случайно выбранного ребра графа. Знание этих характеристик позволяет учитывать неравноценность вершин в слое, выбираемом для связывания, и регулировать структурные характеристики графа путем дополнительного сравнения и выбора вершин внутри слоя, как это делается, например, в предложенном в работе [7] алгоритме сепарабельной калибровки графа по коэффициенту кластеризации С. Применение данного алгоритма — например, в процессе выращивания графа, моделирующего сеть маршрутизаторов Интернет (см. рис. 6) — позволяет реализовать требуемое значение С и существенно сблизить результаты моделирования сетевых процессов на исходном графе сети и на его модели. В общем же случае, очевидно, наряду с коэффициентом кластеризации необходимо исследовать другие, более сложные индикаторы структурных особенностей графа.
ЗАКЛЮЧЕНИЕ
Нелинейное правило предпочтительного связывания расширяет возможности моделирования больших сетей, в которых вероятность выбора узла для связывания с ним не обязательно пропорциональна степени связности этого узла. Точные формулы распределения степени связности, найден-
ные в статье для случайных графов с нелинейным правилом предпочтительного связывания и стохастическим приращением, включают в себя ранее установленные результаты в качестве частных случаев. Разработанные на основе этих формул методы калибровки генераторов просты в практическом применении и позволяют быстро выращивать графы, содержащие миллионы вершин и точно реализующие заданные распределения степени связности. Это создает предпосылки для эффективного решения задач структурной идентификации больших сетей методами аналитико-имитацион-ного моделирования. Калиброванные случайные графы могут использоваться как для моделирования и оптимизации процессов, происходящих в исследуемых сетях, так и для тестирования разнообразных алгоритмов и программ, предназначенных для работы с графами.
ЛИТЕРАТУРА
1. Erdos P., Renyi A. On random graphs I. // Publ. Math. Debrecen. - 1959. - Vol. 6. - P. 290-297.
2. Barabasi, Albert-Laszlo and Albert, Reka. Emergence of scaling in random networks // Science, 286:509-512, October 15, 1999.
3. Барабаши А., Бонабо Э. Безмасштабные сети // В мире науки. - 2003. - № 8. - С. 55-63.
4. Barabasi, Albert-Laszlo. Scale-Free Networks: A Decade and Beyond // SCIENCE. - 2009. - Vol. 325. - P. 412-413.
5. Dorogovtsev, S.N. and Mendes, J.F.F. and Samukhin, A.N. Structure of Growing Networks: Exact Solution of the Baraba-si-Albert's Model // Phys. Rev. Lett. 85, 4633 (2000).
6. Guclu, H. and Yuksel, M. Scale-Free Overlay Topologies with Hard Cutoffs for Unstructured Peer-to-Peer Networks // In Proc. of IEEE International Conference on Distributed Computing Systems (ICDCS), 2007.
7. Задорожный В.Н., Юдин Е.Б. Структурные свойства scale-free графа Барабаши-Альберт / Препринт материалов, принятых для публикации в журнале «Автоматика и телемеханика». 2009. - URL: http://zadorozhnyi.acouy.ru/ articles/ZadorozhnyiYudinLastVersion.pdf (дата обращения: 01.03.2010).
8. Структура автономных систем сети Интернет, воссозданная на основе BGP таблиц, 2006 г. - URL: http://www-personal.umich.edu/~mejn/netdata/as-22july06.zip (дата обращения: 01.09.2009).
9. Структура сети маршрутизаторов Интернет (2006 г.). -URL: http://www.cise.ufl.edu/research/sparse/mat/Pajek/ internet.mat (дата обращения: 01.09.2009).
10. Структура сети участия актеров в общих фильмах. -URL: http://www.nd.edu/~networks/resources/actor/actor. dat.gz (дата обращения: 03.02.2010).
11. Newman M. E. J. The structure and function of complex networks // SIAM Review 45, 167-256 (2003).
Статья представлена к публикации членом редколлегии
Ф.Т. Алескеровым.
Задорожный Владимир Николаевич — канд. техн. наук,
доцент, Омский государственный технический университет,
®(3812) 65-20-84, И [email protected].