Kevätlukukausi 2007

Tieto- ja viestintätekniikan opinnot

 
581324 Tietokone työvälineenä (4 op, 2 ov)
N.N. 15.01.-14.02. ma 14-16, ke 8-10 B123
Kurssilla opetellaan opiskelussa tarvittavien työvälineohjelmien käyttöä tietojenkäsittelytieteen laitoksen laite- ja ohjelmistoympäristöissä. Kurssi suoritetaan harjoitustyöllä ja tentillä. Osa kurssin opiskelusta on verkkotyöskentelyä. Mikroluokkaharjoittelussa tarvitaan tktl:n tai yliopiston atk-käyttäjätunnus. Katso ohje tunnuksen hakemisesta laitoksen web-sivuilta. Ei erilliskoetta. Kurssikoe to 1.3. klo 9-12. 
 

Perusopinnot

 
582102 Johdatus tietojenkäsittelytieteeseen (4 op, 2 ov)
Heikki Lokki 17.01.-21.02. ke 10-12 CK112
Opintojaksolla tutustutaan tietojenkäsittelyn keskeisiin osa-alueisiin, menetelmiin ja ammattietiikkaan. Tavoitteena on antaa yleiskuva niistä tiedollisista ja taidollisista valmiuksista, jotka maisterintutkinto antaa. Opintojakso suoritetaan opintopiireissä laadittavalla oppimispäiväkirjalla. Kurssimoniste: Kimmo Raatikainen: Johdatus tietojenkäsittelytieteeseen, Helsingin yliopisto, Tietojenkäsittelytieteen laitos, 2005. Ei erilliskoetta. 
 
581325 Ohjelmoinnin perusteet (5 op, 3 ov)
Tomi Pasanen 16.01.-22.02. ti 13-16, to 14-16 B123
Kurssilla perehdytään algoritmien laatimiseen ja ohjelmointiin. Ohjelmointikielenä on Java. Opiskelijalta ei edellytetä ennakkotietoja ohjelmoinnista. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla ja toteutetaan opintopiireinä. Kurssikirja: Lewis J., Loftus W.: Java Software Solutions: Foundations of Program Design (5th ed.), Pearson Education, 2005. Kurssikoe ti 27.2. klo 9-12. 
 
581326 Java-ohjelmointi (4 op, 2 ov)
Kimmo Simola 13.03.-26.04. ti, to 14-16 B123
Kurssilla perehdytään Java-ohjelmointikieleen. Painopiste on kielen perusvälineiden käytössä. Esitiedot: Ohjelmoinnin perusteet. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla ja toteutetaan opintopiireinä. Kurssikirja: Wikla A.: Ohjelmoinnin perusteet Java-kielellä (4. painos), OtaDATA, 2003. Kurssikoe ma 30.4. klo 9-12. 
 
582101 Ohjelmistotekniikan menetelmät (4 op, 2 ov)
Inkeri Verkamo 13.03.-26.04. ti 10-12, to 12-14 B123
Kurssilla käsitellään olioperustaisessa ohjelmistokehityksessä tarvittavia menetelmiä, kaaviotekniikoita ja työkaluja painottaen UML-mallinnuskieltä. Esitiedot: Oliokäsitteistön hallinta (Ohjelmoinnin perusteet). Kurssin harjoitukset toteutetaan opintopiireinä. Kurssikirja: Maciaszek L.A., Liong B.L., Practical Software Engineering - A Case Study Approach, Addison-Wesley, 2005. Kurssikoe pe 4.5. klo 16-19. 
 
581328 Tietokantojen perusteet (4 op, 2 ov)
Harri Laine 14.03.-30.03. ke 10-12 A111, pe 8-10 B123, 04.04.-25.04. ke 10-12 A111
Kurssilla tutustutaan tiedon esitysmuotoihin, tiedon mallintamiseen ja tiedon hakuun suurista tietomääristä. Erityisenä painopisteenä ovat relaatiotietokannat, joiden kohdalla perehdytään toisaalta teoreettiseen perustaan ja toisaalta tietokannan käytännön käsittelyyn SQL-kielen avulla. Kurssilla opitaan myös perustiedot tietokantojen suunnittelusta. Kurssikirja: Laine H.: Tietokantojen perusteet (opetusmoniste), HY/TKTL, 2006. Kurssikoe to 3.5. klo 9-12. 
 
