Algorytmy wyznaczania centralności w sieci Szymon Szylko

Podobne dokumenty
Centralność w sieciach społecznych. Radosław Michalski Social Network Group - kwiecień 2009

Porównanie algorytmów wyszukiwania najkrótszych ścieżek międz. grafu. Daniel Golubiewski. 22 listopada Instytut Informatyki

Algorytm Dijkstry znajdowania najkrótszej ścieżki w grafie

Matematyczne Podstawy Informatyki

Egzamin, AISDI, I termin, 18 czerwca 2015 r.

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

Algorytmy i Struktury Danych.

Sprawozdanie do zadania numer 2

Digraf. 13 maja 2017

5. Najkrótsze ścieżki

Spis treści. Przykład. Przykład 1 Przykład 2. Twórcy Informacje wstępne Pseudokod Przykład. 1 Grafy skierowane z wagami - przypomnienie

Wstęp do programowania

Działanie algorytmu oparte jest na minimalizacji funkcji celu jako suma funkcji kosztu ( ) oraz funkcji heurystycznej ( ).

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

Złożoność obliczeniowa klasycznych problemów grafowych

Programowanie dynamiczne cz. 2

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

TEORETYCZNE PODSTAWY INFORMATYKI

Wstęp do programowania

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

Algorytmy i Struktury Danych.

5c. Sieci i przepływy

Wyznaczanie optymalnej trasy problem komiwojażera

Programowanie dynamiczne

a) 7 b) 19 c) 21 d) 34

Wykład 4. Określimy teraz pewną ważną klasę pierścieni.

Ogólne wiadomości o grafach

Wybrane podstawowe rodzaje algorytmów

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Algorytmika Problemów Trudnych

Suma dwóch grafów. Zespolenie dwóch grafów

OSTASZEWSKI Paweł (55566) PAWLICKI Piotr (55567) Algorytmy i Struktury Danych PIŁA

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

SPÓJNOŚĆ. ,...v k. }, E={v 1. v k. i v k. ,...,v k-1. }. Wierzchołki v 1. v 2. to końce ścieżki.

Symulacyjne metody wyceny opcji amerykańskich

Programowanie dynamiczne i algorytmy zachłanne

Algorytm wyznaczania najkrótszej ścieżki w grafie skierowanym w zbiorze liczb rozmytych

Przykład planowania sieci publicznego transportu zbiorowego

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

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

Wymagania edukacyjne matematyka klasa 1 zakres podstawowy 1. LICZBY RZECZYWISTE

I Liceum Ogólnokształcące w Warszawie

Matematyka Dyskretna. Andrzej Szepietowski. 25 czerwca 2002 roku

Metody numeryczne I Równania nieliniowe

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

DWA ZDANIA O TEORII GRAFÓW. przepływ informacji tylko w kierunku

Rozdział 1 PROGRAMOWANIE LINIOWE

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

Programowanie sieciowe. Tadeusz Trzaskalik

Co to jest grupowanie

Metody numeryczne w przykładach

Algorytmiczna teoria grafów

Wykład 10 Grafy, algorytmy grafowe

Podejście zachłanne, a programowanie dynamiczne

Wykorzystanie algorytmów mrówkowych w dynamicznym problem

Grafy Alberta-Barabasiego

MATEMATYKA Przed próbną maturą. Sprawdzian 1. (poziom podstawowy) Rozwiązania zadań

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa

Zagadnienie najkrótszej drogi w sieci

Egzamin z Metod Numerycznych ZSI, Egzamin, Gr. A

Luty 2001 Algorytmy (4) 2000/2001

Analiza skupień. Analiza Skupień W sztucznej inteligencji istotną rolę ogrywają algorytmy grupowania

Wymagania na egzamin poprawkowy z matematyki dla klasy I C LO (Rok szkolny 2015/16) Wykaz zakładanych osiągnięć ucznia klasy I liceum

PRACA DYPLOMOWA MAGISTERSKA

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA

Technikum Nr 2 im. gen. Mieczysława Smorawińskiego w Zespole Szkół Ekonomicznych w Kaliszu

Heurystyczne metody przeszukiwania

Algorytmy grafowe. Wykład 1 Podstawy teorii grafów Reprezentacje grafów. Tomasz Tyksiński CDV

Prawa potęgowe w grafach przepływu informacji dla geometrycznych sieci neuronowych

Algorytmy aproksymacyjne i parametryzowane

Katalog wymagań programowych na poszczególne stopnie szkolne. Matematyka. Poznać, zrozumieć

Rozdział 8 PROGRAMOWANIE SIECIOWE

