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

УДК 004.942

СЛУЧАЙНЫЕ ГРАФЫ КАК МОДЕЛЬ СРЕДЫ РАСПРОСТРАНЕНИЯ И ВЗАИМОДЕЙСТВИЯ САМОРАЗМНОЖАЮЩИХСЯ ОБЪЕКТОВ

© 2015 К.Е. Климентьев

Самарский государственный аэрокосмический университет им. академика С.П. Королева

Поступила в редакцию 30.07.2015

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

ВВЕДЕНИЕ

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

• инфицирование живых существ болезнетворными микроорганизмами [1];

• размножение компьютерных вирусов и сетевых червей [3];

передача информационных сообщений между людьми и устройствами;

• и даже распространение зомби [5].

В качестве моделей среды распространения и взаимодействия объектов традиционно принимаются графы различных видов (см. табл. 1).

В данной работе речь пойдет о графах, используемых для моделирования эпидемий «мобильных червей» [3] и, возможно, воздушно-капельных инфекций среди высших животных [1]. Эти эпидемии характеризуется следующими особенностями:

• возможностью передачи свойства саморепликации лишь в пределах ограниченного «радиуса действия» (например, на расстояниях не более 10-15 м. по протоколу Bluetooth);

• изменчивостью топологии среды в результате перемещения объектов в пространстве;

• для случая «мобильных червей» - детерминированным алгоритмом поведения, содержащим, возможно, элементы стохастизма [3]. Климентьев Константин Евгеньевич, кандидат технических наук, доцент кафедры информационных систем и технологий. E-mail: climentieff@ro.ru

1. ПОСТАНОВКА ЗАДАЧИ

Класс сетей, служащий для моделирования среды существования таких объектов, носит наименование «специального» (ad hoc) и представляет собой множество случайных графов с различной топологией [4]. Задачи изучения процессов распространения и взаимодействия саморазмножающихся объектов близки к множеству задач, рассматриваемых в теории перколяции.

Общими характеристиками таких графов, влияющими на динамику распространения и взаимодействия объектов, являются:

• вероятностное распределение степеней kj вершин;

• вероятностное распределение локальных коэффициентов кластеризации Oj вершин.

Под локальным коэффициентом кластеризации вершины обычно понимают долю «треугольников» данной вершины, образованных из «соседей» данной вершины и являющихся «соседями» для друг друга, в общем количестве потенциально возможных «треугольников» omax = kj(kj —1) / 2, где kj - степень 1-ой вершины графа.

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

- 1 N

k = — ^ kj и средний коэффициент кластери-Nj=1

_ 1 ^ . зации O = — ^ Oj, где 1 - номер вершины; N—

Nj=1

количество вершин в графе.

Наиболее близкими абстракциями для сетей, моделирующих среду обитания «близкодействующих» саморазмножающихся объектов, являются случайный граф Радо (он же граф Эрдеша-Реньи) и «геометрический» случайный граф. Они различаются методами построения.

Целью исследования, положенного в основу

Таблица 1. Графовые модели среды обитания саморазмножающихся объектов

Объект Вид графа

Сетевые черви Полный граф

Файловые черви и вирусы, почтовые черви, сообщения в социальных сетях Безмасштабные (scale free) случайные графы с экспоненциальным распределением степеней вершин [4]

Болезнетворные микроорганизмы, мобильные вирусы, сообщения в сетях сотовой связи Случайные графы с неэкспоненциальным распределением степеней вершин [4]

а) Плотность распределения f

б) Функция распределения F

Рис. 1. Случайные графы

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

2. СЛУЧАЙНЫЙ ГРАФ РАДО

Он получается из «полного» графа, каждое ребро которого остается с заранее выбранной вероятностью р и удаляется с вероятностью

1 р (см. рис. 1,б). Степени к. всех вершин в таком графе примерно одинаковы, более точно

- их количество подчиняется биноминальному

распределению P

со средней степенью вершины к= рх N, где N

- количество вершин [4]. Очевидно, для таких графов средний коэффициент кластеризации с = р.