58160 Ohjelmoinnin harjoitustyö (periodi III) (4 op, 2 ov)
Tomi Pasanen 15.01. ma 8-12 CK112
Esitiedot: Java-ohjelmointi ja Ohjelmistotekniikan menetelmät. 
 
58160 Ohjelmoinnin harjoitustyö (periodi IV) (4 op, 2 ov)
Tomi Pasanen 12.03. ma 8-12 CK112
Esitiedot: Java-ohjelmointi ja Ohjelmistotekniikan menetelmät. 
 

Aineopinnot (pakolliset opintojaksot)

 
58131 Tietorakenteet (8 op, 4 ov)
Jyrki Kivinen 16.01.-22.02. ti, to 10-12 A111, 13.03.-26.04. ti, to 10-12 A111
Perustietorakenteet kuten pinot, jonot, puut ja verkot sekä niiden käsittelyalgoritmit. Esitiedot: Java-ohjelmointi ja Johdatus diskreettiin matematiikkaan. Kurssin harjoitukset toteutetaan opintopiireinä. Esimerkki suositeltavasta lähdemateriaalista: Cormen T.H., Leiserson C.E., Rivest R.L., Stein C.: Introduction to Algorithms (2nd ed.), The MIT Press, 2001. Kurssikokeet ma 26.2. klo 9-12 ja ma 7.5. klo 9-12. 
 
581305 Tietokoneen toiminta (4 op, 2 ov)
Teemu Kerola 15.01. ma 10-12 B123, 14.02. ke 12-14 B123
Kurssilla perehdytään tietokoneohjelman suoritukseen, tietokonelaitteiston komponentteihin sekä laitteiston ja käyttöjärjestelmän luomaan ohjelman suoritusympäristöön. Esitiedot: Ohjelmoinnin perusteet. Monimuotokurssi sisältäen verkkoluentoja sekä opintopiirissä tehtäviä verkkotehtäviä, harjoitustehtäviä ja projekteja. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla. Kurssikirja: Stallings W.: Computer Organization and Architecture (7th ed.), Prentice Hall, 2006. Kurssikoe to 1.3. klo 16-19. 
 
582202 Tietoliikenteen perusteet (4 op, 2 ov)
Liisa Marttinen 12.03.-25.04. ma, ke 12-14 A111
Kurssi tutustuttaa tietoliikenneverkkojen rakenteeseen, palveluihin ja erityisesti Internet-verkon perusprotokolliin. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla. Kurssikirja: Kurose J. F., Ross K. W.: Computer Networking, A Top-Down Approach Featuring the Internet (3rd ed.), Addison-Wesley, 2005. Kurssikoe pe 4.5. klo 9-12.  
 
582201 Käyttöliittymät (4 op, 2 ov)
Antti Latva-Koivisto 13.03.-27.04. ti 12-14, pe 10-12 B123
Konkreettinen peruskurssi graafisten käyttöliittymien suunnittelusta käyttötilanteiden pohjalta. Hyvät ja huonot käyttöliittymäratkaisut opetellaan erottamaan simuloimalla tosielämän käyttötilanteita. Toisena arviointimenetelmänä tutustutaan käytettävyystestaukseen. Kurssikoe ke 2.5. klo 9-12. 
 
58110 Tieteellisen kirjoittamisen kurssi (10 op, 4 ov)
Jaakko Kurhila 15.01.-19.02. ma 12-14 CK112
Kurssilla opitaan tieteellisen esityksen (tutkielman, raportin, julkaisun) laatimiseen tarvittavia taitoja: lähdemateriaalin hakua ja käyttöä, esityksen jäsentämistä sekä kirjallista ja suullista esitystaitoa. Uuden tutkinnon opiskelijat suorittavat kurssilla kandidaatintutkielman (6 op), äidinkielisen viestinnän (3 op), tutkimustiedonhaun (1 op) sekä kypsyysnäytteen. Kypsyysnäyte ke 2.5. klo 16-20.  
 
581259 Ohjelmistotuotanto (4 op, 3 ov)
Juha Taina 16.01.-22.02. ti, to 10-12 B123
Ohjelmistotuotanto-kurssilla opetetaan ohjelmistotuotantoprojektien hallinnan ja työvaiheiden perusteet. Tarkoitettu suoritettavaksi 2. opiskeluvuoden lopulla, kun vähintään 40 opintopistettä pakollisia opintoja on suoritettuna. Kurssikirja: Ian Sommerville, Software Engineering (7th ed.), Addison-Wesley, 2004. Kurssikoe pe 2.3. klo 16-19. 
 
