Class PageRank<U>

java.lang.Object
es.uam.eps.ir.relison.sna.metrics.vertex.PageRank<U>
Type Parameters:
U - type of the nodes.
All Implemented Interfaces:
VertexMetric<U>

public class PageRank<U>
extends java.lang.Object
implements VertexMetric<U>
Computes the PageRank values of the different nodes in the graph.

Reference: S. Brin, L. Page. The anatomy of a large-scale hypertextual web search engine. 7th International Conference on World Wide Web (WWW 1998), Brisbane, Australia, pp. 107-117 (1998)

  • Field Summary

    Fields 
    Modifier and Type Field Description
    private int MAXITER
    Maximum number of iterations
    private double r
    Teleport parameter.
    private double THRESHOLD
    Threshold
    private U u
    Original node (if PageRank is personalized).
  • Constructor Summary

    Constructors 
    Constructor Description
    PageRank​(double r)
    Constructor (for not personalized PageRank).
    PageRank​(double r, U u)
    Constructor (for personalized PageRank).
  • Method Summary

    Modifier and Type Method Description
    double averageValue​(Graph<U> graph)
    Computes the average value of the metric in the graph.
    java.util.Map<U,​java.lang.Double> compute​(Graph<U> graph)
    Computes the value of the metric for all the users in the graph.
    java.util.Map<U,​java.lang.Double> compute​(Graph<U> graph, java.util.stream.Stream<U> users)
    Computes the value of the metric for a subset of the users in the graph.
    double compute​(Graph<U> graph, U user)
    Computes the value of the metric for a single user.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface es.uam.eps.ir.relison.sna.metrics.VertexMetric

    averageValue
  • Field Details

  • Constructor Details

    • PageRank

      public PageRank​(double r)
      Constructor (for not personalized PageRank).
      Parameters:
      r - the teleport parameter.
    • PageRank

      public PageRank​(double r, U u)
      Constructor (for personalized PageRank).
      Parameters:
      r - the teleport parameter.
      u - the original user.
  • Method Details

    • compute

      public double compute​(Graph<U> graph, U user)
      Description copied from interface: VertexMetric
      Computes the value of the metric for a single user.
      Specified by:
      compute in interface VertexMetric<U>
      Parameters:
      graph - The graph.
      user - The user to compute.
      Returns:
      the value of the metric.
    • compute

      public java.util.Map<U,​java.lang.Double> compute​(Graph<U> graph)
      Description copied from interface: VertexMetric
      Computes the value of the metric for all the users in the graph.
      Specified by:
      compute in interface VertexMetric<U>
      Parameters:
      graph - The graph.
      Returns:
      A map relating the users with the values of the metric.
    • compute

      public java.util.Map<U,​java.lang.Double> compute​(Graph<U> graph, java.util.stream.Stream<U> users)
      Description copied from interface: VertexMetric
      Computes the value of the metric for a subset of the users in the graph.
      Specified by:
      compute in interface VertexMetric<U>
      Parameters:
      graph - the graph.
      users - the stream of users.
      Returns:
      a map relating users with the values of the metric. Nodes not in the graph will not be included in the map.
    • averageValue

      public double averageValue​(Graph<U> graph)
      Description copied from interface: VertexMetric
      Computes the average value of the metric in the graph.
      Specified by:
      averageValue in interface VertexMetric<U>
      Parameters:
      graph - The graph.
      Returns:
      the average value of the metric.