Aalto-yliopisto ELEC-C7110, Informaatioteknologian perusteet (2016) Kalevi Kilkki, Jari Lietzen Vastauksia laskuharjoitustehtäviin (tehtävät tiedoston lopussa) Laskuharjoitus 1. Nopeuksia ja kasvuja Tehtävä 1.1. Laskutehtävässä kysyttiin minkälaista tehollista nopeutta suuren datamäärän siirtäminen vastaa kun matkaa on 10 km ja käytettävissä on kovalevy tai levyjä. Tehdään seuraavat lisäoletukset Reipas nuori polkee polkupyörällä 18 km/h Autolla kaupunkioloissa pääsee keskimäärin 30 km/h Jos kovalevyjä on käytössä useampia, niitä voidaan lukea ja kirjoittaa rinnakkain (mutta tämä on siis oletus eikä välttämättä päde reaalimaailmassa). Terat (T) on esitetty 10-järjestelmän muodossa Huomatkaa lisäksi että tehtävänannossa tiedonsiirtonopeus on MB/s eli megatavua sekunnissa (ei siis bittiä sekunnissa). 1A-kohdassa matka-ajaksi tulee siten (4*2*10 + 10 = 90 km)/(18 km/h) = 300 minuuttia. Kovalevylle kirjoittamiseen menee yhteensä aikaa 10 TB/100 MB/s = 100000 s = 1667 min. Sama aika menee toisessa päässä kovalevyltä lukemiseen. Yhteensä aikaa menee 3633 min (= 61 tuntia). Tämä vastaa keskinopeutta (8 * 10 000 000 Mbit) / (60 * 3633 s) = 367 Mbit/s. Kerroin kahdeksan (8) kaavan alussa johtuu siis siitä että tässä täytyy tehdä muunnos tavuista biteiksi. 1B-kohdassa matka-ajaksi tulee 20 minuuttia. Kirjoittamiseen ja lukemiseen menee yksi viidesosa A- kohdan arvosta, koska levyjä käsitellään rinnakkain. Kokonaisajaksi tulee siten 20 + 2*333 = 687 minuuttia (= 11 tuntia). Tämä vastaa keskinopeutta (8 * 10 000 000 Mbit) / (60 * 333 s) = 1942 Mbit/s. Tulosta siis dominoi kovalevyjen luku- ja kirjoitusprosessi. Jos 1B-kohdassa oletetaan, että kovalevyjä ei voi lukea ja kirjoittaa rinnakkain, niin päädytään lähes samaan nopeuteen kuin pyörällä ajettaessa (398 Mbit/s).
C. Uuteen Seelantiin menee vaihtoineen lentäen noin 30 tuntia. Muuten voidaan tehdä samat oletukset kuin B-kohdassa, jolloin tarvittava kokonaisaika on yhteensä 1800 + 667 min = 2467 min. Bittinopeudeksi saadaan tällöin 541 Mbit/s. D. Fontilla 8 (courier new), 1 cm marginaaleilla ja rivivälillä 1 yhdelle A4-sivulle mahtuu 86 riviä ja kullekin riville 112 merkkiä. Kaksipuoleiselle arkille mahtuu siten 2*86*112 = 19264 merkkiä. Kun 10 TB jaetaan merkkien määrällä per arkki, saadaan tulokseksi 519 miljoonaa arkkia. Tavalliselle kopiopaperille tulostettuna tämä tarkoittaa n. 2,5 miljoonaa kiloa paperia. Tehtävä 1.2. Tehtävässä kysyttiin milloin tietokoneiden määrä ylittää 10 miljardin rajan, kun kehityksestä tunnetaan kaksi pistettä: vuonna 2000 70 miljoonaa ja vuonna 2010 740 miljoonaa. Lineaarisella mallilla kasvu on (740 70) / 10 = 67 miljoonaa per vuosi. Aikaa kasvuun kuluisi siten (10000 740)/67 = 138 vuotta. Eli 10 miljardiin päädyttäisiin noin vuonna 2148. Eksponentiaalisella mallilla saadaan (740/70) 1/10 = 1,266 eli tietokoneiden määrä on keskimäärin 1,266- kertaistunut vuodessa (eli kasvanut 26,6 % vuodessa). Potenssi 1/10 tulee siis siitä että kasvu jaetaan tasan 10-vuodelle korkoa korolle periaatteella. Nyt tietokoneiden määrän pitää vielä 10000/740 = 13,51-kertaistua vuodesta 2010, jotta päästää 10 miljardiin. Vuosien määrä saadaan kaavasta 1,266 x = 13,51. Ottamalla logaritmi molemmin puolin saadaan x = ln(13,51)/ln(1,266) = 11,04. 10 miljardia ylittyy siis vuonna 2021 eksponentiaalisen kasvumallin mukaan. Käytännössä kumpikaan malli tuskin toteutuu. Eksponentiaalinen kasvu on tyypillistä kasvun alkuvaiheessa, mutta jossain vaiheessa kasvu hidastuu ja mahdollisesti kääntyy jopa laskuun. Käännekohtia on hyvin vaikea ennustaa menneisyyttä kuvaavan datan perusteella. Lineaarinen kasvu mahdollista jossain väliaikaisesti silloin kun kasvu alkaa tasaantua, mutta reaalimaailmassa pitkäaikainen lineaarinen kasvu on harvinaista, silloin kun kyseessä on jonkinlainen populaation koon määrän muutos. Laskuharjoitus 2. Hintajousto Tehtävä 2.1. Käytetään hintajouston kaava ln(k) = a e ln(h + h 1 ) Jossa alkutilanteessa kysyntä per asiakas K = 10 min/päivä hinnalla h = 0,10 /min. Lisäksi a-kohdassa h 1 = 0 ja e = 0,75 b-kohdassa h 1 = 0,05 /min ja e = 0,50 Näistä voidaan laskea parametrin a arvo, joksi saadaan a = ln(k) + e ln(h + h 1 ):
a-kohdassa a = 0,5756 b-kohdassa a = 1,3540 Huomaa että näin saadut a:n arvot ovat sidottuja käytettyihin yksiköihin. Nyt a-kohdassa hintajouston kaavalla saadaan uudella hinnalla (0,09 /min) kysynnäksi K = 10,82 min/päivä/asiakas, josta kokonaistuloksi tulee 10,82 * 0,09 = 0,9740 /päivä/asiakas. Tämä on siis pienempi kuin 1 joten asiakkaita täytyy saada vastaavasti lisää, jotta tulot pysyisivät edes ennallaan. Jos jätetään huomiotta välivaihe, jossa asiakasmäärät muuttuvat ja tarkastellaan vain pysyvää tilannetta, asiakkaita täytyy olla jatkossa vähintään 1 000 000*(1/0,9740) = 1 026 690, jotta kokonaistulot pysyisivät edes ennallaan. Eli hintaa laskevan operaattorin täytyy houkutella 26690 uutta asiakasta sinä aikana kun toinen operaattori vielä harkitsee omaa hinnoitteluaan. Vastaavasti b-kohdassa uudella hinnalla (0,09 /min) saadaan kysynnäksi 10,35 min/päivä/asiakas, josta kokonaistuloksi tulee 0,9316 /päivä/asiakas. Jotta kokonaistulos pysyisivät edes ennallaan, asiakkaita täytyisi olla jatkossa vähintään: 1 000 000*(1/0,9316) = 1 073 435. Eli hintoja laskevan operaattorin pitäisi saada houkuteltua vähintään 73435 uutta asiakasta. B-kohdan oletukset lienevät lähempänä reaalimaailmaa. 73435 uutta asiakasta on varsin suuri määrä, jos oletetaan että toinen operaattori reagoi nopeasti (kuten sen kannattaa tehdä). Lopputuloksena hintapelin aloittaja saattaa hyötyä hieman, mutta samalla toinen operaattori jää huomattavasti enemmän tappiolle, jos se ainoastaan tiputtaa hinnan ensimmäisen operaattorin tasolle. Hintakilpailuun lähteminen ei siten ole kovinkaan houkuttelevaa liiketoiminnan kannalta. Laskuharjoitus 3. Signaalit Tehtävä 3.1. Shannonin kaava on muotoa: C = B log 2 (1 + S N) [ bit ] s Tehtävänä on siis laskea kanavan kapasiteetti kun tunnetaan signaalin teho (S), kohinateho (N) ja kaistanleveys (B). Periaatteessa helppoa, mutta erityisesti täytyy olla tarkkana yksiköiden kanssa. Kaavassa tehot ovat watteina (tai periaatteessa millä tahansa lineaarisella tehoasteikolla). Kohina täytyy siten muuntaa tehoasteikolle, jotta Shannonin kaavaa voidaan soveltaa. Tässä tehtävässä kohinat ovat (huomaa että asteikoksi vaihdetaan nanowatti, koska signaalin voimakkuus on kerrottu nanowatteina):
76 dbm = 10 76 10 mw = 0,0251 nw 87 dbm = 10 87/10 mw = 0,0020 nw Yhteensä kohinaa on siis 0,0271 nw. Kun signaalin teho on 0,25 nw ja kaistan leveys on 100 khz, niin teoreettiseksi kapasiteetiksi saadaan: C = 100000 log 2 (1 + 0,25 0,0271) = 335 kbit/s Tämä oli siis a-kohdan vastaus. Vastaavasti b-kohdassa saadaan: C = 50000 log 2 (1 + 0,125 0,0271) + 50000 log 2 (1 + 0,125 0,0020) = 129 + 300 = 429 kbit/s Lopuksi c-kohdassa saadaan: C = 50000 log 2 (1 + 0,250 0,0020) = 349 kbit/s Esitetyistä vaihtoehdoista paras on siis jakaa lähetysteho erikseen kahdelle 50 khz:n kaistalle. Tehon jakaminen tasan kahdelle 50 khz:n kaistalle ei ole aivan optimaalista, mutta hyvin lähellä sitä (mutta tätä optimointia ei siis kysytty tehtävässä). Laskuharjoitus 6. Verkkojen mitoitus Tehtävä 6.1. Tehtävässä tarkasteltiin oheista verkkoa: Kun jokaisen linkin saatavuus on sama, olennaista on järjestyksessä: 1) vaihtoehtoisten reittien määrä 2) lyhimmän reitin pituus linkkeinä ja 3) vaihtoehtoisen reitin pituus linkkeinä. (tämän suoraviivainen menetelmä riittää tässä tapauksessa, mutta monimutkaisemmassa tapauksessa tarkka vastaus vaatii monimutkaisemman laskennan.) Jokaisen solmuparin välillä on vähintään kaksi eri reittivaihtoehtoa, joten pyritään etsimään solmupari, jolla on kaksi reittivaihtoehtoa siten että lyhempi reitti on pitkä. Kolmella hypyllä pääsee mistä tahansa solmusta mihin tahansa toiseen solmuun. Näistä yritetään sitten etsiä solmupari, jolla vaihtoehtoinen reitti on pisin. Näillä kriteereillä hankalin on solmupari A ja J, jolloin lyhimmät toisistaan riippumattomat reitit ovat F A G B E I H J C D
A-B-C-J ja A-G-F-E-D-J Lyhemmän reitin saatavuus on = 0.99 3 = 0,9703 ja pidemmän reitin saatavuus on 0.99 5 = 0,9510. Todennäköisyys, että molemmat reitit ovat viallisia yhtä aikaa, on (1 0,9703) (1 0,9510) = 0,00146. Tästä saadaan saatavuudeksi A:n ja J:n välille 1 0,00146 = 0.9985. Tehtävä 6.2. Tehtävässä havaitaan että mahdollisia tiloja ovat 0, 1 ja 2, jossa lukumäärä siis kertoo kuinka monta asiakasta on palveltavana. Silloin jonotusmahdollisuutta ei ole, niin enempää tiloja ei ole. Kun asiakkaat saapuvat riippumatta toisistaan, vain vierekkäisten tilojen välillä voi tapahtua siirtymisiä. Asiakkaita tulee 0,5 per minuuttia ja keskimääräinen palveluaika on 0,8 minuuttia, jolloin yhden asiakkaan palvelun päättymisintensiteetti on 1/0,8 = 1,25 minuutissa. Tällöin saadaan seuraava tilakaavio: 0,5 0,5 0,5 0 1 2 1,25 2,5 Huomatkaa, että kun palveltavana on kaksi asiakasta ja palveluaika on 0,8 minuuttia, keskimäärin palvelun loppumisia tapahtuu 2/0,8 = 2,5 kertaa minuutissa (tässä kun tarkoittaa sitä että huomioidaan vain ne ajankohdat, jolloin palveltavana on täsmälleen kaksi asiakasta). Tilojen todennäköisyydet voidaan laskea merkitsemällä siirtymät vasemmalta oikealle yhtä suuriksi kuin oikealta vasemmalle, eli 0,5P(0) = 1,25P(1) ja 0,5P(1) = 2,5P(2) Jossa siis P(0) on tilan 0 todennäköisyys, P(1) tilan yksi todennäköisyys ja P(2) on tilan 2 todennäköisyys. Lisäksi tiedetään, että jossain tilassa järjestelmä on varmasti, joten näiden todennäköisyyksien summa on yksi. Näistä voidaan ratkaista todennäköisyydet ja tulokseksi saadaan: P(0) = 0,6757, P(1) = 0,2703 ja P(2) = 0,0541. Estymisen todennäköisyys on tässä tilan 2 todennäköisyys eli 5,41 %. Huomatkaa erityisesti, että kun oletetaan että asiakkaat saapuvat satunnaisilla hetkillä, saapuva asiakas näkee tilojen keskimääräiset todennäköisyydet. Vastaavasti todennäköisyys, että molemmat palvelupaikat ovat vapaita, on 67,6 %.
Lopuksi c-kohdassa pitää kokeilla laskemalla erilaisia vaihtoehtoja ja sellaisena tehtävä on turhan työläs käsin laskettavaksi. Käytännössä jos tällaisia laskelmia joutuu tekemään, niin aina kannattaa käyttää jotain työkalua, Excel-riittää yksinkertaisissa tapauksissa, kuten tässä tehtävässä. Tilakaavioksi saadaan joka tapauksessa seuraavaa (tämän piirtäminen voisi olla osana tenttikysymystä, analyysin periaate on tässä olennaisempi kuin x:n laskeminen annetulla ehdolla!) x x x x x 0 1 2 3 4 1,25 2,5 3,75 5 Kun x = 2, niin tilan 4 todennäköisyys on 5,65 % eli esto on vain hieman suurempi kuin alkuperäisessä tapauksessa (jossa siis x oli 0,5). Keskeinen opetus tässä on, että tarjottu liikenne voi lähes 4-kertaistua, kun palvelupaikkojen määrä kasvatetaan kahdesta neljään ja esto pidetään vakiona! (tarkempi vastaus: tarjottu liikenne voi kasvaa 293%). Laskuharjoitus 7. Mobiiliverkot Tehtävä 7.1. Tehdään ensimmäiseksi seuraavat oletukset (hieman erilaisiakin oletuksia voi tehdä!): Kiiretunnin osuus päivän liikenteestä on 7 %. Sallitun keskimääräinen kuormitustaso kiiretunnin aikana on 20 %. Vaikka 20 % kuulostaa hyvin alhaiselta lukemalta, niin tässä täytyy ottaa huomioon se tosiasia että tukiasemien todellisissa kuormituksissa voi olla hyvin suuria eroja. Suurin osa tukiasemista on melko hiljaisia myös kiireisimpään aikaan. Vähän suurempiakin arvoa (25 30 %) voisi ehkä soveltaa. Jossain määrin erilaisiakin oletuksia voi tehdä ja päätyä hieman toisenlaisiin lopputuloksiin. Puheliikenteelle saadaan kiiretunnin aikaiseksi kokonaisliikenteeksi 1 200 000 * 0,07 * 15 = 1 260 000 min Tämä määrä jaettuna tunnin ajalle tuottaa yhteensä liikennettä keskimäärin: (1 260 000/60) * 12 kbit/s * 2 / 1000 = 504 Mbit/s Huomaa että molemmat siirtosuunnat täytyy ottaa huomioon! Kapasiteettia tarvitaan siten yhteensä kun huomioidaan sallittu kuormitustaso (20 %): 504/0,2 = 2520 Mbit/s.
Kun yhden tukiaseman kokonaiskapasiteetti on 450 Mbit/s, niin a-kohdan vastaukseksi saadaan, että 6 tukiasemaa riittäisi puhelujen hoitamiseen. B-kohdassa dataliikenteen määrä 6 GB/kk pitää ensin muuntaa kiiretunnin keskimääräiseksi liikenteeksi. Tulokseksi tulee asiakasta kohti kiiretunnin aikana (kun samalla tehdään muunnos gigatavuista megabiteiksi): (6 * 8000 / 30) * 0,07 = 112 Mbit Yhteensä asiakkaat tuottavat siten 112 Mbit * 1 200 000 / 3600 = 37 333 Mbit/s Kapasiteettia tarvitaan siten 37 333 / 0,2 = 186 667 Mbit/s Kun tähän lisätään puheen osuus, niin vastaukseksi saadaan 421 tukiasemaa (eli yhden solun peitto on noin 2,4 km 2 ). C-kohdassa pyydettiin vielä arvioimaan miten paljon tarvitaan lisää kapasiteettia vain sen vuoksi, että jotkut käyttävät verkkoyhteyttä kohtuuttomasti. Jokainen suurkäyttäjä lataa verkosta dataa jatkuvasti nopeudella 50 Mbit/s, joten kiiretunnilla tässä ei ole merkitystä. 2 promillea asiakkaista tarkoittaa 2400 asiakasta, josta kokonaiskuormaksi tulee jatkuvasti 120 000 Mbit/s. Jos sallituksi kuormitustasoksi oletetaan edelleen 0,2 niin kapasiteettia tarvitaan 600 000 Mbit/s (tässä voisi myös olla perusteltua käyttää vähän suurempaa käyttöastetta, koska liikenteen vaihtelut ovat pienempiä, jolloin tarvittava kapasiteetti olisi vastaavasti pienempi). Tukiasemia tarvitaan nyt yhteensä 1754. Tämä tarkoittaisi solun kokoa 0,6 km 2. Voidaan havaita että pieni osuus suurkäyttäjiä saattaa tulla hyvin kalliiksi operaattorille. Tehtävä 7.2. Tämä tehtävä voidaan ratkaista varsin suoraviivaisesti opetusmateriaalin kaavalla 5.3, jossa vaimennus (L) saadaan taajuuden (f) ja etäisyyden (r) funktiona: Vastauksiksi saadaan: L = 32,44 + 20 log 10 (f MHz ) + 20 log 10 (r km ) [db] a-kohta: vaimennus L = 94,02 db, lähetyksen teho (10 W) = 40 dbm ja tähän pitää lisätä lähettimen tehovahvistus (3 db), jolloin vastaanottimeen saadaan tehoa: 40 + 3 94,02 dbm = -51,0 dbm. Tehoasteikolla tämä on 7,90 nw. b-kohta: vaimennus L = 104,26 db ja vastaanotetun signaalin voimakkuudeksi saadaan -61,3 dbm eli 0,75 nw.
Laskutehtävän keskeisin opetus on vastaanottotehojen pienuus ja tässä itse asiassa tehot eivät ole edes erityisen pieniä. Mobiiliverkossa lisävaimennusta aiheuttaa mm. rakennusten seinät ja muut esteet, lähetysteho on yleensä pienempi ja lisäksi matkapuhelimessa signaalin vastaanotto ei useinkaan ole optimaalinen. Lisäksi on keskeistä havaita, että taajuuksien kasvaessa vaimennus aina kasvaa, kun antennivahvistukset pidetään vakioina. Toisaalta pienemmillä taajuuksilla antennin fyysisen koon tulee olla suurempi, jotta antennivahvistus pysyisi samana: vertaa Mobiiliverkkojen luentokalvon kuvaa 8 (Marconi) vaikkapa kännykän sisäänrakennettuun antenniin. Ja tässä vielä kertaus siitä miten desibeleillä lasketaan: 1. Desibeli ilmaisee aina tehojen suhteen logaritmisella asteikolla. Esimerkiksi jos teho P1 on kaksi kertaa suurempi kuin teho P2, niin niiden välinen suhde (P1/P2) on 3 db (tai tarkemmin 3,0103 db). Vastaavasti jos tehojen suhde on 100:1, niin desibeleissä suhde on 10 log 10(100) = 20 db. 2. Silloin kun kyseessä tehovahvistukset ja -vaimennukset, voidaan soveltaa desibelien suoraa yhteen- ja vähennyslaskua. Esimerkiksi jos yksi vahvistin vahvistaa +25 db, toinen vahvistin (sarjassa edellisen kanssa) vahvistaa +15 db ja lisäksi siirtokanava aiheuttaa vaimennusta 30 db, niin nämä desibelit voidaan laskea suoraan yhteen jolloin havaitaan että 25 + 15 30 = 10, eli alkuperäisen signaalin teho on vahvistunut 10 db. Huomatkaa että vastaava laskelma voidaan tehdä lineaarisella asteikolla, mutta silloin pitää käyttää kerto- ja jakolaskuja. 3. dbm on teho suhteessa milliwattiin desibeliasteikolla. Näitä dbm arvoja ei voi laskea yhteen desibeliasteikolla, vaan ne täytyy muuntaa ensin lineaariselle asteikolle ja sitten laskea yhteen. Toisaalta yksinkertaisissa tapauksissa voimme päätellä lopputuloksen, esimerkiksi kun lasketaan yhteen tehot 30 dbm ja 30 dbm, havaitsemme että tällöin teho kaksinkertaistuu, eli desibeliasteikolla teho kasvaa (likimäärin) 3 db. Tulokseksi saadaan siis 33 dbm. Mutta monimutkaisemmissa tapauksissa täytyy siis aina tehdä muunnos lineaariselle wattiasteikolle ennen yhteenlaskua. Tulos voidaan sitten tarvittaessa kääntää takaisin dbm-asteikolle. 4. Laskutoimitus 30 dbm + 40 dbm = 70 dbm ei viittaa mihinkään reaalimaailman ilmiöön (jos tällaisen laskelman esittää tentin desibelilaskuna, niin lopputuloksena on automaattisesti 0 p). Samoin jos kaavassa jossa esiintyy teho (watteina), kuten Shannonin kaavassa (3.3) tai radiotien signaalien tehosuhteita kuvaavassa kaavassa 5.2, niin niihin ei saa laittaa desibelejä vaan tehoja. Valitettavasti kaavaan 5.2 liittyvässä tekstissä puoliaaltodipolin tehovahvistus oli ilmaistu desibeliasteikolla (2,15 db), kun se loogisesti olisi pitänyt antaa tehovahvistuksena (1,64). Tämä on saattanut aiheuttaa turhaa sekaannusta. Nämä desibelien muunnokset ja yhteenlaskut ovat niin keskeisiä asioita kurssin kannalta, että jokaisen tenttiin tulevan opiskelijan täytyy ne tuntea. Laskuharjoitus 8. Tietojenkäsittely Tehtävä 8.1. Laskun lähtökohtana (vuonna 2015) on että ihmisen käsittelykyvyksi arvioidaan 10 TFlopsia (koskien siis puheenkäsittelyä) ja 1000 eurolla arvioidaan saatavan noin 0,4 TFlopsia tietojenkäsittely-kapasiteettia.
Algoritmien tehokkuuseroja on vaikea arvioida, mutta tässä käytännössä oletetaan että pitkän evoluution tuloksena tehokkuusero on 1000 ihmisen eduksi. Eli käytännössä tietokoneella pitäisi päästä 10000 TFlopsin tehoon, jotta päästäisiin samaan ymmärryksen tasoon. Tietojenkäsittelyn tehon pitää siis vielä (näiden oletusten mukaan) 25000-kertaistua. Tähän menee x vuotta, jossa 2 x = 25000 josta saadaan x = 14,7 vuotta eli näin ollen tämä kysytty asia tapahtuisi joskus vuoden 2029 aikana. Tosin voidaan ehkä olettaa myös tietokoneiden algoritmit kehittyvät tänä aikana, joten oikea vuosiluku saattaa olla pikemminkin 2025. Ei siis kovinkaan kaukana. Tehtävä 8.2. Ensimmäiseksi pitää kääntää luku 13 binäärijärjestelmälle. Koska 13 voidaan esittää muodossa (8, 4, 2 ja 1 ovat siis kahden potensseja): 1 8 + 1 4 + 0 2 + 1 1, niin binäärilukuna 13 on 1011 (alkaen vähiten merkitsevästä numerosta). 7/4-koodauksessa pariteettibitit p1, p2 ja p3 lasketaan seuraavan taulukon mukaan (alkuosa taulukosta 6.2 opintomateriaalista siten että databitit on sijoitettu taulukkoon): Bitti 1 2 3 4 5 6 7 p1 p2 d1 p3 d2 d3 d4 1 0 1 1 p1 x 1 0 1 p2 x 1 1 1 p3 x 0 1 1 Tästä voidaan päätellä että p1 = 0, koska databiteistä parillinen määrä on ykkösiä (d1 ja d4), vastaavasti p2 = 1, koska databiteistä pariton määrä on ykkösiä ja p3 = 0. Eli koodattuna saadaan 0110011. B-kohdassa voidaan yksinkertaisesti verrata edellä saatua binääriluku 0110011 ja annettua binäärilukua 0110111, jolloin havaitaan että vain yksi bitti eroaa, joten lähetetyn luvun pitää olla sama kuin a- kohdassa eli 13 (kymmenjärjestelmässä). Laskuharjoitus 9. Jonoteoria Tehtävä 9.1. Ensin täytyy tarkasti selvittää minkälaisesta jonoista on kysymys:
1-kohdassa on kyseessä M/M/1-jono, jossa on siis yksi palvelupaikka ja ääretön määrä odotuspaikkoja. Tarjottu liikenne on y*h, jossa y = tulevien asiakkaiden määrä aikayksikössä eli 42 tunnissa = 0,70 minuutissa ja h = keskimääräinen palveluaika = 1 min. Tarjottu liikenne eli tässä tapauksessa järjestelmän kuormitus on siten 0,70, joka on (onneksi) alle 1, jolloin jonon käyttäytymisestä voidaan sanoa jotain. Tämä täytyy aina tarkistaa, sillä jos kuormitus on 1 tai yli, kaavat eivät päde, koska mitään tasapainotilaa ei synny. Palveltavaksi pääsee heti, jos asiakasta ei juuri tulohetkellä ole palveltavana. Tässä tapauksessa (kun kuormitus on alle yhden ja jono on rajaton), kaikki tulevat asiakkaat palvellaan joskus, joten 70 % ajasta on joku palveltavana (koska siis järjestelmän kuormitus on 0,70). 1a-kohdan vastaus on siten 30 % (= 1 0,70). 1b-kohdan vastaus saadaan soveltamalla opetusmateriaalin kaavaa (7.6) ja tulos on 0,7/(1-0,7)*1 = 2,33 min = 140 s. h w = A 1 A h 2-kohdassa täytyy laskea eri tilojen todennäköisyydet. Ensi pitää päätellä mitkä ovat järjestelmän mahdolliset tilat ja tässä tehtävä kannattaa lukea tarkasti!. Mahdollisia tiloja ovat: (0;0), (1;0), (1;1), (1;2) ja (1;3), jossa ensimmäinen numero sulkujen sisällä tarkoittaa palveltavien asiakkaiden määrä ja toinen numero odottavien asiakkaiden määrää. Tilakaavioksi saadaan kun aikayksikkönä on minuutti: 0,7 0,7 0,7 0,7 0,7 0;0 1;0 1 1;1 1;2 1;3 1 1 1 Tilojen todennäköisyydet saadaan esimerkiksi aloittamalla oletuksella että tilan (0;0) todennäköisyys on 1, ratkaisemalla muiden tilojen todennäköisyydet rekursiivisesti ja skaalaamalla lopuksi todennäköisyydet siten että sallittujen tilojen todennäköisyyksien summa on 1. Tilojen todennäköisyyksiksi saadaan ennen skaalausta, koska siirtymien määrä aikayksikössä vasemmalta oikealla ja oikealta vasemmalle täytyy olla keskimäärin yhtä suuria (esimerkiksi 0,7*P(0,0) = 1,0*P(1,1)): P(1;0) = 0,7 P(1;1) = 0,49 P(1;2) = 0,343 P(1;3) = 0,2401. Skaalauksen jälkeen saadaan: P(0;0) = 0,3606 P(1;0) = 0,2524
P(1;1) = 0,1767 P(1;2) = 0,1237 P(1;3) = 0,0866. Koska asiakkaat tulevat satunnaisilla hetkillä riippumatta jonon kulloisestakin pituudesta, vastaus 2akysymykseen on tilan (1;3) todennäköisyys eli 8,66 %. (vastaavasti todennäköisyys, että pääsee heti palveltavaksi on 36 % eli tilan 0;0 todennäköisyys). 2b-kohdassa on ensiksikin laskettava mikä keskimääräinen odottavien asiakkaiden määrä, joka on 1*P(1;1) + 2*P(1;2) + 3*P(1;3) = 1*0,1767 + 2*0,1237 + 3*0,0866 = 0,6838. Tässä pitää muistaa kertoimet 1, 2 ja 3! Lisäksi pitää laskea miten paljon niitä asiakkaita tulee, jotka palvellaan heti tai jäävät odottamaan palvelua. Tämä on helpoin laskea siten, että kun tiedetään että edes odottamaan ei jää 8,66 % asiakkaista, niin silloin muita asiakkaita tulee minuutissa 0,7*(1-0,0866) = 0,6394. Kun keskimäärin asiakkaita on jonossa 0,6838 ja asiakkaita tulee keskimäärin 0,6394 minuutissa, niin keskimäärin asiakkaat viettävät jonossa 0,6838/0,6394 = 1,07 minuuttia (= 64 s). Tämä on siis vastaus kohdan 2b-kysymykseen. 3-kohdassa täytyy jälleen lukea tehtävä tarkkaan, jolloin havaitaan että palvelupaikkoja on kaksi ja odottamassa voi lisäksi olla korkeintaan 4 asiakasta. Kun asiakkaita tulee 90 tunnissa eli tarjottu liikenne on 1,5. Tilakaavioksi saadaan siten: 1,5 1,5 1,5 1,5 1,5 1,5 1,5 0;0 1;0 2;0 2;1 2;2 2;3 2;4 1 2 2 2 2 2 Tästä voidaan ratkaista eri tilojen todennäköisyydet samalla tavoin kuin 2-kohdassa eli lähtien tilasta 0;0. Skaalauksen jälkeen saadaan: P(0;0) = 0,1686, P(1;0) = 0,2529, P(2;0) = 0,1896, P(2;1) = 0,1422, P(2;2) = 0,1067, P(2;3) = 0,0800 ja P(2;4) = 0,0600. Vastaus 3a-kohtaan on siten P(2;0) + P(2;1) + P(2;2) + P(2;3) = 0,1896 + 0,1422 + 0,1067 + 0,0800 = 51,86 % Lopuksi odotusaika, jota varten tarvitsee ensiksikin laskea, kuinka paljon odottavia asiakkaita keskimäärin on. Tämä saadaan seuraavasti:
1*P(2;1) + 2*P(2;2) + 3*P(2;3) + 4*P(2;4) = 1*0,1422 + 2*0,1067 + 3*0,0800 + 4*0,0800 = 0,8356. Entä kuinka paljon odottamaan jääviä asiakkaita sitten tulee? Koska asiakkaat tulevat täysin järjestelmän tilasta riippumatta, niin vastaus saadaan kertomalla 3a-kohdan vastaus 1,5 asiakkaalla minuutissa, jolloin saadaan 0,5186*1,5 = 0,7778 asiakasta tunnissa. Kun keskimäärin asiakkaita on jonossa 0,8356 ja (tässä kohdassa mukaan luettavia) ja asiakkaita tulee keskimäärin 0,7778 minuutissa, niin keskimäärin asiakkaat viettävät jonossa 0,8356/0,7778 = 1,07 minuuttia (= 64 s). Tämä on siis vastaus kohdan 3b-kysymykseen. Tehtävän tarkoitus lähinnä esitellä miten periaatteessa yksinkertaisesta jonojärjestelmästä voidaan laskea erilaisia järjestelmän suorituskykyä kuvaavia suureita. Kuten aikaisemmassa Erlang-laskussa, niin käytännössä jonojärjestelmien analyysi tehdä jonkun työkalun avulla (Excelillä pääsee alkuun, mutta vähänkin monimutkaisemmissa järjestelmissä tarvitaan kehittyneempiä työkaluja).
Tehtävät 1.1 Tiedonsiirron vaihtoehdot Tehtävänäsi on siirtää ilmastomalliin liittyvää dataa 10 TB Otaniemestä Kumpulaan. Käytettävissäsi on yksi siirrettävä kovalevy, jonka kapasiteetti on 2 TB sekä polkupyörä. Matkaa on 10 km - mutta onneksi on kesäkuu. Oletetaan että kovalevyllä sekä kirjoitus- että lukunopeus on 100 MB/s. Toinen vaihtoehto on datayhteys Otaniemen ja Kumpulan välillä. A. Kuinka nopea datayhteyden tulee vähintään olla jotta koko datamäärän siirto tapahtuisi nopeammin datayhteydellä kuin polkupyörällä? B. Entä jos käytettävissä on auto ja rajaton määrä kovalevyjä? C. Entä jos data pitäisikin siirtää Uuteen Seelantiin (arvioi realistinen matka-aika, tässä tapauksessa edestakaisin)? D. Arvioi paljonko datan esittämiseen tarvittaisiin tiheään painettuja kaksipuoleisia A4-arkkeja, jos data esitettäisiin 8 bitin merkeillä, fonttikoolla 8. 1.2 Kasvun estimointi Vuonna 2000 Internetiin oli liitettynä noin 70 miljoonaa tietokonetta kun taas vuonna 2010 tietokoneita oli liitettynä noin 740 miljoonaa. Milloin tietokoneiden määrä ylittää 10 miljardin rajan, kun oletetaan että a) kasvu on lineaarista ajan suhteen, tai b) kasvu on eksponentiaalista ajan suhteen? 2.1 Hintajousto Käytetään hintajouston kaava matkapuhelinpalvelulle (koskien keskimääräisen asiakkaan puheluminuutteja) on (kun kaikilla operaattoreilla on sama hinta) eli kaavaa 2.2 prujussa sivulla 39. Oletetaan kaksi yhtä suurta operaattoria (A ja B), joilla molemmilla on 1 miljoona asiakasta. Alkutilanteessa hinta on kummallakin 0,10 /min ja puheluiden määrä on 10 min/päivä/asiakas. Jos operaattori A laskee ensin hintaa arvoon 0,09 /min, niin kuinka paljon operaattorin A täytyy saada vähintään lisää asiakkaita, jotta sen kokonaistulot puheluista nousisivat, kun a) e = 0,75 ja h 1 = 0 /min b) e = 0,50 ja h 1 = 0,05 /min?
Lisäksi oletetaan, että operaattori B laskee myös hintansa samaan 0,09 /min, mutta viiveellä, jolloin operaattori A ehtii houkutella jonkun määrän uusia asiakkaita B:ltä. Tämän jälkeen taas asiakasmäärät pysyvät vakioina. 3.1 Shannon Vastaanotetun signaalin teho on 0,25 nw ja vastaanottimen kaistanleveys on 100 khz. Signaalin lisäksi vastaanottimeen tulee kohinaa tehoilla -76 dbm ja -87 dbm. a) Mikä on Shannonin kaavan mukainen teoreettinen siirtokyky? b) Entä jos vastaanottimen kohinat (-76 dbm ja -87 dbm) kohdistuvat kahdelle eri 50 khz:n kaistalle siten, että signaalin teho molemmilla kaistoilla on 0,125 nw? Mikä on tällöin kahden kaistan yhteenlaskettu teoreettinen siirtokapasiteetti? c) Entä jos signaalin koko teho (0,25 nw) laitetaan pienemmän kohinan kaistalle? 6.1 Verkkopalvelun saatavuus Mikä on oheisessa verkossa niiden kahden solmupisteen välisen yhteyden saatavuus, jonka saatavuus on alhaisin? Jokaisen jänteen saatavuus on 99 % ja jänteiden vikaantumiset tapahtuvat toisistaan riippumatta. Solmut oletetaan täysin luotettaviksi. Vaihtoehtoisten reittien tulee kulkea kokonaisuudessaan eri jänteiden kautta ja niiden tulee olla ennalta määriteltyjä. F A G B E I H J C D 6.2 Estojärjestelmä Puhelinpalvelujärjestelmään tulee keskimäärin yksi puhelun 2 minuutin välein siten, että jos kaikki asiakaspalvelijat ovat varattuina, puhelu katkaistaan välittömästi. Oletetaan että tästä kohtelusta suivaantuneena asiakkaat eivät koskaan yritä uudestaan. Keskimääräinen palveluaika on 48 sekuntia ja palvelupaikkojen määrä on 2. a. Mikä on puhelun estymisen todennäköisyys? b. Millä todennäköisyydellä molemmat palvelupaikat ovat vapaita? c. Jos palvelupaikkojen määrä kasvatetaan neljään, kuinka paljon tarjottujen puhelujen määrä voi kasvaa (prosentteina) ilman että estymisen todennäköisyys kasvaa korkeammaksi kuin a- kohdassa?
7.1 Solukkoverkon mitoitus Mikä on tarvittava tukiasemien määrä, kun 1000 km2 alueella asuu 1.2 miljoonaa ihmistä? a) Kun on vain matkapuhelinliikennettä siten, että keskimäärin asukas puhuu 15 minuuttia päivässä ja puheen vaatima bittinopeus on 12 kbit/s suuntaansa. b) Kun puheen lisäksi on dataliikennettä siten, että keskimäärin asukas käyttää datasiirtoon 6 GB kuukaudessa. c) Kun edellisten lisäksi 0.2 prosenttia asukkaista käyttää jatkuvasti 50 Mbit/s datayhteyttä verkosta päälaitteeseen. Yhdessä tukiasemassa oletetaan olevan 3 sektoria, joiden kunkin kapasiteetti on 150 Mbit/s (jaettuna molempiin suuntiin). Ota huomioon myös kiiretunnin osuus kokonaisliikenteestä sekä kuormituksen vaihteluista (solujen välillä ja eri päivinä) johtuva keskimääräinen sallittava kuormitustaso. 7.2 Vastaanotetun signaalin voimakkuus Mikä on vastaanottaman signaalin voimakkuus (W) päätelaitteessa, kun tukiaseman lähetysteho on 10 W, lähettimen tehovahvistus on 3 db, vastaanottimen tehovahvistus on 0 db ja etäisyys tukiasemaan on 1,5 km? a) Kun käytetty taajuus on 800 MHz b) Kun käytetty taajuus on 2600 MHz 8.1 Milloin kone ohittaa ihmisen Oletetaan että: Ihmisaivot käyttää puheen ymmärtämiseen 10 TFLOPSin verran tietojenkäsittelykapasiteettia. Vuonna 2015 saatoit ostaa kaupasta 200 GFLOPSia yleiskäyttöistä tietojenkäsittelykapasiteettia 500 Eurolla. Samalla hinnalla saatava kapasiteetti kaksinkertaistuu vuodessa. Ihmisen käyttämä puheen ymmärtämisen algoritmi on 1000 kertaa tehokkaampi kuin tietokoneen käyttämä algoritmi (eli tietokone tarvitsee 1000 kertaan enemmän FLOPSeja kuin ihminen päästäkseen samaan ymmärtämisen tasoon) Milloin 1000 Euron laite ymmärtää puhetta yhtä hyvin kuin ihminen? 8.2 Hamming-koodaus
a) Koodaa 10-järjestelmän luku 13 Hamming 7/4-koodilla siten että databitit alkavat pienimmästä päästä. b) Jos vastaanotettu Hamming-koodattu signaali on 0110111 niin mikä on lähetetty data, jos oletetaan että vastaanotetussa signaalissa on korkeintaan yksi virhe? 9.1 Jonojärjestelmä Kioskilla on vain yksi kassa, jonka palveluaika on keskimäärin 1 minuutti asiakasta kohde (palveluaikajakauma on eksponentiaalinen). Asiakkaita tulee keskimäärin 42 tunnin aikana, siten että tulevien asiakkaiden välit ovat eksponentiaalisesti jakautuneita. Oletetaan ensin että asiakkaat jäävät jonottamaan riippumatta jonon pituudesta. 1a) Mikä on todennäköisyys, että asiakas pääse heti palveltavaksi ilman jonottamista? 1b) Kuinka pitkään asiakkaat joutuvat keskimäärin odottamaan (mukaan lukien ne jotka palvellaan heti)? Oletetaan seuraavaksi että asiakkaat ovat niin kiireisiä, että jos odottamassa on jo kolme asiakasta, niin he poistuvat paikalta ilman ostoksia. 2a) Mikä on todennäköisyys, että tuleva asiakas poistuu välittömästi paikalta? 2b) Mikä on keskimääräinen odotusaika niillä asiakkailla jotka jäävät odottamaan tai saavat heti palvelua? Entä jos kioskia laajennetaan lisäämällä toinen kassa, siten että kassoilla on yhteinen jono. Asiakkaat ovat edelleen niin kiireisiä että he jäävät asiakkaiksi vain jos odottavia asiakkaita on korkeintaan 3. Lisäksi oletetaan että asiakkaiden määrä kasvaa siten, että asiakkaita tulee keskimäärin 90 tunnissa. 3a) Mikä on todennäköisyys, että tuleva asiakas jää jonottamaan mutta ei pääse heti palveltavaksi? 3b) Mikä on keskimääräinen odotusaika niillä asiakkailla jotka jäävät odottamaan mutta eivät pääse heti palveltavaksi?