581260 Ohjelmistotuotantoprojekti (9 op, 6 ov)
Juha Taina
Opiskelijat jaetaan ryhmiin, joiden tehtävänä on vetää läpi 14 viikon mittainen ohjelmistoprojekti. Työssä käydään läpi ohjelmistoprosessin osavaiheet vaatimusmäärittelystä testaukseen. Projektin tuloksena saadaan asiakkaan vaatimukset täyttävä ohjelmisto ja dokumentaatio. Esitiedot: Ohjelmistotuotanto ja Tietorakenteiden harjoitustyö. Uuden tutkinnon opiskelijat suorittavat samalla työelämään orientoinnin (1 op). 
 
58161 Tietorakenteiden harjoitustyö (periodi III) (4 op, 2 ov)
Otto Nurmi
Esitiedot: Tietorakenteet. 
 
58161 Tietorakenteiden harjoitustyö (periodi IV) (4 op, 2 ov)
Otto Nurmi
Esitiedot: Tietorakenteet. 
 
582203 Tietokantasovellus (periodi III) (4 op, 2 ov)
Harri Laine 15.01. ma 16-18 D122
Kurssilla perehdytään tietokantaohjelmointiin ja yksinkertaisten web-sovellusten rakenteisiin sekä web-sovelluksen toteutukseen. Kurssilla harjoitellaan tietokantasuunnittelua sekä tietokannan pystytystä ja hyväksikäyttöä. Kurssin jälkeen opiskelija tuntee joitakin tietokanta- ja web-ohjelmoinnin tekniikkoja ja osaa laatia yksinkertaisia web-sovelluksia. Kurssin pääosan muodostaa harjoitustyö. Esitiedot: Tietokantojen perusteet, Ohjelmistotekniikan menetelmät (pakollisia) ja Käyttöliittymät (suositus). 
 
582203 Tietokantasovellus (periodi IV) (4 op, 2 ov)
Harri Laine 12.03. ma 16-18 D122
Kurssilla perehdytään tietokantaohjelmointiin ja yksinkertaisten web-sovellusten rakenteisiin sekä web-sovelluksen toteutukseen. Kurssilla harjoitellaan tietokantasuunnittelua sekä tietokannan pystytystä ja hyväksikäyttöä. Kurssin jälkeen opiskelija tuntee joitakin tietokanta- ja web-ohjelmoinnin tekniikkoja ja osaa laatia yksinkertaisia web-sovelluksia. Kurssin pääosan muodostaa harjoitustyö. Esitiedot: Tietokantojen perusteet, Ohjelmistotekniikan menetelmät (pakollisia) ja Käyttöliittymät (suositus). 
 

Aineopinnot (valinnaiset opintojaksot)

 
582207 Algoritmien suunnittelu (4 op, 2 ov)
Otto Nurmi 16.01.-22.02. ti 14-16, to 12-14 B222
Algoritmien yleisiä suunnitteluperiaatteita. Kokoelma keskeisiä ongelmia ja edustavia ratkaisualgoritmeja. Algoritmien analysointia. Esitiedot: Tietorakenteet. Kurssikoe ma 26.2. klo 9-12. 
 
582209 Grafiikkaohjelmointi (4 op, 2 ov)
Otto Nurmi 13.03.-26.04. ti, to 14-16 D122
Yleiskuva 3-ulotteisen grafiikan tuottamisesta tietokoneella OpenGL-aliohjelmakirjaston avulla. Esitiedot: C-kielen ymmärtämisen taito. Kurssikoe to 3.5. klo 9-12. 
 
582212 Laskennallinen data-analyysi I (4 op, 2 ov)
Juho Rousu, Patrik Hoyer, Jyrki Kivinen, Jarmo Hurri 17.01.-22.02. ke 12-14, to 14-16 D122
Kurssilla tutustutaan laskennallisen data-analyysin peruskäsitteisiin ja menetelmiin, teoriassa ja käytännössä. Mallin valintaongelma, luokittelu- ja regressiomallien oppimisen perusteet sekä datan klusterointimenetelmät. Kurssikoe ti 27.2. klo 9-12. 
 
582213 Laskennallinen data-analyysi II (4 op, 2 ov)
Juho Rousu, Patrik Hoyer, Jarmo Hurri, Jyrki Kivinen 14.03.-26.04. ke 12-14, to 14-16 B222
Kurssilla käydään läpi data-analyysissä käytettäviä menetelmiä kuten komponenttianalyysimenetelmät, ydinfunktiomenetelmät ja tukivektorikoneet (SVM) sekä probabilistisien mallien perusmenetelmiä. Kurssikoe to 3.5. klo 16-19. 
 
