Algebra grafów. dr hab. Piotr Fronczak

Podobne dokumenty
2 1 3 c c1. e 1, e 2,..., e n A= e 1 e 2...e n [ ] M. Przybycień Matematyczne Metody Fizyki I

Zadania egzaminacyjne

dr Mariusz Grządziel 15,29 kwietnia 2014 Przestrzeń R k R k = R R... R k razy Elementy R k wektory;

Matematyka stosowana i metody numeryczne

Własności wyznacznika

Met Me ody numer yczne Wykład ykład Dr inż. Mic hał ha Łanc Łan zon Instyt Ins ut Elektr Elektr echn iki echn i Elektrot Elektr echn olo echn

ALGEBRA z GEOMETRIA, ANALITYCZNA,

10. Metody obliczeniowe najmniejszych kwadratów

Wykład 14. Elementy algebry macierzy

WEKTORY I WARTOŚCI WŁASNE MACIERZY. = λ c (*) problem przybliżonego rozwiązania zagadnienia własnego dla operatorów w mechanice kwantowej

Komputerowa analiza zagadnień różniczkowych 3. Numeryczne zagadnienie własne

PODSTAWY AUTOMATYKI. MATLAB - komputerowe środowisko obliczeń naukowoinżynierskich - podstawowe operacje na liczbach i macierzach.

Wektory i wartości własne

Macierze i Wyznaczniki

Wektory i wartości własne

1 Macierze i wyznaczniki

Algebra Liniowa 2 (INF, TIN), MAP1152 Lista zadań

Algebra liniowa II. Lista 1. 1 u w 0 1 v 0 0 1

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn x 1 x 2... x m ...

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Metody numeryczne. Janusz Szwabiński. Metody numeryczne I (C) 2004 Janusz Szwabiński p.1/50

a 11 a a 1n a 21 a a 2n... a m1 a m2... a mn a 1j a 2j R i = , C j =

Procesy stochastyczne WYKŁAD 2-3. Łańcuchy Markowa. Łańcuchy Markowa to procesy "bez pamięci" w których czas i stany są zbiorami dyskretnymi.

Rozkłady wielu zmiennych

III. Układy liniowe równań różniczkowych. 1. Pojęcie stabilności rozwiązań.

D1. Algebra macierzy. D1.1. Definicje

Zaawansowane metody numeryczne

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

Lista. Algebra z Geometrią Analityczną. Zadanie 1 Przypomnij definicję grupy, które z podanych struktur są grupami:

Analiza matematyczna i algebra liniowa Macierze

Wykładnicze grafy przypadkowe: teoria i przykłady zastosowań do analizy rzeczywistych sieci złożonych

Zaawansowane metody numeryczne

Prawdopodobieństwo i statystyka

Wartości i wektory własne

Układy równań liniowych. Krzysztof Patan

1. PODSTAWY TEORETYCZNE

Wektor, prosta, płaszczyzna; liniowa niezależność, rząd macierzy

Obliczenia naukowe Wykład nr 8

Wykład z Technologii Informacyjnych. Piotr Mika

(Dantzig G. B. (1963))

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Grafy Alberta-Barabasiego

Macierze. Rozdział Działania na macierzach

1 Macierz odwrotna metoda operacji elementarnych

1 Zbiory i działania na zbiorach.

Lista 6. Kamil Matuszewski 13 kwietnia D n =

Algorytmy analizy skupień / Sławomir Wierzchoń, Mieczysław Kłopotek. wyd. 1, 1. dodr. (PWN). Warszawa, Spis treści

KADD Minimalizacja funkcji

9. METODY SIECIOWE (ALGORYTMICZNE) ANALIZY OBWODÓW LINIOWYCH

Algebra liniowa. 1. Macierze.

5. Rozwiązywanie układów równań liniowych

DB Algebra liniowa semestr zimowy 2018

UKŁADY RÓWNAŃ LINIOWYCH

Statystyka i eksploracja danych

26 marzec, Łańcuchy Markowa z czasem ciągłym. Procesy Stochastyczne, wykład 7, T. Byczkowski, Procesy Stochastyczne, PPT, Matematyka MAP1136

MATeMAtyka zakres podstawowy

