Reti Complesse
seconda lezione
Programma
I.
Alcuni Esempi di reti complesse
II.
Concetti base di teoria dei grafi e delle reti
III.
Modelli
IV.
La rete come insieme di comunità
Bibliografia
• Evolution of networks
S.N. Dorogovtsev, J.F.F. Mendes, Adv. Phys. 51, 1079 (2002),
cond-mat/0106144
• Statistical mechanics of complex networks
Reka Albert, Albert-Laszlo Barabasi
Reviews of Modern Physics 74, 47 (2002), cond-mat/0106096
• The structure and function of complex networks
M. E. J. Newman, SIAM Review 45, 167-256 (2003),
cond-mat/0303516
• Complex networks: structure and dynamics
S. Boccaletti, V. Latora, Y. Moreno, M. Chavez, D.-U. Hwang
Physics Reports 424, 175-308 (2006)
Definizione di Network
Network=insieme di vertici (nodi) uniti da
legami (links)
Rappresentazione molto astratta
molto generale
Utile per descrivere
sistemi molto diversi
Esempi
Nodi
Links
Reti sociali
Individui
Relazioni sociali
Internet
Routers
AS
Webpages
Cavi + coll. wireless
Accordi commerciali
Hyperlinks
Proteine
Reazioni chimiche
WWW
Rete di interazione
tra proteine
Argomento interdisciplinare
Reti complesse sono importanti per:
-teoria dei grafi
-sociologia
-scienza delle comunicazioni
-biologia
-fisica
-informatica
Piano della lezione
1) Breve introduzione ai concetti base di
teoria dei grafi
2) Approccio statistico: Ensemble di grafi,
distribuzioni di probabilità e correlazioni
3) Reti pesate.
Obiettivo
Definire una serie di osservabili che
permettano di caratterizzare un sistema
complesso e che forniscano indicazioni per
spiegare i meccanismi microscopici che
hanno portato alla formazione del sistema
1) Introduzione alla teoria dei grafi
-
Definizioni di base
Matrice di adiacenza
Densità
Cammini e connettività
Alberi
Centralità
Clustering
Teoria dei grafi
Grafo G=(V,E)
• V=insieme di vertici i=1,…,N
• E=insieme di links (i,j)
Link ordinario:
Link diretto :
i
j Bidirezionale
comunicazione/
interazione
i
j
Teoria dei grafi
Numero massimo di links
• Non diretti: N(N-1)/2
• Diretti: N(N-1)
Grafo completo:
(interazione “tutti con tutti”)
Matrice di adiacenza
N nodi i=1,…,N
1 if (i,j)  E
0 if (i,j)  E
aij=
0
1
2
3
0
0
1
1
1
1
1
0
1
1
2
1
1
0
1
3
1
1
1
0
0
1
2
3
Matrice di adiacenza
N nodi i=1,…,N
1 if (i,j)  E
0 if (i,j)  E
aij=
0
1
2
3
0
0
1
0
0
1
1
0
1
1
2
0
1
0
1
3
0
1
1
0
Simmetrica se i link non
sono diretti.
0
1
2
3
Matrice di adiacenza
N nodi i=1,…,N
1 if (i,j)  E
0 if (i,j)  E
aij=
0
1
2
3
0
0
0
0
0
1
1
0
1
1
2
0
0
0
1
3
1
0
0
0
Non simmetrica
Se i links sono diretti
0
1
2
3
Densità di un grafo
Densità di un grafo: D=|E|/(N(N-1)/2)
Numero dei links
D=
Massimo num. di links possibile
Matrice di adiacenza
con pochi 1 e molti 0
Rappresentazione: lista dei vicini di ogni nodo
Grafo “sparso”: D <<1
l(i, V(i))
V(i)= vicini di i
Cammini
G=(V,E)
Cammino di lunghezza n = lista ordinata di
• n+1 vertici i0,i1,…,in 
V
• n links (i0,i1), (i1,i2)…,(in-1,in)  E
i3

i4
i0
i1
 i2