582208 Laskennan vaativuus (4 op, 2 ov)
Timo Karvi 14.03.-27.04. ke, pe 10-12 CK112
Laskennan aika- ja tilavaativuus. Luokat P, NP ja PSPACE. NP-täydellisyys. Esimerkkejä uudemmista tutkimussuuntauksista. Esitiedot: Laskennan mallit. Kurssikirja: Sipser M.: Introduction to the Theory of Computation, Brooks Cole, 2005. Kurssikoe ma 7.5. klo 9-12. 
 
582317 Linux-ylläpito (6 op, 4 ov)
Jukka Manner 16.01.-22.02. ti, to 16-18 D122, 13.03.-26.04. ti, to 16-18 D122
Kurssilla perehdytään Linux-pohjaisten työasemien ja palvelimien hallintaan. Aihepiirejä ovat käyttöjärjestelmän asentaminen ja konfigurointi, erilaisten palvelimien pystytys ja hallinta sekä IP-pohjainen verkkoinfrastruktuuri. Esitiedot: Tietokoneen toiminta, Käyttöjärjestelmät I, Tietokantojen perusteet, Tietokantasovellus ja Tietoliikenteen perusteet. Kurssiin liittyy harjoitustöitä. Ei erilliskoetta. Kurssikoe pe 4.5. klo 16-19. 
 
582303 Verkkosovellusten toteuttaminen (7 op, 4 ov)
Markku Kojo 16.01.-01.03. ti, to 12-14 C221, 13.03.-29.03. ti, to 12-14 C221
Kurssilla opitaan käytännöllisiä valmiuksia TCP/IP-pohjaisia tietoliikenneyhteyksiä käyttävien sovellusten suunnitteluun ja toteuttamiseen sekä sovelluskehitystyöhön Unix-ympäristössä. Esitiedot: C-ohjelmointi, Tietoliikenteen perusteet, Rinnakkaisohjelmointi, Tietorakenteiden harjoitustyö tai vastaavat tiedot. Kurssiin kuuluu harjoitustyö. Ennakkoilmoittautuminen marraskuussa 2006. Suositeltava kurssikirja: Stevens W. R., Fenner B., Rudolf A.M.: UNIX Network Programming, Volume 1 (3rd ed.), Addison-Wesley, 2004. Ei erilliskoetta. Kurssikoe ma 30.4. klo 9-12. 
 
582309 Ohjelmointitekniikka (Java) (5 op, 3 ov)
Juha Vihavainen 14.03.-27.04. ke 14-16, pe 12-14 CK112
Kurssilla perehdytään Java-kielen välineisiin: poikkeuksiin, graafisen käyttöliittymän toteutustekniikoihin, tapahtumaohjattuun ohjelmointiin, tietorakenneabstraktioihin ja rinnakkaisuuden ohjelmointiin. Esitiedot: Java-ohjelmointi, Tietorakenteet, Rinnakkaisohjelmointi. Ei erilliskoetta; harjoitustöitä. Kurssikoe to 3.5. klo 16-19. 
 
582323 Paikkatiedon käsittely (5 op, 3 ov)
Antti Leino 15.01.-22.02. ma, to 10-12 C222
Paikkatiedon käsittely relaatiotietokannassa, sen edellyttämät relaatiomallin ja SQL-kyselykielen laajennokset sekä niiden toteutus. Eksploratiivisen data-analyysin kysymykset, kuten paikkatiedon klusterointi ja spatiaalisten assosiaatioiden etsintä. Esitiedot: Tietokantojen perusteet ja Tietorakenteet sekä joko kurssin Johdatus todennäköisyyslaskentaan tai Tilastotieteen johdantokurssi sisältö. Kurssikoe ti 27.2. klo 16-19. 
 
582304 XML-metakieli (4 op, 2 ov)
Oskari Heinonen 15.01.-19.02. ma 12-14 A111, 17.01.-24.01. ke 12-14 A111
XML:n perusteet. Dokumentin rakenteen mallintaminen (DTD). Nimiavaruudet. XML-dokumenttien käsittely (DOM, SAX, XSLT). Muotoilu tyylien avulla (CSS, XSL). Lähistandardit. Esitiedot: HTML, Ohjelmoinnin harjoitustyö (tai hyvä ohjelmointitaito), Tietorakenteet. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla. Suositeltava kurssikirja: Bradley N.: The XML Companion (3rd ed.) Addison-Wesley, 2002. Ei erilliskoetta. Kurssikoe ke 28.2. klo 16-19. 
 

