НачатьНачать бесплатно

Случайные графы

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

Это упражнение является частью курса

Анализ сетей в R

Посмотреть курс

Инструкции к упражнению

  • Сгенерируйте случайный граф с помощью функции erdos.renyi.game(). Первый аргумент n должен быть равен количеству узлов графа g — его можно вычислить с помощью gorder(). Второй аргумент p.or.m должен соответствовать плотности графа g, которую вы ранее сохранили в объекте gd. Последний аргумент задайте как type='gnp', чтобы указать функции, что для генерации случайного графа используется плотность. Сохраните новый граф в переменную g.random.
  • Вычислите плотность случайного графа g.random. Если запустить генерацию нескольких случайных графов, можно заметить, что это значение будет немного варьироваться, но оставаться примерно равным плотности исходного графа g из предыдущего упражнения, сохранённой в объекте gd.
  • Вычислите среднюю длину пути в случайном графе g.random.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

library(igraph)

# Create one random graph with the same number of nodes and edges as g
g.random <- ___(n = ___, p.or.m = ___, type = "gnp")

g.random

plot(g.random)

# Get density of new random graph `g.random`
___(___)

# Get the average path length of the random graph g.random
___(___, directed = FALSE)
Редактировать и запускать код