« small world » modélisation i - modèle de watts et strogatz ii - simulation python iii -...
TRANSCRIPT
« Small World » Modélisation
I - Modèle de Watts et Strogatz
II - Simulation Python
III - Approche de Newman
• Chaque personne connaît ses voisins => donne un monde ordonné.
• Or il existe des relations que l’on peut considérer comme aléatoires. -> on introduit un paramètre p (symbolisant le pourcentage de relations
aléatoires) compris entre 0 et 1
• Conclusion: on considère un monde de N personnes, connaissant de façon ordonnée Z voisins et avec un part d’aléatoire p.
• « Modèle simple => on montrera ses limites. »
I – Principe du modèle de Watts et Strogatz
Graphe d’un monde ordonné
• personne
relation
Aboutir au modèle de Watts-Strogatz
Observation1 = nous connaissons nos voisins
monde <- N personnesconnaissant chacune Z voisins
modèle assezréaliste
Observation2 = il existe une part d'aléatoire dans les relations
monde <- monde + p*N*Z relations aléatoires
finV
F
Courbe de Watts-Strogatz
Graphe du Chemin minimum moyen et de la Densité Locale en fonction de l'aléatoire
II - Simulation Python
• Avantages du python : - souplesse (multiples librairies + syntaxe) - puissance de calcul
• On stocke les gens dans des dictionnaires (peut être assimilé à un tableau sous Maple):
dico[clé] = liste des voisins de 'clé'
• Ex1 -> monde de 30 personnes, 4 voisins• Ex2 -> monde de 30 personnes, 4 voisins, 10% d'aléatoires
• On définit 2 fonctions : C (clustering coefficient) = densité localeL (average path length) = chemin minimum moyen
1) L = Average Path Length
• Représente le Chemin minimum moyen d'un graphe
• Calcul de L:
– On calcul les chemins minimums entre chaque personne
– L <- ( moyenne des ces chemins minimums )
• Exemples: syntaxe (nb de personnes, nb de voisins, aléatoire)
– Ex1: monde (20, 2, 0)
– Ex2: monde (20, 2, 0.2)
– Ex3: monde (200, 4, 0)
– Ex4: monde (200, 4, 0.1)
2) C = Clustering Coefficient
• C = probabilité que 2 voisins d’une personne du réseau (choisie au hasard) se connaissent -> C correspond à une densité locale du graphe.
• Calcul de C, pour chaque personne du graphe:
– On stocke ses V voisins dans une liste
– 2 voisins se connaissent => num_bonds = num_bonds + 1
– On divise par le nombre maximal de connexions entre les voisins (ce qui correspond à la somme des termes de 1 à V-1 (V = nombre de voisins)
3) Courbe de Watts-Strogatz
• Modèle de Watts-Strogatz:
– Monde de 1000 personnes
– Chaque personne est liée à 10 voisins
• On trace C(p)/C(0) et L(p)/L(0)
C(p)/C(0)
L(p)/L(0)
4) Idée Personnelle• TrouverDegre(L, Z, degre voulu, precision) -> retourne un intervalle J
= algorithme qui cherche par dichotomie un intervalle J de p certifiant que le graphe à (L personnes, Z connaissances, p dans l’intervalle J) possède le degré « degre voulu » de séparation.
• Exemple pour le modèle Watts-Strogatz L=1000 ; Z=10
– On choisit: degre=6 et precision=0.001
III - Approche de Newman
• Un des problèmes dans l’étude de réseaux : la présence d’informations biaisées dans les bases de données -> études fondées sur des interviews ou des questionnaires où l’on demande aux personnes du réseau d’en identifier d’autres pour répertorier les relations.
• Réseaux qui permettent d’éviter ce problème = réseaux d’affiliation -> réseaux où les personnes sont reliées entre elles selon leur appartenance à un groupe, une société, …
• Ce genre d’approche permet de construire plus simplement des réseaux plus gros et plus précis.
1) Modélisation de Newman
• Newman modélise cette approche grâce à des graphes bipartites :
une partie du graphe représente les différents groupes inclus dans le réseau
la deuxième partie du graphe représente les personnes du réseau reliées au(x) groupe(s) au(x)quel(s) elles appartiennent.
• Possibilité de revenir à un graphe simple où l’on ne représente que les personnes et les relations qu’elles ont entre elles.
2) Exemple de graphe bipartite
1 2 3
A B C D E F G H
A
C
G
F
D
B
H E
personne
1 groupe
A
relation