Предположим, что я создал случайный граф, используя пакет igraph:
n=6 # number of vertices
F <- erdos.renyi.game(n, p.or.m=0.7, directed=FALSE)
m=ecount(F)
min = 1 # 1 km
max = 50 # 50 km
F <- set.edge.attribute(F, name="distance", value=runif(m , min , max))
plot(F, layout=layout.fruchterman.reingold)
distances(F)
distances(F, weights = E(F)$distance)
distances(F, v = 1, to = 6, weights = E(F)$distance)
get.all.shortest.paths(F, 1, to = V(F))
Мы знаем, что distances(F, weights = E(F)$distance)
дает кубическую c матрицу потоков, связанных с кратчайшими путями в графе.
Мне нужно то же, что и в следующей строке:
distances(F, weights = E(F)$distance) # matrix of shortests paths flows between any two vertices
distances(F, v = 1, to = 6, weights = E(F)$distance)
get.all.shortest.paths(F, 1, to = V(F)) # gives the shortests paths between 1 and other vertices
На этот раз мне нужны самые длинные пути со связанными потоками в матрице. Я не знаю, возможно ли это с «igraph».
Спасибо за помощь!