Zufallsgraphen, Gradfolgen

Werbung
Algorithmische Methoden zur
Netzwerkanalyse
Juniorprof. Dr. Henning Meyerhenke
Institut für Theoretische Informatik
1
Institutund
für Theoretische
KIT –Henning
Universität desMeyerhenke,
Landes Baden-Württemberg
nationales
Forschungszentrum
in der Helmholtz-Gemeinschaft
Algorithmische
Methoden
zur Netzwerkanalyse
Informatik
www.kit.edu
Vorlesung 11
Programm des Tages: Generierung von Graphen
Modelle für Zufallsgraphen: Erdös-Rényi
Generierung anhand von Gradfolgen
2
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Inhalt
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Generierung anhand von Gradfolgen
3
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Zufallsgraphen
Einführung
Zufallsgraphen bzw. -netzwerke:
Einige Parameter fest
Andere Eigenschaften des Netzwerks sind zufällig
Zweck:
Erzeugung großer Graphen →
Test von Algorithmen,
Systemen
Mathematische Analyse
Vorhersage von Eigenschaften,
Entwicklungen
http://theory.ic.ac.uk/~time/networks/ERn200k4web.jpg
4
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
G (n, m ) und G (n, p )
Häufig als Erdös-Rényi-Zufallsgraphen bezeichnet
Zwei der gängigen Modelle (schlicht, ungerichtet, statisch):
G (n, m ): n Knoten, m Kanten zwischen Knotenpaaren zufällig
gezogen (unabhängig und gleichverteilt)
Andere Sichtweise: Man zieht einen Graphen zufällig und gleichverteilt aus
der Menge von Graphen mit n Knoten und m Kanten
G (n, p ): n Knoten, zwischen Knotenpaar existiert Kante mit Wkt. p
Meist leichter zu analysieren
http://epress.anu.edu.au/cs/chap5Newth- final- 5.jpg
5
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Grundlegendes
E[m ] = (n2) · p
Durchschnittsgrad: 2m/n = (n − 1)p
n
Jeder Graph G mit m Kanten tritt mit Wkt. P (G ) = pm (1 − p )(2)−m auf
Viele Eigenschaften eng um Mittelwert konzentriert
Gradverteilung:
Wkt. zu bestimmten k anderen Knoten verbunden zu sein und zu den
anderen n − 1 − k nicht: pk (1 − p )n−1−k
Die k anderen Knoten, zu denen eine Verbindung besteht, können auf
1
(n −
k ) Arten gewählt werden
⇒ Wkt., dass ein Knoten zu genau k anderen adjazent ist:
1 k
n −1−k
pk = ( n −
k )p (1 − p )
⇒ Binomialverteilung!
6
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Gradverteilung
Bei realen Netzwerken ist der Durchschnittsgrad c häufig konstant in n
Dann wird hier allerdings p = c/(n − 1) sehr klein bei großem n
Was bedeutet p → 0?
1 k
n−1−k poissonsch:
Bei n → ∞ wird die Gradverteilung (n−
k )p (1 − p )
c
ln((1 − p )n−1−k ) = (n − 1 − k ) ln(1 −
)
n−1
c
≈ −c
≈ −(n − 1 − k )
n−1
⇒ (1 − p )n−1−k = e−c für n → ∞
(n −1) !
(n −1)k
1
Außerdem bei n → ∞: (n−
k ) = (n−1−k )!k ! ≈
k!
k
k
k
k
c
⇒ pk ≈ (n−k 1! ) pk e−c = (n−k 1! ) n−
e −c = e −c · ck !
1
7
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Cluster-Koeffizient
Cluster-Koeffizient C: ...
Wkt., dass zwei Nachbarn eines Knotens auch selbst zueinander
benachbart sind
Da zwischen jedem Knotenpaar eine Kante mit
Wkt. p = c/(n − 1) ex.: E[C ] = c/(n − 1).
⇒ Großer Unterschied zu realen Netzwerken!
8
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Zusammenhangskomponenten
p = 0: n ZHKs der Größe 1
p = 1: 1 ZHK der Größe n
Qualitativer Unterschied: Konstant vs linear abhängig von n
Oft wichtig, dass man eine sehr große Komponente hat
Fundamentales Ergebnis zu G (n, p ): Phasenübergang des
Zusammenhangs
Theorem (Erdös-Rényi)
Die Funktion t (n) = ln n/n ist eine Grenzfunktion für den
Zusammenhang von G (n, p ) bei p = t (n).
9
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Beweisidee zur Grenzfunktion bei ZHK
Die Grenze gilt nicht nur für den Zusammenhang,
sondern auch für Existenz isolierter Knoten
Start durch Abschätzung der Wkt. für einen isolierten Knoten
Bei p = ln n/n strebt diese Wkt. gegen 1/n
Bei kleinerem p wird diese Wkt. kleiner, bei größerem p größer
Bei größerem p gibt es keine ZHK mit weniger als n/2 Knoten
Literaturhinweis
Matthew O. Jackson: Social and Economic Networks. Princeton
University Press, 2010. Kapitel 4.2.
10
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Beweis der Grenzfunktion bei ZHK
Beweis
Wir zeigen zunächst: Falls p/(ln n/n) → 0, dann geht die Wkt. für die
Existenz isolierter Knoten gegen 1.
Wkt., dass ein gegebener Knoten isoliert ist: (1 − p )n−1 ≈ (1 − p )n
für p → 0 (n → ∞ ohnehin)
Wegen p/n → 0: (1 − p )n ≈ e −pn , denn limn→∞ (1 − na )n = e −a
⇒ Wkt., dass ein gegebener Knoten isoliert ist, strebt gegen e−pn
⇒ Wkt. bei unserer Wahl von p am Phasenübergang:
11
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
1
n
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Fortsetzung Beweis (Anzahl isolierter Knoten)
Fortsetzung Beweis
Wissen nun: P[gegebener Knoten isoliert] → e −pn
Wir schreiben daher p := p (n) =
wobei f (n) → ∞ und f (n) < ln n.
Dann wird aus e −pn :
ln n−f (n)
,
n
e f (n )
n
⇒ Erwartete Anzahl isolierter Knoten ist ef (n) → ∞
12
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Fortsetzung Beweis
Fortsetzung Beweis (Existenz)
Dass die Zahl isolierter Knoten divergiert, beweist noch nicht, dass
P(es gibt einen isolierten Knoten) → 1
Chebyshev-Ungleichung (CU):
Sei X eine Zufallsvariable mit
Mittelwert µ und
Standardabweichung σ.
Dann gilt für jedes r > 0:
P(|X − µ| > r σ ) < 1/r 2
13
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
(1)
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Fortsetzung Beweis
Fortsetzung Beweis (Existenz)
CU: P(|X − µ| > r σ ) < 1/r 2
Sei X die Zahl der isolierten Knoten.
Wissen: E[X ] = n(1 − p )n−1 → ∞
Beh. gilt (wg. CU), wenn Varianz von X , E[X 2 ] − E[X ]2 ,
höchstens 2µ = 2E[X ] ist.
p
Insbesondere gilt dann: P(X < µ − r 2µ) < 1/r 2 .
14
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Fortsetzung Beweis
Fortsetzung Beweis
Erinnerung: X Zahl der isolierten Knoten
p
P(X < µ − r 2µ) < 1/r 2 impliziert wegen µ → ∞, dass die Wkt. für
ein beliebig großes X gegen 1 geht
Brauchen nun obere Schranke für die Varianz
E[X (X − 1)] ist erwartete Anzahl geordneter Paare isolierter Knoten
E[X (X − 1)] = n(n − 1)(1 − p )n−2 (1 − p )n−2 (1 − p ) =
n(n − 1)(1 − p )2n−3 , denn:
Beide Knoten eines Paares sind nicht zu den übrigen n − 2 Knoten
verbunden
Zwischen den Knoten des Paares verläuft auch keine Kante
15
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Fortsetzung Beweis
Erinnerung:
E [ X ] = n (1 − p )n −1 , p : = p (n ) =
ln n−f (n)
, f (n )
n
< ln n, (1 − p )n ≈ e−pn
E[X 2 ] − E[X ]2 = E[X 2 − X ] + E[X ] − E[X ]2
(2)
= n(n − 1)(1 − p )2n−3 + E[X ] − E[X ]2
= n(n − 1)(1 − p )
2
2n−3
≤ E[X ] + pn (1 − p )
2
(3)
+ E[X ] − n (1 − p )
2n−2
2n−3
(5)
= E[X ](1 + pn(1 − p )n−2 )
≤ E[X ](1 + (ln n − f (n))e
≤ 2E[X ].
(4)
− ln n+f (n)
(6)
(1 − p )
−2
)
(7)
(8)
Damit ist Teil 1 gezeigt:
Wenn p (n)/ lnnn → 0, dann hat G mit hoher Wkt. isolierte Knoten.
16
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Fortsetzung Beweis
Jetzt Teil 2: Wenn p (n)/ lnnn → ∞, dann hat G mit hoher Wkt. keine
isolierten Knoten (und nur eine große ZHK).
Fortsetzung.
Sei nun p (n) =
ln n+f (n)
,
n
wobei f (n) → ∞, aber f (n)/n → 0.
Ähnlich wie zuvor schließen wir: E[X ] → e −f (n) → 0
Wkt., dass X mindestens 1 ist, muss dann auch gegen 0 streben
Zeigen noch, dass Wkt. von Komponenten mit Größe 2 bis n/2 gegen
0 strebt
X k : Zufallsvariable, die Anzahl der ZHKs mit Größe k angibt
k
Es genügt zu zeigen, dass E[∑kn/2
=2 X ] → 0
17
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Fortsetzung Beweis
n/2
k =2
n/2
n
∑ k (1 − p)k (n−k ) (Sei nun n := dn3/4 e.)
k =2
n/2 n n
n
k (n −k )
(1 − p )
+ ∑
= ∑
( 1 − p ) k (n −k )
k
k
k =2
k =n +1
E[ ∑ X k ] ≤
n
≤
∑
k =2
n
≤
∑
en k
k
e −knp ek
2p
n/2
+
en k
k =n +1
ek (1−f (n)) k −k e2k
2 ln n/n
k =2
≤ 3e−f (n) + n−n
∑
k
n/2
+
∑
k =n +1
3/4 /5
e −knp/2
en k
k
e −knp/2
→0
(9)
(10)
(11)
(12)
(13)
Damit gilt: Alle Komponenten außer der großen verschwinden
18
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Übersicht
Tabelle: Einfluss von p bzw. np auf die erwartete Zahl und Größe der ZHK eines
Graphen aus G (n, p )
19
np < 1
fast nie ZHK, die größer als O (log n) ist
np = 1
fast immer eine ZHK, die größer als O (log n) ist
np → c > 1
fast immer eine eindeutige riesige ZHK, keine andere
ZHK enthält mehr als O (log n) Knoten mhW
np > (1 + ε) ln n
fast immer zusammenhängend (ε > 0)
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Eigenschaften von G (n, p )
Fazit
Gradverteilung ist binomial bzw. poissonsch
⇒ Deutliche Abweichung von den meisten realen Netzwerken
So gut wie keine Community-Struktur
⇒ Deutliche Abweichung von den meisten realen Netzwerken
Bei passendem p eine riesige ZHK
Mathematisch gut analysiert
⇒ Insgesamt (zu) unrealistisch!
20
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Inhalt
Modelle für Zufallsgraphen
G (n, m ) und G (n, p )
Generierung anhand von Gradfolgen
21
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
Generierung anhand von Gradfolgen
Gradfolge
Definition (Gradfolge)
Gegeben sei ein gerichteter oder ungerichteter Multigraph G = (V , E )
mit Knotenmenge V = {v1 , . . . , vn }.
Die Folge
D (G ) = (deg− (v1 ), deg+ (v1 ), . . . , deg− (vn ), deg+ (vn ))
des gerichteten bzw.
D (G ) = (deg(v1 ), . . . , deg(vn ))
des ungerichteten Graphen G heißt dessen Gradfolge.
22
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
Generierung anhand von Gradfolgen
Hintergrund
Motivation:
Welche Folgen von natürlichen Zahlen sind Gradfolgen bestimmter
Graphen(klassen)?
Wie generiere ich einen Graphen zu einer gegebenen Gradfolge?
Frage: Warum sind diese Aspekte interessant für uns?
23
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
Generierung anhand von Gradfolgen
Generierung anhand einer Gradfolge
Satz von Havel und Hakimi
Theorem (Havel 1955; Hakimi 1962)
Eine Folge d1 ≥ · · · ≥ dn ist genau dann Gradfolge eines schlichten
ungerichteten Graphen, wenn auch d2 − 1, . . . , dd1 +1 − 1, dd1 +2 , . . . , dn
Gradfolge eines solchen Graphen ist.
Lemma
Zu einer Folge D = (d1 , . . . , dn ) mit d1 ≥ · · · ≥ dn sei
GD die Menge aller schlichten ungerichteten Graphen
mit Knoten {v1 , . . . , vn }, in denen vi den Grad di hat.
Falls GD nicht leer ist, dann enthält GD einen Graphen mit
N (v1 ) = {v2 , . . . , vd1 +1 }.
24
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
Generierung anhand von Gradfolgen
Generierung anhand einer Gradfolge
Algorithmus von Havel und Hakimi
1: function H AVEL H AKIMI(D = d1 , . . . , dn ))
2:
. Eingabe: Realisierbare Gradfolge D . Ausgabe: Graph mit Gradfolge D
3:
V ← {v1 , . . . , vn }
4:
E←∅
5:
Li = (di , i )∀i ∈ [n]
6:
while G = (V , E ) erfüllt D nicht do
7:
Sortierte L absteigend gemäß der ersten Komponente
8:
Verbinde L1 .second in E mit den nächsten L1 .first Knoten in L
9:
Li .first ← Li .first − 1 ∀i ∈ {2, . . . , L1 .first + 1}
10:
Entferne L1 aus L
11:
end while
12:
return G = (V , E )
13: end function
Beispiel: Siehe Tafel!
25
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
Generierung anhand von Gradfolgen
Zwischenfazit Gradfolgen
Wenn wir wissen, dass eine Gradfolge realisierbar ist, können wir
dazu einen Graphen erstellen.
Bald:
Bedingungen für Existenz eines Graphen bei gegebener Gradfolge.
26
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für Zufallsgraphen
Generierung anhand von Gradfolgen
Herunterladen