"Bieda przeczy matematyce; gdy się ją podzieli na więcej ludzi, nie staje się mniejsza." Gabriel Laub

Analiza numeryczna Kurs INP002009W. Wykłady 6 i 7 Rozwiązywanie układów równań liniowych. Karol Tarnowski A-1 p.

ALGEBRA LINIOWA Z GEOMETRIĄ, LISTA ZADAŃ NR 8

Lista. Algebra z Geometrią Analityczną. Zadanie 1 Zapisz za pomocą spójników logicznych i kwantyfikatorów: x jest większe niż 6 lub mniejsze niż 4

Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova

1. Liczby zespolone i

Wstęp do metod numerycznych Uwarunkowanie Eliminacja Gaussa. P. F. Góra

Metody numeryczne Wykład 4

3. Wykład Układy równań liniowych.

Algorytmy zrandomizowane

Postać Jordana macierzy

Ekoenergetyka Matematyka 1. Wykład 3.

Wstęp do metod numerycznych 5. Numeryczne zagadnienie własne. P. F. Góra

VI. Równania różniczkowe liniowe wyższych rzędów

13 Układy równań liniowych

1 Podobieństwo macierzy

Egzamin z Metod Numerycznych ZSI, Egzamin, Gr. A

Baza w jądrze i baza obrazu ( )

Lista nr 1 - Liczby zespolone

Modelowanie rynków finansowych z wykorzystaniem pakietu R

Zagadnienia brzegowe dla równań eliptycznych

Rozwiązywanie układów równań liniowych

Rozwiązania zadań z listy T.Koźniewskiego

Programowanie liniowe

VII. Elementy teorii stabilności. Funkcja Lapunowa. 1. Stabilność w sensie Lapunowa.

Procesy stochastyczne WYKŁAD 2-3. Łańcuchy Markowa. Łańcuchy Markowa to procesy "bez pamięci" w których czas i stany są zbiorami dyskretnymi.

Geometria Lista 0 Zadanie 1

Informatyka Stosowana. a b c d a a b c d b b d a c c c a d b d d c b a

PROGRAMOWANIE KWADRATOWE

Metody dekompozycji macierzy stosowane w automatyce

, to liczby γ +δi oraz γ δi opisują pierwiastki z a+bi.

Wstęp do metod numerycznych Eliminacja Gaussa Równania macierzowe. P. F. Góra

Wielomiany podstawowe wiadomości

ALGEBRA LINIOWA. Wykład 2. Analityka gospodarcza, sem. 1. Wydział Zarządzania i Ekonomii Politechnika Gdańska

Wykład 5. Ker(f) = {v V ; f(v) = 0}

Wyznaczniki 3.1 Wyznaczniki stopni 2 i 3

Wybrane aspekty wykrywania wspólnot w grafie

Rozdział 5. Macierze. a 11 a a 1m a 21 a a 2m... a n1 a n2... a nm

Rozwiązywanie algebraicznych układów równań liniowych metodami iteracyjnymi. Plan wykładu:

Rozwiązywanie układów równań liniowych metody dokładne Materiały pomocnicze do ćwiczeń z metod numerycznych

Wstęp do metod numerycznych Zadania numeryczne 2016/17 1

ALGEBRA Z GEOMETRIĄ ANALITYCZNĄ zadania z odpowiedziami

Macierze. Układy równań.

Transkrypt:

Algebra grafów dr hab. Piotr Fronczak

