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 12
Programm des Tages: Generierung von Graphen
Übungsaufgaben 9 und 10
Realisierbarkeit von Gradfolgen
R-MAT-Graphen
2
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Wiederholung
Zufallsgraphen G (n, m ) und G (n, p ), eher unrealistisch
Phasenübergang bei G (n, p )
Gradfolgen: Algorithmus von Havel und Hakimi
3
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Inhalt
Modelle für (Zufalls)Graphen
Generierung anhand von Gradfolgen
4
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für (Zufalls)Graphen
Generierung anhand von Gradfolgen
Gradfolge
Definition (Gradfolge)
Gegeben sei ein ungerichteter Multigraph G = (V , E ) mit Knotenmenge
V = {v1 , . . . , vn }.
Die Folge
D (G ) = (deg(v1 ), . . . , deg(vn ))
des ungerichteten Graphen G heißt dessen Gradfolge.
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.
5
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für (Zufalls)Graphen
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
6
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für (Zufalls)Graphen
Generierung anhand von Gradfolgen
Partition einer ganzen Zahl
Definition (Partition)
Eine Partition einer ganzen Zahl n ist eine Folge p = (p1 , p2 , . . . , pk ) mit
p1 ≥ p2 ≥ · · · ≥ pk > 0 und
p1 + p2 + · · · + pk = n
(1)
(2)
Beispiel
(3, 2, 2, 2, 1) und
(3, 3, 3, 1)
sind Partitionen von 10.
7
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für (Zufalls)Graphen
Generierung anhand von Gradfolgen
Satz von Erdös und Gallai
Theorem (Erdös-Gallai)
Eine Partition d1 ≥ · · · ≥ dn > 0 einer natürlichen Zahl ist genau dann
die Gradfolge eines schlichten ungerichteten Graphen, wenn
n
∑ di ≡ 0
mod 2
(3)
i =1
und für alle j ∈ [n] gilt:
j
n
i =1
i =j +1
∑ di ≤ j ( j − 1 ) + ∑
8
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
min{di , j }
(4)
Modelle für (Zufalls)Graphen
Generierung anhand von Gradfolgen
Satz von Erdös und Gallai
Beweisskizze
“Partition ist Gradfolge ⇒ D erfüllt Ungleichungen”
Betrachte Teilmengen der Knoten U , U
Schätze Zahl der Kanten zwischen U und U ab
Weiter an der Tafel!
“D erfüllt Ungleichungen ⇒ Partition ist Gradfolge”
Erweitere Teilrealisierung sukzessive
Betrachte kritischen Index
Fallunterscheidung nach Beschaffenheit der Nachbarschaft
Definition (Teilrealisierung)
Eine Teilrealisierung einer nichtaufsteigenden Folge (d1 , . . . , dn )
sei ein Graph mit Knotenmenge {v1 , . . . , vn } derart,
dass deg(vi ) ≤ di für 1 ≤ i ≤ n.
9
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für (Zufalls)Graphen
Generierung anhand von Gradfolgen
Satz von Erdös und Gallai
Beweis: Rückrichtung (konstruktiver Beweis an Tafel)
Sei eine Folge D = (d1 , . . . , dn ) mit gerader Summe gegeben
D erfülle auch zweite Ungleichung
Idee: Wir konstruieren eine Realisierung durch sukzessive
Teilrealisierungen
Initial: TR mit n Knoten und keinen Kanten
Definition (Kritischer Index)
In einer Teilrealisierung ist der kritische Index r der größte Index derart,
dass deg(vi ) = di für alle 1 ≤ i < r .
Sei S = {vr +1 , . . . , vn }.
Invariante: S ist unabhängige Menge!
10
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Modelle für (Zufalls)Graphen
Generierung anhand von Gradfolgen
Herunterladen