i5
Ciclo/loop = cammino chiuso (i0=in)
Alberi
Un albero è un grafo senza cicli
• N nodi, N-1 links
Cammini e connettività
G=(V,E) è connesso se e solo se esiste un cammino
che connette ogni coppia di nodi di G .
È connesso
• non è connesso
• è formato da due componenti
Cammini e connettività
G=(V,E)=> distribuzione delle componenti connesse
Componente gigante= componente la cui
dimensione cresce in modo proporzionale
al numero di vertici N
Esistenza di una
componente gigante
Una frazione
macroscopica dei nodi
del grafo è connessa
Cammino minimo (shortest path)
Cammino minimo tra i e j: numero minimo di links
necessari a congiungere i e j
distanza l(i,j)= cammino
j
minimo tra i and j
i
Diametro di un grafo= max(l(i,j))
Cammino minimo medio = ij l(i,j)/(N(N-1)/2)
Grafo completo: l(i,j)=1 per tutte le coppie i,j .
“Piccolo mondo”(Small-world): “piccolo” diametro
Centralità
Come quantificare l’importanza di un nodo?
• Grado (degree)=numero di vicini =j aij
ki=5
i
(grafi diretti: kin, kout)
“Betweenness centrality”
Per ogni coppia di nodi (l,m) , definisco:
slm numero di cammini minimi tra l e m
silm num. di cammini minimi che passano per i
bi è la somma silm / slm su tutte le coppie (l,m)
Importante: è una quantità basata sui cammini
i
j
bi è grande
bj è piccola
NB: quantità simile: “load” li= silm
NB: generalizzazione: “link betweenness centrality”
“Clustering
”Coefficiente di clustering di un nodo
k
3
C(i) =
i
2
# di links tra 1,2,…n vicini
k(k-1)/2
1
Clustering: c’è un’alta probabilità che i miei amici si conoscano!
(esempio tipico: social networks)
Clustering
Coefficiente di clustering medio di un grafo
C=i C(i)/N
2) Approccio statistico
-
Distribuzione di probabilità dei gradi
Correlazioni a più punti
Rappresentazione spettrale
Assortatività e dissortatività
Distribuzione dei gradi
•Lista dei gradi k1,k2,…,kN
Non molto utile!
•Istogramma:
Nk= numero dei nodi di grado k
•Distribuzione:
P(k)=Nk/N=probabilità che un nodo scelto a
caso abbia grado k
•Distribuzione cumulativa:
P>(k)=probabilità che un nodo scelto
a caso abbia grado almeno k
Distribuzione dei gradi
P(k)=Nk/N= probabilità che un nodo scelto a caso
abbia grado k
Media=< k > = i ki/N = k k P(k)=2|E|/N
Grafo “sparso”: < k > << N
Fluttuazioni: < k2 > - < k > 2
< k2 > = i k2i/N = k k2 P(k)
< kn > = k kn P(k)
Correlazioni a più punti dei gradi
P(k): non è sufficiente a descrive un network
Reti “assortative”:
Nodi di grado alto
preferiscono connettersi con
altri nodi di grado alto.
Ex: social networks
Reti “dissortative”:
Nodi di grado alto
preferiscono connettersi a nodi
di grado basso.
Ex: technological networks
Correlazioni a più punti dei gradi
Misura della correlazione:
P(k’,k’’,…k(n)|k): probabilità condizionale che un nodo di
grado k sia connesso a nodi di grado k’, k’’,…
Caso più semplice:
P(k’|k): probabilità condizionale che un nodo di grado k
sia connesso ad un nodo di grado k’
Correlazioni a più punti dei gradi
misura “pratica” di correlazione :
Grado medio dei primi vicini
k=4
k=4
i
k=7
k=3
ki=4
knn,i=(3+4+4+7)/4=4.5
Grado medio dei primi vicini
“Spettro di correlazione”:
Costruito mettendo assieme
nodi con lo stesso grado
Class di grado k
Esempio: rete casuale e scorrelata
P(k’|k) indipendente da k
(ricorda: P(k’|k) = prob. che un link di grado k
punti ad un nodo di grado k’)
numero di link uscenti da un nodo di grado k’
numero di link uscenti da un nodo qualsiasi
Punc(k’|k)=k’P(k’)/< k >
proporzionale
a k’ stesso
Assortatività
• Comportamento Assortativo :
knn(k) è una funzione crescente di k
Esempio: social networks
• Comportamento Dissortativo:
knn(k) è una funzione decresente di k
Esempio: internet (struttura gerarchica)
3) Reti pesate
1) Definizioni ed esempi
2) Coefficiente di clustering pesato
3) Assortatività pesata
Reti pesate
Nelle reti reali i links:
• Portano traffico (reti di trasporti, Internet…)
• Hanno intensità diverse (social networks…)
Descrizione generale: pesi
i wij
j
aij: 0 or 1
Wij: variabile continua
Pesi: esempi
- Collaborazioni scientifiche: numero di articoli in
comune
Internet, emails: numero di emails scambiati
●
Aereoporti: numero di passeggeri
●
Reti metaboliche: flussi
●
Reti economiche: numero di azioni possedute
●
…
●
In generale si pone: wii=0
Ed il peso è simmetrico: wij=wji
Reti Pesate
I pesi stanno sui link (weigths)
Forza (Strength) di un nodo:
si = j  V(i) wij
=>Generalizza in modo naturale la nozione di grado alle reti pesate

=>Esempio: quantifica il traffico totale che passa per un nodo.
Coefficiente di clustering
pesato
i
i
wij=1
wij=5
si=16
ciw=0.625 > ci
ki=4
ci=0.5
si=8
ciw=0.25 < ci
Coefficiente di clustering
pesato
k
(wjk)
wik
i
wij
j
Coefficiente di clustering medio
C=i C(i)/N
Cw=i Cw(i)/N
Se i pesi sono random: C = Cw
C < Cw : piu pesi sui grafi completi (cliques)
C > Cw : meno pesi sui grafi completi (cliques)
Rappresentazione spettrale del Clustering:
Assortatività pesata
5
5
1
5
i
5
ki=5; knn,i=1.8
Assortatività pesata
1
1
5
1
i
1
ki=5; knn,i=1.8
Assortatività pesata
5
5
1
5
i
5
ki=5; si=21; knn,i=1.8 ; knn,iw=1.2:
knn,i > knn,iw
Assortatività pesata
1
1
5
1
i
1
ki=5; si=9; knn,i=1.8 ; knn,iw=3.2: knn,i
< knn,iw
“Participation ratio”
1/ki se tutti i pesi sono uguali
vicino a 1 se alcuni pesi dominano
Scarica

Seconda_lezione - INFN