I. CALCUL DE POPULARITÉ À LA MAIN
Thème Web : PageRank et le surfeur aléatoire
Partons d’un mini Web de six pages liées entre elles comme ceci :
Page 1
Lien vers page 2 Lien vers page 4
Page 2
Lien vers page 3 Lien vers page 5
Page 3
Lien vers page 4
Page 4
Lien vers page 5
Page 5
Lien vers page 1 Lien vers page 2
Page 6
Lien vers page 1
Comment peut-on mesurer la popularité de chaque page ?
I Calcul de popularité à la main
1. Comment peut-on schématiser ce mini Web ?
2. Selon vous, quelle page serait la plus populaire ? Pourquoi ? . . . . . . . . . . . . . . . .
3. Par groupe de deux, utiliser un dé pour simuler un surfeur aléatoire qui choisira une première page au
hasard puis suivra au hasard les liens proposés sur chaque page. Noter chaque page parcourue.
. . . . . . . . 4. Que peut-on faire de tous vos résultats ? . . . . . . . . 5. Quel problème se pose pour la page 6 ? Comment y remédier ? . . . . . . . .
Web : TP3
II. CALCUL DE POPULARITÉ AVEC PYTHON
6. Reprendre la question 3 en laçant un dé avant chaque choix de lien. Si ce dé fait 6, vous choisirez alors
une des six pages au hasard en relançant le dé sinon, vous choisirez au hasard un des lien proposé sur la page actuelle en relançant le dé.
. . . . . . . .
II Calcul de popularité avec Python
1. Lire le code ci-dessous et expliquer ce qu’il fait :
import␣random
def␣calcul_PR_cas(n):
␣␣␣␣Res␣=␣[]
␣␣␣␣page␣=␣random.randint(1,6)
␣␣␣␣Res.append(page)
␣␣␣␣for␣i␣in␣range(n):
␣␣␣␣␣␣␣␣if␣page␣==␣1␣:
␣␣␣␣␣␣␣␣␣␣␣␣page␣=␣random.choice([2,4])
␣␣␣␣␣␣␣␣␣␣␣␣Res.append(page)
␣␣␣␣␣␣␣␣elif␣page␣==␣2:
␣␣␣␣␣␣␣␣␣␣␣␣page␣=␣random.choice([3,5])
␣␣␣␣␣␣␣␣␣␣␣␣Res.append(page)
␣␣␣␣␣␣␣␣elif␣page␣==␣3:
␣␣␣␣␣␣␣␣␣␣␣␣page␣=␣4
␣␣␣␣␣␣␣␣␣␣␣␣Res.append(page)
␣␣␣␣␣␣␣␣elif␣page␣==␣4:
␣␣␣␣␣␣␣␣␣␣␣␣page␣=␣5
␣␣␣␣␣␣␣␣␣␣␣␣Res.append(page)
␣␣␣␣␣␣␣␣elif␣page␣==␣5:
␣␣␣␣␣␣␣␣␣␣␣␣page␣=␣random.choice([1,2])
␣␣␣␣␣␣␣␣␣␣␣␣Res.append(page)
␣␣␣␣␣␣␣␣elif␣page␣==␣6:
␣␣␣␣␣␣␣␣␣␣␣␣page␣=␣1
␣␣␣␣␣␣␣␣␣␣␣␣Res.append(page)
␣␣␣␣return␣Res
Visites␣=␣calcul_PR_cas(1000)) print(Visites)
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2. Récupérer ce code surtableauxmaths.fr/spippuis exécutez-le surPyzo.
3. Calculer les fréquences d’apparition de chaque page après 1000 clics.
(Visites.count(5)permet de compter le nombre de 5 dans la liste Visites)
. . . . . . . . . . . . . . . . . . . . . . . .
Web : TP3