Reitinhaku pienissä maailmoissa

Samankaltaiset tiedostot
arvostelija OSDA ja UDDI palveluhakemistoina.

Selainpelien pelimoottorit

Department of Mathematics, Hypermedia Laboratory Tampere University of Technology. Roolit Verkostoissa: HITS. Idea.

Aika/Datum Month and year Kesäkuu 2012

isomeerejä yhteensä yhdeksän kappaletta.

Yleinen paikallinen vakautuva synkronointialgoritmi

Luku 7. Verkkoalgoritmit. 7.1 Määritelmiä

Pro gradu -tutkielma Meteorologia SUOMESSA ESIINTYVIEN LÄMPÖTILAN ÄÄRIARVOJEN MALLINTAMINEN YKSIDIMENSIOISILLA ILMAKEHÄMALLEILLA. Karoliina Ljungberg

V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen

Graafin 3-värittyvyyden tutkinta T Graafiteoria, projektityö (eksakti algoritmi), kevät 2005

Algoritmit 2. Luento 13 Ti Timo Männikkö

Laskennallinen yhteiskuntatiede

Työn laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages

Koht dialogia? Organisaation toimintaympäristön teemojen hallinta dynaamisessa julkisuudessa tarkastelussa toiminta sosiaalisessa mediassa

Algoritmit 2. Luento 12 Ke Timo Männikkö

Königsbergin sillat. Königsberg 1700-luvulla. Leonhard Euler ( )

13 Lyhimmät painotetut polut

Verkon värittäminen ja riippumattomat joukot: johdantoa ja sovelluksia

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

Algoritmit 1. Luento 8 Ke Timo Männikkö

7.4 Sormenjälkitekniikka

AVL-puut. eräs tapa tasapainottaa binäärihakupuu siten, että korkeus on O(log n) kun puussa on n avainta

58131 Tietorakenteet (kevät 2009) Harjoitus 11, ratkaisuja (Topi Musto)

MALLEJA JA MITTAREITA EPÄUNIFORMEILLE VERKOILLE

MALLEJA JA MITTAREITA

Konsensusongelma hajautetuissa järjestelmissä. Niko Välimäki Hajautetut algoritmit -seminaari

Maailman muutosta tallentamassa Marko Vuokolan The Seventh Wave -valokuvasarja avauksena taidevalokuvan aikaan

Dominointianalyysi. Teppo Niinimäki. Helsinki Approksimointialgoritmit HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

verkkojen G ja H välinen isomorfismi. Nyt kuvaus f on bijektio, joka säilyttää kyseisissä verkoissa esiintyvät särmät, joten pari

Johnson, A Theoretician's Guide to the Experimental Analysis of Algorithms.

Algoritmit 2. Luento 12 To Timo Männikkö

= 5! 2 2!3! = = 10. Edelleen tästä joukosta voidaan valita kolme särmää yhteensä = 10! 3 3!7! = = 120

Algoritmit 2. Luento 11 Ti Timo Männikkö

Relevanttien sivujen etsintä verkosta: satunnaiskulut verkossa Linkkikeskukset ja auktoriteetit (hubs and authorities) -algoritmi

Etsintä verkosta (Searching from the Web) T Datasta tietoon Heikki Mannila, Jouni Seppänen

Algoritmi on periaatteellisella tasolla seuraava:

! #! %! & #!!!!! ()) +

Induktiotodistus: Tapaus n = 0 selvä; ol. väite pätee kun n < m.

Luonnontieteiden popularisointi ja sen ideologia

Kombinatorinen optimointi

Harjoitus 7: NCSS - Tilastollinen analyysi

Katsaus korruption vaikutuksesta Venäjän alueelliseen talouskasvuun ja suoriin ulkomaisiin investointeihin

5/11 6/11 Vaihe 1. 6/10 4/10 6/10 4/10 Vaihe 2. 5/11 6/11 4/11 7/11 6/11 5/11 5/11 6/11 Vaihe 3

58131 Tietorakenteet ja algoritmit (kevät 2014) Uusinta- ja erilliskoe, , vastauksia

l (φ; y) = l(θ(φ); y) Toinen derivaatta saadaan tulon derivaatan laskusäännöllä Uudelleenparametroidun mallin Fisherin informaatio on

Tässä luvussa mietimme, kuinka paljon aineistossa on tarpeellista tietoa Sivuamme kysymyksiä:

Simulation model to compare opportunistic maintenance policies

Tutkimustiedonhallinnan peruskurssi

Arkkitehtuurinen reflektio

Algoritmit 1. Luento 9 Ti Timo Männikkö

Parinmuodostuksesta tietojenkäsittelytieteen silmin. Petteri Kaski Tietojenkäsittelytieteen laitos Aalto-yliopisto

Konsensusongelma hajautetuissa järjestelmissä

Joonas Haapala Ohjaaja: DI Heikki Puustinen Valvoja: Prof. Kai Virtanen

Johdatus graafiteoriaan

Silmukkaoptimoinnista

Tilastollinen testaus. Vilkkumaa / Kuusinen 1

Skedulointi, kuormituksen tasaus, robotin navigaatio

2 exp( 2u), kun u > 0 f U (u) = v = 3 + u 3v + uv = u. f V (v) dv = f U (u) du du f V (v) = f U (u) dv = f U (h(v)) h (v) = f U 1 v (1 v) 2

Verkon värittämistä hajautetuilla algoritmeilla

f(n) = Ω(g(n)) jos ja vain jos g(n) = O(f(n))

Tiivistelmä artikkelista Constrained Random Walks on Random Graphs: Routing Algorithms for Large Scale Wireless Sensor Networks