Syventävät opinnot

 
58093 Merkkijonomenetelmät (6 op, 3 ov)
Juha Kärkkäinen 16.01.-22.02. ti 12-14 C222, to 14-16 B222
Merkkijonohahmon tarkkojen ja likimääräisten esiintymien etsiminen. Merkkijonojen järjestäminen ja hakurakenteet. Tekstin indeksointi. Kurssiin sisältyy harjoitustyö, joka jatkuu periodin IV 5. opetusviikolle (työmäärä periodin aikana 1-2 op). Kurssikoe to 1.3. klo 9-12. 
 
582603 Advanced Data Structures (4 op, 2 ov)
Veli Mäkinen, Juha Kärkkäinen 14.03.-25.04. ke 16-18 C220
The course covers selected topics on advanced data structures, e.g. perfect hashing, van Emde Boas trees, least common ancestor queries, and data structures on memory hierarchies. The lectures introduce the fundamentals, and a deeper study of selected topics takes place in study groups of 3-5 students. Prerequisites: Design of Algorithms. Course exam Mon 30th April from 9.00 to 12.00. 
 
582417 Hajautetut järjestelmät (4 op, 2 ov)
Auvo Häkkinen 15.01.-20.02. ma, ti 12-14 B222
Hajautuksen problematiikka ja käsitteenmuodostus, keskeiset ratkaisuperiaatteet hajautetun päätöksenteon toteutuksissa, esimerkit käyttöjärjestelmätoiminnoista. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla. Kurssikirja: Tanenbaum A.S., van Steen M.: Distributed Systems, Principles and Paradigms, Prentice-Hall 2002. Kurssikoe ti 27.2. klo 9-12. 
 
582452 Mobiiliohjelmointi (6 op, 3 ov)
Jaakko Kangasharju 08.02.-15.03. to 12-15 CK112, 29.03.-10.05. to 12-15 CK112
Kurssin tavoitteena on opettaa osallistujille mobiilijärjestelmien ohjelmoinnin perusajatukset sekä problematiikka yleisellä tasolla. Kurssi toteutetaan valtakunnallisen virtuaaliyliopistohankkeen (OSCu) osana. Ei erilliskoetta. Kurssikoe to 10.5. klo 12-15.  
 
582607 Protocol Software Engineering (6 op, 3 ov)
Kimmo Raatikainen 15.01.-19.02. ma 16-20 B222
The course consists of two parts: lectures and laboratory. The lecture part covers fundamentals of protocol implementation: protocol design, specification, verification and testing as well as implementation issues including packet classification and filtering, retransmissions and efficiency. Linux traffic control, kernel threads and implementation of IP and TCP are examined as practical examples. The laboratory part consists of 2-3 projects covering protocol desingn, protocol specification and verification using SDL, and implementation of a small extension or modification to existing protocol implementation. Prerequisites: Operating systems, Internet protocols, and Programming in C. Course exam Fri 2nd March from 16.00 to 19.00. 
 
581366 Spesifioinnin ja verifioinnin perusteet (4 op, 2 ov)
Päivi Kuuppelomäki 15.01.-21.02. ma, ke 10-12 D122
Tavoitteena on oppia mallintamaan prosesseja siirtymäsysteemeihin perustuvilla formalismeilla yksinkertaisissa tapauksissa, ymmärtää ilman logiikkaa tapahtuvan automaattisen verifioinnin periaatteet ja osata itse verifioida yksinkertaisia protokollia joidenkin ohjelmistojen avulla. Kurssikoe ke 28.2. klo 16-19.  
 
582420 Väliohjelmistot (4 op, 2 ov)
Lea Kutvonen 13.03.-27.04. ti, pe 10-12 B222
Väliohjelmistot sijoittuvat käyttöjärjestelmä- ja tietoliikennepalveluiden päälle, avustamaan sovelluksia palveluiden paikantamisessa, aktivoinnissa ja kommunikoinnissa. Modernit väliohjelmistot suuntautuvat komponenttiperustaisten ohjelmistojen tukemiseen. Kurssilla tutustutaan joihinkin väliohjelmiston tavoitteisiin, ongelmiin ja ratkaisuihin esim. CORBA- ja/tai Java-teknologiaan pohjautuvissa väliohjelmistoissa. Kurssin aikana tuotetut esseet puretaan periodin IV jälkeen. Kurssikoe pe 4.5. klo 9-12. 
 
