PageRank Explained Example 13

#!/usr/bin/perl

print "Content-Type: text/html\n\n<pre>\n";

$damp = 0.85;
$a = $b = $c = 0;
$iterate = 40; # loop 40 times

# Plain Heirarchical
# forward links
# a -> b           - 1 outgoing link      - home
# b -> c1...c1000  - 1000 outgoing links  - link list
# c1,c1000 -> a    - 1 outgoing link      - spam pages

# i.e. "backward" links (what's pointing to me?)
# a <= 1000 * c
# b <= a
# c <= b/1000
while ($iterate--) {
    printf("a: %.5f b: %.5f c: %.5f\n", $a, $b, $c);

    $a = 1 - $damp + $damp * (1000 * $c);
    $b = 1 - $damp + $damp * ($a);
    $c = 1 - $damp + $damp * ($b/1000);
}
printf("Average pagerank = %.4f\n", ($a + $b + $c*1000) / 1002);
print("</pre><a href=/google-page-rank/#ex13>Back to example 13</a>");

Run this program

Back to PageRank Explained Example 13