2. Seuraavassa kuvassa on verkon solmujen topologinen järjestys: x t v q z u s y w r. Kuva 1: Tehtävän 2 solmut järjestettynä topologisesti.

Keskeiset ladonta-algoritmit verkostoanalyysityössä

3. laskuharjoituskierros, vko 6, ratkaisut

4. laskuharjoituskierros, vko 7, ratkaisut

58131 Tietorakenteet ja algoritmit (syksy 2015) Toinen välikoe, malliratkaisut

1. Kuusisivuista noppaa heitetään, kunnes saadaan silmäluku 5 tai 6. Olkoon X niiden heittojen lukumäärä, joilla tuli 1, 2, 3 tai 4.

Datatähti 2019 loppu

Äärellisten automaattien ja säännöllisten lausekkeiden minimointi

Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun

MAT Todennäköisyyslaskenta Tentti / Kimmo Vattulainen

Verkkoalgoritmeja. Henry Niveri. hniveri(at)cc.hut.fi

Algoritmit 2. Luento 13 Ti Timo Männikkö

Satunnaisalgoritmit. Topi Paavilainen. Laskennan teorian opintopiiri HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Diskreetin matematiikan perusteet Esimerkkiratkaisut 3 / vko 10

MS-A0501 Todennäköisyyslaskennan ja tilastotieteen peruskurssi

Vektorien pistetulo on aina reaaliluku. Esimerkiksi vektorien v = (3, 2, 0) ja w = (1, 2, 3) pistetulo on

Johdatus todennäköisyyslaskentaan Normaalijakaumasta johdettuja jakaumia. TKK (c) Ilkka Mellin (2005) 1

Satunnaislukujen generointi

10. Painotetut graafit

Tilastotieteen kertaus. Vilkkumaa / Kuusinen 1

ABHELSINKI UNIVERSITY OF TECHNOLOGY

Tarkastelemme ensin konkreettista esimerkkiä ja johdamme sitten yleisen säännön, joilla voidaan tietyissä tapauksissa todeta kielen ei-säännöllisyys.

7. Satunnaisalgoritmit (randomized algorithms)

Implementation of Selected Metaheuristics to the Travelling Salesman Problem (valmiin työn esittely)

Väliestimointi (jatkoa) Heliövaara 1

Puiden karakterisointi

Matematiikan peruskurssi 2

Sovellettu todennäköisyyslaskenta B

4.1. Olkoon X mielivaltainen positiivinen satunnaismuuttuja, jonka odotusarvo on

Kokonaislukuoptimointi hissiryhmän ohjauksessa

Wattsin ja Strogatzin satunnaisverkkomallin klusteroituneisuus

58131 Tietorakenteet ja algoritmit (kevät 2013) Kurssikoe 2, , vastauksia

Johdatus todennäköisyyslaskentaan Momenttiemäfunktio ja karakteristinen funktio. TKK (c) Ilkka Mellin (2005) 1

Polkuintegraali yleistyy helposti paloitain C 1 -poluille. Määritelmä Olkoot γ : [a, b] R m paloittain C 1 -polku välin [a, b] jaon

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä

Hallintomallit Suomen valtionhallinnon tietohallintostrategioissa

Harjoitus 6 ( )

Johdatus lukuteoriaan Harjoitus 2 syksy 2008 Eemeli Blåsten. Ratkaisuehdotelma

D ( ) E( ) E( ) 2.917

Transkriptio:

hyväksymispäivä arvosana arvostelija Reitinhaku pienissä maailmoissa Janne Korhonen Helsinki 18.3.2009 Seminaariraportti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Tiedekunta Fakultet Faculty Laitos Institution Department Matemaattis-luonnontieteellinen Tekijä Författare Author Janne Korhonen Työn nimi Arbetets titel Title Tietojenkäsittelytieteen laitos Reitinhaku pienissä maailmoissa Oppiaine Läroämne Subject Tietojenkäsittelytiede Työn laji Arbetets art Level Aika Datum Month and year Sivumäärä Sidoantal Number of pages Seminaariraportti 18.3.2009 13 sivua Tiivistelmä Referat Abstract Psykologi Stanley Milgramin kuuluisa sosiaalisia verkostoja tutkinut koe 60-luvulla osoitti, että satunnaisia ihmisiä yhdistävät yllättävän lyhyet tuttavaketjut. Yleisemmin tällaista lyhyiden polkujen löytymistä verkoista kutsutaan pieni maailma -ilmiöksi. Tässä raportissa käsittelemme pienten maailmojen tutkimuksessa käytettyjä satunnaisverkkomalleja. Erityisesti keskitymme tutkimukseen, joka pyrkii selittämään, miten näitä lyhyitä polkuja voidaan löytää verkosta, vaikka emme tuntisikaan koko verkon globaalia rakennetta. Tämän esityksen ytimen muodostaa Jon Kleinbergin esittämän ruudukkomallin ja siihen liittyvien tulosten käsittely. ACM Computing Classification System (CCS): F.1.3 [Computation by Abstract Devices]: Complexity Measures and Classes, F.2.2 [Analysis of Algorithms and Problem Complexity]: Nonnumerical Algorithms and Problems, G.2.2 [Discrete Mathematics]: Graph Theory Avainsanat Nyckelord Keywords satunnaisverkot, pieni maailma, reitinhaku Säilytyspaikka Förvaringsställe Where deposited Muita tietoja övriga uppgifter Additional information