Własności macierzy sąsiedztwa A A i = 1 eżeli istniee krawędź pomiędzy węzłami i oraz W ogólności A i = w, w R, oraz A i A i (grafy ważone i skierowane) Poniże rozważamy grafy proste k i = n =1 A i stopień węzła A ik A k = 1, eżeli istniee droga o długości 2 od węzła i do węzła przez k N i (2) = N i (3) = n k=1 n k,l=1 Aik A k = A 2 i Aik A kl A l = A 3 i N i (r) = A r i L r = n i=1 A r ii liczymy osobno) = Tr A r (pętle, które liczymy od innego punktu początkowego, Nakrótsza droga: namniesza wartość r taka, że A r i > 0. 2

Laplasan grafu L Dyfuza Niech i - wartość pewne wielkości w węźle i. C( - i ) tempo przepływu wielkości z węzła do i współczynnik dyfuzi W ciągu czasu dt przepływa C( - i )dt. dψ i dt = C A i(ψ ψ i ) Równanie dyfuzi dψ i dt = C A i ψ C ψ i A i = C A i ψ C ψ i k i = C (A i δ i k i )ψ W postaci macierzowe: dψ dt = C(A D)ψ macierz wektor D = k 1 0 0 0 k 2 0 0 0 k 3

dψ dt = C(A D)ψ L = D A laplasan grafu Rozwiązuąc równanie: dψ dt + CLψ = 0 ψ(t) = II prawo Ficka dn(x, t) CΔn x, t = 0 dt i a i t v i - liniowa kombinaca wektorów własnych dψ dt = i da i dt v i oraz CLψ = Ca i t Lv i = Cλ i a i t v i i i bo Lv i = λ i v i i da i dt + Cλ ia i t v i = 0 Wektory własne macierzy symetryczne są ortogonalne, zatem da i dt + Cλ ia i t = 0, dla każdego i. a i t = a i 0 e Cλ i t Czyli, maąc dane warunki początkowe a i (0) oraz wartości i wektory własne laplasanu, możemy rozwiązać zagadnienie dyfuzi na sieci.

Laplasan est macierzą symetryczną, więc ma rzeczywiste wartości własne Można pokazać, że i 0 dla każdego i. a i t = a i 0 e Cλ i t Rozważmy iloczyn L 1 L i 1 = δ i k i A i = k i A i = k i k i = 0 L 1 = 0 1 Zatem, eśli 1 2 n, to 1 = 0. Wyznacznik macierzy est iloczynem wartości własnych, zatem laplasan to macierz osobliwa.

Stwórzmy sieć złożoną z k komponentów. Każdy z komponentów ma własny laplasan. Zatem mamy macierz blokową 0 0 Możemy napisać k różnych wektorów własnych z = 0, np: v 1 = (,, ) v k = (,, ) komponent nr 1 komponent nr k komponent nr 1 komponent nr k Zatem mamy k wartości własnych = 0. Sieć est spóna tylko, gdy 2 0 2 spóność algebraiczna.

Podział spektralny grafu Cel: podzielić węzły w sieci na dwie rozłączne grupy X i Y 1 2 4 5 3 6 Jak podzielić dobrze? Minimalizumy liczbę połączeń między klastrami cut X, Y = 1 A 2 i X, X i Przykład: arg min X,Y cut(x, Y) cięcie optymalne cięcie minimalne

Cięcie normalizowane: ncut X, Y = cut(x,y) vol(x) + cut(x,y) vol(y) vol X = A i i X (liczba krawędzi rozpoczynaących się w grupie X) cięcie optymalne cięcie minimalne ncut X, Y = 1 33 + 1 1 ncut X, Y = 2 16 + 2 18

Zdefiniumy wektor s taki, że s i = +1 eżeli węzeł i należy do grupy 1 1 eżeli węzeł i należy do grupy 2 Wtedy 1 2 1 s is = 1 eżeli i oraz są w różnych grupach 0 eżeli i oraz są w te same grupie cut X, Y = 1 2 A i i X, X = 1 4 i A i (1 s i s ) i A i = i k i = i k i s i2 = i k i δ i s i s cut X, Y = 1 4 k i δ i A i s i s i = 1 4 i L i s i s = 1 4 st Ls Czyli znalezienie nalepszego cięcia = znalezienie wektora s, który minimalizue powyższe wyrażenie. Problem NP-trudny. Metoda relaksaci: s i = ±1 s i R By zapobiec trywialnemu rozwiązaniu s = 0, wprowadzamy dodatkowy wiąz i s i2 = n

Drugi wiąz: chcemy, by grupy były zbalansowane: i s i = ε, ε 0, 1 T s = ε, (1 wektor ednostkowy L 1 = 0) Metoda mnożników Lagrange a L s k s s k + λ n s 2 i k + 2μ ε s = 0 L i s = λs i + μ L s = λs + μ1 Mnożymy lewostronnie przez 1 T 1 T L s = λ1 T s + μ1 T 1, czyli μ = 0 0 0 L s = λs czyli s est wektorem własnym a λ wartością własną L

cut X, Y = 1 4 st Ls = 1 4 λst s Nalepsze cięcie da wektor s z namnieszą wartością własną λ λ 1 =0 odpada, bo wtedy s=1 Zatem wybieramy λ 2. Wektor s wektor Fiedlera Algorytm 1 3 2 4 6 5 1. Konstruuemy laplasan L grafu x 1 x 2 x 3 x 4 x 5 x 6 2. Znaduemy wartości i wektory własne L 0 1 1 1 1 1 1 1-2 -1-1 1 2 1 3 = V = 3 4 5 1-1 0-1 1 0 0-1 1-1 0 1 1-1 -1 1-1 1 0 1-1 -1 0 1 x 1 2-1 -1 0 0 0 x 2-1 3-1 -1 0 0 x 3-1 -1 3 0 0-1 x 4 0-1 0 3-1 -1 x 5 0 0 0-1 2-1 x 6 0 0-1 -1-1 3 3. Przypisuemy węzłom odpowiednie elementy wektora v 2 4. Dzielimy węzły na dwie grupy. Punkt podziału: 0, średnia, mediana. Możemy też wybrać punkt podziału minimalizuąc cięcie (przeszukiwanie ednowymiarowe). x 1-2 x 2-1 x 3-1 x 4 1 x 5 2 x 6 1

Jak podzielić graf na k grup? a) rekurencyna bisekca nieefektywna O(n 3 ), niestabilna b) wykorzystanie wielu wektorów własnych do stworzenia przestrzeni rozpinaące Algorytm 1. Konstruuemy laplasan L grafu. 2. Znaduemy k namnieszych niezerowych wartości własnych i odpowiadaących im wektorów. 3. Jak wybrać k? k = λ k+1 λ k - eigengap (przerwa własna?) k: max k Δ k 12 10 8 i 6 4 2 0 k=3 0 5 10 15 20 i

