Algorithmische Methoden zur Netzwerkanalyse

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 20
Programm: Epidemien in Netzwerken
Verzweigungsprozess
SI*-Modelle
Optimierung der Reaktion auf Cyberattacken
2
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Inhalt
Krankheitsausbreitung in Netzwerken
Einführung
Krankheits- und Netzwerkmodelle
Cyberattacken abwehren (im Modell)
3
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Einführung
Einleitung und Motivation
Modellierung von Krankheitsausbrüchen
wichtiges Anwendungfeld
Reale Epidemien
SARS
EHEC
AIDS
...
Computerschädlinge
Viren
Würmer
...
Bildnachweis:
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
4
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Einführung
Verwandte Prozesse
Randomisiertes Broadcasting
Aktualisierung verteilter Datenbanken
Ausbreitung von Informationen, z. B. Ideen oder Tratsch
Alles Prozesse, die in Netzwerken passieren
5
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Einführung
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.
Notation: 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
6
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Einführung
Verzweigungsprozess
[D. Easley, J. Kleinberg: Epidemics. Ch. 21 of Networks, Crowds, and Markets...]
7
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Einführung
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.
8
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Einführung
Inhalt
Krankheitsausbreitung in Netzwerken
Einführung
Krankheits- und Netzwerkmodelle
Cyberattacken abwehren (im Modell)
9
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Krankheits- und Netzwerkmodelle
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
10
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Krankheits- und Netzwerkmodelle
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
11
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Krankheits- und Netzwerkmodelle
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
12
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Krankheits- und Netzwerkmodelle
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
⇒ Wkt. für Heilung in Zeitintervall der Länge δτ: γδτ
Wkt., dass ein Individuum nach Gesamtzeit τ noch infiziert ist:
lim (1 − γδτ )τ/δτ = e −δτ
δτ →0
Wkt., dass ein Individuum so lange infiziert ist und im Intervall
[τ , τ + d τ ] geheilt wird:
p (τ )d τ = γe −δτ d τ
⇒ Schnelle Heilung wahrscheinlich (aber nicht sicher): Realistisch?
13
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Krankheits- und Netzwerkmodelle
Zeitabhängigkeit bei SIR
Die Veränderung der ersten drei Wkt. lässt sich approximieren durch:
Empfänglich (S):
dsi
= − βsi ∑ Aij xj
dt
j
dxi
Infiziert (I):
= βsi
dt
∑ Aij xj
!
− γxi
j
dri
= γxi
dt
si + xi + ri = 1
Geheilt (R):
14
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Krankheits- und Netzwerkmodelle
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) = . . .
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
15
dx
Henning Meyerhenke, Institut für Theoretische
Informatik
dt
Algorithmische Methoden zur Netzwerkanalyse
Matrix-Schreibweise:
in Netzwerken
= βMx mit M = A − γβ I Krankheitsausbreitung
Krankheits- und Netzwerkmodelle
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
Individuen mit hoher EVZ werden schnell infiziert
16
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Krankheits- und Netzwerkmodelle
Zeitabhängigkeit bei SIR
Diskussion
⇒ Der epidemische Grenzwert unseres Modells wird erreicht für:
1
β
βκ1 − γ = 0 ⇔ =
γ
κ1
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!?!
17
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Krankheits- und Netzwerkmodelle
Inhalt
Krankheitsausbreitung in Netzwerken
Einführung
Krankheits- und Netzwerkmodelle
Cyberattacken abwehren (im Modell)
18
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Cyberattacken abwehren (im Modell)
Modell für Cyberattacken: SIS
Computernetzwerk: Anfällig, heilbar, wieder anfällig, ...
SIS: Zwei Zustände, S und I
Diskussion: Wie modellieren Sie einen Angriff, wie reagieren Sie?
Mögliche Abwehr-/Säuberungs-Strategien:
Netzwerkverbindungen umleiten
Antivirus-Software aktualisieren
“Impfen” von Individuen (Computer: Patches)
Kernfrage hier: Welche Knoten ausschalten, um Netzwerk zu säubern?
Literaturhinweis
S. Leyffer, I. Safro: Fast response to infection spread and cyber attacks on large-scale networks.
Journal of Complex Networks, vol. 1, no. 2, pp. 183-199, 2013.
19
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Cyberattacken abwehren (im Modell)
SIS
Kenngrößen auf einen Blick
S: Zahl der anfälligen (= empfänglichen) Knoten
I: Zahl der infizierten Knoten
β: Übertragungsrate (wird gleich ersetzt...)
γ: Heilungsrate
φi ,t : Wkt., dass Knoten i im Zeitpunkt t infiziert ist
dI
= λS − γI
dt
dS
= γI − λS
dt
λ = βhk iI/(S + I ): durchschnittliche Infektionsrate
hk i: Durchschnittlicher Knotengrad
20
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Cyberattacken abwehren (im Modell)
Anpassungen
Infektionsmatrix statt konstanter Rate
Eine feste Infektionsrate ist oft unrealistisch
⇒ Infektionsmatrix P n×n = (pij )
pij : Wkt., dass i von j infiziert wird
hi ,t : Wkt., dass gesunder Knoten i zum Zeitpunkt t nicht infiziert ist:
hi ,t = Πj ∈N (i ) (1 − pij φj ,t −1 )
Optimierungsproblem:
Maximiere die (gewichtete) Zahl der Kanten, die angeschaltet bleiben
Halte gleichzeitig den Infektionsgrad an jedem Knoten klein
21
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Cyberattacken abwehren (im Modell)
Optimierungsmodell
Netzwerk G = (V , E , w )
w (u , v ): Stärke der Verbindung (u , v ), z. B. Zahl ihrer Benutzer
Annahme: Wkt. der Infektion in einer Nachbarschaft unabhängig
xi : gibt an, ob Knoten i normal funktioniert oder “ausgeschaltet” ist
bi : Grenzwert für Infektionsgrad eines Knotens i
Optimierungsproblem für unser Modell:
max
x
∑ wij xi xj
(1)
ij ∈E
udNB xi − Πj ∈N (i ) (1 − pij φj ,t −1 xj ) ≤ bi ∀i ∈ V
xi ∈ {0, 1} ∀i ∈ V .
(2)
(3)
Nicht-konvexes nichtlin. IP: Finden einer optimalen Lösung N P -schwer
22
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Cyberattacken abwehren (im Modell)
Lösen schwieriger Opt.probleme
Exakte und heuristische Verfahren:
Branch-and-reduce
(Meta)Heuristiken
Aufgabe: Nennen Sie Beispiele, Vor- und Nachteile!
Hier:
Mehrebenen/-skalen-Ansatz!
“Abgekupfert” von numerischen Lösern: AMG
Ziel: Große Netzwerke mit Hunderttausenden von Knoten
23
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Cyberattacken abwehren (im Modell)
Multilevel-Methode
Sinn:
Relevante Information auf
verschiedenen Skalen
“einsammeln”
Normalerweise
anwendbar auf sehr
große Probleme
Zutaten:
1. Vergröberung
2. Initiale Lösung
3. “Entgröberung” und lokale
Verbesserung
4. Lösungszyklen
24
Henning Meyerhenke, Institut für Theoretische Informatik
Algorithmische Methoden zur Netzwerkanalyse
Krankheitsausbreitung in Netzwerken
Cyberattacken abwehren (im Modell)
Herunterladen