[
https://issues.apache.org/jira/browse/TINKERPOP-1783?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16168407#comment-16168407
]
Marko A. Rodriguez edited comment on TINKERPOP-1783 at 9/15/17 7:58 PM:
------------------------------------------------------------------------
I implemented the "teleportation energy" for dead end vertices and here is the
result I got for MODERN.
{code}
marko: 0.2535703278398552
vadas: 0.324571208050876
lop: 0.6738708694531045
josh: 0.324571208050876
ripple: 0.38986734860902106
peter: 0.2535703278398552
{code}
Next, I ran PageRank over the GraphML MODERN in iGraph and got:
{code}
marko: 0.1119788
vadas: 0.1370267
lop: 0.2665600
josh: 0.1620746
ripple: 0.2103812
peter: 0.1119788
{code}
If I renormalize the TinkerPop PageRank vector to 1.0, then the values are more
aligned.
{code}
0.1142198
0.1462019
0.3035426
0.1462019
0.1756143
0.1142198
{code}
...don't know why I'm get this renormalization problem. :/
was (Author: okram):
I implemented the "teleportation energy" for dead end vertices and here is the
result I got for MODERN.
{code}
marko: 0.2535703278398552
vadas: 0.324571208050876
lop: 0.6738708694531045
josh: 0.324571208050876
ripple: 0.38986734860902106
peter: 0.2535703278398552
{code}
Next, I ran PageRank over the GraphML MODERN in iGraph and got:
{code}
marko: 0.1119788
vadas: 0.1370267
lop: 0.2665600
josh: 0.1620746
ripple: 0.2103812
peter: 0.1119788
{code}
> PageRank gives incorrect results for graphs with sinks
> ------------------------------------------------------
>
> Key: TINKERPOP-1783
> URL: https://issues.apache.org/jira/browse/TINKERPOP-1783
> Project: TinkerPop
> Issue Type: Bug
> Components: process
> Affects Versions: 3.3.0, 3.1.8, 3.2.6
> Reporter: Artem Aliev
>
> {quote} Sink vertices (those with no outgoing edges) should evenly distribute
> their rank to the entire graph but in the current implementation it is just
> lost.
> {quote}
> Wiki: https://en.wikipedia.org/wiki/PageRank#Simplified_algorithm
> {quote} In the original form of PageRank, the sum of PageRank over all pages
> was the total number of pages on the web at that time
> {quote}
> I found the issue, while comparing results with the spark graphX.
> So this is a copy of https://issues.apache.org/jira/browse/SPARK-18847
> How to reproduce:
> {code}
> gremlin> graph = TinkerFactory.createModern()
> gremlin> g = graph.traversal().withComputer()
> gremlin>
> g.V().pageRank(0.85).times(40).by('pageRank').values('pageRank').sum()
> ==>1.318625
> gremlin> g.V().pageRank(0.85).times(1).by('pageRank').values('pageRank').sum()
> ==>3.4499999999999997
> #inital values:
> gremlin> g.V().pageRank(0.85).times(0).by('pageRank').values('pageRank').sum()
> ==>6.0
> {code}
> They fixed the issue by normalising values after each step.
> The other way to fix is to send the message to it self (stay on the same
> page).
> To workaround the problem just add self pointing edges:
> {code}
> gremlin>g.V().as('B').addE('knows').from('B')
> {code}
> Then you'll get always correct sum. But I'm not sure it is a proper
> assumption.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)