581358 Ohjelmistoarkkitehtuurit (8 op, 3 - 4 ov)
Jukka Viljamaa 16.01.-22.02. ti, to 12-14 D122
Ohjelmistoarkkitehtuurin suunnittelu, kuvaaminen ja analysointi sekä suunnittelumallit, arkkitehtuurityylit, tuoteperheet, ohjelmistokehykset ja ohjelmistokomponentit. Esitiedot: Ohjelmistotuotanto. Kurssiin liittyy harjoitustyö (1 ov), joka suoritetaan periodin IV aikana. Kurssikirja: Koskimies K., Mikkonen T., Ohjelmistoarkkitehtuurit, Gummerus, 2005. Erilliskokeella voi suorittaa vain luento-osuuden (3 ov), joka riittää vanhan tutkintojärjestelmän pakollisen kurssin suoritukseksi ohjelmistotekniikan linjalla. Kurssikoe ti 27.2. klo 16-19. 
 
582470 Empiirinen ohjelmistotutkimus (4 op, 2 ov)
Juha Taina 13.03.-26.04. ti, to 10-12 C221
Empiirinen ohjelmistotutkimus -kurssilla käsitellään ohjelmistotuotannon havaittuja lainalaisuuksia ja teorioita sekä niiden selvityksessä käytettäviä menetelmiä. Kurssikirja: Endres A., Rombach D.: A Handbook of Software and Systems Engineering: Empirical Observations, Laws and Theories. Addison-Wesley, Pearson, 2003. Kurssikoe to 3.5. klo 9-12. 
 
581360 Ohjelmistoprojektien johtaminen (5 op, 3 ov)
Jukka Paakki 13.03.-26.04. ti, to 16-18 C222
Kurssilla tarkastellaan ohjelmistoprojektien erityispiirteitä, niistä aiheutuvia haasteita projektien johtamiselle, projektien johtamisen vakiintuneita käytäntöjä ja projektipäälliköiden tehtäviä. Kurssilla käsitellään myös yleisiä asiantuntijaorganisaation johtamistaitoja. Kurssikoe ma 7.5. klo 16-19. 
 
581362 Ohjelmointikielten periaatteet (8 op, 4 ov)
Arto Wikla 17.01.-23.02. ke 14-16, pe 12-14 D122, 14.03.-27.04. ke 14-16, pe 12-14 D122
Ohjelmointikielten käsitteet ja rakenteet, kielten kehitys ja toteutus, ohjelmointiparadigmat. Kurssikirja: Scott M.: Programming Language Pragmatics (2nd ed.), Morgan Kaufmann, 2006. Kurssikokeet to 1.3. klo 9-12 ja ke 2.5. klo 9-12. 
 
582491 Hajautetut tietokannat (4 op, 2 ov)
Seppo Sippu 13.03.-26.04. ti, to 14-16 C222
Tiedon hajauttaminen ja hajautettu kyselynkäsittely. Hajautettujen transaktioiden hallinta. Toisinnetun tietokannan hallinta. Rinnakkaistietokannat. Hajautettujen transaktioiden käsittelyjärjestelmät. Esitiedot: Transaktioiden hallinta. Kurssikoe pe 4.5. klo 16-19. 
 
581257 Information Retrieval Methods (6 op, 3 ov)
Greger Lindén 15.01.-20.02. ma, ti 10-12 B222
Basic concepts of information retrieval. Storing and retrieval processes. Retrieval models. Matching methods. Processing of natural language text for retrieval. Query strategies and user interfaces. Exercises and project work. No separate exam. Course exam Mon 26th February from 9.00 to 12.00. 
 
582473 Linear Algebra Methods for Data Mining (4 op, 2 ov)
Saara Hyvönen 16.01.-21.02. ti 12-14 , ke 14-16 C220
The course will cover linear algebra techniques useful in data exploration. Topics include matrix decompositions (SVD, QR) and related methods (principal component analysis, latent semantic indexing) and their application to data mining problems, e.g. information retrieval. Also eigenvalue problems related to ranking algorithms (Pagerank, HITS) are discussed. Both theoretical and implementational aspects are considered. Required background: basic linear algebra skills (e.g. course "Lineaarialgebra I"). Course exam Fri 2nd March from 16.00 to 19.00. 
 
