Ga naar hoofdinhoud

Zelf bouwen — de random surfer

Leerdoel: je bouwt de random surfer na, die eindeloos doorklikt, en ziet dat hij op dezelfde ranks uitkomt als de formule.

Het idee​

Tot nu toe rekende je PageRank uit met een formule. Maar het idee begon met een surfer die willekeurig klikt, en die kun je nabootsen:

  1. Begin op een willekeurige pagina.
  2. Tel de pagina waar je bent, en ga verder. Met kans d volg je een willekeurige uitgaande link. Met kans 1 − d, of als de pagina geen links heeft, spring je naar een willekeurige pagina.
  3. Herhaal stap 2 heel vaak.

De PageRank van een pagina is het deel van de tijd dat je er was. Met genoeg klikken kom je dicht bij de ranks van de formule. De test legt jouw simulatie naast de pagerank van de vorige pagina's; die staat al in de code.

Bouw en test​

Python
Code-omgeving wordt voorbereid…
Antwoord
if links and random.random() < d:
huidig = random.choice(links)
else:
huidig = random.choice(paginas)

De formule rekent uit waar de random surfer op de lange duur terechtkomt; de simulatie laat hem lopen en telt waar hij komt.

Door naar fouten →.