Sisältö ii 1 Johdanto 1 2 Pieni maailma -verkot 2 3 Kleinbergin ruudukkomalli 4 3.1 Ruudukkomallin määritelmä....................... 4 3.2 Tuloksia reitinhausta ruudukkomallissa................. 6 4 Muita tutkimussuuntia 9 4.1 Muita malleja............................... 9 4.2 Navigoitavien verkkojen rakentaminen................. 10 4.3 Pieni maailma -verkot suunnitteluperiaatteina............. 11 5 Yhteenveto 11 Lähteet 12

1 Johdanto 1 Psykologi Stanley Milgram toteutti alunperin vuonna 1967 sittemmin kuuluisaksi tulleen kokeen [Mil67], jossa satunnaisia ihmisiä pyydettiin toimittamaan kirje tietylle etukäteen valitulle henkilölle tuttavuusverkostoa hyväksi käyttäen. Kirjeen sai aina lähettää edelleen jollekin tuntemalleen henkilölle, joka puolestaan samalla tavalla yritti edelleen toimittaa kirjeen perille asti. Osoittautui, että kirjeen toimittamiseen kohdehenkilölle tarvittiin välikäsiä keskimäärin viiden ja kuuden väliltä. Tulos näyttäisi siis viittaavan siihen, että tutkitusta sosiaalisesta verkostosta löytyy lyhyitä reittejä mielivaltaisten ihmisten väliltä, ja niitä jopa pystytään löytämään suhteellisen yksinkertaisella menettelyllä. Tätä kutsutaan pieni maailma -ilmiöksi. Toisaalta viime vuosikymmeninä monimutkaiset verkot ovat yleisemminkin nousseet tärkeään asemaan useissa tieteissä. Yhteiskuntatieteissä erilaiset Internet-yhteisöt ovat tuottaneet ennennäkemättömiä määriä dataa analysoitavaksi, ja näistä verkoista on löytynyt vastaavanlaisia pieni maailma -ilmiöitä kuin Milgramin alkuperäisessä kokeessa. Vastaavasti biologiassa esimerkiksi solun metabolian tutkimus on johtanut monimutkaisiin metaboliaverkkomalleihin. Menetelmät tällaisten monimutkaisten verkkojen tutkimiseen ovat siis tarpeen monella eri alalla. Keskeisenä teemana on ymmärtää, miten verkon rakenne syntyy ja miten se vaikuttaa verkon toimintaan. Eräs lähestymistapa monimutkaisten verkkojen tutkimukseen ovat satunnaisverkot. Matemaattisella tasolla satunnaiverkoissa on kyse verkkoteorian yhdistämisestä satunnaisuuteen; tutkitaan matemaattisesti, minkälaisia verkkoja jonkin satunnaismallin generoimana syntyy. Satunnaisverkoille on myös löytynyt paljon käyttöä soveltavassa tutkimuksessa. Perusajatus näissä satunnaisverkkomalleissa on seuraava, kuten artikkelissa [Kle06] on kuvattu. Lähtökohtana on jokin empiirisen datan perusteella rakennettu verkko, johon liittyvää ilmiötä halutaan tutkia. Tästä verkosta muodostetaan idealisoitu satunnaisverkkomalli, joka käyttäytyy joltain oleelliselta osin samalla tavalla kuin varsinainen tutkittava verkko. Tätä yksinkertaisempaa satunnaisverkkomallia voidaan sitten tutkia matemaattisesti tai simulaatioiden kautta. Tavoitteena on, että satunnaisverkkomallissa esiintyisi alkuperäisessä verkossa esiintynyt tutkimuksen kohteena oleva ilmiö, ja tätä ilmiötä voitaisiin tutkia paremmin mallin perusteella. Tällä menetelmällä on tietenkin rajoituksensa, sillä malli on aina yksinkertaistus oikean verkon taustalla olevista prosesseista. Tässä raportissa tarkastelemme satunnaisverkkojen käyttämistä pieni maailma -il-

2 miön tutkimisessa, erityisesti tietojenkäsittelytieteelle ominaisesta algortimisesta näkökulmasta. Käsittelemme yleisesti pieni maailma -ilmiön tutkimusta satunnaisverkkojen avulla pitkälti artikkelia [Kle06] referoiden. Keskitymme erityisesti Kleinbergin esittämään ruudukkomalliin ja siitä saatuihin tuloksiin [Kle00a, Kle00b]. 2 Pieni maailma -verkot Milgram ja Travers toistivat alussa mainitsemamme alkuperäisen kokeen vuonna 1969 ja raportoivat yksityiskohtaisesti tuloksistaan artikkelissaan [TM69]. Tässä kokeessa he lähettivät 296 satunnaisesti valitulle henkilölle Nebraskassa ja Bostonissa kirjeen, jossa pyydettiin osallistumaan kokeeseen ja selitettiin samalla säännöt. Kokeen osallistujan tulisi saada kirje toimitettua etukäteen valitulle henkilölle Massachusettsissa. Kirjeen sai kuitenkin lähettää eteenpäin vain jollekin itse tuntemalleen henkilölle, jonka tulisi taas jatkaa tehtävää samojen sääntöjen mukaan. Kirjeiden kulkua seurattiin osallistujien tutkijoille palauttamien postikorttien avulla, jolloin kirjeiden kulusta saatiin runsaasti dataa. Tavoitteena oli näin tutkia pieni maailma -ilmiötä; miten lähekkäin 200 miljoonan Yhdysvaltain kansalaisen joukosta valitut kaksi henkilöä ovat sosiaalisessa verkostossa. Lopulta 296 kirjeestä 64 löysi tiensä kohdehenkilölle, ja näistä laskettuna keskimääräinen tarvittujen välikäsien määrä oli 5,2. Kokeen tulokset eivät sinällään siis ole aivan selviä. Perinteisesti perille saapuneiden kirjeiden lyhyet polut on tulkittu todisteeksi sosiaalisen verkoston pienuudesta. Esimerkiksi Kleinfeld on kuitenkin esittänyt [Kle02], että perille saapumattomien kirjeiden suuri määrä viittaisi täysin päinvastaiseen tilanteeseen. Lisäksi hän kritisoi Milgramin ja Traversin kokeita siitä, että koehenkilöt oli valittu korkeammista yhteiskuntaluokista, jonka edustajilla olisi paremmat valmiudet toimittaa kirje perille. Kleinfeld esittääkin, etteivät kirjeet välttämättä löytäisi onnistuisi helposti ylittämään yhteiskuntaluokkien rajoja. Toisaalta Dodds, Muhamad ja Watts ovat toistaneet Milgramin kokeen sähköpostia käyttäen [DMW03], ja heidän tuloksensa näyttäisivät tukevan pieni maailma -hypoteesia. Pieni maailma -verkkojen tutkimus on joka tapauksessa edennyt monella saralla Milgramin ja Traversin alkuperäisten kokeiden jälkeen [Str01, Kle06]. Teoreetikot ovat tutkineet erilaisia malleja ilmiöstä ja empiirisiä esimerkkejä pieni maailma -ilmiöstä on löytynyt monilta mahdollisilta sovellusalueilta. Tällaisissa verkoissa näyttää yleisesti olevan kaksi keskeistä ominaisuutta. Ensinnäkin verkkojen läpimitta on huo-