582600 Spatial Data Mining (4 op, 2 ov)
Antti Leino 12.03.-26.04. ma, to 10-12 C222
The course covers exploratory methods for analysing data with a spatial component, with a slight emphasis on point data. Main topics in the course include modelling spatial dependency, discovering association rules, and spatial clustering. The course consists of lectures and a project work. Prerequisites: Data structures, basic knowledge of processing spatial data in relational databases, elements of explorative spatial-data analysis, familiarity with basic statistics or probability theory. The course is a part of the Master's Degree Programme in Geoinformatics, but other students are also welcome. Course exam Thu 3rd May from 16.00 to 19.00. 
 
582444 Special Course on Data Mining (6 op, 3 ov)
Marko Salmenkivi 17.01.-23.02. ke, pe 10-12 C222
An overview of pattern discovery in the field of data mining and knowledge discovery from databases (KDD) from both a theoretical and practical point of view. Topics will include several algorithms and techniques for the discovery of frequent itemsets, association rules, and episodes. Prequisities: Elementary probability calculus. Course exam Tue 27th February from 16.00 to 19.00. 
 
582490 Transaktioiden hallinta (4 op, 2 ov)
Seppo Sippu 16.01.-22.02. ti, to 14-16 C222
Looginen tietokanta ja tietokantatapahtumat eli transaktiot. Lokin ylläpito ja puskurinhallinta. Transaktioiden peruutus ja tietokannan elvytys häiriöistä. Transaktioiden eristyneisyys ja samanaikaisuuden hallinta, lukitusmenetelmät. Fyysisen tietokantarakenteen elvytys ja samanaikaisuuden hallinta. Esitiedot: Tietokannan suunnittelu. Kurssikoe to 1.3. klo 16-19.  
 