WYMAGANIE EDUKACYJNE Z MATEMATYKI W KLASIE II GIMNAZJUM. dopuszczającą dostateczną dobrą bardzo dobrą celującą

Egzaminy i inne zadania. Semestr II.

Schemat programowania dynamicznego (ang. dynamic programming)

Drzewa. Jeżeli graf G jest lasem, który ma n wierzchołków i k składowych, to G ma n k krawędzi. Własności drzew

operacje porównania, a jeśli jest to konieczne ze względu na złe uporządkowanie porównywanych liczb zmieniamy ich kolejność, czyli przestawiamy je.

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

Marcel Stankowski Wrocław, 23 czerwca 2009 INFORMATYKA SYSTEMÓW AUTONOMICZNYCH

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

ROZKŁAD MATERIAŁU DO II KLASY LICEUM (ZAKRES ROZSZERZONY) A WYMAGANIA PODSTAWY PROGRAMOWEJ.

Wstęp do sieci neuronowych, wykład 12 Wykorzystanie sieci rekurencyjnych w optymalizacji grafowej

Definicja pochodnej cząstkowej

Sponsorem wydruku schematu odpowiedzi jest wydawnictwo

Agnieszka Nowak Brzezińska

Grafy dla każdego. dr Krzysztof Bryś. Wydział Matematyki i Nauk Informacyjnych Politechnika Warszawska.

Szukanie najkrótszych dróg z jednym ródłem

Algorytm grupowania danych typu kwantyzacji wektorów

Klasa 1 technikum. Poniżej przedstawiony został podział wymagań na poszczególne oceny szkolne:

Hierarchiczna analiza skupień

1. FUNKCJE DZIAŁ Z PODRĘCZNIKA L.P. NaCoBeZu kryteria sukcesu w języku ucznia

Algorytm simplex i dualność

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Podstawowe własności grafów. Wykład 3. Własności grafów

Rozwiązywanie równań nieliniowych

Przedmiotowe zasady oceniania i wymagania edukacyjne z matematyki dla klasy drugiej gimnazjum

Metody uporządkowania

Rekurencja. Rekurencja zwana także rekursją jest jedną z najważniejszych metod konstruowania rozwiązań i algorytmów.

Transkrypt:

Algorytmy wyznaczania centralności w sieci Szymon Szylko Zakład systemów Informacyjnych Wrocław 10.01.2008

Agenda prezentacji Cechy sieci Algorytmy grafowe Badanie centralności Algorytmy wyznaczania centralności Przybliżone metody wyznaczania centralności

Cechy sieci Globalne własności sieci Średnica sieci Stopień klasteryzacji Stopień spójności Wyznaczanie maksymalnego przepływu Lokalne (centralność węzła, krawędzi) Wyznaczanie węzłów kluczowych Wyznaczanie stopnia powiązań Wyznaczanie centralności jako środka ciężkości Wyznaczanie miary betweennes

Algorytmy grafowe Algorytm Dijkstry Algorytm Bellmana-Forda Algorytm Floyda-Warshalla Algorytm Johnsona

Algorytm Dijkstry problem Najkrótsza ścieżka w grafie skierowanym, z wierzchołka s do wierzchołka t, w którym występują krawędzie o nieujemnych wagach s 2 1 1 1 2 3 t

Algorytm Dikstrij idea Pamiętany jest zbiór wierzchołków Q Nie obliczono dla nich najkrótszych ścieżek, wektor D[i] odległości od wierzchołka s do i. Początkowo zbiór Q zawiera wszystkie wierzchołki a wektor D jest pierwszym wierszem macierzy wag krawędzi A. Algorytm przebiega następująco: Dopóki zbiór Q nie jest pusty wykonuj: Pobierz ze zbioru Q wierzchołek v o najmniejszej wartości D[v] i usuń go ze zbioru. Dla każdego następnika i wierzchołka v dokonaj relaksacji ścieżki, tzn. sprawdź, czy D[i]>D[v]+A[v,i], tzn. czy aktualne oszacowanie odległości do wierzchołka i jest większe od oszacowania odległości do wierzchołka v plus waga krawędzi (v,i). Jeżeli tak jest, to zaktualizuj oszacowanie D[i] przypisując mu prawą stronę nierówności (czyli mniejszą wartość). Źródło http://www.algorytm.org/

Algorytm Dijkstry zastosowania Algorytm ten jest używany w transmisji danych w sieciach komputerowych W protokole OSPF jest wykorzystywany algorytm Dijkstry w celu znalezienia najlepszej drogi do przesłania pakietów.

Algorytm Floyda-Warshalla - problem Większy zakres rozwiązywania problemu niż algorytm Dijkstry Służy do znajdowania najkrótszych ścieżek pomiędzy wszystkimi parami wierzchołków w grafie ważonym.