3 a) b) Kuva 1: a) Wattsin ja Strogatzin mallin pohjana toimiva rengasverkko, kun k = 4. b) Rengasverkko, jossa kaaria on muokattu satunnaisesti. mattavan pieni solmujen lukumäärään verrattuna. Toisekseen solmut ovat klusteroituneet, eli jos solmu u on solmun v naapuri ja v taas solmun w naapuri, niin suurella todennäköisyydellä myös u on solmun w naapuri. Kleinbergin artikkeli [Kle06] esittelee yksinkertaisimpana mallivaihtoehtona pienille maailmoille satunnaismallin, jossa verkko valitaan tasaisesti kaikkista n-solmuisista verkoista, joissa jokaisen solmun aste on k, missä k 3 on kiinnittetty. Tässä yksinkertaisessa mallissa voidaan todistaa [BdlV82], että suurella todennäköisyydellä jokaisen solmuparin välillä on pituutta O(log n) oleva polku. Tämä malli kuitenkin hylätään välittömästi, sillä täysin satunnaisista verkkomalleista ei löydy kuvaamamme kaltaista solmujen klusteroitumista, vaan solmun naapurit ovat vain harvoin toistensakin naapureita. Watts ja Stogatz ovat esittäneet toimivaksi osoittautuneen mallin, joka asettuu täysin säännöllisten ja täysin satunnaisten verkkojen väliin [WS98]. Tässä mallissa pohjana on suuntaamaton rengasverkko, jossa n solmua on asetettu ympyrän kehälle ja jokaisesta näistä on kaari k:hon lähimpään naapuriin (kuva 1 a)). Tämän säännöllisen rengasverkon rakennetta sitten muokataan satunnaisesti. Verkon muokkaus aloitetaan mielivaltaisesta verkon solmusta u ja kaaresta e, joka yhdistää solmun u lähimpään naapuriinsa myötäpäivään. Todennäköisyydellä p kaaren e toinen pää vaihdetaan satunnaiseksi solmuksi, joka valitaan tasaisen ja-

4 kauman mukaan kaikista verkon solmuista. Jos valitun solmun ja solmun u välillä on jo kaari, jätetään kuitenkin muutos tekemättä. Prosessia jatketaan näin myötäpäivää käymällä kaikki solmut vastaavalla tavalla läpi. Täyden kierroksen jälkeen aloitetaan alusta, tällä kertaa muuttaen samalla tavalla solmun toiseksi lähimpään naapuriin myötäpäivään menevää kaarta. Lopulta kaikki kaaret tulee käytyä näin läpi. Riippuen parametrista p tämä prosessi voi tuottaa hyvin säännöllisiä tai hyvin satunnaisia verkkoja. Sopivilla vakion p arvoilla mallista kuitenkin saadaan verkkoja, jotka ovat sekä klusteroituneita että läpimitaltaan pieniä (kuva 1 b)). Siis Wattsin ja Strogatzin malli onnistuu kuvaamaan hyvin pienen maailman ominaispiirteet. 3 Kleinbergin ruudukkomalli Vaikka sosiaalisissa verkostoissa olisikin olemassa lyhyitä reittejä mielivaltaisten henkilöiden välillä, ei kuitenkaan ole selvää, miksi niiden pitäisi olla löydettävissä Milgramin käyttämän menetelmän kaltaisilla keinoilla. Tässä mielessä edellä esittämämme mallit eivät ole täysin tyydyttäviä Milgramin kokeen analysointiin. Esittelemme siksi nyt mallin, jota Kleinberg on käyttänyt tutkiakseen, miten lyhyiden reittien löytäminen onnistuu, vaikka hakuprosessissa ei voidakaan käyttää hyväksi tietoa verkon koko topologiasta [Kle00a, Kle00b]. 3.1 Ruudukkomallin määritelmä Kleinbergin malli on perusajatukseltaan hyvin samanlainen kuin aiemmin käsittelemämme Wattsin ja Strogatzin rengasverkko. Mallin pohjana toimii kuitenkin nyt n n ruudukko, ja lisäksi malli on suunnattu verkko. Jatkossa oletamme, että p, q N ja r R, r 0 ovat kiinnitettyjä vakioita. Näitä käytämme mallin parametreina. Lähdemme siis siitä, että mallin solmujoukko on V = {(i, j) i, j {1,..., n}} (kuva 2 a)). Olkoon nyt d((i, j), (k, l)) = (i, j) (k, l) 1 = k i + l i eli manhattan-etäisyys tasossa. Mallissa on suunnattu kaari solmusta u solmuun v, jos d(u, v) p. Näitä kutsumme solmun paikallisiksi kontakteiksi. Lisäksi joka solmusta lähtee q kappaletta suunnattuja kaaria satunnaisesti arvoittuihin muihin

