KÄYTÄNNÖN JÄRJESTELYJÄ SATU ELISA SCHAEFFER Tietojenkäsittelyteorian laboratorio, TKK elisa.schaeffer@tkk.fi LUENTOAKTIIVISUUS Läsnäololistaan ruksi luennolle saavuttaessa. Siihen henkilökunta merkitsee luennon aikana ansioituville henkilöille enintään yhden lisäpisteen per luentokerta. INF-0.3100 VERKOSTOJEN PERUSTEET SUORITUSTAPA Tentti + vapaaehtoisia harjoituksia 6 luentoa, kustakin voi saada enintään yhden aktiivisuuspisteen 5 lisäpistetehtävää (0/1/2 pistettä) pisteiden perusteella tenttiarvosana voi nousta: 5 pistettä: +0 6 9 pistettä: +1 10 pistettä: +2 LISÄPISTETEHTÄVÄT kaikilla paitsi viimeisellä luennolla annetaan soveltava lisäpistetehtävä tehtävänanto on luentokalvoissa tehtävä arvostellaan asteikolla hylätty (0) / hyväksytty (1) / kiittäen hyväksytty (2)
TEHTÄVIEN PALAUTUS tehtävät palautetaan paperilla, tarvittaessa yhteen nidottuina käsin sopii piirtää, vaan ei kirjoittaa esseitä palautus seuraavan luennon alkaessa tai sitä ennen työhuoneen TA-347 edustalla kahvihuoneessa sijaitsevaan postilokeroon (Elisa Schaeffer) bumerangeja, myöhästymisiä tai rästipalautuksia ei tueta palautukseen tulee merkitä päiväys, oma nimi, opiskelijanumero ja sähköpostiosoite LUENTOTAUKO Tarkistathan että tietosi ovat oikein läsnäololistassa! INF-0.3100 VERKOSTOJEN PERUSTEET arvioidut palautukset saa takaisin palautteen kera TENTTI soveltava, tod. näk. aineistokoe materiaalin vapaa käyttö asialliset lähdeviitteet kotitentti eli ei salivarausta palautus sähköisesti (.ps.pdf) yksilösuorite (ei yhteistyötä) KERTAAVA JOHDATUS VERKKOTEORIAAN JA MUUTA ÄSSÄÄ MATEMATIIKKAA SATU ELISA SCHAEFFER Tietojenkäsittelyteorian laboratorio, TKK elisa.schaeffer@tkk.fi tekoaikaa 24h, sovitaan ajankohta yhdessä tenttikysymykset kurssin sivuilta tai Elisalta arvostelu 0/2/4 (hylätty/hyväksytty/kiittäen hyväksytty) INF-0.3100 VERKOSTOJEN PERUSTEET
VERKKO Verkko G on joukkopari (V, E). Joukon V elementit ovat solmuja. Solmuja merkitään pienin kirjaimin v, w, u,... ja solmujen lukumäärää merkitään V = n. Joukko E koostuu solmupareista {v, w}, joita kutsumme kaariksi. Mikäli kaaret eivät ole pareja, vaan yleisemmin osajoukkoja joukosta v, kyseessä on hyperverkko. Kaarijoukon koko on E = m. Verkon G = (V, E) komplementti on verkko, jolla on sama solmujoukko V, mutta kaarijoukkoon kuuluvat vain ne solmuparit jotka eivät ole E:ssa. NIMIKKEET JA PAINOT Verkon G = (V, E) solmuille ja kaarille voidaan asettaa erilaisia nimikkeitä ja niihin voidaan liittää painoja. Mikäli verkon solmut edustavat ihmisiä, voi solmun nimike olla kyseisen henkilön nimi tai henkilötunnus. Vastaavasti kahden solmun välisen kaaren paino voisi osoittaa vaikkapa näiden henkilöiden välisten puhelinkeskusteluiden yhteenlaskettua kestoa kuukauden tarkkailujaksolla. KAARISTA Ellei erikseen mainita, kaaret ovat suuntaamattomia, mutta suunnatussa verkossa jokaiselle kaarelle v, w kiinnitetään sen alkusolmu v ja kohdesolmu w. Kaarta solmusta itseensä {v, v} kutsutaan refleksiiviseksi. Yksinkertaisessa verkossa kutakin solmuparia voi yhdistää enintään yksi kaari. Muussa tapauksessa verkko on moniverkko. Verkko, jossa jokainen solmupari on yhdistetty kaarella on täydellinen. Yksinkertaisessa ja suuntaamattomassa täydellisessä verkossa on n(n 1) 2 kaarta. NAAPURIT JA ASTEET Solmu v on solmun w naapuri verkossa G = (V, E) ja päinvastoin, mikäli kaari {v, w} sisältyy joukkoon E. Naapurien joukkoa merkitään Γ (v) ja kutsutaan solmun v naapurustoksi. Solmua itseään ei lasketa sisältyväksi naapurustoon ellei sillä ole refleksiivistä kaarta. Suuntaamattomassa verkossa solmun v aste(luku) deg (v) on sen naapurien lukumäärä. Suunnatussa verkossa määritellään erikseen lähtö- ja tuloasteet. Verkon G suurinta astelukua merkitään G. Verkon asteluvuista voidaan muodostaa sen aste(luku)jakauma. Verkko on k-säännöllinen mikäli kaikkien sen solmujen aste on k.
POLUT JA ETÄISYYDET Kaarijono {v 1, v 2 }, {v 2, v 3 },...,{v k 1, v k } kiinnittää polun solmusta v 1 solmuun v k. Polun pituus on sillä olevien kaarien lukumäärä. Polku, jolla kustakin solmusta lähtee enintään yksi kaari ja kuhunkin solmuun saapuu enintään yksi kaari, on yksinkertainen. Solmujen v ja w etäisyys verkossa G = (V, E) on lyhimmän niitä yhdistävän polun pituus G:ssa. Lyhin polku on aina yksinkertainen. Verkon G = (V, E) pisintä etäisyyttä kutsutaan verkon halkaisijaksi. YHTENÄISYYS Verkko on yhtenäinen mikäli jokaisesta sen solmusta on olemassa ainakin yksi polku kuhunkin muuhun solmuun. Epäyhtenäinen verkko koostuu kahdesta tai useammasta yhtenäisestä komponentista. Eri komponentteihin kuuluvien solmujen etäisyys on määrittelemätön. Epäyhtenäisessä verkossa ei esimerkiksi voi laskea keskimääräistä etäisyyttä tai halkaisijaa koko verkolle, vaan laskut on kohdistettava yksittäisiin komponentteihin. VERKON ESITYSMUODOT Yleensä tallennusta varten solmuille v annetaan nimikkeet 1, 2, 3,..., n. Verkko G = (V, E) voidaan esittää eri muodoissa: joko listaamalla kaikki kaaret (ja solmut), tai naapuruusmatriisina A, jossa alkio A i,j = 1 jos ja vain jos {i, j} E, tai naapuruuslistoina, jolloin luetellaan kullekin solmulle sen naapurit. ALIVERKKO Verkko G(S) = (S, F) on verkon G = (V, E) aliverkko mikäli S V ja F E. Mikäli kaari {v, w} kuuluu joukkoon F jos ja vain jos v S, w S, aliverkko on indusoitu.
PUUT JA METSÄT Polku, joka alkaa solmusta v ja päättyy samaan solmuun on kierros. Verkko, jossa ei ole yhtään kierrosta on puu. Verkkoa, jonka jokainen yhtenäinen komponentti on puu, kutsutaan metsäksi. Verkon G = (V, E) virityspuu on sellainen aliverkko G(S) = (S, F), jonka solmujoukko on S = V ja lisäksi aliverkko on yhtenäinen puu. Virityspuussa on väistämättä n 1 kaarta. Jokaiselle yhtenäiselle verkolla on olemassa vähintään yksi virityspuu. TIHEYS Verkon G = (V, E) tiheys kuvaa verkon kaarten lukumäärän osuutta suurimmasta mahdollisesta kaarimäärästä samankokoiselle solmujoukolle: δ (G) = 2m n(n 1). Täydellisen verkon tiheys on yksi ja kaarettoman verkon tiheys on nolla. ISOMORFIA Kaksi verkkoa G = (V, E) ja G = (V, E ) ovat isomorfiset mikäli on olemassa bijektio ϕ : V V ensimmäisen verkon solmujoukolta toisen verkon solmujoukolle siten, että {v, w} E {ϕ(v), ϕ(w)} E. Klikki on sellainen k-solmuinen indusoitu aliverkko, joka on isomorfinen k-solmuisen täydellisen verkon kanssa. LEIKKAUS Verkon G = (V, E) leikkaus on solmujoukon V ositus kahteen (tai useampaan) osajoukkoon. Leikkauksen koko on niiden kaarien määrä, joiden päätesolmut ovat eri osajoukoissa. Verkko on kaksijakoinen mikäli on olemassa leikkaus, jonka koko on m (eli kaikki kaaret ovat leikkauskaaria).
TAVALLISIMPIA VERKKO-ONGELMIA BINOMIJAKAUMA lyhin polku pienin virityspuu kauppamatkustajan ongelma väritys klikki polynominen polynominen Diskreetti jakauma, joka antaa todennäköisyyden sille, että N:n toistokokeen (onnistumistodennäköisyys p) sarjassa tulee tasan k onnistumista; ( ) N Pr [k onnistumista] = p k (1 p) N k, k aligraafi-isomorfismi graafi-isomorfismi? pienin leikkaus pienin solmupeite jossa ( ) N = k N! (N k)! k! on binomikerroin ja N! = 1 2 3... (n 1) n on kertoma(funktio). TARPEELLISIA MATEMAATTISIA KÄSITTEITÄ todennäköisyys diskreetin ja jatkuvan satunnaismuuttujan odotusarvo, varianssi, korrelaatio ehdollinen todennäköisyys, riippumattomuus toistokoe (Bernoulli-koe) kertymäfunktio jakauma diskreetit ja jatkuvat stokastinen prosessi (erit. Markovin ketju) O ()-notaatio laskennalliselle vaativuudelle LOGARITMINEN ASTEIKKO Piirrettäessä funktion f(x, y) kuvaajaa koordinaatistoon kohdataan joskus tilanteita joissa funktion arvot kasvavat erittäin nopeasti x:n ja/tai y:n suhteen. Visualisointi usein helpottuu mikäli nopeasti kasvavien arvojen akseli skaalataan tavallisen lineaarisen esityksen sijaan logaritmisesti. Tällöin lineaarisen skaalan tasaväli-inkrementit 1, 2, 3, 4, 5,... korvautuvat nopeammin kasvavilla: 1, 10, 100, 1000, 10000,.... matriisien ominaisarvot ja -vektorit helpot differenssi- ja differentiaaliyhtälöt
LISÄPISTETEHTÄVÄ Mieti millaisia käytännön sovelluksia voi mallintaa verkkoina. Pohdi millaisille verkoille voisi ratkaista tehokkaasti yleisessä tapauksessa laskennallisesti vaativia ongelmia. Pohdi pelkän verkon koon rajoittamisen sijaan verkon muiden parametrien rajoittamista. Millaisissa sovelluksissa erikoistapauksia voisi esiintyä? Miten paljon olettaisit verkon rakenteen vaikuttavan sen käsittelyn helppouteen tai vaikeuteen verkko-ongelmia ratkaistaessa? Palauta tehtävä esseemuotoon kirjoitettuna.