Algorytm Floyda-Warshalla - idea Algorytm Floyda-Warshalla korzysta, że jeśli najkrótsza ścieżka pomiędzy wierzchołkami v1 i v2 prowadzi przez wierzchołek u, to jest ona połączeniem najkrótszych ścieżek pomiędzy wierzchołkami v1 i u oraz u i v2. V 1 V 2 u Źródło http://www.algorytm.org/

Algorytm Floyda Warshalla- idea Działanie algorytmu zaczyna od utworzenia listy z długości najkrótszych ścieżek Następne kroki algorytmu włączają do przeliczeń kolejne wierzchołki. W konsekwencji n-ty krok algorytmu polega na sprawdzeniu, czy dla każdej pary wierzchołków nie da się skrócić obliczonej drogi.

Algorytm wyznaczania centralnego węzła w sieci problem Poszukiwanie węzłów głównych Poszukiwanie węzłów znaczących Poszukiwanie węzłów centralnych

σ st () ( v) c st σ v = B v t s σ st Algorytm wyznaczania centralności betweennes węzła w sieci idea Istnieją wierzchołki s, t, v V Wiemy że istnieje przynajmniej jedna droga z s do t Liczymy ilość najkrótszych ścieżek z wierzchołka z s do t, Liczymy ilość ścieżek z s do t przechodzących przez wierzchołek v, σ ( v) σ st Suma stosunków st i daje stopień centralności c B () v = σ st σ st ( v) v t s σ st σ ( v) st

Podejście do obliczania Ułatwienie obliczania polega na zbudowaniu tabelki z długościami i liczbą najkrótszych ścieżek pomiędzy wszystkimi parami wierzchołków. A G C F c B ( v) X D

Złożoność Obliczenia cb(v) wynoszą O(n²) tylko przy liczeniu wyznaczaniu centralności dla jednego wierzchołka Dla wszystkich wierzchołków złożoność tego algorytmu wynosi O(n³)

c C (v) Algorytm wyznaczania centralności wierzchołków według bliskości Policzenie wszystkich wierzchołków n Policzenie sumy wszystkich odległości od wierzchołka v do wszystkich pozostałych wierzchołków Stosunek ilości wierzchołków ich odległości od wierzchołka v c n 1 = i 1, v t d( v, C ( v) = n 1 = i 1, v t t i ) n 1 d( v, t i )

Środek ciężkości Środek ciężkości - parametr opisujący dany węzeł, obliczany na podstawie wszystkich najkrótszych ścieżek prowadzących do tego węzła. Współczynnik ma wysoką lub niską wartość. Im wyższa wartość tym wierzchołek leży bardziej w centrum sieci Węzeł reprezentujący osobę o największym środku ciężkości można rozumieć jako osobę, która posiada bardzo dużo informacji.

Stopnie wierzchołków przychodzących i wychodzących Stopnie wierzchołków przychodzących i wychodzących Miara jest obliczana na podstawie ilości krawędzi wchodzących do danego węzła oraz z niego wychodzących. Parametr dla danego węzła jest tym większy, im więcej ma on połączeń przychodzących lub wychodzących.

Algorytmy wyznaczania centralnego węzła w sieci zastosowanie Wskazanie węzła o największej centralności Możliwość analizy połączeń bezpośrednich Możliwość badania pozycji w grupie Analiza straty

Problemy z liczeniem centralności Analiza dużej ilości sieci w racjonalnym czasie Złożoność obliczeniowa algorytmów wyznaczających centralność w sieci większość algorytmów rozwiązuje problemy w wielomianowym czasie

Zastosowanie aproksymacji Aproksymacja daje rozsądne lecz przybliżone rozwiązania Stosując aproksymację wybiera się kompromis pomiędzy czasem pracy - analizą sieci przez program, a dokładnością obliczeń

Przybliżenie rozwiązań Przybliżenie powinno dotyczyć przede wszystkim sposobu rozwiązywania problemów oraz w efekcie powinno się skupić na jakości wyników, które daje algorytmy przybliżone

Źródła do prezentacji Algorithms Centrality Indices D. Koschützki, K. Lehmann, L. Peeters, S. Richter, D. Tenfelde-Podehl and O. Zlotowski Jonak 07_Sieci_spoleczne_i_dynamika_sieciowa A. Jonak Środowisko do identyfikowania wzorców zachowań w oparciu o podejście sieci społecznych W. Piekaj1, G. Skorek1, A. Zygmunt1, J. Kozlak1 Badanie cytowania FN J. Krzysztofiak Szopa http://www.algorytm.org/

Koniec Dziękuję za uwagę