5 a) b) Kuva 2: a) Kleinbergin mallin pohjana toimiva ruudukko ja kiinteät linkit, kun p = 1. b) Yhden solmun satunnaiset naapurit, kun q = 2. solmuihin (kuva 2 b)). Nämä satunnaiskaarten kohteet valitaan toisistaan riippumattomasti niin, että kullekin solmulle v V todennäköisyys valita v kohteeksi on d(u, v) r v V d(u, v) r. Satunnaisesti valittujen linkkien kohdesolmuja kutsumme lähtösolmun pitkän matkan kontakteiksi. Tällä mallilla on luonnollinen tulkinta sosiaalisten verkostojen mielessä. Solmun sijainnin voi ajatella vastaavan yksittäisen ihmisen maantieteellistä sijaintia. Ihmiset tuntevat muut itseään lähellä asuvat ihmiset, ja lisäksi heillä on muutamia kauempana asuvia tuttavia. Jos parametrit p ja q ovat kiinteitä ja parametrin r sallitaan vaihtelevan, saamme malliperheen, jossa parametri r kuvaa sitä, millä tavalla yhteisö on verkostoitunut. Pieni r johtaa siihen, että kaukaiset tuttavat ovat yleisiä, kun taas suurella r:llä pitkän matkan kontaktit ovat tyypillisesti solmun läheisyydessä. Milgramin koetta mukaillen tutkimme tässä mallissa paikallisen tiedon reitinhakualgoritmeja. Toisin sanoen, meille on annettu kaksi solmua s ja t, ja tavoitteena on toimittaa viesti solmusta s solmuun t mahdollisimman pienellä määrällä askelia. Kun viesti on jossain solmussa u, solmu toimittaa viestin eteenpäin yhdelle paikkallisista tai pitkän matkan kontakteistaan suunnatussa verkossa. Seuraavaa välittäjää valitessaan solmu u voi käyttää vain yleistä tietoa verkosta ja tietoa omista naapureistaan. Oletamme siis, että solmu u tietää vain omat kontaktinsa, kaikkien

6 solmujen paikalliset kontaktit ja kohdesolmun t sijainnin. 3.2 Tuloksia reitinhausta ruudukkomallissa Analysoimme nyt paikallisen tiedon reitinhakua Kleinbergin mallissa käymällä läpi artikkelin [Kle00b] keskeiset tulokset. Kiinnostava suure on nyt odotusarvoinen toimitusaika, jolla tarkoitamme algoritmin tarvitsemien askelten odotusarvoa, kun lähtö- ja maalisolmu on valittu satunnaisesti tasajakaumalla ja solmujen väliset pitkän matkan kontaktit on valittu parametrin r määräämällä jakaumalla. Kleinberg huomauttaa artikkelissaan, että standarditulokset satunnaisverkkojen teoriasta antavat olemassaolotuloksen verkon koon n suhteen polylogaritmisille reiteille, kun r = 0. Tällaisten lyhyiden reittien löytäminen pelkän paikallisen tiedon perusteella ei kuitenkaan välttämättä onnistu. Yksinkertainen lähestymistapa lyhyen reitin löytämiseen on seuraava. Solmu u valitsee seuraavaksi viestin vastaanottajaksi kontakteistaan sen, joka on lähimpänä kohdesolmua t manhattan-etäisyyden d mielessä. Tämä menetelmä on itse asiassa jossain tapauksissa hyvin toimiva: Lause 1 ([Kle00b]). Kun r = 2 ja p = q = 1, esitetyn algoritmin odotusarvoinen toimitusaika on korkeintaan α 2 (log 2 n) 2 kiinteällä vakiolla α 2. Todistus. Koska nyt p = q = 1, verkossamme jokaisella solmulla u on neljä paikallista kontaktia (tai kolme tai kaksi, jos solmu on verkon reunalla) ja lisäksi yksi pitkän matkan kontakti. Esittämämme algoritmi siirtää viestiä joka askeleella aidosti lähemmäksi kohdesolmua, joten se ei koskaan voi palata takaisin solmuun, jossa se on aikaisemmin käynyt. Koska lisäksi oletamme, ettei algoritmi tunne pitkän matkan kontakteja etukäteen, voimme analyysissa ajatella, että satunnainen linkki solmusta u generoidaan vasta siinä vaiheessa, kun viesti saapuu solmuun u. Jatkossa sanomme, että algoritmi on vaiheessa j > 0, jos viesti on solmussa u ja 2 j < d(u, t) 2 j+1. Vastaavasti sanomme algoritmin olevan vaiheessa 0, jos d(u, t) 2. Huomataan, että d(s, t) 2n 2, joten j log 2 n lähtötilanteessa. Siispä vaiheita on logaritminen määrä. Osoitamme, että algoritmi tarvitsee odotusarvoisesti korkeintaan logaritmisen määrän askelia jokaisessa vaiheessa, mistä tulos seuraa helposti. Olkoon nyt u ja v kiinnitettyjä solmuja. Todennäköisyys että v on solmun u satun-

