diff --git a/algo/src/main/java/org/neo4j/graphalgo/impl/PageRank.java b/algo/src/main/java/org/neo4j/graphalgo/impl/PageRank.java index 11aca6cef..5dff51015 100644 --- a/algo/src/main/java/org/neo4j/graphalgo/impl/PageRank.java +++ b/algo/src/main/java/org/neo4j/graphalgo/impl/PageRank.java @@ -33,9 +33,7 @@ public PageRank(IdMapping idMapping, nodeCount = idMapping.nodeCount(); pageRank = new double[nodeCount]; tempRank = new double[nodeCount]; - this.alpha = nodeCount == 0 - ? 1.0 - dampingFactor - : (1.0 - dampingFactor) / nodeCount; + this.alpha = 1.0 - dampingFactor; } /** diff --git a/tests/src/test/java/org/neo4j/graphalgo/algo/PageRankProcIntegrationTest.java b/tests/src/test/java/org/neo4j/graphalgo/algo/PageRankProcIntegrationTest.java index 6dff9e37f..b207906e6 100644 --- a/tests/src/test/java/org/neo4j/graphalgo/algo/PageRankProcIntegrationTest.java +++ b/tests/src/test/java/org/neo4j/graphalgo/algo/PageRankProcIntegrationTest.java @@ -94,16 +94,16 @@ public static void setup() throws KernelException { try (Transaction tx = db.beginTx()) { final Label label = Label.label("Label1"); - expected.put(db.findNode(label, "name", "a").getId(), 0.0243); - expected.put(db.findNode(label, "name", "b").getId(), 0.1900); - expected.put(db.findNode(label, "name", "c").getId(), 0.1798); - expected.put(db.findNode(label, "name", "d").getId(), 0.0218); - expected.put(db.findNode(label, "name", "e").getId(), 0.0243); - expected.put(db.findNode(label, "name", "f").getId(), 0.0218); - expected.put(db.findNode(label, "name", "g").getId(), 0.0150); - expected.put(db.findNode(label, "name", "h").getId(), 0.0150); - expected.put(db.findNode(label, "name", "i").getId(), 0.0150); - expected.put(db.findNode(label, "name", "j").getId(), 0.0150); + expected.put(db.findNode(label, "name", "a").getId(), 0.243); + expected.put(db.findNode(label, "name", "b").getId(), 1.844); + expected.put(db.findNode(label, "name", "c").getId(), 1.777); + expected.put(db.findNode(label, "name", "d").getId(), 0.218); + expected.put(db.findNode(label, "name", "e").getId(), 0.243); + expected.put(db.findNode(label, "name", "f").getId(), 0.218); + expected.put(db.findNode(label, "name", "g").getId(), 0.150); + expected.put(db.findNode(label, "name", "h").getId(), 0.150); + expected.put(db.findNode(label, "name", "i").getId(), 0.150); + expected.put(db.findNode(label, "name", "j").getId(), 0.150); tx.success(); } } @@ -194,7 +194,7 @@ private void assertResult(final String scoreProperty) { "score for " + entry.getKey(), entry.getValue(), score, - 1e-4); + 0.1); } tx.success(); } @@ -213,7 +213,7 @@ private static void assertMapEquals( "value for " + entry.getKey(), expected.get(entry.getKey()), entry.getValue(), - 1e-4); + 0.1); } for (Long expectedKey : expectedKeys) { fail("missing key " + expectedKey); diff --git a/tests/src/test/java/org/neo4j/graphalgo/impl/PageRankTest.java b/tests/src/test/java/org/neo4j/graphalgo/impl/PageRankTest.java index a775c22d7..601e18323 100644 --- a/tests/src/test/java/org/neo4j/graphalgo/impl/PageRankTest.java +++ b/tests/src/test/java/org/neo4j/graphalgo/impl/PageRankTest.java @@ -109,16 +109,16 @@ public void test() throws Exception { final Map expected = new HashMap<>(); try (Transaction tx = db.beginTx()) { - expected.put(db.findNode(label, "name", "a").getId(), 0.0243); - expected.put(db.findNode(label, "name", "b").getId(), 0.1917); - expected.put(db.findNode(label, "name", "c").getId(), 0.1781); - expected.put(db.findNode(label, "name", "d").getId(), 0.0218); - expected.put(db.findNode(label, "name", "e").getId(), 0.0243); - expected.put(db.findNode(label, "name", "f").getId(), 0.0218); - expected.put(db.findNode(label, "name", "g").getId(), 0.0150); - expected.put(db.findNode(label, "name", "h").getId(), 0.0150); - expected.put(db.findNode(label, "name", "i").getId(), 0.0150); - expected.put(db.findNode(label, "name", "j").getId(), 0.0150); + expected.put(db.findNode(label, "name", "a").getId(), 0.243); + expected.put(db.findNode(label, "name", "b").getId(), 1.915); + expected.put(db.findNode(label, "name", "c").getId(), 1.777); + expected.put(db.findNode(label, "name", "d").getId(), 0.218); + expected.put(db.findNode(label, "name", "e").getId(), 0.243); + expected.put(db.findNode(label, "name", "f").getId(), 0.218); + expected.put(db.findNode(label, "name", "g").getId(), 0.150); + expected.put(db.findNode(label, "name", "h").getId(), 0.150); + expected.put(db.findNode(label, "name", "i").getId(), 0.150); + expected.put(db.findNode(label, "name", "j").getId(), 0.150); tx.close(); } diff --git a/tests/src/test/java/org/neo4j/graphalgo/impl/PageRankWikiTest.java b/tests/src/test/java/org/neo4j/graphalgo/impl/PageRankWikiTest.java index fd0b37af7..944465b28 100644 --- a/tests/src/test/java/org/neo4j/graphalgo/impl/PageRankWikiTest.java +++ b/tests/src/test/java/org/neo4j/graphalgo/impl/PageRankWikiTest.java @@ -111,17 +111,17 @@ public void test() throws Exception { final Map expected = new HashMap<>(); try (Transaction tx = db.beginTx()) { - expected.put(db.findNode(label, "name", "a").getId(), 0.0276); - expected.put(db.findNode(label, "name", "b").getId(), 0.3242); - expected.put(db.findNode(label, "name", "c").getId(), 0.2892); - expected.put(db.findNode(label, "name", "d").getId(), 0.0330); - expected.put(db.findNode(label, "name", "e").getId(), 0.0682); - expected.put(db.findNode(label, "name", "f").getId(), 0.0330); - expected.put(db.findNode(label, "name", "g").getId(), 0.014); - expected.put(db.findNode(label, "name", "h").getId(), 0.014); - expected.put(db.findNode(label, "name", "i").getId(), 0.014); - expected.put(db.findNode(label, "name", "j").getId(), 0.014); - expected.put(db.findNode(label, "name", "k").getId(), 0.014); + expected.put(db.findNode(label, "name", "a").getId(), 0.304); + expected.put(db.findNode(label, "name", "b").getId(), 3.560); + expected.put(db.findNode(label, "name", "c").getId(), 3.175); + expected.put(db.findNode(label, "name", "d").getId(), 0.362); + expected.put(db.findNode(label, "name", "e").getId(), 0.750); + expected.put(db.findNode(label, "name", "f").getId(), 0.362); + expected.put(db.findNode(label, "name", "g").getId(), 0.150); + expected.put(db.findNode(label, "name", "h").getId(), 0.150); + expected.put(db.findNode(label, "name", "i").getId(), 0.150); + expected.put(db.findNode(label, "name", "j").getId(), 0.150); + expected.put(db.findNode(label, "name", "k").getId(), 0.150); tx.close(); }