Kaksi pisteytystapaa DNA-sekvenssien luokitteluun
|
|
- Albert Manninen
- 8 vuotta sitten
- Katselukertoja:
Transkriptio
1 Kaksi pisteytystapaa DNA-sekvenssien luokitteluun Marjo Salinto Tiedon louhinta biomolekyyliaineistoista Helsingin yliopisto, tietojenkäsittelytieteen laitos Raportti C , s 31-39, marraskuu 2003 Tiivistelmä DNA-sekvenssien luokittelu on tärkeä ongelma laskennallisessa biologiassa Luokittelija ennustaa kuuluuko luokittelematon sekvenssi johonkin luokkaan C vai ei Tässä seminaariraportissa tarkastellaan kahta pistemäärien laskutapaa DNA-sekvenssien luokittelua varten Pisteytystavat (luokittelijat) eroavat toisistaan tavassa käsitellä perussekvenssejä ja tavassa laskea opetussekvensseille ja luokittelemattomille sekvensseille pistemääriä Hahmopohjainen luokittelija soveltaa hahmojen etsimisalgoritmia aktiivisten hahmojen löytämiseksi perusaineistosta Luokiteltavan sekvenssin pistemäärä perustuu luokiteltavan sekvenssin ja perussekvenssien hahmojen pisimmän yhteisen osamerkkijonon pituuteen Sormenjälkipohjainen luokittelija soveltaa hajautukseen perustuvaa sormenjälkitekniikkaa Sekvensseille generoidaan osasekvenssit eli segmentit ja niille sormenjäljet Sen jälkeen hajautetaan kunkin segmentin sormenjälki tiedostoon Luokiteltavalle sekvenssille ja perussekvensseille tehdään segmentointi ja sormenjäljet samalla tavalla Luokiteltavan sekvenssin sormenjäljet hajautetaan käyttäen samaa hajautusfunktioita kuin perussekvenssien tapauksessa Tämän jälkeen verrataan luokiteltavan sekvenssin ja perussekvenssien sormenjälkiä toisiinsa, ja kun sormenjäljet täsmäävät kasvatetaan vastaavan perussekvenssin pistemäärää Luokiteltavan sekvenssin kohdistaminen perussekvenssin korkeimman pistemäärän tuottavan paikan kanssa tuottaa parhaimman kohdistamisen näiden kahden sekvenssin välillä Luokiteltavan sekvenssin pistemäärä perustuu perussekvenssien pistemääriin Empiirisesti on osoitettu molempien pisteytysalgoritmien toimivan tehokkaasti Niillä on myös hyvä suorituskyky 1 Yleistä DNA-sekvenssien luokittelusta Tämä seminaariraportti pohjautuu suurelta osin kirjan "Pattern Discovery in Biomolecular Data: Tools, Techniques and Applications" [WSS99] neljänteen lukuun, joten lähde mainitaan myöhemmin vain silloin, kun on käytetty jotain muuta lähdettä DNA-sekvenssillä tarkoitetaan nukleiinihapon nukleotidijärjestystä DNA-sekvenssien luokittelu on tärkeä ongelma laskennallisessa biologiassa Luokittelemattomalla sekvenssillä S luokittelija ennustaa kuuluuko sekvenssi tiettyyn luokkaan Avaintekijä tämän päivän suurten tietomäärien hallitsemiseksi ja analysoimiseksi on tehokkaiden, tarkkojen ja vaihtoehtoisten tekniikoiden saatavuus Näillä tekniikoilla voidaan saada selville samankaltaisuuksia vastalöydettyjen ja jo erilaisiin kirjastoihin (tietokantoihin) talletettujen sekvenssien välillä [CR93] Monia tekniikoita on esitetty erilaisten luokittelijoiden tekemisek- 31
2 si näistä luokiteltujen sekvenssien kirjastoista Erilaisilla hajautustaulutekniikoilla ja adhoc-heuristiikoilla on pyritty lyhentämään analysointiohjelmistojen suoritusaikoja Yleisesti ottaen DNA-sekvenssien luokittelun tekniikat voidaan jakaa kolmeen luokkaan 1 Konsensuksen etsintä: Otetaan joukko luokan sekvenssejä ja generoidaan konsensussekvenssi, jota sitten käytetään ei-karakterisoitujen DNAsekvenssien tunnistamiseen Konsensussekvenssi kuvastaa nukleotidin yleisintä muotoa kussakin sekvenssin kohdassa [WRSSWY] (DNA:n neljä nukleotidiä ovat : A (adeniini), C (sytosiini), G (guaniini) ja T (tymiini)) 2 Induktiivinen oppiminen/neuroverkot: Otetaan joukko luokan sekvenssejä ja joukko sekvenssejä, jotka eivät kuulu luokkaan ja sitten oppimistekniikoita käyttäen johdetaan sääntö, joka määrää kuuluuko luokittelematon sekvenssi S luokkaan vai ei 3 Sekvenssien kohdistus: Kohdistetaan luokittelematon sekvenssi S luokkaan kuuluvien sekvenssien kanssa käyttäen olemassa olevia välineitä, kuten FASTA ja liitetään S luokkaan, jos S:n paras kohdistamispistemäärä on riittävän korkea Tässä raportissa tarkastellaan kahta menetelmää pistemäärien laskemiseksi DNAsekvenssien luokittelua varten: hahmojen etsimisalgoritmiin perustuva menetelmä ja hajautukseen perustuva sormenjälkitekniikka Ensimmäinen menetelmä esitellään melko lyhyesti ja toinen tarkemmin Luvussa 2 esitettävien luokittelijoiden käyttö perustuu seuraavaan lähestymistapaan Ensin valitaan satunnaisesti sekvenssijoukko luokasta siten, että jokaisella sekvenssillä on sama todennäköisyys tulla poimituksi otokseen [WMSSCL96] Otanta tehdään palauttamatta, jolloin kukin sekvenssi tulee enintään kerran otokseen Tätä valittua sekvenssijoukkoa kutsutaan perusaineistoksi Sitten otetaan luokasta toinen sekvenssijoukko, jota kutsutaan positiiviseksi opetusaineistoksi Jokaiselle positiiviselle opetussekvenssille lasketaan pistemäärä perussekvenssien suhteen Näin saatua minimipistemäärää kutsutaan positiiviseksi alarajaksi L p Seuraavaksi otetaan joukko sekvenssejä, jotka eivät ole luokassa ja kutsutaan tätä joukkoa negatiiviseksi opetusaineistoksi Jokaiselle negatiiviselle opetussekvenssille lasketaan pistemäärä perussekvenssien suhteen Näin saatua maksimipistemäärää kutsutaan negatiiviseksi ylärajaksi U n Kullakin tekniikalla on oma tapansa laskea pistemääriä [WRSSWY] Olkoon B high = max {L p, U n } ja B low = min{ L p, U n } Kun luokitellaan sekvenssiä S, lasketaan S:n pistemäärä suhteessa perussekvensseihin Tätä pistemäärää merkitään c:llä Jos c B high, niin S kuuluu luokkaan Jos c B low, niin S ei kuulu luokkaan Jos B low < c < B high, niin ei oteta kantaa, kuuluuko S luokkaan vai ei Seuraavaksi esitettävät kaksi luokittelijaa eroavat toisistaan tavassa käsitellä perussekvenssejä ja tavassa laskea opetussekvensseille ja luokittelemattomille sekvensseille pistemääriä 2 Kaksi luokittelijaa DNA-sekvenssien luokittelemiseksi 21 Hahmopohjainen luokittelija Hahmot, joita sekvenssijoukoista etsitään ovat muotoa *X 1 *X 2 *, missä X 1, X 2, ovat sekvenssien segmenttejä eli osasekvenssejä ja *:t mitä tahansa merkkejä, joilla ei tässä 32
3 yhteydessä ole merkitystä Hahmon esiintyvyys eli aktiivisuus tarkoittaa niiden sekvenssien määrää, joissa hahmo esiintyy sallitulla etäisyydellä Tässä esitettävää luokittelijaa kutsutaan hahmopohjaiseksi luokittelijaksi, koska se soveltaa hahmojen etsimisalgoritmia aktiivisten hahmojen löytämiseksi perusaineistosta Algoritmi koostuu kahdesta vaiheesta: (1) etsitään kandidaattisegmenttejä perussekvenssijoukosta S poimitusta pienestä otoksesta ja (2) yhdistetään kandidaattisegmentit kandidaattihahmoiksi ja arvioidaan hahmon aktiivisuus koko sekvenssijoukossa S Algoritmi on esitetty tarkemmin lähteenä olevan kirjan luvussa 412 [WSS99] Esimerkki 1 [WRSSWY] Olkoon hahmon pituus suurempi kuin kuusi eli hahmo sisältää vähintään seitsemän nukleotidiä, esiintyvyys on kolme eli hahmo löytyy kolmesta perussekvenssistä ja yksi mutaatio (täsmäämättömyys, poisto tai lisäys) sallitaan, kun täsmätään hahmoa perussekvensseihin Tällöin seuraavista kolmesta perussekvenssistä löytyy kaksi aktiivista hahmoa GCCGGGC ja GCCAGGC, jotka on perussekvensseissä alleviivattu GGAGAGGCCGGGCGTGTGCCGGTAC GGCCAGGCGGCAGATCTTGACCAGG TGTAATCAGAGCGCCAGGCAAACAT Olkoon joukko aktiivisia hahmoja, jotka on löydetty perussekvenssijoukosta Luokiteltavan sekvenssin S ja hahmon P välinen pistemäärä score(s,p) = L, missä L on S:n ja P:n pisin yhteinen osamerkkijono Score(S,P) on siis nukleotidien määrä L:ssä S:n pistemäärä suhteessa perussekvensseihin määritellään S:n ja P:n välisten pistemäärien maksimilla kerrottuna 100:lla seuraavasti score (S) = max {score(s,p) P } 100 Esimerkki 2 Esimerkin 1 perussekvensseillä ja luokiteltavalla sekvenssillä S=GCCGTTTTTTTTTTTTTTTTTTTTT saadaan hahmon GCCGGGC tapauksessa pistemääräksi 4 ja hahmon GCCAGGC tapauksessa pistemääräksi 3 Tällöin S:n pistemäärä on Sormenjälkipohjainen luokittelija Toinen luokittelija, jota kutsutaan sormenjälkipohjaiseksi luokittelijaksi, ottaa pistemäärien laskemiseksi käyttöön hajautukseen perustuvan sormenjälkitekniikan [CR93, WMSSCL96] Olkoon S sekvenssi ja seg segmentti eli S:n osasekvenssi Segmentin seg sormenjälki f on mahdollisesti epäjatkuva segmentin seg osasekvenssi, joka alkaa segmentin ensimmäisestä merkistä (nukleotidistä) Väli paikassa (positiossa) p tarkoittaa sitä, että nukleotidiä segmentin paikasta p ei poimita Sallittujen välien määrä sormenjäljissä määritellään parametrilla gap Esimerkki 3 Olkoon S=ACGTTGCA ja S:n segmentti seg=acgttg ATT on segmentin seg kolmen nukleotidin sormenjälki kahdella välillä (yksi väli paikassa 2 ja toinen paikassa 3) 33
4 221 Sormenjälkitiedostojen muodostaminen Annetusta perussekvenssijoukosta poimitaan kunkin perussekvenssin segmentit ja hajautetaan kunkin segmentin sormenjäljet tiedostoon Olkoon S sekvenssi perusaineistosta Otetaan kaikki S:n segmentit seg, jotka ovat n:n pituisia ja generoidaan sormenjäljet segmentistä seg Sormenjälkien pituus vaihtelee 2:sta n-1:een Sormenjälkiä ei käytetä suoraan tiedostossa indeksinä, vaan tavallisesti indeksinä käytetään kokonaislukuarvoja [CR93] Hajautusfunktion valinta on kriittinen tekijä algoritmin tarkkuuden ja tehokkuuden kannalta Hajautusfunktioita h k, 2 k n-1 käytetään hajauttamaan kaikki k:n pituiset sormenjäljet sormenjälkitiedostoon k Tiedostossa kuhunkin sormenjälkeen f liittyy kokonaislukupari (x,y) Tämä pari toimii f:n paikan osoittimena X tarkoittaa sitä, että f on generoitu :n x:nnen sekvenssin segmentistä ja y tarkoittaa, että ensimmäinen f:n nukleotidi esiintyy sekvenssin y:nnessä paikassa Esimerkki 4 Olkoon kolme perussekvenssiä S 1 = ACGTTGCA S 2 = ACCAGTG S 3 = CGGACTA Oletetaan, että segmentin pituus on kuusi Silloin saadaan seuraavat segmentit S 1 :stä ACGTTG CGTTGC GTTGCA Otetaan segmentti seg=acgttg Oletetaan, että väli on kaksi (gap=2) Silloin voidaan generoida seuraavat kolmen nukleotidin sormenjäljet ACG (ei väliä) AGT (yksi väli paikassa 2) ACT (yksi väli paikassa 3) ATT (yksi väli paikassa 2 ja toinen väli paikassa 3) AGT (yksi väli paikassa 2 ja toinen väli paikassa 4) ACT (yksi väli paikassa 3 ja toinen väli paikassa 4) Esimerkiksi sormenjäljet AGG ja ATG eivät täytä väliehtoa, koska niissä on kolme väliä Seuraavassa taulukossa on esitetty segmentin kaikki (2-5 nukleotidin pituiset) sormenjäljet [WSS99] 34
5 2:n nukleotidin sormenjäljet 3:n nukleotidin sormenjäljet 4:n nukleotidin sormenjäljet 5:n nukleotidin sormenjäljet Väli 0 AC ACG ACGT ACGTT Väli 1 AG ACT, ACGT, AGT AGTT, Väli 2 AT ACT, AGT, ATT ACTT ACGG, ATTG, ACTG, AGTG ACGTG, AGTTG, ACTTG Taulukko 1 Segmentin ACGTTG 2-5 nukleotidin sormenjäljet (segmentin pituus kuusi ja väli 2) Olkoon f=xyz kolmen nukleotidin sormenjälki ja hajautusfunktio h 3 (f) = [num(x) num(y) num(z)] mod 7, missä num(x) on X:n ASCII-arvo - 64 Oletetaan, että generoidut hajautusfunktion arvot (indeksit) noudattavat tasajakaumaa eli jokainen indeksi on yhtä todennäköinen [CR93] Esimerkki 5 A:n ASCII-arvo on 65, C:n 67, G:n 71 ja T:n 84 Hajautusfunktion arvot esimerkiksi sormenjäljille ACG ja ACT saadaan seuraavasti h 3 (ACG) = ( ) mod 7 = 35 mod 7 = 0 h 3 (ACT) = ( ) mod 7 = 48 mod 7 = 6 Sormenjälkitiedosto 3 voidaan esittää kuvan 1 mukaisena rakenteena [WSS99] 0 ACG(1,1) ACG(2,1) GAC(3,2) 1 2 AGT(1,1) AGT(1,1) GGA(3,2) ACT(1,1) ACT(1,1) GGT(3,2) Kuva 1 Kolmen perussekvenssin kolmen nukleotidin sormenjälkitiedosto 3 35
6 Esimerkiksi merkintä ACG(1,1) tarkoittaa, että sormenjälki ACG on generoitu S 1 :stä ja se alkaa S 1 :n ensimmäisestä paikasta Merkintä GGA(3,2) tarkoittaa, että sormenjälki GGA on generoitu S 3 :sta ja alkaa sen toisesta paikasta Muut merkinnät vastaavasti Se, että esimerkiksi AGT(1,1) esiintyy useamman kerran tarkoittaa sitä, että sama sormenjälki voidaan muodostaa samasta paikasta alkaen siten, että siinä on eri määrä välejä (sallituissa rajoissa) Indeksi (γ) voitaisiin myös muodostaa esimerkiksi seuraavasti, jos jokaiseen merkkiin k:n mittaisessa sormenjäljessä liittyisi yksikäsitteinen arvo ν i, 0 ν i τ, missä τ on mahdollisten merkkien määrä (DNA-sekvensseissä mahdolliset merkit ovat A, C, G ja T, joten τ on neljä) [CR93] k γ = i= 1 ( υ iτ i 1) DNA-sekvensseillä {A,C,G,T} -> {0,1,2,3} Esimerkiksi sormenjälki AATCGT, voitaisiin muuttaa muotoon ja silloin indeksiksi saataisiin = Algoritmi pistemäärien laskemiseksi Kun lasketaan sekvenssin S pistemäärää, S segmentoidaan samalla tavalla kuin perussekvenssit ja sormenjäljet generoidaan tulossegmenteistä Sen jälkeen hajautetaan sormenjäljet käyttäen samaa hajautusfunktioita kuin perussekvensseillä Kun S:n sormenjälki paikassa p ja perussekvenssin sormenjälki paikassa q täsmää, lisätään yksi perussekvenssin sopivan paikan pistemäärään kuten seuraavassa esitetään Olkoon sekvenssi S=CGATGCAT ja perussekvenssi S 1 =ACGTTGCA Kolmen nukleotidin sormenjälki on TGC alkaen S 1 :n paikasta 5 ja S:n paikasta 4 (q=5 ja p=4) Lisätään yksi paikan q-p+1=5-4+1=2 pistemäärään Intuitiivisesti: Jos kohdistetaan ensimmäinen S:n nukleotidi S 1 :n toisen nukleotidin kanssa, voidaan nähdä näiden kahden sormenjäljen yhteneväisyys S 1 : ACGTTGCA S : CGATGCAT Yleisesti ottaen, jos kohdistetaan S:n ensimmäinen nukleotidi S 1 :n k:nnen paikan kanssa, ja paikan k pistemäärä on n, voidaan nähdä n yhteneväisyyttä sormenjälkiä kohdistettaessa Siten S:n ensimmäisen nukleotidin ja S 1 :n korkeimman pistemäärän tuottavan paikan kohdistaminen tuottaa parhaimman kohdistamisen näiden kahden sekvenssin välillä [CR93] Algoritmi pistemäärien laskemiseksi pseudokoodina on esitetty kuvassa 2 [WSS99] Algoritmin syötteenä on sekvenssi S, joukko perussekvenssejä ja :n sormenjälkitiedostot Algoritmin tuloksena on histogrammi pistemääristä 36
7 /* sisältää S:stä generoidut sormenjäljet */ for jokainen :n sormenjälki f do begin /* Olkoon f:n pituus k */ hajauta f hajautusfunktioita h k käyttäen sormenjälkitiedostoon k; for jokainen f:n ja perussekvenssin sormenjäljen täsmääminen k:ssa do begin /* (i,q) osoittaa perussekvenssin i sormenjäljen ensimmäisen nukleotidin */ /* Oletetaan, että f:n ensimmäinen nukleotidi sijaitsee S:n paikassa p */ lisätään yksi i:nnen perussekvenssin paikan q-p+1 pistemäärään; end; end; Kuva 2 Algoritmi pistemäärien laskemiseksi pseudokoodina B on :n perussekvenssi ja p on B:n paikka 1 p B Score(B[p]) on pistemäärien kokonaismäärä, mikä on lisätty paikkaan p Perussekvenssin B pistemäärä score(b) on B:n eri paikkojen pistemäärien maksimi S:n pistemäärä perussekvenssien suhteen on kaikkien perussekvenssien pistemäärien maksimi kerrottuna skaalaustekijällä 100/ S Skaalaustekijällä 'vakioidaan' S:n pituuden vaikutusta [WRSSWY] Mitä pidempi merkkijono sitä todennäköisemmin enemmän pistemääriä Pistemäärien määräytyminen voidaan esittää seuraavasti score(b) = max {score(b[p]) 1<=p<= B } ja score(s) = max {score(b) B } / S 100 Esimerkki 6 Perussekvenssin S 1 pistemäärä esimerkiksi paikassa -1 (1-3+1) tarkoittaa sitä, että kohdistetaan sekvenssit seuraavasti S 1 : S : ACGTTGCA CGATGCAT, jolloin sormenjäljet AG, AT ja AC täsmäävät (väli=2) Näin ollen pistemääräksi saadaan kolme Paikan 2 (2-1+1 ja 3-2+1) pistemäärä tarkoittaa sitä, että kohdistetaan sekvenssit seuraavasti S 1 : S : ACGTTGCA CGATGCAT, jolloin seuraavat sormenjäljet täsmäävät CGT 2 krt CGG 1 krt CTG 2 krt CGTG 2 krt CGTC 2 krt CGGC 1 krt CTGC 2 krt CG 1 krt 37
8 CT 2 krt GTG 2 krt GTC 2 krt GGC 1 krt GTGC 2 krt GTGA 2 krt GGCA 1 krt GTCA 2 krt GT 2 krt GG 1 krt CGTGC 2 krt GTGCA 2 krt, joten pistemääräksi tulee 34 Algoritmi tuottaa tulokseksi S 1 :lle pistemäärän 34 (max {3,0,0,34,0}), S 2 :lle pistemäärän 7 ja S 3 :lle pistemäärän 19 Score(B) on max {34,7,19}=34 ja score(s) on 34/8 100= Algoritmien ominaisuuksista Algoritmin tehokkuutta voidaan mitata seuraavilla mittareilla PR = NumCorrect/NumTest 100% ja NR = NumNoOpinion/NumTest 100% PR (precision rates) kuvaa algoritmin tarkkuutta ja NR (no-opinion rates) konservatiivisuutta eli sitä kuinka suuri osa sekvensseistä jätetään luokittelematta NumCorrect on oikein luokiteltujen testisekvenssien määrä, NumTest on testisekvenssien kokonaismäärä ja NumNoOpinion on niiden testisekvenssien määrä, joiden luokitteluun ei ole otettu kantaa eli ne on jätetty luokittelematta Väärillä positiivisilla tarkoitetaan niitä, jotka luokitellaan väärin kuuluviksi tarkasteltavaan luokkaan ja väärillä negatiivisilla niitä, jotka luokittelijan mukaan eivät kuulu tarkasteltavaan luokkaan, mutta oikeasti ne kuuluisivat Esimerkki 7 [WRSSWY] Raportissa esitettyjä kahta algoritmia on verrattu FASTA:aan ja tulokseksi on saatu, että FASTA on konservatiivisempi menetelmä kuin edellä esitetyt, koska se antaa helpommin luokittelusta tulokseksi 'ei kantaa', mutta se tuottaa erittäin vähän (esimerkissä 0) vääriä positiivisia ja vääriä negatiivisia tuloksia FASTA:lla saatiin esimerkkitapauksessa pienempi osa luokiteltua oikein (alhaisempi PR) kuin tässä esitellyillä kahdella menetelmällä Hahmopohjainen luokittelija osoittautui hieman sormenjälkipohjaista luokittelijaa paremmaksi, koska se antoi yhden väärän positiivisen tuloksen vähemmän eikä se jättänyt yhtään luokittelematta, kun sormenjälkipohjainen luokittelija jätti yhden Testeissä on osoitettu, että perussekvenssien määrän sekä positiiviseen ja negatiiviseen opetusaineistoon kuuluvien sekvenssien määrän suhteen esitetyt algoritmit ovat aika stabiileja eikä näiden tekijöiden muutoksilla ole suurta vaikutusta tuloksiin, kunhan vain huolehditaan siitä, että määrät eivät ole liian pieniä (100:a on käytetty suositeltavana minimiarvona) Korkeat esiintyvyysluvut (aktiivisuus), lyhyet aktiiviset hahmot ja suuret etäisyysarvot (sallitaan paljon mutaatioita) heikentävät hahmopohjaisen luokittelijan suorituskykyä Kun esiintyvyys kasvaa, niin niiden osuus kasvaa, joita ei pystytä luokittelemaan ja oikein luokiteltavien osuus pienenee Aktiivisten hahmojen pituus 11 ja enintään yhden etäisyydet ovat testeissä osoittautuneet hyviksi arvoiksi algoritmin toimivuuden kannalta Sormenjälkipohjaisen luokittelijan tapauksessa segmentin pituudella ja sormenjäljen välillä ei ole olennaista vaikutusta algoritmin tulokseen, joskin pienillä väleillä algoritmi on 38
9 paljon nopeampi kuin suurilla väleillä Testeissä vähintään kuuden pituiset segmentit ilman väliä ovat osoittautuneet hyviksi 3 Pohdintaa Empiirisesti on osoitettu molempien tässä esitettyjen algoritmien toimivan tehokkaasti Niillä on hyvä suorituskyky esimerkiksi FASTA:an verrattaessa Tässä esitettyjen algoritmien ja konsensuslähestymistavan yhdistämisellä on myös saatu hyviä tuloksia Artikkelin kirjoittajat mainitsivat itsekin puutteena sen, että luokittelijoiden tuloksissa ei ole luottamusvälejä kuvaamassa saatujen estimaattien luotettavuutta ja tarkkuutta Hahmopohjaisessa luokittelijassa pistemäärän laskemisessa keskeisintä on luokiteltavan sekvenssin ja perussekvensseistä löydettyjen hahmojen pisimmän yhteisen merkkijonon pituus, kun taas sormenjälkipohjaisessa luokittelijassa keskeisintä ei ole yhteisten sormenjälkien pituus vaan lukumäärä Esimerkiksi score(s) voidaan näillä luokittelijoilla laskea eri perussekvenssistä, jos yhdessä on yksi pitkä yhteinen hahmo ja toisessa useampia ja lyhyempiä yhteisiä sormenjälkiä Itse luokittelun tuloksen kannalta tämä ei kuitenkaan ole ratkaisevaa, vaan nämä kaksi luokittelijaa vaikuttavat aika toistensa kaltaisilta Hajautusfunktion valinta on mainittu kriittiseksi tekijäksi, mutta löydetyissä lähteissä ei ole kuitenkaan käsitelty sitä, miten se pitäisi valita, vaan on esimerkeillä esitetty, minkälainen hajautusfunktio voisi olla Viitteet [CR93] A Califano and I Rigoutsos FLASH: A Fast Look-Up Algorithm for String Homology In Proceedings of the First International Conference on Intelligent Systems for Molecular Biology, pages 56-64, Menlo Park, Calif, 1993 [WMSSCL96] J T L Wang, T G Marr, D Shasha, B A Shapiro, G W Chirn, and T Y Lee Complementary classification approaches for protein sequences Protein Engineering, 9(5): , 1996 [WSS99] Edited by J T L Wang, B A Shapiro, and D Shasha Pattern Discovery in Biomolecular Data: Tools, Techniques and Applications Oxford University Press, New York, Oxford, 1999 Internet-viite [WRSSWY] J T L Wang, S Rozen, B A Shapiro, D Shasha, Z Wang, and M Yin New Techniques for DNA Sequence Classification 39
f(n) = Ω(g(n)) jos ja vain jos g(n) = O(f(n))
Määritelmä: on O(g(n)), jos on olemassa vakioarvot n 0 > 0 ja c > 0 siten, että c g(n) kun n > n 0 O eli iso-o tai ordo ilmaisee asymptoottisen ylärajan resurssivaatimusten kasvun suuruusluokalle Samankaltaisia
Algoritmit lyhyiden sekvenssien rinnastamiseen referenssigenomia vasten. Krista Longi
Algoritmit lyhyiden sekvenssien rinnastamiseen referenssigenomia vasten. Krista Longi 19.05.2014 DNA:n sekvensointi DNA:n pilkotaan lyhyiksi mallipalasiksi, templaateiksi, joiden emäsjärjestys selvitetään.
lpar1 IPB004065, IPB002277, and IPB Restriction Enyzme Differences from REBASE Gained in Variant Lost from Reference
lpar1 IPB465, IPB2277, and IPB5385 Genomic Sequence Coding Sequence For help interpreting these results, view the PARSENP Introduction page. # View On Sequence Nucleotide Change Effect Restriction Enyzme
Ongelma(t): Miten merkkijonoja voidaan hakea tehokkaasti? Millaisia hakuongelmia liittyy bioinformatiikkaan?
Ongelma(t): Miten merkkijonoja voidaan hakea tehokkaasti? Millaisia hakuongelmia liittyy bioinformatiikkaan? 2012-2013 Lasse Lensu 2 Ihmisen, eläinten ja kasvien hyvinvoinnin kannalta nykyaikaiset mittaus-,
Algoritmit 2. Luento 12 Ke Timo Männikkö
Algoritmit 2 Luento 12 Ke 26.4.2017 Timo Männikkö Luento 12 Rajoitehaku Kauppamatkustajan ongelma Lyhin virittävä puu Paikallinen etsintä Vaihtoalgoritmit Geneettiset algoritmit Simuloitu jäähdytys Algoritmit
Algoritmit 2. Luento 12 To Timo Männikkö
Algoritmit 2 Luento 12 To 3.5.2018 Timo Männikkö Luento 12 Geneettiset algoritmit Simuloitu jäähdytys Merkkijonon sovitus Horspoolin algoritmi Algoritmit 2 Kevät 2018 Luento 12 To 3.5.2018 2/35 Algoritmien
7.4 Sormenjälkitekniikka
7.4 Sormenjälkitekniikka Tarkastellaan ensimmäisenä esimerkkinä pitkien merkkijonojen vertailua. Ongelma: Ajatellaan, että kaksi n-bittistä (n 1) tiedostoa x ja y sijaitsee eri tietokoneilla. Halutaan
Algoritmit 2. Luento 11 Ti Timo Männikkö
Algoritmit 2 Luento 11 Ti 24.4.2018 Timo Männikkö Luento 11 Rajoitehaku Kapsäkkiongelma Kauppamatkustajan ongelma Paikallinen etsintä Lyhin virittävä puu Vaihtoalgoritmit Algoritmit 2 Kevät 2018 Luento
Esimerkkejä vaativuusluokista
Esimerkkejä vaativuusluokista Seuraaville kalvoille on poimittu joitain esimerkkejä havainnollistamaan algoritmien aikavaativuusluokkia. Esimerkit on valittu melko mielivaltaisesti laitoksella tehtävään
Algoritmit 2. Luento 13 Ti Timo Männikkö
Algoritmit 2 Luento 13 Ti 30.4.2019 Timo Männikkö Luento 13 Simuloitu jäähdytys Merkkijonon sovitus Horspoolin algoritmi Ositus ja rekursio Rekursion toteutus Algoritmit 2 Kevät 2019 Luento 13 Ti 30.4.2019
TAMPEREEN TEKNILLINEN YLIOPISTO
TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja Tietokonetekniikan laitos TKT-3200 Tietokonetekniikka ASSEMBLER: QSORT 06.09.2005 Ryhmä 00 nimi1 email1 opnro1 nimi2 email2 opnro2 nimi3 email3 opnro3 1. TEHTÄVÄ
Tehtävä 2: Loppuosataulukko
Tehtävä 2: Loppuosataulukko Tutustu tarkoin seuraavaan tekstiin ja vastaa sitä hyväksi käyttäen tehtävän loppuosassa esitettyihin viiteen kysymykseen. Annetun merkkijonon (ns. hahmo) esiintymän haku pidemmästä
BOOTSTRAPPING? Jukka Nyblom Jyväskylän yliopisto. Metodifestivaali
BOOTSTRAPPING? Jukka Nyblom Jyväskylän yliopisto Metodifestivaali 28.5.2009 1 1 Mitä ihmettä on bootstrap? Webster: 1. a loop of leather or cloth sewn at the top rear, or sometimes on each side of a boot
Algoritmit 2. Luento 9 Ti Timo Männikkö
Algoritmit 2 Luento 9 Ti 17.4.2018 Timo Männikkö Luento 9 Merkkitiedon tiivistäminen Huffmanin koodi LZW-menetelmä Taulukointi Editointietäisyys Algoritmit 2 Kevät 2018 Luento 9 Ti 17.4.2018 2/29 Merkkitiedon
805306A Johdatus monimuuttujamenetelmiin, 5 op
monimuuttujamenetelmiin, 5 op syksy 2018 Matemaattisten tieteiden laitos Lineaarinen erotteluanalyysi (LDA, Linear discriminant analysis) Erotteluanalyysin avulla pyritään muodostamaan selittävistä muuttujista
Monitavoitteiseen optimointiin soveltuvan evoluutioalgoritmin tarkastelu
Monitavoitteiseen optimointiin soveltuvan evoluutioalgoritmin tarkastelu (Valmiin työn esittely) 11.4.2011 Ohjaaja: Ville Mattila Valvoja: Raimo Hämäläinen Työn tavoite Tutkia evoluutioalgoritmia (Lee
Matematiikan tukikurssi, kurssikerta 3
Matematiikan tukikurssi, kurssikerta 3 1 Epäyhtälöitä Aivan aluksi lienee syytä esittää luvun itseisarvon määritelmä: { x kun x 0 x = x kun x < 0 Siispä esimerkiksi 10 = 10 ja 10 = 10. Seuraavaksi listaus
2 Osittaisderivaattojen sovelluksia
2 Osittaisderivaattojen sovelluksia 2.1 Ääriarvot Yhden muuttujan funktiolla f(x) on lokaali maksimiarvo (lokaali minimiarvo) pisteessä a, jos f(x) f(a) (f(x) f(a)) kaikilla x:n arvoilla riittävän lähellä
2 k -faktorikokeet. Vilkkumaa / Kuusinen 1
2 k -faktorikokeet Vilkkumaa / Kuusinen 1 Motivointi 2 k -faktorikoe on k-suuntaisen varianssianalyysin erikoistapaus, jossa kaikilla tekijöillä on vain kaksi tasoa, matala (-) ja korkea (+). 2 k -faktorikoetta
Yleinen paikallinen vakautuva synkronointialgoritmi
Yleinen paikallinen vakautuva synkronointialgoritmi Panu Luosto 23. marraskuuta 2007 3 4 putki 1 2 α α+1 α+2 α+3 0 K 1 kehä K 2 K 3 K 4 Lähdeartikkeli Boulinier, C., Petit, F. ja Villain, V., When graph
TAMPEREEN TEKNILLINEN YLIOPISTO
TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja Tietokonetekniikan laitos TKT-3200 Tietokonetekniikka ASSEMBLER: QSORT 11.08.2010 Ryhmä 00 nimi1 email1 opnro1 nimi2 email2 opnro2 nimi3 email3 opnro3 1. TEHTÄVÄ
Algoritmit 2. Luento 3 Ti Timo Männikkö
Algoritmit 2 Luento 3 Ti 20.3.2018 Timo Männikkö Luento 3 Järjestäminen eli lajittelu Kekorakenne Kekolajittelu Hajautus Yhteentörmäysten käsittely Ketjutus Algoritmit 2 Kevät 2018 Luento 3 Ti 20.3.2018
Diskreetin matematiikan perusteet Laskuharjoitus 2 / vko 9
Diskreetin matematiikan perusteet Laskuharjoitus 2 / vko 9 Tuntitehtävät 9-10 lasketaan alkuviikon harjoituksissa ja tuntitehtävät 13-14 loppuviikon harjoituksissa. Kotitehtävät 11-12 tarkastetaan loppuviikon
4. Luennon sisältö. Lineaarisen optimointitehtävän ratkaiseminen Simplex-menetelmä
JYVÄSKYLÄN YLIOPISTO 4. Luennon sisältö Lineaarisen optimointitehtävän ratkaiseminen Simplex-menetelmä kevät 2012 TIEA382 Lineaarinen ja diskreetti optimointi Lineaarinen optimointitehtävä Minimointitehtävä
Taulukot. Jukka Harju, Jukka Juslin 2006 1
Taulukot Jukka Harju, Jukka Juslin 2006 1 Taulukot Taulukot ovat olioita, jotka auttavat organisoimaan suuria määriä tietoa. Käsittelylistalla on: Taulukon tekeminen ja käyttö Rajojen tarkastus ja kapasiteetti
Kynä-paperi -harjoitukset. Taina Lehtinen Taina I Lehtinen Helsingin yliopisto
Kynä-paperi -harjoitukset Taina Lehtinen 43 Loput ratkaisut harjoitustehtäviin 44 Stressitestin = 40 s = 8 Kalle = 34 pistettä Ville = 5 pistettä Z Kalle 34 8 40 0.75 Z Ville 5 8 40 1.5 Kalle sijoittuu
Etsintä verkosta (Searching from the Web) T Datasta tietoon Heikki Mannila, Jouni Seppänen
Etsintä verkosta (Searching from the Web) T-61.2010 Datasta tietoon Heikki Mannila, Jouni Seppänen 12.12.2007 Webin lyhyt historia http://info.cern.ch/proposal.html http://browser.arachne.cz/screen/
Algoritmit 2. Luento 3 Ti Timo Männikkö
Algoritmit 2 Luento 3 Ti 21.3.2017 Timo Männikkö Luento 3 Järjestäminen eli lajittelu Kekorakenne Kekolajittelu Hajautus Yhteentörmäysten käsittely Ketjutus Algoritmit 2 Kevät 2017 Luento 3 Ti 21.3.2017
Algoritmit 2. Luento 5 Ti Timo Männikkö
Algoritmit 2 Luento 5 Ti 28.3.2017 Timo Männikkö Luento 5 Puurakenteet B-puu B-puun korkeus B-puun operaatiot Algoritmit 2 Kevät 2017 Luento 5 Ti 28.3.2017 2/29 B-puu Algoritmit 2 Kevät 2017 Luento 5 Ti
Algoritmit 1. Luento 12 Ti Timo Männikkö
Algoritmit 1 Luento 12 Ti 19.2.2019 Timo Männikkö Luento 12 Osittamisen tasapainoisuus Pikalajittelun vaativuus Lajittelumenetelmien vaativuus Laskentalajittelu Lokerolajittelu Kantalukulajittelu Algoritmit
Luku 6. Dynaaminen ohjelmointi. 6.1 Funktion muisti
Luku 6 Dynaaminen ohjelmointi Dynaamisessa ohjelmoinnissa on ideana jakaa ongelman ratkaisu pienempiin osaongelmiin, jotka voidaan ratkaista toisistaan riippumattomasti. Jokaisen osaongelman ratkaisu tallennetaan
jäsentäminen TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho 26. marraskuuta 2015 TIETOTEKNIIKAN LAITOS
TIEA241 Automaatit ja kieliopit, syksy 2015 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 26. marraskuuta 2015 Sisällys Tunnistamis- ja jäsennysongelma Olkoon G = (N, Σ, P, S) kontekstiton kielioppi ja
Johdatus matematiikkaan
Johdatus matematiikkaan Luento 7 Mikko Salo 11.9.2017 Sisältö 1. Funktioista 2. Joukkojen mahtavuus Funktioista Lukiomatematiikassa on käsitelty reaalimuuttujan funktioita (polynomi / trigonometriset /
Graafin 3-värittyvyyden tutkinta T Graafiteoria, projektityö (eksakti algoritmi), kevät 2005
Graafin 3-värittyvyyden tutkinta T-79.165 Graafiteoria, projektityö (eksakti algoritmi), kevät 2005 Mikko Malinen, 36474R 29. maaliskuuta, 2005 Tiivistelmä Artikkelissa käydään läpi teoriaa, jonka avulla
Signaalien generointi
Signaalinkäsittelyssä joudutaan usein generoimaan erilaisia signaaleja keinotekoisesti. Tyypillisimpiä generoitavia aaltomuotoja ovat eritaajuiset sinimuotoiset signaalit (modulointi) sekä normaalijakautunut
Parametrin estimointi ja bootstrap-otanta
Parametrin estimointi ja bootstrap-otanta Hannu Toivonen, Marko Salmenkivi, Inkeri Verkamo Tutkimustiedonhallinnan peruskurssi Parametrin estimointi ja bootstrap-otanta 1/27 Kevät 2003 Käytännön asioista
Datatähti 2019 loppu
Datatähti 2019 loppu task type time limit memory limit A Summa standard 1.00 s 512 MB B Bittijono standard 1.00 s 512 MB C Auringonlasku standard 1.00 s 512 MB D Binääripuu standard 1.00 s 512 MB E Funktio
Sovellettu todennäköisyyslaskenta B
Sovellettu todennäköisyyslaskenta B Antti Rasila 16. marraskuuta 2007 Antti Rasila () TodB 16. marraskuuta 2007 1 / 15 1 Epäparametrisia testejä χ 2 -yhteensopivuustesti Homogeenisuuden testaaminen Antti
MS-A0402 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I
MS-A040 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I G. Gripenberg Aalto-yliopisto. maaliskuuta 05 G. Gripenberg (Aalto-yliopisto) MS-A040 Diskreetin matematiikan perusteet Esimerkkejä. ym.,
MS-A0402 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I
MS-A040 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I G. Gripenberg Aalto-yliopisto. maaliskuuta 05 G. Gripenberg (Aalto-yliopisto) MS-A040 Diskreetin matematiikan perusteet Esimerkkejä. ym.,
Ohjelmointi 1 C#, kevät 2014, 2. uusintatentti NIMI:
ITKP102 Ohjelmointi 1 C# 13.6.2014 1 / 5 Ohjelmointi 1 C#, kevät 2014, 2. uusintatentti Tentaattori Antti-Jussi Lakanen Valitse neljä tehtävää ja vastaa niihin. Keväällä 2014 kurssin tehneille lasketaan
{ 2v + 2h + m = 8 v + 3h + m = 7,5 2v + 3m = 7, mistä laskemmalla yhtälöt puolittain yhteen saadaan 5v + 5h + 5m = 22,5 v +
9. 0. ÄÙ ÓÒ Ñ Ø Ñ Ø ÐÔ ÐÙÒ Ð Ù ÐÔ ÐÙÒ Ö Ø ÙØ 009 È ÖÙ Ö P. Olkoon vadelmien hinta v e, herukoiden h e ja mustikoiden m e rasialta. Oletukset voidaan tällöin kirjoittaa yhtälöryhmäksi v + h + m = 8 v +
Probabilistiset mallit (osa 2) Matemaattisen mallinnuksen kurssi Kevät 2002, luento 10, osa 2 Jorma Merikoski Tampereen yliopisto
Probabilistiset mallit (osa 2) Matemaattisen mallinnuksen kurssi Kevät 2002, luento 10, osa 2 Jorma Merikoski Tampereen yliopisto Esimerkki Tarkastelemme ilmiötä I, joka on a) tiettyyn kauppaan tulee asiakkaita
Tässä luvussa käsitellään optimaalisten piirteiden valintaa, luokittelijan optimointia ja luokittelijan suorituskyvyn arviointia.
1 Luokittelijan suorituskyvyn optimointi Tässä luvussa käsitellään optimaalisten piirteiden valintaa, luokittelijan optimointia ja luokittelijan suorituskyvyn arviointia. A. Piirteen valinnan menetelmiä
Algoritmit 2. Luento 6 Ke Timo Männikkö
Algoritmit 2 Luento 6 Ke 29.3.2017 Timo Männikkö Luento 6 B-puun operaatiot B-puun muunnelmia Nelipuu Trie-rakenteet Standarditrie Pakattu trie Algoritmit 2 Kevät 2017 Luento 6 Ke 29.3.2017 2/31 B-puu
isomeerejä yhteensä yhdeksän kappaletta.
Tehtävä 2 : 1 Esitetään aluksi eräitä havaintoja. Jokaisella n Z + symbolilla H (n) merkitään kaikkien niiden verkkojen joukkoa, jotka vastaavat jotakin tehtävänannon ehtojen mukaista alkaanin hiiliketjua
Algoritmit 1. Luento 10 Ke Timo Männikkö
Algoritmit 1 Luento 10 Ke 14.2.2018 Timo Männikkö Luento 10 Algoritminen ongelmanratkaisu Suunnittelumenetelmät Raaka voima Järjestäminen eli lajittelu Kuplalajittelu Lisäyslajittelu Valintalajittelu Permutaatiot
Relevanttien sivujen etsintä verkosta: satunnaiskulut verkossa Linkkikeskukset ja auktoriteetit (hubs and authorities) -algoritmi
Kurssin loppuosa Diskreettejä menetelmiä laajojen 0-1 datajoukkojen analyysiin Kattavat joukot ja niiden etsintä tasoittaisella algoritmilla Relevanttien sivujen etsintä verkosta: satunnaiskulut verkossa
χ = Mat Sovellettu todennäköisyyslasku 11. harjoitukset/ratkaisut
Mat-2.091 Sovellettu todennäköisyyslasku /Ratkaisut Aiheet: Yhteensopivuuden testaaminen Homogeenisuuden testaaminen Riippumattomuuden testaaminen Avainsanat: Estimointi, Havaittu frekvenssi, Homogeenisuus,
Tilastollisen analyysin perusteet Luento 1: Lokaatio ja hajonta
Tilastollisen analyysin perusteet Luento 1: ja hajonta Sisältö Havaittujen arvojen jakauma Havaittujen arvojen jakaumaa voidaan kuvailla ja esitellä tiivistämällä havaintoarvot sopivaan muotoon. Jakauman
ITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 20. huhtikuuta 2018 Vastaa kaikkiin tehtäviin. Tee kukin tehtävä omalle konseptiarkille. Noudata ohjelmointitehtävissä kurssin koodauskäytänteitä.
11. laskuharjoituskierros, vko 15, ratkaisut
11. laskuharjoituskierros vko 15 ratkaisut D1. Geiger-mittari laskee radioaktiivisen aineen emissioiden lukumääriä. Emissioiden lukumäärä on lyhyellä aikavälillä satunnaismuuttuja jonka voidaan olettaa
805306A Johdatus monimuuttujamenetelmiin, 5 op
monimuuttujamenetelmiin, 5 op syksy 2018 Matemaattisten tieteiden laitos K:n lähimmän naapurin menetelmä (K-Nearest neighbours) Tarkastellaan aluksi pientä (n = 9) kurjenmiekka-aineistoa, joka on seuraava:
Tietotekniikan valintakoe
Jyväskylän yliopisto Tietotekniikan laitos Tietotekniikan valintakoe 2..22 Vastaa kahteen seuraavista kolmesta tehtävästä. Kukin tehtävä arvostellaan kokonaislukuasteikolla - 25. Jos vastaat useampaan
jens 1 matti Etäisyydet 1: 1.1 2: 1.4 3: 1.8 4: 2.0 5: 3.0 6: 3.6 7: 4.0 zetor
T-1.81 Luonnollisten kielten tilastollinen käsittely Vastaukset 11, ti 8.4., 1:1-18: Klusterointi, Konekääntäminen. Versio 1. 1. Kuvaan 1 on piirretty klusteroinnit käyttäen annettuja algoritmeja. Sanojen
Testejä suhdeasteikollisille muuttujille
Ilkka Mellin Tilastolliset menetelmät Osa 3: Tilastolliset testit Testejä suhdeasteikollisille muuttujille TKK (c) Ilkka Mellin (007) 1 Testejä suhdeasteikollisille muuttujille >> Testit normaalijakauman
Algoritmit 1. Luento 11 Ti Timo Männikkö
Algoritmit 1 Luento 11 Ti 14.2.2017 Timo Männikkö Luento 11 Algoritminen ongelmanratkaisu Osittaminen Lomituslajittelu Lomituslajittelun vaativuus Rekursioyhtälöt Pikalajittelu Algoritmit 1 Kevät 2017
a b c d
1. 11. 011!"$#&%(')'+*(#-,.*/103/465$*784 /(9:*;9."$ *;5> *@9 a b c d 1. + +. 3. 4. 5. 6. + + + + + + + + + + P1. 5 140 8 47 = 5 140 ( 3 ) 47 = 5 140 3 47 = 5 140 141 = (5 ) 140 = 10 140, jossa on
Tutkimustiedonhallinnan peruskurssi
Tutkimustiedonhallinnan peruskurssi Hannu Toivonen, Marko Salmenkivi, Inkeri Verkamo hannu.toivonen, marko.salmenkivi, inkeri.verkamo@cs.helsinki.fi Helsingin yliopisto Hannu Toivonen, Marko Salmenkivi,
Kombinatorinen optimointi
Kombinatorinen optimointi Sallittujen pisteiden lukumäärä on äärellinen Periaatteessa ratkaisu löydetään käymällä läpi kaikki pisteet Käytännössä lukumäärä on niin suuri, että tämä on mahdotonta Usein
A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.
Esimerkki otteluvoiton todennäköisyys A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä. Yksittäisessä pelissä A voittaa todennäköisyydellä p ja B todennäköisyydellä q =
Algoritmit 1. Luento 13 Ti 23.2.2016. Timo Männikkö
Algoritmit 1 Luento 13 Ti 23.2.2016 Timo Männikkö Luento 13 Suunnittelumenetelmät Taulukointi Kapsäkkiongelma Ahne menetelmä Verkon lyhimmät polut Dijkstran menetelmä Verkon lyhin virittävä puu Kruskalin
Algoritmit 2. Luento 13 Ti Timo Männikkö
Algoritmit 2 Luento 13 Ti 2.5.2017 Timo Männikkö Luento 13 Merkkijonon sovitus Horspoolin algoritmi Laskennallinen vaativuus Päätösongelmat Epädeterministinen algoritmi Vaativuusluokat NP-täydellisyys
c) 22a 21b x + a 2 3a x 1 = a,
Tehtäviä on kahdella sivulla; kuusi ensimmäistä tehtävää on monivalintatehtäviä, joissa on 0 4 oikeata vastausta. 1. Lukion A ja lukion B oppilasmäärien suhde oli a/b vuoden 2017 lopussa. Vuoden 2017 aikana
806109P TILASTOTIETEEN PERUSMENETELMÄT I Hanna Heikkinen Esimerkkejä estimoinnista ja merkitsevyystestauksesta, syksy (1 α) = 99 1 α = 0.
806109P TILASTOTIETEEN PERUSMENETELMÄT I Hanna Heikkinen Esimerkkejä estimoinnista ja merkitsevyystestauksesta, syksy 2012 1. Olkoon (X 1,X 2,...,X 25 ) satunnaisotos normaalijakaumasta N(µ,3 2 ) eli µ
Algoritmit 2. Luento 10 To Timo Männikkö
Algoritmit 2 Luento 10 To 11.4.2019 Timo Männikkö Luento 10 Merkkitiedon tiivistäminen LZW-menetelmä Taulukointi Editointietäisyys Peruutusmenetelmä Osajoukon summa Algoritmit 2 Kevät 2019 Luento 10 To
Testaa: Vertaa pinon merkkijono syötteeseen merkki kerrallaan. Jos löytyy ero, hylkää. Jos pino tyhjenee samaan aikaan, kun syöte loppuu, niin
Yhteydettömien kielioppien ja pinoautomaattien yhteys [Sipser s. 117 124] Todistamme, että yhteydettömien kielioppien tuottamat kielet ovat tasan samat kuin ne, jotka voidaan tunnistaa pinoautomaatilla.
Algoritmit 2. Luento 4 To Timo Männikkö
Algoritmit 2 Luento 4 To 21.3.2019 Timo Männikkö Luento 4 Hajautus Yhteentörmäysten käsittely Avoin osoitteenmuodostus Hajautusfunktiot Puurakenteet Solmujen läpikäynti Algoritmit 2 Kevät 2019 Luento 4
Ohjelmoinnin perusteet Y Python
Ohjelmoinnin perusteet Y Python T-106.1208 9.2.2009 T-106.1208 Ohjelmoinnin perusteet Y 9.2.2009 1 / 35 Listat Esimerkki: halutaan kirjoittaa ohjelma, joka lukee käyttäjältä 30 lämpötilaa. Kun lämpötilat
Diplomi-insinööri- ja arkkitehtikoulutuksen yhteisvalinta 2017 Insinöörivalinnan matematiikan koe , Ratkaisut (Sarja A)
Diplomi-insinööri- ja arkkitehtikoulutuksen yhteisvalinta 017 Insinöörivalinnan matematiikan koe 30..017, Ratkaisut (Sarja A) 1. a) Lukujen 9, 0, 3 ja x keskiarvo on. Määritä x. (1 p.) b) Mitkä reaaliluvut
Tehtävät. 1. Ratkaistava epäyhtälöt. a) 2(4 x) < 12, b) 5(x 2 4x + 3) < 0, c) 3 2x 4 > 6. 1/10. Sukunimi (painokirjaimin)
1/10 Tehtävä 1 2 3 4 5 6 7 8 9 10 Yhteensä Pisteet (tarkastaja merkitsee) Kokeessa on kymmenen tehtävää, joista jokainen on erillisellä paperilla. Jokaisen tehtävän maksimipistemäärä on 6 pistettä. Ratkaise
Kokonaislukuoptimointi
Kokonaislukuoptimointi Algebrallisen geometrian sovelluksia Sisältö Taustaa algebrallisesta geometriasta Gröbnerin kanta Buchbergerin algoritmi Kokonaislukuoptimointi Käypyysongelma Algoritmi ratkaisun
Lausekielinen ohjelmointi II Ensimmäinen harjoitustyö
Lausekielinen ohjelmointi II Ensimmäinen harjoitustyö Yleistä Tehtävä: Tee Javalla StringStats-ohjelma, joka laskee esikäsittelemästään merkkijonosta joitakin tunnuslukuja. Lausekielinen ohjelmointi II
TKHJ:ssä on yleensä komento create index, jolla taululle voidaan luoda hakemisto
Indeksin luonti ja hävitys TKHJ:ssä on yleensä komento create index, jolla taululle voidaan luoda hakemisto Komentoa ei ole standardoitu ja niinpä sen muoto vaihtelee järjestelmäkohtaisesti Indeksi voidaan
3. Laskennan vaativuusteoriaa
3. Laskennan vaativuusteoriaa tähän asti puhuttu siitä, mitä on mahdollista laskea äärellisessä ajassa siirrytään tarkastelemaan laskemista kohtuullisessa ajassa vaihtoehtoisesti voidaan laskenta-ajan
Königsbergin sillat. Königsberg 1700-luvulla. Leonhard Euler ( )
Königsbergin sillat 1700-luvun Königsbergin (nykyisen Kaliningradin) läpi virtasi joki, jonka ylitti seitsemän siltaa. Sanotaan, että kaupungin asukkaat yrittivät löytää reittiä, joka lähtisi heidän kotoaan,
Lineaarinen optimointitehtävä
Lineaarinen optimointitehtävä Minimointitehtävä yhtälörajoittein: min kun n j=1 n j=1 c j x j a ij x j = b i x j 0 j = 1,..., n i = 1,..., m Merkitään: z = alkuperäisen objektifunktion arvo käsiteltävänä
Tehtävä 2: Säännölliset lausekkeet
Tehtävä 2: Säännölliset lausekkeet Kun tietokoneohjelmalla luetaan käyttäjän syötettä, olisi syöte aina syytä tarkistaa. Syötteessä voi olla vääriä merkkejä tai merkkejä väärillä paikoilla (syntaktinen
läheisyydessä. Piirrä funktio f ja nämä approksimaatiot samaan kuvaan. Näyttääkö järkeenkäyvältä?
BM20A5840 - Usean muuttujan funktiot ja sarjat Harjoitus 1, Kevät 2017 1. Tunnemme vektorit a = [ 1 2 3 ] ja b = [ 2 1 2 ]. Laske (i) kummankin vektorin pituus (eli itseisarvo, eli normi); (ii) vektorien
Sovellettu todennäköisyyslaskenta B
Sovellettu todennäköisyyslaskenta B Antti Rasila 3. marraskuuta 2007 Antti Rasila () TodB 3. marraskuuta 2007 1 / 18 1 Varianssin luottamusväli, jatkoa 2 Bernoulli-jakauman odotusarvon luottamusväli 3
Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016
Osakesalkun optimointi Anni Halkola Turun yliopisto 2016 Artikkeli Gleb Beliakov & Adil Bagirov (2006) Non-smooth optimization methods for computation of the Conditional Value-at-risk and portfolio optimization.
Algoritmit 2. Luento 6 To Timo Männikkö
Algoritmit 2 Luento 6 To 28.3.2019 Timo Männikkö Luento 6 B-puun operaatiot Nelipuu Trie-rakenteet Standarditrie Pakattu trie Algoritmit 2 Kevät 2019 Luento 6 To 28.3.2019 2/30 B-puu 40 60 80 130 90 100
pitkittäisaineistoissa
Puuttuvan tiedon ongelma p. 1/18 Puuttuvan tiedon ongelma pitkittäisaineistoissa Tapio Nummi tan@uta.fi Matematiikan, tilastotieteen ja filosofian laitos Tampereen yliopisto mtl.uta.fi/tilasto/sekamallit/puupitkit.pdf
Numeerinen analyysi Harjoitus 1 / Kevät 2017
Numeerinen analyysi Harjoitus 1 / Kevät 2017 Palautus viimeistään perjantaina 3.3. Tehtävä 1: Oheinen MATLAB-funktio toteuttaa eksponenttifunktion evaluoinnin. 1 function y = seriesexp ( x ) 2 oldsum =
Tässä tehtävässä käsittelet metodeja, listoja sekä alkulukuja (englanniksi prime ).
Tehtävä 1: Metodit, listat, alkuluvut (4p) Tässä tehtävässä käsittelet metodeja, listoja sekä alkulukuja (englanniksi prime ). Alkuluvut ovat lukuja, jotka ovat suurempia kuin yksi ja jotka ovat jaollisia
ITKP102 Ohjelmointi 1 (6 op)
ITKP102 Ohjelmointi 1 (6 op) Tentaattori: Antti-Jussi Lakanen 12. huhtikuuta 2019 Tee kukin tehtävä omalle konseptiarkille. Noudata ohjelmointitehtävissä kurssin koodauskäytänteitä. Yksi A4-kokoinen lunttilappu
Tietoturva 811168P 5 op
811168P 5 op 6. Oulun yliopisto Tietojenkäsittelytieteiden laitos Mitä se on? on viestin alkuperän luotettavaa todentamista; ja eheyden tarkastamista. Viestin eheydellä tarkoitetaan sitä, että se ei ole
Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo 15.2.2006
TURUN YLIOPISTO DEMO III Informaatioteknologian laitos tehtävät Olio-ohjelmoinnin perusteet / Salo 15.2.2006 1. Tässä tehtävässä tarkastellaan erääntyviä laskuja. Lasku muodostaa oman luokkansa. Laskussa
Valintahetket ja pysäytetyt martingaalit
4B Valintahetket ja pysäytetyt martingaalit Tämän harjoituksen tavoitteena on oppia tunnistamaan, mitkä satunnaishetket ovat valintahetkiä ja oppia laskemaan lukuarvoja ja estimaatteja satunnaisprosessien
MAT Todennäköisyyslaskenta Tentti / Kimmo Vattulainen
MAT-200 Todennäköisyyslaskenta Tentti 29.04.20 / Kimmo Vattulainen Funktiolaskin sallittu.. a) Pelaajat A ja B heittävät noppaa vuorotellen ja pelin voittaa se, joka saa ensimmäiseksi kuutosen. A aloittaa
Määrittelydokumentti
Määrittelydokumentti Aineopintojen harjoitustyö: Tietorakenteet ja algoritmit (alkukesä) Sami Korhonen 014021868 sami.korhonen@helsinki. Tietojenkäsittelytieteen laitos Helsingin yliopisto 23. kesäkuuta
Todennäköisyyslaskenta I, kesä 2017 Helsingin yliopisto/avoin Yliopisto Harjoitus 1, ratkaisuehdotukset
Todennäköisyyslaskenta I, kesä 207 Helsingin yliopisto/avoin Yliopisto Harjoitus, ratkaisuehdotukset. Kokeet ja Ω:n hahmottaminen. Mitä tarkoittaa todennäköisyys on? Olkoon satunnaiskokeena yhden nopan
pitkittäisaineistoissa
Puuttuvan tiedon käsittelystä p. 1/18 Puuttuvan tiedon käsittelystä pitkittäisaineistoissa Tapio Nummi tan@uta.fi Matematiikan, tilastotieteen ja filosofian laitos Tampereen yliopisto Puuttuvan tiedon
Harha mallin arvioinnissa
Esitelmä 12 Antti Toppila sivu 1/18 Optimointiopin seminaari Syksy 2010 Harha mallin arvioinnissa Antti Toppila 13.10.2010 Esitelmä 12 Antti Toppila sivu 2/18 Optimointiopin seminaari Syksy 2010 Sisältö
TIEA241 Automaatit ja kieliopit, syksy Antti-Juhani Kaijanaho. 3. lokakuuta 2016
TIEA241 Automaatit ja kieliopit, syksy 2016 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 3. lokakuuta 2016 Sisällys n tunnistin Jay : An Efficient Context-Free Parsing Algorithm. Communications of the
Mat Lineaarinen ohjelmointi
Mat-.4 Lineaarinen ohjelmointi..7 Luento 7 Duaalisimple ja herkkyysanalyysi (kirja 4.5, 5., 5.5-5.6) Lineaarinen ohjelmointi - Syksy 7 / Duaalisimple Herkkyysanalyysi Luentorunko Parametrinen ohjelmointi
RADAR - RANDOM DATA GENERATOR
YLEISKUVAUS Radar on sovellus, jolla voi luoda näennäisen oikeaa satunnaisdataa testaus-, demo - ja muihin tarkoituksiin. TIEDUSTELUT Juha Levonen 050 372 5797 juha.levonen@kantapeikko.fi Osa datasta generoidaan
MTTTP5, luento Otossuureita ja niiden jakaumia (jatkuu)
21.11.2017/1 MTTTP5, luento 21.11.2017 Otossuureita ja niiden jakaumia (jatkuu) 4) Olkoot X 1, X 2,..., X n satunnaisotos (, ):sta ja Y 1, Y 2,..., Y m satunnaisotos (, ):sta sekä otokset riippumattomia.
Algoritmit 2. Luento 9 Ti Timo Männikkö
Algoritmit 2 Luento 9 Ti 19.4.2016 Timo Männikkö Luento 9 Merkkitiedon tiivistäminen LZW-menetelmä Taulukointi Editointietäisyys Peruutus Verkon 3-väritys Algoritmit 2 Kevät 2016 Luento 9 Ti 19.4.2016
4. Luokan testaus ja käyttö olion kautta 4.1
4. Luokan testaus ja käyttö olion kautta 4.1 Olion luominen luokasta Java-kielessä olio määritellään joko luokan edustajaksi tai taulukoksi. Olio on joukko keskusmuistissa olevia tietoja. Oliota käsitellään