7 naisesti arvottu kontakti on d(u, v) 2 v V d(u, v) 2. Voimme arvioida d(u, v) 2 v V 2n 2 j=1 2n 2 = 4 j=1 (4j)(j 2 ) j 1 4 + 4 ln(2n 2) 4 ln(6n). Siis todennäköisyys valita v naapuriksi on vähintään (4 ln(6n)d(u, v) 2 ) 1. Tulemme hyödyntämään tätä arviota jatkossa. Olkoon nyt X j satunnaismuuttuja, joka kertoo, kuinka monta askelta algoritmi käyttää vaiheessa j. Haluamme nyt arvioida tämän satunnaismuuttujan odotusarvoa E[X j ]. Oletamme ensin, että algoritmi on vaiheessa j ja log 2 (log 2 n) j < log 2 n. Olkoon viesti solmussa u. Tutkimme todennäköisyyttä, että algoritmi siirtyy pois vaiheesta j solmun u lähettäessä viestin edelleen. Vaihe j päättyy, kun viesti siirtyy solmuun joukossa B j = {v V d(v, t) 2 j }. Saamme alarajan joukon B j koolle huomaamalla, että pahimmassakin tapauksessa, eli kun solmu t on verkon nurkassa, pätee 2 j B j 1 + i = 1 2 22j + 1 2 2j + 1 > 2 2j 1. i=1 Kolmioepäyhtälön nojalla jokaisella v B j on voimassa d(u, v) d(u, t) + d(t, v) 2 j+1 + 2 j < 2 j+2. Aikaisemman arviomme perusteella siis jokaisella v V todennäköisyys valita v solmun u satunnaiskontaktiksi on vähintään (4 ln(6n)2 2j+4 ) 1. Siis summaamalla yli joukon B j vähintään todennäköisyydellä solmujen, viesti siirtyy solmusta u joukkoon B j 2 2j 1 (4 ln(6n)2 2j+4 ) 1 = 1 128 ln(6n).

8 Nyt voimme arvioida satunnaismuuttujan X j odotusarvoa. Siis E[X j ] = Pr[X j i] i=0 ( ) i 1 1 1 i=0 128 ln(6n) = 128 ln(6n). Tapauksessa j = log 2 n vastaavanlainen päättely antaa myös E[X j ] 128 ln(6n). Jos taas 0 j < log 2 (log 2 n), niin algoritmi voi käyttää korkeintaan log 2 n askelta vaiheessa j, vaikka se aina lähettäisi viestin eteenpäin kiinteitä naapurilinkkejä pitkin. Siis välttämättä myös E[X j ] 128 ln(6n). Olkoon nyt X algoritmin kokonaisuudessaan tarvitsemien askelten määrä. Tällöin X = log 2 n j=0 X j, joten käyttämällä odotusarvon lineaarisuutta saamme E[X] = E = kun α 2 valitaan sopivasti. log 2 n j=0 log 2 n X j j=0 E[X j ] (1 + log 2 n)(128 ln(6n)) α 2 (log 2 n) 2, Esitetyn algoritmin tehokkuus perustuu oleellisesti siihen, että tapauksessa r = 2 satunnaiset linkit ovat jakautuneet juuri sopivasti. Verkossa on tällöin riittävästi pitkän matkan linkkejä, mutta ne ovat kuitenkin sen verran säännöllisesti jakautuneita, että algoritmi löytää niitä suurella todennäköisyydellä. Kun r on hyvin pieni, ovat pitkän matkan linkit jakautuneet niin tasaisesti, että sopivaan paikkaan menevää linkkiä ei välttämättä löydy. Suurella vakion r arvolla satunnaislinkit taas ovat yleensä niin lyhyitä, etteivät ne riitä nopean reitin löytymiseen. Lause 2 täsmentää tätä havaintoa. Lause 2 ([Kle00b]). Olkoon p, q kiinnitettyjä. (i) Olkoon 0 r < 2. Tällöin on olemassa vakio α r, jolla jokaisen paikallisen tiedon reitinhakualgoritmin odotusarvoinen toimitusaika on vähintään α r n (2 r)/3.

(ii) Olkoon r > 2. Tällöin on olemassa vakio α r, jolla jokaisen paikallisen tiedon reitinhakualgoritmin odotusarvoinen toimitusaika on vähintään α r n (r 2)/(r 1). 9 Sivuutamme todistuksen. Karkeasti ottaen kohdan (i) todistus perustuu siihen, että kun viestin etäisyys kohdesolmusta on alle pn (2 r)/3, suurella todennäköisyydellä kaikki kohdatut pitkän matkan kontaktit ovat kauempana kohdesolmusta kuin tämänhetkinen solmu. Siis algoritmi joutuu kulkemaan ainakin n (2 r)/3 askelta paikallisia linkkejä pitkin. Kohdan (ii) todistuksessa osoitetaan, että suurella todennäköisyydellä kaikki kohdatut pitkän matkan linkit ovat melko lyhyitä. Tällöin huolimatta siitä, että algoritmi voi käyttää näitä linkkejä, tarvitaan kuitenkin polynomiaalinen määrä askelia ennen kohdesolmun saavuttamista. Itse asiassa voimme sallia algoritmin tuntevan myös kaikkien viestiä aikaisemmin välittäneiden solmujen satunnaiset naapurit, joten tulos on sinällään suhteellisen vahva. Erityisesti lause 2 sisältää myös tapauksen r = 0, jolloin satunnaiset linkit ovat jakautuneet tasaisesti yli verkon solmujen. Tämä vastaa tietyssä mielessä Wattsin ja Strogatzin mallia, jossa satunnaisten kaarten jakauma oli myös tasainen. Kleinberg mainitsee artikkelissaan, että nämä tulokset yleistyvät tapaukseen, jossa mallin pohjana käytetään k-ulotteista ruudukkoa esittelemämme 2-ulotteisen tapauksen sijaan. Tällöin vastavaasti tehokas paikallisen tiedon reitinhakualgoritmi on olemassa vain jos r = k. 4 Muita tutkimussuuntia Pieni maailma -verkkojen tutkimus on aktiivinen alue, joka leikkaa verkkoteoriaa, teoreettista tietojenkäsittelytiedettä ja soveltavampia aloja. Erityisesti reitinhakuun liittyvissä kysymyksissä esittämämme Kleinbergin ruudukkomalli on osoittautunut toimivaksi prototyyppimalliksi, joka jo itsessään vastaa moniin kysymyksiin. Siihen liittyen on myös tehty paljon jatkotutkimusta, ja on osoittautunut, että monet yleisempien tulosten kannalta keskeiset ideat esiintyvät jo tässä yksinkertaisessa mallissa. Esittelemme nyt lyhyesti joitain kiinnostavia tutkimussuuntia pieniin maailmoihin ja paikalliseen reitinhakuun liittyen. Tämä on kuitenkin laaja ala, joten emme pysty tietenkään kattamaan kaikkea mahdollista. Esimerkiksi artikkelit [Kle06, Str01] tarjoavat lisää viitteitä kiinnostuneille.

