Keskeiset ladonta-algoritmit verkostoanalyysityössä Verkostoanalyysi 2011 TTY Jarno Marttila Tampereen teknillinen yliopisto Hypermedialaboratorio TUT / HLAB 1
Sisällys Graafien piirtämisestä Ladonnasta Ladontamenetelmistä Esimerkkejä ladonnasta TUT / HLAB 2
Königsbergin siltaongelma Lähde:http://fi.wikipedia.org/wiki/Tiedosto:Konigsberg_bridges.png TUT / HLAB 3
Lähde: http://fi.wikipedia.org/wiki/tiedosto:7_bridges.svg Lähde: http://fi.wikipedia.org/wiki/tiedosto:konigsburg_graph.svg TUT / HLAB 4
Ladonta-algoritmit Minkälainen on hyvin piirretty graafi? Kysymys on hankala Vaatii ladonnan ominaisuuksien ja luokittelun määrittelyä erilaisten graafien suhteen Ladonta-algoritmeja voidaan jaotella eri tavoin esim. metodologia Planaarisuus Jaottelut nostavat lisää kysymyksiä Esim planaarisuudelle Onko mahdollista piirtää graafi ilman reunan ylitystä Tasossa olevan graafin ladonta täyttäen ennaltamääritellyn joukon rajoitteita TUT / HLAB 5
Useimmat rajoitteista koskevat esteettisiä sääntöjä, joita asetetaan lopulliselle ladonnalle Solmujen ja kaarien tulee olla tasaisesti jaettu Kaarien tulee olla saman mittaisia Kaarien tulee olla suoria Isomorfisten rakenteiden esittäminen samalla tavalla Kaarien ylitysten minimoiminen jne. TUT / HLAB 6
Esteettisyyteen liittyen on tehty käytettävyystutkimusta Tulokset ovat osoittaneet että reunojen ylityksen vähentäminen on esteettisesti huomattavasti tärkeämpää kuin mutkien/kaarien minimoiminen tai symmetrian maksimoiminen TUT / HLAB 7
Eri ladonta-algoritmityyppejä Puu-algoritmit (engl. Tree algorithms) Kehä-algoritmit (engl. Circular algorithms) Voimaohjatut-algoritmit (engl. Force-directed algorithms) Taso-algoritmit (engl. Planar-algorithms) Selkä-algoritmit (engl. Spine-algorithms) Hierarkiset-algoritmit 3-ulotteiset-algoritmit TUT / HLAB 8
Ladontien vertailua Ladonta toimintaperiaate Edut & haitat Roberto Tamassia (2011). Handbook of Graph Drawing and Visualization. http://www.cs.brown.edu/~rt/gdhandbook/ NWB Team. (2006). Network Workbench Tool. Indiana University, Northeastern University, and University of Michigan, http://nwb.slis.indiana.edu TUT / HLAB 9
Jousiohjattu ladonta (engl. Spring layout) Yksinkertaisin voimaohjattu ladonta-algoritmi Kaaret esittävät jousia Kaikilla jousilla on jokin pituus Pituus riippuvainen näytön esityskoordinaatistosta Jos jousi on lyhempi kuin sen luonnollinen pituus, niin se laajentuu työntäen solmuja kauemmas toisistaan Jos jousi on pitempi kuin sen luonnollinen pituus, niin se supistuu vetäen solmuja lähemmäs toisiaan Solmujen voima on suhteellinen kaarien pituuteen ja jousen luonnolliseen leveyteen NWB Team. (2006). Network Workbench Tool. Indiana University, Northeastern University, and University of Michigan, http://nwb.slis.indiana.edu http://www.cs.brown.edu/~rt/gdhandbook/chapters/force-directed.pdf TUT / HLAB 10
Voimaohjattu ladonta Yleisesti voimaohjatuista ladonta-algoritmeista Fysiikan lakien käyttö solmujen aseman mallinnuksessa Solmuja esitetään teräsrenkankaina ja kaaria jousina näiden välillä Kaarien jousivoimat suhteellisia solmujen graafiteoreettisille etäisyyksille (solmuen lyhyimmät etäisyydet) Perus idea on minimoida järjestelmän energia liikuttamalla solmuja Useita eri versioita voimaohjatuista algoritmeista, jousi-ohjattu, kamada-kawai, fructerman-reingold Lopputulokset yleensä esteettisiä (reunojen ylitykset, symmetria) NWB Team. (2006). Network Workbench Tool. Indiana University, Northeastern University, and University of Michigan, http://nwb.slis.indiana.edu http://www.cs.brown.edu/~rt/gdhandbook/chapters/force-directed.pdf TUT / HLAB 11
Fructerman-reingold ladonta Voimavektoreiden summa määrää mihin suuntaan solmu liikkuu Askel (vakio), joka määrää kuinka paljon solmua liikutetaan yhdellä iteraatiolla Järjestelmän saavuttaessa minimi(energian) solmut lakkaavat liikkumasta ja järjestelmä saavuttaa tasapainoaseman Jos askel on liian suuri, ei tasapainoasemaa välttämättä löydetä NWB Team. (2006). Network Workbench Tool. Indiana University, Northeastern University, and University of Michigan, https://nwb.slis.indiana.edu/community/?n=visualizedata.fruchterman-rheingold http://www.cs.brown.edu/~rt/gdhandbook/chapters/force-directed.pdf TUT / HLAB 12
Fructerman-reingold ladonta Edut & haitat Soveltuu hyvin suurille suuntaamattomille verkostoille Topologia Läheiset solmut ovat lähellä ja kaukaiset kaukana (lyhimpien etäisyyksien mukaisesti) TUT / HLAB 13
Kamada-Kawai ladonta Järjestelmän energian minimointi saadaa derivoimalla voimia esittäviä thtälöitä Minimienergia tilassa voimia esittävien yhtälöiden derivaatta on nolla Koska yhtälöt eivät ole riippumattomia niitä ei voida yksittäin tuoda nollaksi Joten liikutetaan verkoston solmua jolla on suurin gradientti, toistetaan tätä niin kauan kunnes kokonaisenergia on minimoitu Edut & haitat Konvergoi nopeasti soveltuu suurille ja pienille graafeille NWB Team. (2006). Network Workbench Tool. Indiana University, Northeastern University, and University of Michigan, https://nwb.slis.indiana.edu/community/?n=visualizedata.kamada-kawaii http://www.cs.brown.edu/~rt/gdhandbook/chapters/force-directed.pdf TUT / HLAB 14
Kehäladonta (engl. Circular layout) Kehäladonnan yleisiä ominaisuuksia Graafi on jaettu ositettu ryhmiin (engl. Clustering) Jokaisen ryhmän solmut on asetettu ympyrän kehälle Jokainen kaari on suora NWB Team. (2006). Network Workbench Tool. Indiana University, Northeastern University, and University of Michigan, https://nwb.slis.indiana.edu/community/?n=visualizedata.kamada-kawaii http://www.cs.brown.edu/~rt/gdhandbook/chapters/circular.pdf TUT / HLAB 15
Tuplakehäladonta Kehäladonta jossa on useampia kehiä Sisemmille kehille ladotaan suurempi astelukuiset solmut mm. Gephissä Edut & haitat Melko yksinkertainen ladonta, antaa hyvän näkymän solmujen ja kaarien määrästä Ei sovellu kovin suurille verkostoille TUT / HLAB 16
Geo-ladonta Geografinen ladonta Ladonta jossa graafien solmut sidotaan tasoon/karttaan leveysja pituusasteilla Edut & haitat Informatiivinen kun solmuja on riittävä määrä Vaatii leveys- ja pituusasteiden merkkaamista TUT / HLAB 17
Ei olemassa yhtä parasta/oikeaa ladontamenetelmää Ladontamenetelmän hyödyllisyys riippuvainen mm. graafin koosta Solmujen määrä Kaarien määrä Sopivin ladontamenetelmä riippuvainen ongelmasta ja tiedon mallinnuksesta graafiksi Verkostoanalyysiohjelmistot käyttävät useita erilaisia ladontamentelmiä tai näiden yhdistelmiä/muunnoksia TUT / HLAB 18
Graph Visualization and Navigation in Information Visualization: A Survey http://www.cs.kent.edu/~jmaletic/cs63903/papers/herman00.pdf Battista, G., Eades, P., Tamassia, R., and Tollis, I.G. (1994) Algorithms for drawing graphs: An annotated bibliography. Computational Geometry: Theory and Applications, 4(5), 235-282. Eades, P. A heuristic for graph drawing Stanton. Ralph G. (Ed.). Congressus numerantium. Winnipeg: Utilitas Mathematica. Roberto Tamassia (2011). Handbook of Graph Drawing and Visualization. http://www.cs.brown.edu/~rt/gdhandbook/ NWB Team. (2006). Network Workbench Tool. Indiana University, Northeastern University, and University of Michigan, http://nwb.slis.indiana.edu TUT / HLAB 19
Kiitos! Kysymyksiä? TUT / HLAB 20