Utilisateur:Evahatik/Modélisation des Réseaux (M1, 2018)/Activité F


Etape 1 modifier

pour chacun des autres participants q, calculer la similarité s(p, q):

  • la similarité s(p, q) est le nombre de voisins communs entre p et q - c'est-à-dire, le nombre de voisins de p qui sont aussi voisins de q.

Je commence par créer un tableau pour noter les participants et nombre de voisins en commun avec moi.

Puis, je suis l'astuce de rechercher dans le document du réseau du week-end les activités dont je suis voisin. Comme ça, je vois tout de suite qui sont les voisins communs d'une activité. Il suffit alors d'ajouter 1 à la similarité de ces voisins, et continuer la recherche pour trouver la prochaine activité lié à moi.

Pour finir, les participants n'apparaissant jamais dans ces recherches n'ont pas de voisins en commun avec moi. Ses similarités sont alors 0, et j'ai pas besoin de les lister dans mon tableau.

Voisins en commun avec Evahatik : s('Evahatik', q)
Nom du participant Voisins en commun
Leavigouroux 1
Alicecorreia 1
Juliettebenhadria 1

Etape 2 modifier

pour chaque activité a, calculer le score r(p, a):

  • pour expédier le travail, on va considérer uniquement les activités liées aux deux participants à plus haute similarité de p, tirant au sort en cas d'égalité.
  • le score r(p, a) est la somme, pour chacun des voisins q de a, de la similarité s(p, q) qu'on vient de calculer.
  • on ne veut pas recommander des activités déjà faites, donc pas besoin de calculer le score pour les activités déjà liées au participant p.

Après tirage au sort, je crée un tableau avec les activités de 'Leavigouroux'

Calcul du score r ('Evahatik',a)
Activité Voisins de l'activité Somme Score
<https://www.wikidata.org/wiki/Q11424> <https://fr.wikiversity.org/wiki/User:Leavigouroux>

<https://fr.wikiversity.org/wiki/Utilisateur:Alice.gabay>

<https://fr.wikiversity.org/wiki/Utilisateur:Juliamthrn>

<https://fr.wikiversity.org/wiki/Utilisateur:Juliettebenhadria>

<https://fr.wikiversity.org/wiki/Utilisateur:Levyemma>

<https://fr.wikiversity.org/wiki/Utilisateur:LénaWeiss>

<https://fr.wikiversity.org/wiki/Utilisateur:Marguerite Parmentier>

<https://fr.wikiversity.org/wiki/Utilisateur:Mehdijibril>

<https://fr.wikiversity.org/wiki/Utilisateur:Pmrslt>

<https://fr.wikiversity.org/wiki/Utilisateur:T.SerSo>

<https://fr.wikiversity.org/wiki/Utilisateur:Tom Flamand>

1+1 2
<https://www.wikidata.org/wiki/Q11707> <https://fr.wikiversity.org/wiki/User:Leavigouroux>

<https://fr.wikiversity.org/wiki/Utilisateur:Alicecorreia>

<https://fr.wikiversity.org/wiki/Utilisateur:Aminelahrichi901>

<https://fr.wikiversity.org/wiki/Utilisateur:Auriane78>

<https://fr.wikiversity.org/wiki/Utilisateur:Idegiorgio>

<https://fr.wikiversity.org/wiki/Utilisateur:Julie Roland-Billecart>

<https://fr.wikiversity.org/wiki/Utilisateur:LénaWeiss>

<https://fr.wikiversity.org/wiki/Utilisateur:Mehdijibril>

<https://fr.wikiversity.org/wiki/Utilisateur:T.SerSo>

<https://fr.wikiversity.org/wiki/Utilisateur:Tanguyngo>

1+1 2
<https://www.wikidata.org/wiki/Q167918> <https://fr.wikiversity.org/wiki/User:Leavigouroux> 1 1
<https://www.wikidata.org/wiki/Q23009870> <https://fr.wikiversity.org/wiki/User:Leavigouroux> 1 1
<https://www.wikidata.org/wiki/Q260899> <https://fr.wikiversity.org/wiki/User:Leavigouroux> 1 1
<https://www.wikidata.org/wiki/Q3273503> <https://fr.wikiversity.org/wiki/User:Leavigouroux> 1 1
<https://www.wikidata.org/wiki/Q753877> <https://fr.wikiversity.org/wiki/User:Leavigouroux>

<https://fr.wikiversity.org/wiki/Utilisateur:Alicecorreia>

<https://fr.wikiversity.org/wiki/Utilisateur:Evahatik>

<https://fr.wikiversity.org/wiki/Utilisateur:Juliettebenhadria>

Déjà voisin -1
<https://www.wikidata.org/wiki/Q7560> <https://fr.wikiversity.org/wiki/User:Leavigouroux>

<https://fr.wikiversity.org/wiki/Utilisateur:LénaWeiss>

<https://fr.wikiversity.org/wiki/Utilisateur:Manel411195>

<https://fr.wikiversity.org/wiki/Utilisateur:Mehdijibril>

1 1

Etape 3 modifier

choisir l'activité à recommander:

  1. exclure les activités déjà liées au participant p.
  2. trouver les activités avec le plus haut score r(p, a).
    • si il n'y a qu'une seule activité avec le plus haut score:
      • recommander cette activité.
    • s'il y a plusieurs activités avec le plus haut score:
      • parmi ces activités à plus haut score, trouver celles avec le plus haut nombre de voisins.
        • si il n'y a qu'une seule activité trouvée:
          • recommander cette activité.
        • s'il y a plusieurs activités trouvées:
          • recommander une parmi elles, au hasard.

L'activité qui m'est proposé par le système de recommandation est alors

<https://www.wikidata.org/wiki/Q11707>