10 4.1 Muita malleja Mainitsimme jo aikaisemmin, että Kleinbergin ruudukkomallin pohjana toimiva verkko on tietyllä tapaa abstraktio ihmisten maantieteellisestä sijainnista ja siitä, että tyypillisesti tuttavat asuvat lähekkäin. Empiirisissä kokeissa on kuitenkin osoittautunut, että Milgramin alkuperäisen kokeen asetelmassa osallistujat käyttävät hyväkseen myös tietoa kohteen ammatista. Kirjeen seuraava välittäjä saatetaankin valita niin, että hän on lähempänä kohdetta ammatillisessa mielessä, sen sijaan että yritettäisiin minimoida maantieteellistä etäisyyttä. Tämän ilmiön analysointia varten Kleinberg on esitellyt hierarkisen mallin [Kle01]. Hierarkisessa mallissa verkon pohjana toimii b-puu, jonka lehdet muodostavat verkon solmujoukon. Näiden välille arvotaan satunnaisesti kaaria sen perusteella, kuinka kaukana ne ovat toisistaan alkuperäisessä puussa. Kleinberg on myös esittänyt sekä ruudukko- että hierarkista mallia yleistävän joukkosysteemeihin perustuvan mallin [Kle01]. Hän on todistanut sekä hierarkiselle mallille että joukkosysteemin pohjalta rakennetulle mallille lauseiden 1 ja 2 kanssa analogiset tulokset. Juuri sopivalla jakaumalla nämäkin mallit tuottavat verkkoja, joissa voidaan löytää lyhyitä reittejä tehokkaasti paikallisen tiedon avulla. 4.2 Navigoitavien verkkojen rakentaminen Olemme jo nähneet, että erilaisista pohjarakenteista saa sopivasti satunnaisia kaaria lisäämällä rakennettua verkkoja, joissa on mahdollista löytää paikallisen tiedon perusteella lyhyitä reittejä. Erityisen kriittistä oli kuitenkin juuri oikean satunnaiskaarten jakauman valitseminen, sillä muuten polylogaritmisten reittien löytäminen ei onnistu. Fraigniaud esitti tähän liittyen yleisemmän kysymyksen artikkelissaan [Fra05]: voiko mistä tahansa verkosta löytää vain paikallisen tiedon perusteella lyhyitä polkuja, jos verkkoon lisätään ensin pieni määrä satunnaisia kaaria sopivalla tavalla. Täsmällisemmin meille on annettu verkko G = (V, E). Liitämme verkkoon kokoelman todennäköisyysjakaumia φ = {φ u u V }. Nyt jokaiselle solmulle u lisätään pitkän matkan kontakti samaan tapaan kuin Kleinbergin ruudukkomallissa, valiten tämä kontakti jakauman φ u mukaisesti. Tässä verkossa voidaan nyt etsiä lyhyitä reittejä paikallisen tiedon perusteella tuttuun tapaan; kahden solmun etäisyys määritellään alkuperäisen verkon G perusteella, ja algoritmi etenee aina kohdesolmua lähimpään naapuriin.

