Algorithmische Methoden zur Netzwerkanalyse Vorlesung 14, 08.02.2012 Henning Meyerhenke Institut für Theoretische Informatik – Paralleles Rechnen 1 KIT –Henning Universität desMeyerhenke: Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik www.kit.edu Paralleles Rechnen Inhalt Krankheitsausbreitung in Netzwerken Einführung Krankheits- und Netzwerkmodelle Zusammenfassung Vorlesungsinhalt 2 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Einleitung und Motivation Modellierung von Krankheitsausbrüchen wichtiges Anwendungfeld Reale Epidemien SARS EHEC AIDS ... Computerschädlinge Viren Würmer ... Image sources: 1. http://tarakilishihub.com/348/how-to-determine-if-you-have-a-computer-virus-infection 2. http://hdtaskforce.com/how-to-prevent-a-virus-from-damaging-your-computer.html 3 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Einleitung und Motivation Modellierung von Krankheitsausbrüchen wichtiges Anwendungfeld Reale Epidemien SARS EHEC AIDS ... Computerschädlinge Viren Würmer ... Image sources: 1. http://tarakilishihub.com/348/how-to-determine-if-you-have-a-computer-virus-infection 2. http://hdtaskforce.com/how-to-prevent-a-virus-from-damaging-your-computer.html 3 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Verwandte Prozesse Randomisiertes Broadcasting Aktualisierung verteilter Datenbanken Ausbreitung von Informationen, z. B. Ideen oder Tratsch 4 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Verwandte Prozesse Randomisiertes Broadcasting Aktualisierung verteilter Datenbanken Ausbreitung von Informationen, z. B. Ideen oder Tratsch Alles Prozesse, die in Netzwerken passieren 4 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Ein erster Modellierungsansatz Verzweigungsprozesse Simples Modell Verzweigungsprozess: (Erste Welle) Eine infizierte Person erreicht eine Population und gibt die Krankheit an jede kontaktierte Person mit Wkt. p weiter. Annahme: k Personen werden kontaktiert (Zweite Welle) Jede der k Personen trifft nun wiederum k Personen. Man erhält also eine zweite Welle von k 2 Personen. Weitergabe bei Infektion mit Wkt. p Weitere Wellen analog 5 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Ein erster Modellierungsansatz Verzweigungsprozesse Simples Modell Verzweigungsprozess: (Erste Welle) Eine infizierte Person erreicht eine Population und gibt die Krankheit an jede kontaktierte Person mit Wkt. p weiter. Annahme: k Personen werden kontaktiert (Zweite Welle) Jede der k Personen trifft nun wiederum k Personen. Man erhält also eine zweite Welle von k 2 Personen. Weitergabe bei Infektion mit Wkt. p Weitere Wellen analog Erzeugt Baum (Annahme: Kontakte sind jeweils disjunkt) Der Ausbreitungsgrad hängt von k · p ab 5 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Verzweigungsprozess [D. Easley, J. Kleinberg: Epidemics. Ch. 21 of Networks, Crowds, and Markets...] 6 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Einfluss der Reproduktionszahl Wird in einer Welle niemand neu infiziert, dann stirbt der Prozess aus ⇒ Entweder Abbruch oder unendliche Fortsetzung 7 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Einfluss der Reproduktionszahl Wird in einer Welle niemand neu infiziert, dann stirbt der Prozess aus ⇒ Entweder Abbruch oder unendliche Fortsetzung Abhängig von Reproduktionszahl R0 : Erwartete Zahl neuer Fälle, die durch eine einzelne Person hervorgerufen werden In unserem Modell: R0 = pk Theorem Falls R0 < 1, dann stirbt die Krankheit mit Wkt. 1 nach endlich vielen Schritten. Falls R0 > 1, dann bleibt die Krankheit mit Wkt. größer als 0 erhalten und infiziert in jeder Welle mindestens eine Person. 7 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Inhalt Krankheitsausbreitung in Netzwerken Einführung Krankheits- und Netzwerkmodelle Zusammenfassung Vorlesungsinhalt 8 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Modellierung Verschiedene Krankheitsmodelle: SI: susceptible (anfällig) und infected (infiziert) SIR: S, I und recovered (geheilt) SIS: S, I und wieder S SIRS: S, I, R und wieder S 9 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Modellierung Verschiedene Krankheitsmodelle: SI: susceptible (anfällig) und infected (infiziert) SIR: S, I und recovered (geheilt) SIS: S, I und wieder S SIRS: S, I, R und wieder S Übertragungsrate β (Wkt. der Übertragung bei Kontakt in einem Zeitschritt) 9 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Modellierung Verschiedene Krankheitsmodelle: SI: susceptible (anfällig) und infected (infiziert) SIR: S, I und recovered (geheilt) SIS: S, I und wieder S SIRS: S, I, R und wieder S Übertragungsrate β (Wkt. der Übertragung bei Kontakt in einem Zeitschritt) Kommt auf die Krankheit und weitere Umstände an, welches Modell besser passt 9 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Grenzbetrachtungen SI n Knoten O(1) Knoten zum Zeitpunkt t = 0 infiziert, der Rest anfällig Mit Wkt. β pro Zeitschritt geben infizierte Knoten die Krankheit an ihre anfälligen Nachbarn weiter 10 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Grenzbetrachtungen SI n Knoten O(1) Knoten zum Zeitpunkt t = 0 infiziert, der Rest anfällig Mit Wkt. β pro Zeitschritt geben infizierte Knoten die Krankheit an ihre anfälligen Nachbarn weiter SI: Für allgemeine Graphen schwierig lösbar, Rückgriff auf Computer-Simulationen Grenzwertbetrachtungen (t → ∞) aber möglich Klar: Jeder, der infiziert werden kann (ZHK), wird irgendwann infiziert (falls β > 0) ⇒ ZHK des anfangs infizierten Knoten bestimmt Infektionsgrad 10 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Grenzbetrachtungen SIR SIR birgt interessantere Eigenschaften (im Vgl. zu SI) Individuen bleiben nur für eine bestimmte Zeit τ (fix) infektiös Sie geben die Krankheit danach nicht mehr weiter (entweder wegen Immunität oder Tod) ⇒ ZHK wird nicht zwangsläufig vollständig infiziert 11 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Grenzbetrachtungen SIR SIR birgt interessantere Eigenschaften (im Vgl. zu SI) Individuen bleiben nur für eine bestimmte Zeit τ (fix) infektiös Sie geben die Krankheit danach nicht mehr weiter (entweder wegen Immunität oder Tod) ⇒ ZHK wird nicht zwangsläufig vollständig infiziert Betrachten wir im Folgenden zeitabhängige Eigenschaften von SIR 11 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Modellbeschreibung si : Wkt., dass Knoten i empfänglich ist xi : Wkt., dass Knoten i infiziert ist ri : Wkt., dass Knoten i geheilt ist Heilungsrate γ: Wkt. pro Zeitschritt, dass ein Infizierter geheilt wird 12 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Modellbeschreibung si : Wkt., dass Knoten i empfänglich ist xi : Wkt., dass Knoten i infiziert ist ri : Wkt., dass Knoten i geheilt ist Heilungsrate γ: Wkt. pro Zeitschritt, dass ein Infizierter geheilt wird Die Veränderung der ersten drei Wkt. lässt sich approximieren durch: dsi = − βsi ∑ Aij xj dt j dxi = βsi dt ∑ Aij xj ! − γxi j dri = γxi dt 12 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Infektionsgeschwindigkeit Seien zum Zeitpunkt t = 0 insgesamt c = O(1) Individuen infiziert Also: si (0) = . . . Also: xi (0) = . . . Also: ri (0) = . . . 13 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Infektionsgeschwindigkeit Seien zum Zeitpunkt t = 0 insgesamt c = O(1) Individuen infiziert Also: si (0) = 1 − c/n 13 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Infektionsgeschwindigkeit Seien zum Zeitpunkt t = 0 insgesamt c = O(1) Individuen infiziert Also: si (0) = 1 − c/n Also: xi (0) = c/n 13 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Infektionsgeschwindigkeit Seien zum Zeitpunkt t = 0 insgesamt c = O(1) Individuen infiziert Also: si (0) = 1 − c/n Also: xi (0) = c/n Also: ri (0) = 0 13 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Infektionsgeschwindigkeit Seien zum Zeitpunkt t = 0 insgesamt c = O(1) Individuen infiziert Also: si (0) = 1 − c/n Also: xi (0) = c/n Also: ri (0) = 0 Exakte analytische Lösung der Differentialgleichungen nicht möglich Näherung für Veränderung von xi für t → 0 und n → ∞ (⇒ si → 1): ! dxi = β ∑ Aij xj − γxi = ∑( βAij − γδij )xj , dt j j mit δij als Kronecker-Delta 13 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Infektionsgeschwindigkeit Seien zum Zeitpunkt t = 0 insgesamt c = O(1) Individuen infiziert Also: si (0) = 1 − c/n Also: xi (0) = c/n Also: ri (0) = 0 Exakte analytische Lösung der Differentialgleichungen nicht möglich Näherung für Veränderung von xi für t → 0 und n → ∞ (⇒ si → 1): ! dxi = β ∑ Aij xj − γxi = ∑( βAij − γδij )xj , dt j j mit δij als Kronecker-Delta Matrix-Schreibweise: 13 dx dt = βMx mit M = A − γβ I Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Infektionsgeschwindigkeit (Forts.) Beobachtung: M = A − γβ I hat die gleichen Eigenvektoren wie A Die Eigenwerte sind um −γ/β verschoben 14 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Infektionsgeschwindigkeit (Forts.) Beobachtung: M = A − γβ I hat die gleichen Eigenvektoren wie A Die Eigenwerte sind um −γ/β verschoben Darstellung des Vektors x(t ) anhand der Eigenvektoren vr : n x(t ) = ∑ ar (0)vr e(βκr −γ)t r =1 14 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Infektionsgeschwindigkeit (Forts.) Beobachtung: M = A − γβ I hat die gleichen Eigenvektoren wie A Die Eigenwerte sind um −γ/β verschoben Darstellung des Vektors x(t ) anhand der Eigenvektoren vr : n x(t ) = ∑ ar (0)vr e(βκr −γ)t r =1 Der Exponent hängt von β, den Eigenwerten κr und γ ab Am schnellsten wächst der erste Summand wegen κ1 14 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Infektionsgeschwindigkeit (Forts.) Beobachtung: M = A − γβ I hat die gleichen Eigenvektoren wie A Die Eigenwerte sind um −γ/β verschoben Darstellung des Vektors x(t ) anhand der Eigenvektoren vr : n x(t ) = ∑ ar (0)vr e(βκr −γ)t r =1 Der Exponent hängt von β, den Eigenwerten κr und γ ab Am schnellsten wächst der erste Summand wegen κ1 Wenn der erste Summand über die Zeit verschwindet, dann auch all die anderen ⇒ Der epidemische Grenzwert unseres Modells wird erreicht für: βκ1 − γ = 0 ⇔ 14 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse β 1 = γ κ1 Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Diskussion Der epidemische Grenzwert hängt vom führenden Eigenwert ab Ist der führende Eigenwert klein, muss β groß oder γ klein sein, damit die Krankheit sich gut ausbreiten kann Intuitiv ergibt das Sinn: Ein kleiner Wert für κ1 bedeutet tendentiell eine eher dünn besetzte Adjazenzmatrix 15 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Zeitabhängigkeit bei SIR Diskussion Der epidemische Grenzwert hängt vom führenden Eigenwert ab Ist der führende Eigenwert klein, muss β groß oder γ klein sein, damit die Krankheit sich gut ausbreiten kann Intuitiv ergibt das Sinn: Ein kleiner Wert für κ1 bedeutet tendentiell eine eher dünn besetzte Adjazenzmatrix Unsere Rechnungen waren nur Approximationen Dennoch zeigen sie einen Zusammenhang zwischen Spektrum, Netzwerkeigenschaften und Ausbreitungsgeschwindigkeiten Übertragung auf den Entwurf technischer Netze!?! 15 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Inhalt Krankheitsausbreitung in Netzwerken Einführung Krankheits- und Netzwerkmodelle Zusammenfassung Vorlesungsinhalt 16 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Agenda (geplant vs. durchgeführt) Zusammenhang, ZHK Kürzeste Wege, Durchmesser Zentrale Elemente, soziales Marketing Ausfallsicherheit, Anfälligkeit für Krankheiten, Simulation von Epidemien Verbundenheit einzelner Teile Aufteilung in Teilnetzwerke (Partitionierung, Clusteranalyse / Community Detection) 17 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Gradfolgen (Existenz und Realisierung) Zusammenhang, ZHK, auch dynamisch Kürzeste Wege Institut für Theoretische Informatik Paralleles Rechnen Agenda (geplant vs. durchgeführt) Zusammenhang, ZHK Kürzeste Wege, Durchmesser Zentrale Elemente, soziales Marketing Ausfallsicherheit, Anfälligkeit für Krankheiten, Simulation von Epidemien Verbundenheit einzelner Teile Aufteilung in Teilnetzwerke (Partitionierung, Clusteranalyse / Community Detection) 17 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Gradfolgen (Existenz und Realisierung) Zusammenhang, ZHK, auch dynamisch Kürzeste Wege Zentralitätsmaße Durchmesser k -Kerne Cluster-Koeffizienten, Bloom-Filter Institut für Theoretische Informatik Paralleles Rechnen Agenda (geplant vs. durchgeführt) Zusammenhang, ZHK Kürzeste Wege, Durchmesser Zentrale Elemente, soziales Marketing Ausfallsicherheit, Anfälligkeit für Krankheiten, Simulation von Epidemien Verbundenheit einzelner Teile Aufteilung in Teilnetzwerke (Partitionierung, Clusteranalyse / Community Detection) 17 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Gradfolgen (Existenz und Realisierung) Zusammenhang, ZHK, auch dynamisch Kürzeste Wege Zentralitätsmaße Durchmesser k -Kerne Cluster-Koeffizienten, Bloom-Filter Zufallsgraphen Partitionierung, Clusteranalyse Epidemien auf Netzwerken Institut für Theoretische Informatik Paralleles Rechnen Thematische Zusammenhänge Konstruktion von Graphen: Gradfolgen Zufallsgraphen Eigenschaften von Knoten: Zentralitätsmaße Cluster-Koeffizienten Verbindung EV-Zentralität Krankheitsausbreitung 18 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse Institut für Theoretische Informatik Paralleles Rechnen Thematische Zusammenhänge Grapheigenschaften: Konstruktion von Graphen: Gradfolgen Zufallsgraphen Eigenschaften von Knoten: Zentralitätsmaße Cluster-Koeffizienten Verbindung EV-Zentralität Krankheitsausbreitung 18 Henning Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse ZHK Kürzeste Wege, Durchmesser k -Kern-Struktur Cluster-Struktur Methoden: Numerische Algorithmen Kombinatorische Algorithmen Probabilistische Analysen Relaxierung, Approximation Reduktion Institut für Theoretische Informatik Paralleles Rechnen