Suchmaschinen: Page-Rank-Algorithmus
Vereinfachtes Zufallssurfer Modell
Als Modell für ein Netz aus Webseiten betrachten den folgenden gerichteten gerichteten Graphen aus Internetseiten. Die so genannten Knoten {A,B,C,D} des Graphen repräsentieren die einzelnen Webseiten. Die Verlinkungen zwischen den Webseiten sind als so genannte gerichtete Kanten dargestellt. Die Pfeilrichtung gibt jeweils die Richtung der Links an.
Intuitiv könnte man ein Maß für die Wichtigkeit der einzelnen Webseiten dadurch bestimmen, indem man zählt, wie viele eingehende Links auf diese Webseite verweisen. Je mehr eingehende Links eine Webseite hat, umso mehr Bedeutung wird ihr von den auf sie verweisenden Webseiten beigemesssen. Hat eine Webseite umgekehrt selbst wenig ausgehende Links, so könnte dies ein Indiz dafür sein, dass diese Webseite besonders wichtig sein könnte.
Aufgabe 1: (Schätzen des Pageranks)
Versuche, die Webseiten aus der obigen Abbildung intuitiv nach deren Wichtigkeit für das gesamte Netzwerk zu ordnen.Simulation des Surfverhaltens
Wir wollen nun das Surf-Verhalten der Nutzer des oben angegebenen Netzes aus vier Webseiten simulieren. Dazu nehmen wir an, dass sich zu Beginn alle Nutzer des Gesamtsystem gleichmäßig auf alle Webseiten verteilen. Mit den Kleinbuchstaben {a,b,c,d} bezeichnen wir den Anteil an Nutzern, welche die jeweils zugehörigen Webseiten {A,B,C,D} aufgerufen haben. Führen wir noch einen Index für den Zeitschritt einer dynamischen Simulation ein, so erhalten wir also zu Beginn der Simulation:b0 = 0,25
c0 = 0,25
d0 = 0,25
Nun wechseln alle Nutzer des Systems in jedem Zeitschritt die Webseiten, indem sie sich gleichmäßig auf alle ausgehenden Links verteilen. Die im Diagramm angegebenen Kantengewichte entsprechen jeweils dem Anteil an Nutzern eines Knotens, welche dem jeweiligen Link auf eine nächste Webseite folgen. In unserem Modell bleibt also kein Nutzer auf seiner bisherigen Webseite (mit Ausnahme der Nutzer auf Knoten D) und kein Nutzer verlässt das System.
Nun betrachten wir die Wechsel zwischen den verschiedenen Webseiten in jedem Zeitschritt etwas genauer. Mit dem obigen Modell erhalten wir das folgende iterative Schema für die jeweiligen Zeitschritte i: In Matrix-Vektor-Schreibweise können wir dieses Schema ausdrücken als Nun führen wir noch die sogenannte Übergangsmatrix A ein: Damit können wir das Iterationsschema in Kurzform schreiben als: Durchführen einiger Iterationsschritte liefert dann:
i=0 | i=1 | i=2 | ... | i=20 | |
---|---|---|---|---|---|
ai | 0,25 | 0,125 | 0,1875 | ... | 0,001 |
bi | 0,25 | 0,125 | 0,0625 | ... | 0,000 |
ci | 0,25 | 0,375 | 0,1875 | ... | 0,002 |
di | 0,25 | 0,375 | 0,5625 | ... | 0,997 |