Algorytm c.d. 3. Tworzymy macierz n k zbudowaną z k wektorów własnych: u 1 (x 1 ) u 1 (x n ) U = u k (x 1 ) u k (x n ) 4. Każda kolumna i reprezentue współrzędne węzła x i w nowe przestrzeni. 5. Wykorzystuemy edną z metod grupowania danych, np. K-średnich.

Algorytm K-średnich 1. Wybierz K punktów ako początkowe centroidy 2. REPEAT 3. Utwórz K grup przypisuąc wszystkie punkty nabliższym centroidom. 4. Przelicz położenie centroidów dla każde grupy 5. UNTIL położenia centroidów nie zmieniaą się Przykład iteraca 0 iteraca 1 iteraca 2 iteraca 3 iteraca 4

DYGRESJA Metodę K-średnich i podobne inne metody można użyć do grupowania dowolnych danych (nie tylko węzłów w grafach) w oparciu o podobieństwa względem różnych cech. Nie zawsze to działa: Aby zadziałało, tworzymy sieć K-sąsiedztwa Dane Sieć K-sąsiedztwa Laplasan Spektrum Grupowanie

MODULARNOŚĆ Miara akości podziału Q Q = 1 m (# krawędzi w grupie i i oczekiwana # krawędzi w grupie i w grafie losowym o te same sekwenci stopni) Trywialny podział: wszystkie węzły w edne grupie Q = 0 Jeżeli c i grupa węzła i # = δ c i, c = 1 2 A i δ c i, c krawędzie i, i # = 1 2 i k i k 2m δ c i, c Q = 1 2m i A i k ik 2m δ c i, c = 1 2m i B i δ c i, c B i = A i k ik 2m macierz modularności

Własność macierzy B: B i = A i k i 2m k = k i k i 2m 2m = 0 Zdefiniumy wektor s taki, że s i = +1 eżeli węzeł i należy do grupy 1 1 eżeli węzeł i należy do grupy 2 Wtedy 1 2 s is + 1 = 1 eżeli i oraz są w te same grupie 0 eżeli i oraz są w różnych grupach δ c i, c = 1 2 s is + 1 Q = 1 2m i B i δ c i, c = 1 4m i B i s i s + 1 = 1 4m i B i s i s = 1 4m st Bs Przypomnienie: cut X, Y = 1 4 st Ls Działamy podobnie ale odwrotnie: szukamy podziału, który maksymalizue Q

Wprowadzamy tylko eden wiąz (grupy mogą być teraz różnoliczne) Równanie Lagrange a s T s = i s i2 = n B s k s s k + β n s 2 i k = 0 B i s B s = βs = βs i Q = 1 4m st Bs = 1 4m βst s = n 4m β Zatem szukamy wektora własnego o nawiększe wartości własne Przypomnienie z Metod Numerycznych: szybka Metoda Potęgowa znadowania nawiększe wartości własne i związanego z nią wektora własnego.

Podział na więce niż dwie grupy Problem NP. Wiele metod heurystycznych: wyżarzanie, algorytmy genetyczne Greedy algorithm : Początkowo umieszczamy każdy węzeł w inne grupie 1 2 4 5 3 6 Następnie sprawdzamy, połączenie których dwóch grup da nawiększy wzrost (lub namnieszy spadek) modularności

1 3 2 6 4 5 Q = 0 1 3 2 6 4 5 Q = 0.078 Q = 0.156 1 3 2 6 4 5 Q = 0.289 1 3 2 6 4 5 1 3 2 6 4 5 Q = 0.422 1 3 2 6 4 5 Q = 0.172 Q max

BŁĄDZENIE PRZYPADKOWE PO SIECI p i (t) prawdopodobieństwo, że cząstka (pakiet, osobnik) znadue się w węźle i w chwili t. Jeśli w chwili t-1 cząstka est w węźle, to p i t p i t A i = p k (t 1) p t = AD 1 p(t 1) Rozkład graniczny dla t p = AD 1 p I AD 1 p = D A D 1 p = LD 1 p = 0 D 1 p wektor własny laplasanu o wartości własne 0. Pamiętamy, że v 1 = α1, zatem p = αd1 oraz p i = αk i. Po unormowaniu p i = k i k = k i 2m = A i k p (t 1) D macierz diagonalna stopni węzłów

BŁĄDZENIE PRZYPADKOWE PO SIECI p i (t) prawdopodobieństwo, że cząstka (pakiet, osobnik) znadue się w węźle i w chwili t. Jeśli w chwili t-1 cząstka est w węźle, to p i t p i t A i = p k (t 1) p t = AD 1 p(t 1) Rozkład graniczny dla t p = AD 1 p I AD 1 p = D A D 1 p = LD 1 p = 0 D 1 p wektor własny laplasanu o wartości własne 0. Pamiętamy, że v 1 = α1, zatem p = αd1 oraz p i = αk i. Po unormowaniu p i = k i = k k 2m = A i k p (t 1) D macierz diagonalna stopni węzłów

Można pokazać, że dla błądzenia z preferencą k Zatem dla = -1 p i ~k i β+1

Można pokazać, że dla błądzenia z preferencą k Zatem dla = -1 p i ~k i β+1

SIECI REZYSTOROWE Prawo Kirchhoffa W naszym przypadku I i = A i V V i R +I I 0 + I i = 0 dla i = s dla i = t dla i s t Prąd dopływaący z zewnątrz s I t V i A i A i V = RI i k i V i A i V = RI i δ i k i A i L V = RI V = RI i L = D A

L V = RI Pamiętamy, że L macierz osobliwa, więc nie możemy znaleźć wektora V z powyższego równania. Napięcia są ustalone z dokładnością do stałe: L ( V + c1 ) = LV + cl1 = LV = RI Ustalmy potencał odniesienia. Możemy teraz usunąć kolumnę t z laplasanu (bo i tak mnożymy przez 0). A także wiersz t, bo znamy V t. Nowe równanie: L V = RI I teraz: V = RL 1 I bo L macierz nieosobliwa Tylko eden element niezerowy s I t V t =0

Przykład: Model grawitacyny w sieciach dystrybucynych i = G Q iq r i α Produkt kraowy brutto Wielkość przepływu odległość między kraami

log(observed flow) log(observed flow) Sieć połączeń lotniczych między kraami L V = RI L admit V = I macierz admitanci węzłowe L admit = S F diagonalna macierz sił węzłów I ab = 0 Q a Q b 0 ważona ilością pasażerów macierz sąsiedztwa (na podst. modelu graw.) F i = G Q iq r i α log(predicted flow) log(predicted flow)