TIIVISTELMÄEremeev, Andrei Virittävän puun käyttö ratkaisuna sosiaalisen graafin lyhimmän polun ongelmaan Jyväskylä: Jyväskylän yliopisto, 2016, 70 s. Ohjelmistotuotanto, pro gradu -tutkielma Ohjaajat: Semenov, Alexander; Korneev, Georgiy.Tämä pro-gradu tutkielma käsittelee lyhimmän polun ongelmaa sosiaalisia verkostoja mallintavissa sosiaalisissa graafeissa. Tämän työn kohteena ovat sosiaalisen median sivustot, joissa kullakin käyttäjällä on profiili ja käyttäjät voivat olla esimerkiksi toistensa ystäviä. Sivustoa mallintavan sosiaalisen graafin solmut mallintavat näitä profiileja ja suuntaamattomat kaaret profiilien välisiä ystävyyssuhteita. Laajemmin tällaisia graafeja käytetään esim. vaalien tulosten ennustamiseen, tai suosittelujärjestelmissä suositusten koostamiseen. Monet sosiaaliseen graafin ominaisuudet vaativat etsimään polkujoukkoja eri solmujen ja solmuryhmien välillä. Sosiaalisen graafin analyysi vaatii usein laskemaan paljon lyhimpiäpolkuja kahden solmun välillä. Tätä tarvitaan esimerkiksi mää-ritettäessä solmun polkukeskeisyyttä. Työn keskeisenä tavoitteena on kehittää lyhimmän polun etsintään tehokas yhdistelmäalgoritmi. Työssä esitellään ensin sosiaalisten graafien ominaisuuksia. Tämän jälkeen esitellään keskeiset tunnetut lyhintä polkua etsivät algoritmit, jotka vastaavat luotua vaatimusmäärittelyä. Työn tuloksena esitetään tehokas algoritmi, joka perustuu Atlas-algoritmiin ja joka kattaa myös muiden esiteltyjen algoritmien toiminnallisuuden. Opinnnäy-te kertoo myös miten algoritmi toteutetaan Java-kielellä tehokkaasti. Kehittetty algoritmi on käyttöönottovaihessa Odnoklassniki -nimisellä sosiaalisen median sivustolla, jolla toimii venäjänkielinen verkkoyhteisö. Ko. sivustolla on kaikkiaan 205 miljoonaa käyttäjää ja 44 miljoonaa kävijää päivässä (se on kahdeksanneksi suosituin sivusto Venäjällä ja entisen Neuvostoliiton tasavalloissa). Ehdotettu algoritmi ratkaisee lyhimmän polun ongelman eo. sivustosta muodostetussa sosiaalisessa graafissa suorituskykyisesti vasteajan (50 ms per kysely), muistin käytön (alle 15 GBs ensisijaisen muistin) ja saavutetun tarkkuuden (yli 90%) suhteen. Algoritmi tukee myös dynaamisia sosiaalisia graafeja.Avainsanat: sosiaalinen graafi, sosiaalisten verkostojen analyysi, lyhimmän polun ongelma, Odnoklassniki, Atlas algoritmi.
ABSTRACT
Eremeev, AndreiThe spanning tree based approach for solving the shortest path problem in social graphs Jyväskylä: University of Jyväskylä, 2016, 70 p. Software Engineering, Master's thesis Supervisors: Semenov, Alexander; Korneev, Georgiy.This thesis is devoted to the shortest path problem in social graphs. Social graphs represent individuals and social relationships between them. As for social networking sites, their users are represented as vertices of the social graph, and the relationship which indicates whether two users are friends in the social networking site are represented as edges of the social graph. Therefore, social graphs are widely investigated by sociologists in order to determine rules and properties of various social ...