11 Sanomme, että verkko G = (V, E) on navigoitava, jos löytyy kokoelma φ todennäköisyysjakaumia, niin että jokaisella s, t V mainittu reitinhakualgoritmi löytää odotusarvoisesti pituutta O(polylog(n)) olevan reitin verkossa, joka saadaan G:stä lisäämällä satunnaiskaaria jakaumaperheen φ mukaisesti. Fraigniaudin esittämä kysymys on siis, ovatko kaikki verkot navigoitavia. On osoittautunut, että monet sopivia säännöllisyysominaisuuksia omaavat verkkoluokat ovat navigoitavia. Nämä verkot siis tarjoavat mahdollisia malleja reitinhaun tutkimiseen pienissä maailmoissa. Tästä huolimatta on kuitenkin löytynyt suhteellisen yksinkertainen kokoelma ei-navigoitavia verkkoja [FLL06]. 4.3 Pieni maailma -verkot suunnitteluperiaatteina Edellä esittämämme tulokset ovat tähdänneet erityisesti reitinhaun toiminnan ymmärtämiseen pieni maailma -verkoissa. Itsessään nämä tulokset ovat melko spesifisiä, mutta niille on löydetty myös sovelluskohteita. Erityisesti käsittelemiämme malleja ja algoritmeja voidaan käyttää suunnitteluperiaatteina hajautetuissa systeemeissä, joissa verkon globaali rakenne ei ole tiedossa, mutta tehokkaalle reititykselle on tarvetta. Selkein esimerkki mainitsemamme kaltaisesta asetelmasta ovat peer-to-peer -verkot. Milgramin kokeen asetelma muistuttaa nimittäin pitkälti hajautettua peer-to-peer -verkkoa, jossa ei ole keskusindeksiä reitityksen tueksi, vaan reitit täytyy rakentaa paikallisen tiedon varassa. Perusideana on siis suunnitella peer-to-peer -verkko siten, että sen solmut muodostavat pienen maailman, jossa reitinhaku voidaan tehdä tehokkaasti. Freenet on esimerkki tällaisesta peer-to-peer -systeemistä. Se on suunniteltu nimenomaan anonymiteettia ja sensuurin kestävyyttä painottaen, joten siinä ei ole minkäänlaista keskitettyä rakennetta. Kleinbergin ruudukkomallia onkin käytetty suunniteltaessa Freenetin toimintaa; esimerkiksi Zhang, Goel ja Govidan ovat esitelleet reititystaulujen hallintatekniikan, joka johtaa Kleinbergin mallin kaltaiseen verkon topologiaan [ZGG04]. Myös Freenetin version 0.7 reititysmekaniikka perustuu Kleinbergin ruudukkumalliin [San06].

5 Yhteenveto 12 Satunnaisverkkomallit tarjoavat hyödyllisiä työkaluja erilaisten oikean maailman verkkojen tutkimiseen. Tätä teemaa noudattaen esitimme Kleinbergin ruudukkomallin, jonka pohjalta saimme matemaattisesti täsmällisiä tuloksia paikallisen tiedon reitinhaun toiminnasta pieni maailma -verkoissa. Kyseinen malli on osoittautunut kiinnostavien teoreettisten ominaisuuksiensa lisäksi hyödylliseksi myös käytännössä sekä on innoittanut jatkotutkimusta erinäisistä näkökulmista. Tulokset viittaavat siihen, että reitinhaku onnistuu tehokkaasti silloin, kun verkossa on jokin tunnettu topologia pohjalla sekä juuri sopivasti jakautuneita satunnaisia linkkejä. Tällöin algoritmi pystyy hyödyntämään verkon implisiittistä rakennetta ja viestejä voidaan välittää tehokkaasti tuntematta kaikkia verkon pitkän matkan kaaria. Tämä havainto auttaa ymmärtämään erilaisia sosiaalisissa verkoistoissa esiintyviä ilmiöitä, ja toisaalta tarjoaa suunnitteluperiaatteita hajautettujen systeemien rakentamiseen. Huomautamme kuitenkin, että esittämämme malli on erittäin yksinkertainen, joten tulokset eivät välttämättä vastaa oikeiden verkostojen käyttäytymistä. Yleisesti pieni maailma -ilmiön ja reitinhakuongelman tutkimus on kiinnostava ja aktiivinen tutkimusala, joka tarjoaa niin teoreettisia kuin käytännönläheisiä ongelmia. Näin Internetin ja massiivisten verkostojen aikakaudella tällä tutkimuksella on myös paljon sovelluskohteita. Lähteet BdlV82 DMW03 FLL06 Fra05 Bollobás, B. ja de la Vega, W. F., The diameter of random regular graphs. Combinatorica, 2(1982), sivut 125 134. Dodds, P. S., Muhamad, R. ja Watts, D. J., An experimental study of search in global social network. Science, 301(2003), sivut 827 829. Fraigniaud, P., Lebhar, E. ja Lotker, Z., A doubling dimension threshold θ(log log n) for augmented graph navigability. Lecture Notes in Computer Science, 4168(2006), sivut 376 386. Fraigniaud, P., A new perspective on the small-world phenomenon: Greedy routing in tree-decomposed graphs. Proceedings of 13th Annual European Symposium on Algorithms, 2005.

Kle00a Kleinberg, J., Navigation in a small world. Nature, 406(2000), sivu 845. 13 Kle00b Kle01 Kleinberg, J., The small-world phenomenon: An algorithmic perspective. Proceedings of the 32nd Annual Symposium on Theory of Computing, New York, 2000, ACM Press, sivut 163 170. Kleinberg, J., Small-world phenomena and the dynamics of information. Advances in Neural Information Processing Systems, 14(2001), sivut 431 438. Kle02 Kleinfeld, J., The small world problem. Society, 39(2002), sivut 61 66. Kle06 Mil67 Kleinberg, J., Complex networks and decentralized search algorithms. Proceedings of the International Congress of Mathematicians (ICM), 2006. Milgram, S., The small world problem. Psychology Today, 1(1967), sivut 60 67. San06 Sandberg, O., Distributed routing in small-world networks. Proceedings of the Ninth Workshop on Algorithm Engineering and Experiments. SIAM, 2006, sivut 144 155. Str01 TM69 WS98 ZGG04 Strogatz, S. H., Exploring complex networks. Nature, 410(2001), sivut 268 276. Travers, J. ja Milgram, S., An experimental study of the small world problem. Sociometry, 32(1969), sivut 425 443. Watts, D. J. ja Strogatz, S. H., Collective dynamics of small world networks. Nature, 393(1998), sivut 440 442. Zhang, H., Goel, A. ja Govindan, R., Using the small-world model to improve freenet performance. Computer Networks, 46(2004), sivut 555 574.