Как мне найти промежуточность центральности узла в Гремлине? - PullRequest
0 голосов
/ 08 января 2019

Центральность между узлами V определяется как доля кратчайших путей между всеми парами узлов, которые пройти V.

Я посмотрел документацию по рецептам tinkerpop и не считаю ее полезной / не работает. т.е. он возвращает

......1> 

когда я запускаю запрос.

Выполнен запрос:

g.V().as("v").repeat(both().simplePath().as("v")).emit().
           filter(project("x","y","z").by(select(first, "v")).
                                       by(select(last, "v")).
                              by(select(all,"v").count(local)).as("triple").
                  coalesce(select("x","y").as("a").
                             select("triples").unfold().as("t").
                             select("x","y").where(eq("a")).
                             select("t").
                           store("triples")). 
                  select("z").as("length").
                  select("triple").select("z").where(eq("length"))).
           select(all, "v").unfold().
           groupCount().next()

Я использую данные о расходах воздуха, предоставленные Лоуренсом, как в этом руководстве. http://kelvinlawrence.net/book/Gremlin-Graph-Guide.pdf.. Он не содержит мер централизации. ) модулятор для «вывода» всех пройденных вершин

g.V().repeat(both().simplePath()).emit() 

Как мне перейти отсюда, чтобы вычислить центрильность между узлами / или есть место, где вы могли бы начать.

1 Ответ

0 голосов
/ 08 января 2019

Вы действительно изменили запрос с сайта Gremlin Recipes, между select("t") и store("triples") должна быть запятая, а не точка. Однако этот запрос, вероятно, не будет работать на графике воздушных маршрутов, поскольку в нем слишком много путей. Как указано ниже в рецепте, запрос подходит только для очень маленьких (под) графиков. Даже если у вас достаточно памяти для вычислений, я думаю, вам придется подождать много времени (часов?), Пока вы не увидите результат.

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

...