581287 Kolme käsitettä: todennäköisyys (6 op, 3 ov)
Petri Myllymäki 18.01.-22.02. to 16-19 C221, 15.03.-26.04. to 16-17 C221
Johdatus todennäköisyyslaskennan teoriaan ja sovellusmenetelmiin tietojenkäsittelytieteen näkökulmasta. Kurssin suoritukseen liittyy perehtyminen B-Course -työkalun (http://b-course.hiit.fi) käyttöön ja oheismateriaaliin. Kurssilla ei ole tavanomaisia laskuharjoituksia eikä kurssikoetta vaan ohjelmointitaitoa edellyttäviä projektitöitä ja kirjallisia harjoitustöitä. Kurssin luennot pidetään periodilla III, projekti- ja harjoitustöitä on periodeilla III ja IV. Ei erilliskoetta. 
 
581339 Kolme käsitettä: päätöksenteko (6 op, 3 ov)
N.N.
Kurssilla käsitellään etsintää moniulotteisissa etsintäavaruuksissa. Tällainen kustannusfunktioihin perustuva etsintä on tyypillistä evoluutiolaskennassa, koneoppimisessa ja matemaattisessa tilastotieteessä. Kurssilla ei ole tavanomaisia laskuharjoituksia eikä kurssikoetta vaan se suoritetaan harjoitustöinä, jotka sisältävät ohjelmointitaitoa edellyttäviä projekteja sekä aihepiiriin liittyviä posteriesitelmiä ja tieteellisiä kirjoitelmia. Osa harjoitustöistä tehdään ryhmissä. Kurssin luennot pidetään periodilla III, harjoitustehtäviä on periodeilla III ja IV. Ei erilliskoetta. 
 
582483 Biological Sequence Analysis (6 op, 3 ov)
Esko Ukkonen 15.01.-20.02. ma, ti 14-16 D122
The course covers the basic probabilistic methods for modelling and analysis of biological sequences. Prerequisities: Introduction to Bioinformatics and basics of probability calculus. Course book: Durbin R., Eddy S., Krogh A. and Mitchinson G.: Biological sequence analysis, Cambridge University Press, 1998. Course exam Wed 28th October from 16.00 to 19.00. 
 
582605 Metabolic Modeling (4 op, 2 ov)
Juho Rousu 12.03.-24.04. ma, ti 14-16 B222
Computational methods in the analysis of metabolic networks are studied, including the analysis of metabolic fluxes and the regulation of metabolism. Prerequisities: Introduction to bioinformatics and basic linear algebra skills. Course exam Wed 2nd May from 9.00 to 12.00. 
 
582450 Modeling of Vision (5 op, 3 ov)
Aapo Hyvärinen 18.01.-22.02. to 14-16 C221, 15.03.-26.04. to 14-16 C221
The topics are mechanisms and modelling of human perception. The emphasis is on modelling of visual feature extraction, and modelling of object and scene recognition. The course is most suitable to students specializing in bioinformatics or intelligent systems. Prerequisites: calculus, probability calculus, linear algebra. 
 
582612 Practical Course on Microarray Data Analysis (4 op, 2 ov)
Alvis Brazma 13.02.-02.03. ti 8-10, pe 10-12 C221, 15.02.-22.02. to 8-10 C221
The course gives an introduction to the analysis of microarray data. Topics include processing of microarray information, experiment design, statistical analysis of data and inference of gene regulation networks. Course contains an obligatory practical work.  
 
58037 Tietokoneavusteiset oppimisympäristöt (8 op, 4 ov)
Jaakko Kurhila 18.01. to 10-12 B222
Verkko-opiskelun suunnittelu, toteutus ja evaluointi. Verkkopedagogiikka, ryhmätyöohjelmistot ja verkko-opiskelualustat. Adaptiivisuuden toteutuminen verkko-oppimisympäristöissä. Esimerkkejä käytössä ja kehitteillä olevista verkko-oppimisympäristöistä. Kurssi toteutetaan verkkokurssina. Ei erilliskoetta. Ensimmäinen tapaaminen to 18.1. klo 10-12 on pakollinen kaikille osallistujille.  
 

Seminaarit

 
58306301 Adaptive Computing Research Seminar (3 op, 2 ov)
Patrik Floréen 17.01.-21.02. ke 14-16 B119, 14.03.-25.04. ke 14-16 B119
 
 
58305101 Tietokonegrafiikan seminaari (3 op, 2 ov)
Otto Nurmi 15.01.-19.02. ma 12-14 C220, 12.03.-23.04. ma 12-14 C220
 
 
58306106 Research Seminar on Interoperability (3 op, 2 ov)
Lea Kutvonen 16.01.-20.02. ti 14-16 C221, 13.03.-24.04. ti 14-16 C221
 
 
58307102 Seminaari: Monen osapuolen protokollat (3 op, 2 ov)
Timo Karvi, Päivi Kuuppelomäki 19.01.-23.02. pe 12-14 C220, 12.03.-27.04. pe 12-14 C220
 
 
58307101 Seminaari: Sulautetut järjestelmät (3 op, 2 ov)
Auvo Häkkinen, Teemu Kerola 18.01.-22.02. to 14-16 C220, 15.03.-26.04. to 14-16 C220
 
 
58307103 Seminar: Self-Healing Information Systems (3 op, 2 ov)
Tiina Niklander, Kimmo Raatikainen 17.01.-21.02. ke 16-18 C221, 14.03.-25.04. ke 16-18 C221
 
 
58307104 Seminaari: Käyttöliittymän suunnittelun vaikutukset ohjelmistoprosessiin (3 op, 2 ov)
Sari A. Laakso 17.01.-21.02. ke 10-12 C220, 14.03.-25.04. ke 10-12 C220
 
 
58306112 Seminaari: Ohjelmistotuotanto ja tietokonepelit (3 op, 2 ov)
Juha Vihavainen 18.01.-22.02. to 12-14 C220, 15.03.-26.04. to 12-14 C220
 
 
58307105 Seminaari:Ohjelmiston suorituskyvyn huomioonottaminen ohjelmistoprojektin aikana (3 op, 2 ov)
Inkeri Verkamo 18.01.-22.02. to 8-10 C220, 15.03.-26.04. to 8-10 C220
 
 
58307107 Seminaari: Sähköisen liiketoiminnan standardit ja teknologiat (3 op, 2 ov)
Juha Puustjärvi 15.01. ma 8-12 C220, 05.02. ma 8-12 C220, 19.02. ma 8-12 C220, 12.03.-23.04. ma 8-12 C220
 
 
58307108 Seminaari: Tietojenkäsittelytieteen jatko-opiskelijaseminaari (3 op, 2 ov)
Hannu Toivonen 16.01.-20.02. ti 10-12 C220, 13.03.-24.04. ti 10-12 C220
 
 
58307106 Seminaari: Yksityisyyden säilyttävä tiedon louhinta (3 op, 2 ov)
Pirjo Moen 19.01.-23.02. pe 12-14 C221, 16.03.-27.04. pe 12-14 C221
 
 
58307109 Seminar: Language Technology and Applications (3 op, 2 ov)
Greger Lindén 18.01.-22.02. to 10-12 C220, 15.03.-26.04. to 10-12 C220