3. СЛУЧАЙНЫЙ «ГЕОМЕТРИЧЕСКИЙ» ГРАФ

В построении графа со случайной геометрией (ЯОО) участвуют «координаты» узлов. Например, если считать, что граф размещен в единичном квадрате, тогда каждому узлу приписываются координаты, представляющие собой равномерно распределенные на интервале [0..1] случайные величины. Затем для каждой пары узлов с индексами У и J рассчитывается «расстояние» т ^, и ребро между узлами проводится в том случае, если расстояние между ними не превышает заранее назначенного «радиуса» 10 (см. рис. 1,а).

3.1. Получение желаемой средней степени вершин

Для того, чтобы при построении случайного «геометрического» графа получать желаемое

значение к, необходимо изучить распределение

/2 2 величины 1 = у

и (х,у) - координаты любых двух случайных точек в «единичном квадрате». Более общая задача решена, например, в работе [7], но там отсутствует необходимое выражение, которым можно было бы воспользоваться при генерировании графов. Поэтому пользуясь известными соотношениями теории вероятности [2], самостоятельно получены следующие результаты.

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

3 2

£(г) = 2г - 8г + 2жг, если обе точки внутри «единичного круга»;

f(r) = -2? + 2r2 Vr2 -1 + r(4 - 2ж - 8 arctan иначе;

и функцией распределения: 2

F(r) = 0.5r4 - 2—? + ж?, если обе точки 3

внутри «единичного круга»;

F(r) = 11 (2r2 + lWr2 -1 + (ж- 2)? +1, иначе. 33

Математическое ожидание расстояния m(r) =1 (2 + 42 + 5 arcsin(l)) » 0.52.

а) Плотность распределения Г

б) Функция распределения Б

Рис. 2. Распределение расстояния между двумя случайными точками Таблица 2. Числовые значения F

г 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1.0 1.1 1.2 1.3 1.4

т 0 .028 .105 .214 .344 .483 .621 .746 .852 .932 .980 .982 .984 .990 .997

Очевидно, средняя степень вершин соответствующего графа зависит от г0:

к = (N -1) х Р(/ < г0) = (N -1) х ^(г0).

3.2. Получение желаемого среднего коэффициента кластеризации

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

Г =7(Х - Х}- )2 + (У1 - У; )2 ,

8(г) =

4г

(

2

щ

г г

агссов(-)--

2г0 2г

\

»1

2

Л

4г»

0

У

Выражение для функции распределения получено самостоятельно:

С(г) = | 2г2го агссов(г/ 2го )-

С(Го) = -

щ

Г11 ^ + • Г1

агссоя — I---ъ агсБт! —

V иу 4 V

= 1 -

Эл/3 4щ

0.59.

где (хд.) и (х;.,у.) - координаты любых двух случайных точек в круге радиусом Го. В случае г < г вершины, являющиеся «соседями» заданной вершины, являются так же « соседями» друг для друга.

Выражение для плотности распределения можно найти в [6]:

щг0

1 (г3 + 2г 02 ) - г2/г02 + 2г03 агс81п(г/ 2г0 )).

Вероятность образования «треугольника» из заданной точки и двух случайных, находящихся на расстоянии меньше г от заданной, составляет

Г /Т

Таким образом, как только что показано, в «геометрических» случайных графах коэффициент кластеризации есть константа, и это обстоятельство совпадает с выводом, полученным в [8].

Однако данный вывод справедлив лишь при следующих ограничениях:

0 < Г0 < 0.5, поскольку при больших г любые вписанные круги начинают превышать размеры единичного квадрата;

N ^^.

Несоблюдение второго ограничения приводит к существенным отклонениям G(г0) от теоретического значения, более того, при малых N поведение коэффициента кластеризации описывается монотонно возрастающей функцией (см. рис. 4). Разумеется, при увеличении N наблюдается приближение коэффициента к теоретическим значениям (см. рис. 4, б). Кроме того, в некоторой степени избавиться от «эффекта малого Ш» позволяет изменение алгоритма построения «геометрического» случайного графа, заключающееся в отказе от Евклидовой метрики (1) в пользу «тороидальной»:

^д/сХ^^Х/ТСУ^^^ТАХ^^АУ2) ,

где

Ах = х0 + 1 - Х1 при х0 < х1 , Ах = х1 +1 - х0 иначе;

АУ = У0 +1 -У1 при У0 < У1, АУ = У1 +1 -У0 иначе.

Сравнительные результаты применения различных метрик, полученные при помощи численных экспериментов, приведены на рис. 4,а.

Полученные в результате экспериментов числовые значения зависимостей при разных г0 и N позволяют строить графы с любым желаемым с .

Г = ш1п .

а) Плотность распределения Дг)

б) Функция распределения Б

Рис. 3. Распределение расстояния между двумя случайными точками в единичном круге 1 -

0,80,60,40,2-

0,80,6-

—1 А/=1 02 4)"

Г (А/=4 Л

0,2 0,4 0,5

0

0,2 0,4 0,5

а) Зависимость с от вида метрики б) Зависимость с от размера графа N

при N=1024

Рис. 4. Коэффициент кластеризации ЯОО при малых N

4. ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ ПОЛУЧЕННЫХ СООТНОШЕНИЙ И РЕЗУЛЬТАТОВ

В качестве первого примера применения полученных соотношений приведем результаты генерации случайных графов типов ЯЯО и ЯОО с N=30 вершинами и ожидаемой средней степенью

вершин к = 10.

Второй пример - результаты генерации случайных графов типа ЯЯО и ЯОО (метрика «тороидальная») с N=32 вершинами и ожидаемым средним коэффициентом кластеризации с = 0.44.

Интересно, что во втором случае желаемое значение среднего коэффициента кластеризации

с достигнуто при на порядок меньшем значении

средней степени вершин к.

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

СПИСОК ЛИТЕРАТУРЫ

1. Братусь А.С., Новожилов А.С., Платонов А.П. Динамические системы и модели биологии. М.: Физматлит, 2010. 400 с.

2. Вентцель Е.С., Овчаров Л.А. Прикладные задачи теории вероятностей. М.: Радио и связь, 1983. 416 с.

а) Граф типа ЯЯО, р=0.33, к «9.13

а) Граф типа ЯОО, Го=0.39, к =9.46

Рис. 5. Графы разных типов с одинаковой средней степенью вершин

а) Граф типа ЯЯО, р=0.45, с = 0.45 а) Граф типа ЯОО, го=0.012, с = 0.44

Рис. 6. Графы разных типов с одинаковым средним коэффициентом кластеризации

3. Климентьев К.Е. Компьютерные вирусы и антивирусы: взгляд программиста. М.: ДМК-Пресс, 2013. 656 с.

4. Райгородский А.М. Модели случайных графов и их применения // М.: Труды МФТИ. 2010. Т. 2, №4. С. 130-140.

5. When Zombies Attack: Mathematical Modelling of an Outbreak of Zombie Infection / R. Smith, P. Munz, I. Hudea, J. Imad // Infectious Disease Modelling Research Progress. Nova Science Publishers, Inc. Pp.

133-157.

6. Mathai A.M. An introduction to geometrical probability: distributional aspects with applications. CRC Press, 1999. 576 pp.

7. Philip J. The probability distribution of the distance between two random points in a box // TRITA MAT 7(10), 2007. 13 pp.

8. Dall J., Christensen M. Random geometric graphs // Phys. Rev., vol.66, no 016121, 2002.

RANDOM GRAPHS AS MODEL OF PROPAGATION AND INTERACTION AREA OF SELFREPRODUCTIVE OBJECTS

© 2015 K.E. Klimentiev

Samara State Aerospace University named after Academician S.P. Korolyov

Some types of random graphs are discussed. Also, some examples of graph building are presented. Key words: selfreproductive object, computer virus, networm, spreading, interaction, simulation, homogeneous graph, random graph, random geometrical graph, ad hoc network, cluster coefficient, probability distribution.

Konstantin Klimentiev, Candidate of Technics, Associate Professor at the Information Systems and Technologies Department. E-mail: climentieff@ro.ru