Helsingin yliopisto Tietojenkäsittelytieteen laitos
 

Tietojenkäsittelytieteen laitos

Tietoa laitoksesta:

 

Lukuvuoden 2004-2005 opetusohjelma

TKTL / Opinto-opas syksy 2004

Syyslukukausi 2004

Muut opinnot

 
581256 Opettajatuutorointi (1 ov)
Päivi Kuuppelomäki
Osallistuminen on pakollista syksyllä 2003 aloittaneille pääaineopiskelijoille. Ryhmät kokoontuvat maanantaisin klo 14-16. 
 
581355 Tietojenkäsittelytieteen esittely (1 ov)
Tiina Niklander 13.09.-20.10. ma 12-14, ke 16-18 A111
Opintojakso tarjoaa katsauksen tietojenkäsittelytieteen osa-alueisiin, joita esittelevät useat eri alueiden asiantuntijaluennoijat. Esittelyt painottuvat niille alueille, joilla laitoksella on tutkimustoimintaa. Kurssiin liittyy kirjallinen harjoitus.  
 

Cum laude approbatur

 
581324 Tietokone työvälineenä (2 ov)
Anni Rytkönen 03.09. pe 12-14 A111, 06.09. ma 12-15 A111, 07.09. ti 12-15 A111, 08.09. ke 12-15 A111, 09.09. to 12-15 A111
Kurssilla harjoitellaan työvälineohjelmien käyttöä seuraavilta osa-alueilta: Tietojenkäsittelytieteen laitoksen (tktl) atk-järjestelmät ja käyttöjärjestelmät (Unix, Linux ja Windows), Internet (WWW, sähköposti, uutisryhmät), kotisivut ja HTML sekä toimisto-ohjelmat (tekstinkäsittely, esitysgrafiikka ja taulukkolaskenta). Kurssin suoritukseen kuuluu harjoitustyö. Harjoituksissa tarvitaan tktl:n atk-käyttäjätunnus. Katso ohjeet tunnuksen hakemisesta laitoksen web-sivuilta.  
 
581390 Tietokone työvälineenä (sivuaineopiskelijoille) (2 ov)
Juhani Haavisto 17.09.-20.10. ke, pe 12-14 A111
Luennoilla käsitellään opetettavien ohjelmistojen (ks. pääaineopiskelijoiden kurssi) toimintaperiaatteita ja esitetään runsaasti demoja. Verkkomateriaalin itseopiskelulla voi korvata osan luentoja ja harjoituksia. Kurssiin kuuluu harjoitustyö. Kurssi kannattaa suorittaa heti tietojenkäsittelytieteen opintojen alussa. Harjoituksissa tarvitaan alusta pitäen tietojenkäsittelytieteen laitoksen atk-käyttäjätunnus. Katso ohjeet tunnuksen hakemisesta laitoksen web-sivuilta. 
 
581328 Tietokantojen perusteet (2 ov)
Leht. Harri Laine 14.09.-19.10. ti 14-16 A111
Kurssilla opitaan perustiedot relaatiotietokannoista: mitä ne ovat ja miten niitä käytetään suoraan ja toisaalta ohjelmointikielen kautta. Kurssiin sisältyy johdatus relaatiotietokannan suunnitteluun. Kurssilla edellytetään ohjelmointitaitoa kurssin Ohjelmoinnin perusteet laajuudessa. Kurssi on osittain verkkokurssi; luennoilla käsitellään vain kurssin vaativimpia osia. Kurssikirja: Laine H.: Tietokantojen perusteet (opetusmoniste), HY/TKTL, 2001.  
 
581327 Johdatus sovellussuunnitteluun (2 ov)
Ass. Antti Viljamaa 25.10.-29.11. ma 12-14 A111
Oliokeskeinen ohjelmiston kehittäminen ja siinä tarvittavat kuvaustekniikat ja menetelmät. Johdatus käyttöliittymiin ja niiden suunnitteluun. Kurssilla edellytetään oliokäsitteistön tuntemista ohjelmoinnin kannalta kurssin Ohjelmoinnin perusteet laajuudessa. Kurssin harjoitukset suoritetaan ryhmätöinä opintopiireissä. Suositeltava kurssikirja: Maciaszek L.A.: "Requirements Analysis and System Design - Developing Information Systems with UML". Addison-Wesley, 2001.  
 
581325 Ohjelmoinnin perusteet (3 ov)
Leht. Arto Wikla 13.09.-28.10. ma, to 14-16 A111
Kurssilla perehdytään algoritmien laatimiseen ja ohjelmointiin. Ohjelmointikielenä on Java. Opiskelijalta ei edellytetä ennakkotietoja ohjelmoinnista. Kurssikirja: Wikla A.: Ohjelmoinnin perusteet Java-kielellä (4. painos), OtaDATA, 2003.  
 
581326 Java-ohjelmointi (2 ov)
Leht. Arto Wikla 01.11.-09.12. ma, to 14-16 A111
Kurssilla perehdytään Java-ohjelmointikieleen. Painopiste on kielen perusvälineiden käytössä. Ohjelmoinnin perusteet -kurssin sisällön hallinta on osallistumisen edellytys. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla. Kurssikirja: Wikla A.: Ohjelmoinnin perusteet Java-kielellä (4. painos), OtaDATA, 2003.  
 
581305 Tietokoneen toiminta (2 ov)
Päivi Kuuppelomäki 27.10.-03.12. ke, pe 12-14 A111
Kurssilla perehdytään tietokoneohjelman suoritukseen, tietokonelaitteiston komponentteihin sekä laitteiston ja käyttöjärjestelmän luomaan ohjelman suoritusympäristöön. Kurssikirja: Häkkinen A.: Tietokoneen toiminta (opetusmoniste D390), HY/TKTL, 1998. Erilliskokeessa kurssikirjana: Stallings W.: Computer Organization and Architecture (6th ed.), Prentice Hall, 2003.  
 
581330 Ohjelmoinnin ja laskennan perusmallit (2 ov)
Ass. Tuomo Malinen 14.09.-20.10. ti, to 12-14 B123
Kurssilla tutustutaan ohjelmoinnin ja laskennan formaaleihin perusmalleihin. Käsiteltäviä asioita ovat äärelliset automaatit ja formaalit kielet sekä kielioppien jäsentäminen.  
 
581331 Käyttöjärjestelmät I (2 ov)
Tiina Niklander 13.09.-20.10. ma 10-12, ke 14-16 A111
Kurssin tavoitteena on tuntea sovelluksen käytössä olevat käyttöjärjestelmäpalvelut ja ymmärtää käyttöjärjestelmän toiminnan keskeisimmät periaatteet. Kurssilla tarkastellaan asioita sovelluksen näkökulmasta. Suositeltava kurssikirja: Stallings W.: Operating Systems (4th ed.), Prentice Hall, 2000.  
 
581332 Rinnakkaisohjelmistot (2 ov)
Liisa Marttinen 25.10.-01.12. ma 10-12, ke 14-16 A111
Kurssilla perehdytään rinnakkaisten ja hajautettujen järjestelmien ohjelmoinnin peruskäsitteisiin. Erityinen paino on rinnakkaisten algoritmien suunnittelussa ja toteutuksessa. Kurssikirja: Andrews G. R.: Foundations of Multithreaded, Parallel, and Distributed Programming, Addison-Wesley, 2000.  
 
58131 Tietorakenteet (4 ov)
Matti Luukkainen 14.09.-02.12. ti, to 10-12 A111
Kurssilla käsitellään perustietorakenteita kuten pinoja, jonoja, puita ja verkkoja sekä niiden käsittelyalgoritmeja. Kurssilla sovelletaan opiskelijalähtöisiä oppimismenetelmiä, kuten todellisten tietorakenne- ja algoritmiongelmien ratkomista ohjatuissa opiskelijaryhmissä. Kurssikirja: Cormen T.H., Leiserson C.E., Rivest R.L., Stein C.: Introduction to Algorithms, Second Edition, The MIT Press, 2001.  
 
581334 Tietokannan hallinta (2 ov)
Leht. Harri Laine 27.10.-02.12. ke, to 10-12 B123
Tietokannanhallintajärjestelmän toiminnot: tietojen tallennus- ja hakumenetelmät, saannin valvonta, kyselyjen optimointi ja transaktioiden hallinnan perusteet. Kurssien Tietokantojen perusteet ja Tietorakenteet sisältö edellytetään tunnetuksi. Kurssikirja: Ramakrishnan R, and Gehrke J.: Database Management Systems (3rd ed.), McGraw-Hill, 2002.  
 
58110 Tieteellisen kirjoittamisen kurssi (syksy 2004) (4 ov)
Lea Kutvonen 13.09.-18.10. 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.  
 
581259 Ohjelmistotuotanto (3 ov)
Yonleht. Juha Taina 13.09.-03.11. ma, ke 14-16 CK112
Ohjelmistotuotanto-kurssilla tarkastellaan alan yleistä käsitteellistä, teoreettista ja käytännöllistä aineistoa. Kurssikirja: Ian Sommerville: Software Engineering (6th ed.), Addison-Wesley, 2001.  
 
581260 Ohjelmistotuotantoprojekti (6 ov)
Yonleht. Juha Taina
Kurssin opiskelijat jaetaan ryhmiin, joiden tehtävänä on vetää läpi lukukauden mittainen ohjelmistoprojekti. Opiskelijoiden tulee ryhmätyönä kartoittaa projektin asiakkaan vaatimukset ohjelmistolle ja toteuttaa ohjelmisto kurssin laatujärjestelmän mukaisesti.  
 
58160 Ohjelmoinnin harjoitustyö (1. periodilla) (2 ov)
Yonleht. Tomi Pasanen 13.09. ma 18-20 CK112
 
 
58160 Ohjelmoinnin harjoitustyö (2. periodilla) (2 ov)
Yonleht. Tomi Pasanen 25.10. ma 18-20 CK112
 
 
581329 Tietokantasovellusten harjoitustyö (1. periodilla) (2 ov)
Yonleht. Pirjo Moen 13.09. ma 16-18 CK112
 
 
581329 Tietokantasovellusten harjoitustyö (2. periodilla) (2 ov)
Yonleht. Pirjo Moen 25.10. ma 16-18 CK112
 
 
58161 Tietorakenteiden harjoitustyö (2 ov)
Leht. Otto Nurmi
 
 

Cum laude approbatur /valinnaiset opintojaksot

 
582321 Digitaalisen äänenkäsittelyn perusteet (3 ov)
Kjell Lemström
Kurssilla käsitellään sekä äänenkäsittelyn teoriaa, ohjelmointia että käytännön työkaluja. Esille tulevat mm. äänen voimakkuutta, taajuutta ja aaltomuotoa muokkaavat operaatiot. Ohjelmointiympäristönä tarkastellaan Javan tarjoamia äänenkäsittelyn luokkakirjastoja. Äänityökaluna esitellään Sound Forge -ohjelmistoa, mutta harjoitustyön voi tehdä myös muilla välineillä. 
 
582315 Johdatus funktionaaliseen ohjelmointiin (2 ov)
Yonleht. Matti Nykänen 26.10.-02.12. ti, to 10-12 CK112
Kurssi johdattaa ohjelmointitapaan, jossa ohjelma pyritään kirjoittamaan siten, että sen suorittamista voitaisiin ajatella jonkin matemaattisen funktion arvon laskemisena. Tällainen lähestymistapa ohjelmointiin on hyödyllinen esimerkiksi silloin, kun pyritään sellaisiin ohjelmiin, joiden oikea toiminta voitaisiin todistaa. Esimerkkinä funktionaalisesta ohjelmointikielestä kurssilla on Standard ML (SML'97). 
 
581251 Ohjelmointitekniikka (C++) (3 ov)
Leht. Juha Vihavainen 15.09.-05.11. ke 16-18, pe 12-14 CK112
Harjoitustöiden avulla perehdytään abstraktien tietotyyppien toteutukseen, olio-ohjelmointiin sekä C++-ohjelmointitekniikkaan. Esitietoina suositellaan Tietorakenteet ja C-ohjelmointi. Kurssi edellyttää hyvää ohjelmointitaitoa sekä valmiutta itsenäiseen työskentelyyn perehdyttäessä kurssiin liittyvään aineistoon.  
 
582322 Pelit ja virtuaaliympäristöt (3 ov)
Yonleht. Tomi Pasanen
Perustiedot pelisuunnitteluun ja -tuotantoon liittyvistä menetelmistä ja työkaluista. Pelit ja verkotetut virtuaaliympäristöt sisältötuotannollisesta näkökulmasta. Aihealueita: Verkotettujen virtuaaliympäristöjen ja pelien lajityypit, perusperiaatteet ja toiminnot. Peli- ja virtuaaliympäristösuunnittelun perusperiaatteet. Sisältötuotantoprosessin vaiheet. Verkkopelien mahdollisuudet ja haasteet. Peliympäristöjen hyödyntäminen muilla sovellusalueilla. 
 
582320 Programming Graphical User Interfaces (2 - 5 ov)
Leht. Harri Laine 07.09.-10.12. ti, pe 10-12 D122
Basic and some advanced information on programming graphical user interfaces. After attending the course the student is able to implement applications including a graphical user interface with medium level of complexity. The topics include graphics programming, event handling, user interface components, selected user interface desing patterns, and advanced programming environments. The programming languages and environments used include Java2 and Microsoft Visual C++. 
 
58127 Programming in C (2 ov)
Krishnan Narayanan 14.09.-21.10. ti, to 12-14 CK112
We learn how to program in ANSI C. Recommended course book: Kernighan B.W. & Ritchie D.M.: The C Programming Language, 2nd ed., Prentice Hall 1988. (ANSI C edition)  
 
582316 X/Open-sovellusohjelmointi (3 ov)
Ass. Jan Lindström, Jukka Manner 16.09.-09.12. to 16-19 D122
Kurssin tavoitteena on sovelluskehitystyöhön riittävä X/Open-järjestelmän tuntemus. Tutustutaan mm. tiedostojärjestelmään, prosessien hallintaan ja prosessien väliseen kommunikointiin. Kurssin osallistujamäärä on rajoitettu. Kurssilla ei ole perinteisiä laskuharjoituksia vaan 3 pientä harjoitustyötä. Esitiedot: C-ohjelmointi sekä Rinnakkaisohjelmistot.  
 
582313 Bioinformatiikan perusteet (3 ov)
Yonleht. Tomi Pasanen 15.09.-18.11. ke, to 12-14 D122
Kurssilla tarkastellaan molekyylibiologiaan liittyviä laskennallisia ongelmia tutustuen samalla bioinformatiikan maailmanlaajuiseen infrastruktuuriin.  
 
582319 Molecular Genetics and gene mapping for methodological sciences (2 ov)
Päivi Onkamo 13.09.-17.09. ma, ti, ke, to, pe 10-17 CK107
This is an introductory laboratory course on genetics. It is especially suited for methodological researchers who are involved in genetical projects, or MSc/PhD students interested in bioinformatics. The course can be selected as an optional course to the cum laude level studies in the Department of the Computer Science. Intensive course taking appr 5 hours per day on week 38. Required background knowledge: probability calculation, statistical tests, likelihood. 
 
582310 Aineenopettajan tietotekniikka (3 ov)
Anni Rytkönen 07.10.-25.11. to 14-18 DK117
Kurssi on tarkoitettu tuleville tietotekniikan aineenopettajille. Suositeltavaa on, että opetusharjoittelu on tehty tai meneillään ja tietojenkäsittelyn aineopinnot cum laude approbaturin loppuvaiheessa. Kurssilla käsitellään tietotekniikan opettajan työhön liittyviä asioita, kuten yläasteella ja lukiossa pidettävien kurssien sisältöjä sekä koneiden ja verkon ylläpitoa. Kurssi suoritetaan lähitapaamisiin osallistumalla ja projektityöllä.  
 

Laudatur

 
582456 Approximation Algorithms (4 ov)
Aristides Gionis 27.09.-08.12. ma, ke 12-14 B222
The course will cover approximation algorithms for NP-hard optimization problems. Problems to be studied include: metric TSP, set cover, vertex cover, bin packing, MAX SAT, MAX CUT, facility location, and k-median. 
 
582457 Classification (2 ov)
Patrik Floréen 13.09.-29.11. ma 10-12 B222
The topic of this course is classification methods and algorithms. The course has the form of a study group, where the students will together solve exercises from a suitable textbook. Each student will on his/her turn choose exercises to be solved for the next session. Due to the study group nature of the course, the participation in the course will be limited. There are no lectures in the course. 
 
582401 Geometriset menetelmät (4 ov)
Leht. Otto Nurmi 14.09.-03.12. ti 14-16, pe 12-14 B222
Paikan ja muodon sisältävän tiedon käsittelymenetelmiä: leikkaukset, jakaminen ja peittäminen; navigointi ja hakeminen; sommitelmat; geometriset tietorakenteet. Geometrian esitietoja ei vaadita.  
 
582458 Kernel Methods for Pattern Analysis (2 ov)
John Shawe-Taylor 18.10.-22.10. ma, ti, ke, to, pe 9-15 CK107
The course gives a comprehensive introduction to the problems of pattern analysis and the kernel methods approach to their solution. Kernel methods rely on the implementation of linear pattern functions in high dimensional feature spaces defined implicitly via a kernel function. The course will cover the statistical implications, algorithmic solutions and kernel design strategies that make this approach a modular and flexible way to tackle real-world tasks. 
 
581336 Laskennan teoria (3 ov)
Prof. Jyrki Kivinen 13.10.-03.12. ke 12-14, pe 10-12 CK112
Kurssi laajentaa ja syventää Ohjelmoinnin ja laskennan perusmallit -kurssin antamaa tietojenkäsittelytieteen teoreettisten perusteiden tuntemusta. Erityisesti tarkastellaan Turingin koneita, laskennallisten ongelmien ratkeavuutta sekä laskennan vaativuusteoriaa. Suositeltava kurssikirja: Hopcroft J. E., Motwani R., Ullman J. D., Introduction to Automata Theory, Languages, and Computation (2nd ed.), Addison-Wesley, 2001. 
 
581381 Käyttöliittymät II (3 ov)
Yonleht. Sari A. Laakso 22.09.-01.12. ke 10-12 CK112
Syventävä opintojakso tavoitepohjaisesta käyttöliittymäsuunnittelusta ja käyttöliittymien suunnittelumalleista (design patterns). Tavoitepohjaisten käyttötapausten selvittäminen kenttätutkimuksilla. Käyttöliittymien arviointimenetelmät. Suunnittelu- ja arviointimenetelmien sijoittaminen ohjelmistoprosessiin. Esitiedot: Käyttöliittymät-kurssi. Jos tulijoita on enemmän kuin kurssille mahtuu, etusijalla ovat Käyttöliittymät-kurssin hyvällä arvosanalla suorittaneet. 
 
581361 Ohjelmistojen testaus (3 ov)
Yonleht. Juha Taina 26.10.-09.12. ti, to 10-12 B222
Kurssilla käsitellään ohjelmistotestauksen yleisiä käsitteitä, periaatteita ja tekniikoita. Kurssiin kuuluu noin 1ov laajuinen harjoitustyö. Esitietovaatimukset: Ohjelmistotuotanto, Ohjelmistotuotantoprojekti.  
 
581359 Ohjelmistoprosessit ja ohjelmistojen laatu (3 ov)
Prof. Inkeri Verkamo 15.09.-05.11. ke 16-18, pe 8-10 D122
Kurssilla käsitellään ohjelmiston laadun komponentteja ja niiden mittaamista sekä eräitä keskeisiä ohjelmistoprosessimalleja. Kurssikirjat: Fenton N. E., Pfleeger S. L.: Software Metrics: A Rigorous and Practical Approach (2nd ed.), International Thomson Computer Press, 1997 ja Verkamo I.: Ohjelmistotuotannon prosessimalleja (opetusmoniste), HY/TKTL, 2003.  
 
582461 Foundations for Future Mobile Computing (4 ov)
Prof. Kimmo Raatikainen 13.09.-29.11. ma 16-18 D122
The course examines fundamentals of computing and communications in future mobile systems. The key issues (and their underlying theoretical and practical foundations) examined include architectures, reconfiguration, modeling, programming, and software development. (http://www.cs.helsinki.fi/Kimmo.Raatikainen/Courses/f4fmc2004a.html)  
 
582449 Peer-to-Peer Computing (3 ov)
Stefano Campadello, Heikki Helin 14.09.-07.12. ti 16-18 D122
The course covers general introduction to peer-to-peer computing, including models, techniques, and algorithms for peer-to-peer architectures. Additionally, several case studies of peer-to-peer architectures will be presented. The course will include a project work. 
 
581365 Tietokoneen rakenne (2 ov)
Auvo Häkkinen 13.09.-20.10. ma, ti 12-14 D122
Kurssilla perehdytään tietokonelaitteiston alemman tason peruspiirteisiin, kuten esim. konekielen rakenteeseen, liukuhihnan toimintaan sekä prosessorin ja muistihierarkian toteutukseen. Osallistujilta edellytetään kurssin Tietokoneen toiminta suoritus tai vastaavat tiedot. Kurssikirja: Stallings W.: Computer Organization and Architecture (6th ed.), Prentice Hall, 2003.  
 
581363 Tietoliikenne II (2 ov)
Liisa Marttinen 13.09.-20.10. ma, ke 14-16 D122
Kurssin tavoitteena on tutustua joihinkin tietoliikennejärjestelmiin, ymmärtää linkki-, verkko- ja kuljetustason protokollien toimintatavat ja niiden käyttämät ongelmien ratkaisuperiaatteet. Esimerkkeinä käsitellään erityisesti IPv4-, IPv6- ja TCP-protokollia. Kurssikirja: Kurose J. F., Ross K. W.: Computer Networking, A Top-Down Approach Featuring the Internet, Addison-Wesley, 2001.  
 
582462 Tietoturvan jatkokurssi (3 ov)
Timo Karvi 13.09.-29.11. ma 10-12 D122
Kurssilla keskitytään tietoturvan teoreettisiin malleihin, niiden formalisointiin ja periaatteellisiin rajoituksiin. Lisäksi käsitellään politiikkakieliä. Erityisesti käydään läpi pääsymatriisimalli ja sen periaatteelliset rajoitukset, luottamuksellisuusmallit, eheysmallit, hydridimallit, luottamuksen käsite ja sen sovellutuksia, politiikkakielet ja politiikkojen yhdistäminen.  
 
582475 Information Visualization (2 ov)
Alexander Hinneburg 14.09.-21.10. ti, to 16-18 C222
The course gives an introductionay overview about visualization techniques for abstract data. It will have three parts: (1) the general visualization process and basics about human visual recognition, (2) basic visualization techniques and (3) advanced information visualization. Instead of a text book a collection of articles will be provided. The course will include exercises to demonstate the methods presented and some project work.  
 
582466 Puukieliopit (3 ov)
Miro Lehtonen, Mika Raento 27.10.-03.12. ke 14-16, pe 12-14 C222
Puukieliopit laajentavat merkkijonokielioppien maailmaa. Sovellusalueita ovat mm. luonnollisten kielten mallinnus ja rakenteiset dokumentit. Seminaarimuotoisella kurssilla tutustutaan puukielioppien perusluokkiin (puupaikallisiin ja puusäännöllisiin) sekä niiden sovelluksiin jäsennyksessä, validoinnissa ja transformaatioissa. Kurssiin sisältyy pakollinen harjoitustyö sekä harjoitustyön tuloksiin perustuva esitelmä.  
 
582440 Sanojen merkitykset (2 ov)
Yonleht. Jussi Piitulainen 13.09.-20.10. ma, ke 10-12 C222
Sanojen merkitysten ja merkityssuhteiden esittäminen toisaalta Wordnetin ja sanakirjojen tapaisissa tietovarastoissa, toisaalta aineistopohjaisesti. Sopivien merkitysten valinta tekstiyhteydessä.  
 
582444 Special Course on Data Mining (3 ov)
Marko Salmenkivi 14.09.-21.10. ti, to 10-12 B222
The course focuses on the discovery of frequent patterns. Association rules. Apriori algorithm. Episodes. Levelwise search. Complexity of finding frequent patterns. Closed sets and generators. The course will include a project work.  
 
581353 Tietokannan mallinnus (2 ov)
Satu Eloranta 23.09.-25.11. to 12-14 B222
Tietokannan suunnittelun teoriaa: funktionaaliset ja sisältyvyysriippuvuudet, tietokantakaavion normaalistaminen. Tietokannan käsittelyn mallinnusta: relaatiokalkyyli, oliokalkyyli.  
 
582403 Tietovarastot (2 ov)
Prof. Seppo Sippu 14.09.-21.10. ti, to 14-16 D122
Tietovaraston (data warehouse) mallinnus, tosiaikainen tiedonjalostus (OLAP), materiaalistettujen näkymien valinta ja ylläpito, tietovaraston hakemistorakenteet, tietovaraston lataus.  
 
582468 Computational Neuroscience (3 ov)
Patrik Hoyer, Jarmo Hurri 14.09.-22.10. ti 14-16, pe 10-12 C222
The topic of this course is mathematical modeling of information processing taking place in the brain. Contents: 1. Introduction to brain physiology 2. Modeling response properties of individual neurons 3. Example: early visual system. 4. Network models. 5. Plasticity and learning. Course requirements: examination and project work. Prerequisites and course material: see http://www.cs.helsinki.fi/jarmo.hurri/teaching/cns/  
 
58066 Tekoäly (4 ov)
Yonleht. Eero Hyvönen 14.09.-02.12. ti, to 14-16 CK112
Tekoälyn keskeiset ongelmat ja ratkaisumenetelmät perinteisen tekoälyn näkökulmasta, jossa korostetaan symbolista tiedon esitystä ja käsittelyä. Etsintäalgoritmit peleissä ja muussa ongelmanratkaisussa, loogispohjainen tiedon esittäminen ja päättely sekä suunnitelmien laatiminen. Esitiedot: Tietorakenteet, Symbolinen ohjelmointi sekä logiikan tiedot. Kurssikirja: Russell S. J. ja Norvig, P.: Artificial Intelligence: A Modern Approach (2nd ed.). Prentice Hall, 2002.  
 
582467 Data Analysis for Gene Expression (3 - 5 ov)
Prof. Samuel Kaski, Petri Auvinen, Madhuchhanda Bhattacharjee 11.10.-15.10. ma, ti, ke, to, pe 9-14 CK107, 15.11.-16.11. ma, ti 9-14 CK107
Computational and statistical methods for analyzing modern high-throughput biological data. Microarray techniques for measuring gene expression. Data analysis from preprocessing to clustering and basics of inferring gene regulation. Necessary biological background is reviewed. An optional larger project work and a seminar bring two additional credits. The course is organized together with the Department of Mathematics and Statistics and Institute of Biotechnology. 
 

Seminaarit

 
58304307 Geneerinen metaohjelmointi (2 ov)
Leht. Juha Vihavainen 16.09.-09.12. to 14-16 B222
 
 
58304319 GRID laskenta ja Linux klusterointi (2 ov)
Prof. Kimmo Raatikainen 13.09.-29.11. ma 14-16 B222
 
 
58304312 Hajautetut järjestelmät mobiileissa ad hoc -verkoissa (2 ov)
Leht. Timo Alanko 15.09.-08.12. ke 16-18 B222
 
 
58304315 Hypermediajärjestelmät (2 ov)
Leht. Hannu Erkiö 17.09.-10.12. pe 10-12 B222
 
 
58304314 Modernit tiedonhakumenetelmät (2 ov)
Juha Puustjärvi 20.09.-13.12. ma 8-12 DK116
 
 
58304306 Ohjelmistotekniikan laatumallit (2 ov)
Prof. Jukka Paakki 15.09.-08.12. ke 14-16 DK116
 
 
58304303 Pattern Analysis in Sequences (2 ov)
Prof. Esko Ukkonen, Veli Mäkinen 15.09.-08.12. ke 14-16 B222
 
 
58304318 Research Seminar on Computational Data Analysis (2 ov)
Aristides Gionis, Prof. Samuel Kaski 16.09.-09.12. to 14-16 C222
 
 
58304302 Research Seminar on Sum-Product Algorithms (2 ov)
Mikko Koivisto 14.09.-07.12. ti 10-12 C222
 
 
58304311 Selected Topics on Transport Protocols for Wireless Internet (2 ov)
Leht. Markku Kojo 16.09.-09.12. to 12-14 C222
 
 
58304317 Seminaari: Tiedon louhinta webissä (2 ov)
Yonleht. Pirjo Moen 14.09.-07.12. ti 12-14 B222
 
 
58304305 Takaisinmallinnus ja käänteistekniikat ohjelmistotuotannossa (2 ov)
Ass. Jukka Viljamaa 15.09.-01.12. ke 10-12 B222
 
 
58304308 Tekoälyalgoritmit tietokonepeleissä (2 - 3 ov)
Yonleht. Tomi Pasanen 15.09.-08.12. ke 14-16 DK117
 
 
58304316 Tekstianalyysimenetelmät (2 ov)
Prof. Helena Ahonen-Myka 14.09.-07.12. ti 10-12 DK116
 
 
58304301 Vaihtoehtoiset laskentaparadigmat (2 ov)
Prof. Jyrki Kivinen, Yonleht. Tomi Pasanen 16.09.-09.12. to 14-16 DK116
 
 
58303313 Verkko-oppimisyhteisöt (2 ov)
Yonleht. Jaakko Kurhila 20.09. ma 16-18 B222
 
 
58304310 Virtuaaliorganisaatiot (2 ov)
Lea Kutvonen 17.09.-10.12. pe 10-12 DK116
 
 
58304304 Älykkäiden järjestelmien tutkimusseminaari (2 ov)
Prof. Petri Myllymäki 16.09.-09.12. to 16-18 B222
 
 
TKTL / Opinto-opas kevät 2005

Kevätlukukausi 2005

Cum laude approbatur

 
581390 Tietokone työvälineenä (sivuaineopiskelijoille) (2 ov)
Juhani Haavisto 17.01.-16.02. ma, ke 10-12 CK112
Luennoilla käsitellään opetettavien ohjelmistojen (ks. pääaineopiskelijoiden kurssi) toimintaperiaatteita ja esitetään runsaasti demoja. Verkkomateriaalin itseopiskelulla voi korvata osan luentoja ja harjoituksia. Kurssiin kuuluu harjoitustyö. Kurssi kannattaa suorittaa heti tietojenkäsittelytieteen opintojen alussa. Harjoituksissa tarvitaan alusta pitäen tietojenkäsittelytieteen laitoksen atk-käyttäjätunnus. Katso ohjeet tunnuksen hakemisesta laitoksen web-sivuilta. 
 
581328 Introduction to Databases (2 ov)
Leht. Harri Laine 18.01.-22.02. ti 10-12 D122
Kurssilla opitaan perustiedot relaatiotietokannoista: mitä ne ovat ja miten niitä käytetään suoraan ja toisaalta ohjelmointikielen kautta. Kurssiin sisältyy johdatus relaatiotietokannan suunnitteluun. Kurssilla edellytetään ohjelmointitaitoa kurssin Ohjelmoinnin perusteet laajuudessa. Kurssi on osittain verkkokurssi; luennoilla käsitellään vain kurssin vaativimpia osia. Kurssikirja: Laine H.: Tietokantojen perusteet (opetusmoniste), HY/TKTL, 2001.  
 
581328 Tietokantojen perusteet (2 ov)
Teija Kujala 17.01.-21.02. ma 12-14 A111
Kurssilla opitaan perustiedot relaatiotietokannoista: mitä ne ovat ja miten niitä käytetään suoraan ja toisaalta ohjelmointikielen kautta. Kurssiin sisältyy johdatus relaatiotietokannan suunnitteluun. Kurssilla edellytetään ohjelmointitaitoa kurssin Ohjelmoinnin perusteet laajuudessa. Kurssi on osittain verkkokurssi; luennoilla käsitellään vain kurssin vaativimpia osia. Kurssikirja: Laine H.: Tietokantojen perusteet (opetusmoniste), HY/TKTL, 2001.  
 
581327 Johdatus sovellussuunnitteluun (2 ov)
Juha Gustafsson 15.03.-29.04. ti, pe 10-12 B123
Oliokeskeinen ohjelmiston kehittäminen ja siinä tarvittavat kuvaustekniikat ja menetelmät. Johdatus käyttöliittymiin ja niiden suunnitteluun. Kurssilla edellytetään oliokäsitteistön tuntemista ohjelmoinnin kannalta kurssin Ohjelmoinnin perusteet laajuudessa. Kurssin harjoitukset suoritetaan ryhmätöinä opintopiireissä. Suositeltava kurssikirja: Maciaszek L.A.: "Requirements Analysis and System Design - Developing Information Systems with UML". Addison-Wesley, 2001.  
 
581325 Ohjelmoinnin perusteet (3 ov)
Yonleht. Tomi Pasanen 18.01.-09.03. ti 14-16, ke 12-14 B123
Kurssilla perehdytään algoritmien laatimiseen ja ohjelmointiin. Ohjelmointikielenä on Java. Opiskelijalta ei edellytetä ennakkotietoja ohjelmoinnista. Kurssikirja: Wikla A.: Ohjelmoinnin perusteet Java-kielellä (4. painos), OtaDATA, 2003.  
 
581326 Java-ohjelmointi (2 ov)
Yonleht. Tomi Pasanen 15.03.-27.04. ti 14-16, ke 12-14 B123
Kurssilla perehdytään Java-ohjelmointikieleen. Painopiste on kielen perusvälineiden käytössä. Ohjelmoinnin perusteet -kurssin sisällön hallinta on osallistumisen edellytys. Huom: Kurssin harjoitukset alkavat jo ensimmäisellä luentoviikolla. Kurssikirja: Wikla A.: Ohjelmoinnin perusteet Java-kielellä (4. painos), OtaDATA, 2003.  
 
581305 Tietokoneen toiminta (2 ov)
Päivi Kuuppelomäki 14.03.-27.04. ma 12-14, ke 10-12 A111
Kurssilla perehdytään tietokoneohjelman suoritukseen, tietokonelaitteiston komponentteihin sekä laitteiston ja käyttöjärjestelmän luomaan ohjelman suoritusympäristöön. Kurssikirja: Häkkinen A.: Tietokoneen toiminta (opetusmoniste D390), HY/TKTL, 1998. Erilliskokeessa kurssikirjana: Stallings W.: Computer Organization and Architecture (6th ed.), Prentice Hall, 2003.  
 
581330 Ohjelmoinnin ja laskennan perusmallit (2 ov)
Matti Luukkainen 18.01.-24.02. ti, to 10-12 A111
Kurssilla tutustutaan ohjelmoinnin ja laskennan formaaleihin perusmalleihin. Käsiteltäviä asioita ovat äärelliset automaatit ja formaalit kielet sekä kielioppien jäsentäminen.  
 
581333 Tietoliikenne I (2 ov)
Auvo Häkkinen 17.01.-23.02. ma 10-12, ke 12-14 A111
Kurssi perehdyttää tietoliikenneverkkojen peruskäsitteistöön ja peruspalveluihin. Tutustutaan tietoliikenteen perusongelmiin ja niiden ratkaisuperiaatteisiin. Kurssikirja: Kurose J. F., Ross K. W.: Computer Networking, A Top-Down Approach Featuring the Internet, Addison-Wesley, 2001.  
 
58131 Tietorakenteet (4 ov)
Yonleht. Matti Nykänen 17.01.-13.04. ma, ke 14-16 B123
Kurssilla käsitellään perustietorakenteita kuten pinoja, jonoja, puita ja verkkoja sekä niiden käsittelyalgoritmeja. Kurssilla sovelletaan opiskelijalähtöisiä oppimismenetelmiä, kuten todellisten tietorakenne- ja algoritmiongelmien ratkomista ohjatuissa opiskelijaryhmissä. Kurssikirja: Cormen T.H., Leiserson C.E., Rivest R.L., Stein C.: Introduction to Algorithms, Second Edition, The MIT Press, 2001.  
 
581334 Tietokannan hallinta (2 ov)
Leht. Harri Laine 14.03.-27.04. ma 10-12, ke 12-14 A111
Tietokannanhallintajärjestelmän toiminnot: tietojen tallennus- ja hakumenetelmät, saannin valvonta, kyselyjen optimointi ja transaktioiden hallinnan perusteet. Kurssien Tietokantojen perusteet ja Tietorakenteet sisältö edellytetään tunnetuksi. Kurssikirja: Ramakrishnan R, and Gehrke J.: Database Management Systems (3rd ed.), McGraw-Hill, 2002.  
 
58110 Tieteellisen kirjoittamisen kurssi (kevät 2005) (4 ov)
Yonleht. Jaakko Kurhila 17.01.-28.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.  
 
581259 Ohjelmistotuotanto (3 ov)
Yonleht. Juha Taina 18.01.-11.03. ti, pe 10-12 B123
Ohjelmistotuotanto-kurssilla tarkastellaan alan yleistä käsitteellistä, teoreettista ja käytännöllistä aineistoa. Kurssikirja: Ian Sommerville: Software Engineering (6th ed.), Addison-Wesley, 2001.  
 
581260 Ohjelmistotuotantoprojekti (6 ov)
Yonleht. Juha Taina
Kurssin opiskelijat jaetaan ryhmiin, joiden tehtävänä on vetää läpi lukukauden mittainen ohjelmistoprojekti. Opiskelijoiden tulee ryhmätyönä kartoittaa projektin asiakkaan vaatimukset ohjelmistolle ja toteuttaa ohjelmisto kurssin laatujärjestelmän mukaisesti.  
 
58160 Ohjelmoinnin harjoitustyö (1. periodilla) (2 ov)
Yonleht. Tomi Pasanen 17.01. ma 18-20 CK112
 
 
58160 Ohjelmoinnin harjoitustyö (2. periodilla) (2 ov)
Yonleht. Tomi Pasanen 14.03. ma 18-20 CK112
 
 
581329 Tietokantasovellusten harjoitustyö (1. periodilla) (2 ov)
Yonleht. Pirjo Moen 17.01. ma 16-18 CK112
 
 
581329 Tietokantasovellusten harjoitustyö (2. periodilla) (2 ov)
Yonleht. Pirjo Moen 14.03. ma 16-18 CK112
 
 
58161 Tietorakenteiden harjoitustyö (2 ov)
Leht. Otto Nurmi
 
 

Cum laude approbatur /valinnaiset opintojaksot

 
58127 C-ohjelmointi (2 ov)
Liisa Marttinen, Tiina Niklander
We learn how to program in ANSI C. Recommended course book: Kernighan B.W. & Ritchie D.M.: The C Programming Language, 2nd ed., Prentice Hall 1988. (ANSI C edition)  
 
581391 Käyttöliittymät (4 ov)
Yonleht. Sari A. Laakso 25.01.-15.03. ti 12-14, to 10-12 B123
Konkreettinen peruskurssi graafisten käyttöliittymien ja web-käyttöliittymien suunnittelusta käyttäjien tavoitteiden pohjalta (Goal-Derived Design). Käyttöliittymäsuunnittelun lisäksi kurssilla harjoitellaan prototyyppien laatimista, demotekniikkaa ja käytettävyystestausta sekä tutustutaan joihinkin kognitiivisen psykologian peruskäsitteisiin käyttöliittymäsuunnittelun näkökulmasta. 
 
582309 Ohjelmointitekniikka (Java) (3 ov)
Leht. Arto Wikla 18.01.-11.03. ti, pe 12-14 CK112
Java-kielen edistyneet piirteet: säikeet, kokoelmat, käyttöliittymät ja ohjelmistokomponentit, Javan luokkakirjastojen ominaisuudet ja käyttö. Esitiedot: Java-ohjelmointi, Tietorakenteet, Rinnakkaisohjelmistot. Kurssilla kokeillaan nykyaikaisia oppimismenetelmiä. Kurssiin liittyy pakollisia harjoitustöitä. Osallistujamäärää voidaan joutua rajoittamaan. Kurssikirja: C.S.Horstmann, G.Cornell, Core Java 2, Volume II - Advanced Features. Prentice-Hall, 2003.  
 
582317 Linux-ylläpito (2 ov)
Jukka Manner 20.01.-28.04. to 16-18 D122
Kurssilla perehdytään Linux-pohjaisten työasemien ja palvelimien hallintaan. Aihepiirejä ovat käyttöjärjestelmän asentaminen ja konfigurointi sekä erilaisten palvelimien pystytys ja hallinta. 
 
582303 Verkkosovellusten toteuttaminen (4 ov)
Leht. Markku Kojo 18.01.-31.03. ti, to 12-14 D122
Käytännölliset valmiudet tietoliikenneyhteyksiä käyttävien sovellusten suunnitteluun ja toteuttamiseen sekä sovelluskehitystyöhön Unix-ympäristössä. Esitiedot: C-ohjelmointi, Rinnakkaisohjelmistot, Käyttöjärjestelmät I, Tietoliikenne I ja II sekä Tietorakenteiden harjoitustyö. Kurssiin kuuluu harjoitustyö. Ennakkoilmoittautuminen jo marraskuussa 2004. Suositeltava kurssikirja: Stevens W. R.: UNIX Network Programming, Volume 1 (2nd ed.), Prentice-Hall, 1998.  
 
582302 Digitaalisen median tekniikat (2 ov)
Leht. Harri Laine 17.01.-24.02. ma, to 12-14 B123
Kurssilla käsitellään web-sivustojen toteuttamisen perustekniikoita, erityisesti dynaamisuuden ja interaktiivisuuden hallintaa sekä ulkoasun määrittelemistä tyylipohjien avulla. Kurssilla toteutetaan harjoitustyönä näytekansio web-tekniikoilla. Tutkintoon ei voi sisällyttää sekä kurssia Digitaalisen median tekniikat että (vanhaa) kurssia Uusmediasovellusten tekniikat.  
 
582318 Proaktiivisen tietotekniikan kollokvio: tietääkö kone, mitä haluat seuraavaksi? (1 ov)
Greger Lindén 19.01.-04.05. ke 18-20 Sali 5 päär.
Proaktiivisessa tietotekniikassa järjestelmä sopeutuu ja mukautuu käyttäjän liikkeisiin ja toimiin ilman, että tietokonelaitteistoa tarvitsee käyttäjän toimesta jatkuvasti ohjata. Tämä vierailuluentosarja esittelee Suomen Akatemian yhdessä Tekesin ja Ranskan tutkimusministeriön rahoittaman Proaktiivinen tietotekniikka -tutkimusohjelman 14 projektia (PROACT 2002-2005, www.aka.fi/proact). Puhujina ohjelman projektien tutkijat. 
 
582304 XML-metakieli (2 ov)
Ass. Oskari Heinonen 07.03.-02.05. ma 12-14 B123
XML:n perusteet. DTD ja dokumentin rakenteen mallintaminen. Nimiavaruudet. XML:n prosessointi DOMin ja SAXin avulla. HTML:n generointi XSLT:llä. XSL FO ja dokumenttien muotoilu XSLT:n avulla. Lähistandardit. Esitiedot: Digitaalisen median tekniikat (tai HTML+CSS), Ohjelmoinnin harjoitustyö (tai hyvä ohjelmointitaito), Tietorakenteet. Suositeltava kurssikirja: Neil Bradley: The XML Companion (3rd ed.) Addison-Wesley, 2002. 
 

Laudatur

 
58053 Algoritmien suunnittelu ja analyysi (5 ov)
Leht. Otto Nurmi 18.01.-10.05. ti 14-16, to 12-14 CK112
Algoritmien yleisiä suunnittelu- ja analyysiperiaatteita. Kokoelma keskeisiä ongelmia ja edustavia ratkaisualgoritmeja.  
 
58093 Merkkijonomenetelmät (4 ov)
Triass. Juha Kärkkäinen 31.01.-13.04. ma, ke 12-14 C222
Merkkijonohahmon tarkkojen ja likimääräisten esiintymien etsiminen. Tekstin indeksointi. Tiedon tiivistys.  
 
582470 Empiirinen ohjelmistotutkimus (2 ov)
Yonleht. Juha Taina 15.03.-29.04. ti, pe 10-12 B222
Empiirinen ohjelmistotutkimus -kurssilla käsitellään ohjelmistotuotannon havaittuja lainalaisuuksia ja teorioita sekä niiden selvityksessä käytettäviä menetelmiä. Kurssikirja: Albert Endres, Dieter Rombach, A Handbook of Software and Systems Engineering: Empirical Observations, Laws and Theories. Addison-Wesley, 2003. 
 
582429 Laudatur-projektityö (4 ov)
Yonleht. Juha Taina
Laudatur- projektityössä harjoitellaan käytännössä systemaattista mitattua ja seurattua prosessia käyttävää projektityöskentelyä määrittelemällä, suunnittelemalla ja toteuttamalla ohjelmisto ryhmäohjelmistoprosessin periaatteita noudattaen. Kurssille osallistujilta vaaditaan kurssin Ohjelmistoprosessit ja ohjelmistojen laatu suoritus.  
 
581358 Ohjelmistoarkkitehtuurit (3 ov)
Ass. Antti Viljamaa 15.03.-10.05. ti 12-14, to 10-12 CK112
Ohjelmistoarkkitehtuurilla tarkoitetaan moduulijakoa korkeamman tason abstraktiota ohjelmiston osista ja näiden välisestä kommunikaatiosta. Kurssin aihepiiriin kuuluvat arkkitehtuurimallit, arkkitehtuurin kuvaaminen, analysointi ja suunnittelu. Osanottajien edellytetään suorittaneen Ohjelmistotuotannon kurssin.  
 
58153003 Ohjelmistojen suorituskyvyn suunnittelu (3 ov)
Prof. Inkeri Verkamo 19.01.-04.03. ke 16-18, pe 8-10 D122
Kurssilla perehdytään ohjelmiston suorituskyvyn suunnitteluun, joka perustuu systemaattiseen metodologiaan ja suoritusmalleihin. Suositeltava kurssikirja: Smith, C. U., Williams L. G., Performance Solutions - A Practical Guide to Creating Responsive, Scalable Software, Addison-Wesley 2002. 
 
582460 Ohjelmistojen vaatimusmäärittely (3 ov)
Prof. Inkeri Verkamo 09.03.-06.05. ke 16-18, pe 8-10 D122
Kurssilla käsitellään ohjelmistojen vaatimusten määrittelyn vaiheita ja niissä käytettäviä menetelmiä.  
 
58144 Ohjelmointikielten kääntäjät (6 ov)
Leht. Juha Vihavainen 26.01.-08.04. ke, pe 12-14 D122
Kääntäjän rakenneosat: selaus, jäsennys, semanttinen analyysi ja koodinluonti; kääntäjätyökalujen käyttö. Kurssin kuuluu harjoitustöinä kääntäjien toteutusta. Esimerkki suositeltavasta lähdemateriaalista: M.L.Scott: Programming Language Pragmatics. Morgan Kaufmann, USA, 2000.  
 
582464 Autonomisten järjestelmien yhteistyö (3 ov)
Lea Kutvonen 15.03.-29.04. ti, pe 10-12 DK116
Kurssin tavoitteena on tutustua yhteistyöhaasteisiin ja ongelmiin avoimessa verkkoympäristössä. Ratkaisumenetelminä tarkastellaan mm. ajanmukaisia väliohjelmistopalveluja, yhteistyöverkostojen hallintaa (business process management) ja virtuaaliorganisaatiomalleja. 
 
582417 Hajautetut järjestelmät (3 ov)
Leht. Timo Alanko 20.01.-18.03. to, pe 10-12 D122
Hajautuksen problematiikka ja käsitteenmuodostus, keskeiset ratkaisuperiaatteet hajautetun päätöksenteon toteutuksissa, esimerkit käyttöjärjestelmätoiminnoista. Kurssikirja: Tanenbaum A.S., van Steen M.: Distributed Systems, Principles and Paradigms, Prentice-Hall 2002.  
 
582465 Handheld Systems (2 ov)
Prof. Kimmo Raatikainen 17.01.-09.05. ma 16-18 D122
The course examines hardware implications of mobile handheld devices. The focus is on operating systems and middleware for such devices: Small footprint operating systems, J2ME and Nokia S60. (http://www.cs.helsinki.fi/Kimmo.Raatikainen/Courses/hhsys2005s.html)  
 
582405 Käyttöjärjestelmät II (2 ov)
Leht. Teemu Kerola 14.03.-27.04. ma, ke 12-14 DK116
Kurssin tavoitteena on ymmärtää käyttöjärjestelmän perusrakenne ja sen toteutusperiaatteet. Kurssilla tarkastellaan asioita käyttöjärjestelmän toteuttajan näkökulmasta. Osallistujilta edellytetään kurssien Käyttöjärjestelmät I ja Rinnakkaisohjelmistot suoritus. Kurssikirja: Stallings W.: Operating Systems, 4th ed. Prentice Hall, 2001.  
 
582452 Mobiilijärjestelmien ohjelmointi (3 ov)
Jaakko Kangasharju, Sasu Tarkoma 18.01.-21.04. ti 14-16, to 10-12 DK116
Kurssin tavoitteena on opettaa osallistujille mobiilijärjestelmien ohjelmoinnin perusajatukset sekä problematiikka yleisellä tasolla.  
 
581366 Spesifioinnin ja verifioinnin perusteet (2 ov)
Matti Luukkainen 17.01.-23.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.  
 
582463 Spesifioinnin ja verifioinnin jatkokurssi (3 ov)
Timo Karvi 02.03.-29.04. ke, pe 12-14 B222
Kurssilla keskitytään prosessialgebroihin ja ekvivalensseihin perustuvaan verifiointiin. Erityisesti käsitellään siirtymäsysteemit ja niiden laajenukset reaaliaikasovelluksiin, ekvivalensseja, prosessialgebrojen aksiomatisointia, pi-kalkyyli ja tietoturvaprotokollien verifiointi. 
 
582471 Algorithms for segmentation problems (2 ov)
Heikki Mannila 21.01.-25.02. pe 10-12 B222
The segmentation of sequences or time series into homogenous pieces has many applications. The course covers some algorithmic and probabilistic techniques for segmentation methods and related applications.  
 
582474 Information networks (3 - 4 ov)
Panayiotis Tsaparas
The course covers recent research on algorithms for analyzing information networks such as WWW. Topics include methods for link analysis, search algorithms, probabilistic models for networks, and connections with social networks and citation analysis. Some mathematical background is needed in algorithms, graphs, probability, and linear algebra. 
 
582410 Laajojen dokumenttiaineistojen käsittely (2 ov)
Prof. Helena Ahonen-Myka 15.03.-28.04. ti 12-14, to 10-12 B222
Probabilistiset tiedonhakumenetelmät. Automaattinen dokumenttien aiheluokittelu. Lyhennelmien tuottaminen. Tiedon eristäminen tekstistä. Kysymysvastausjärjestelmät. Esitiedot: Tiedonhakumenetelmät-kurssi 
 
582473 Linear Algebra Methods for Data Mining (2 ov)
Saara Hyvönen 25.01.-03.03. ti 12-14, to 10-12 B222
The course will cover linear albegra 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. Both theoretical and implementational aspects are considered. Required backgroud: basic linear algebra skills (e.g. course "Lineaarialgebra I"). 
 
582472 Paikkatiedon hallinta ja analyysi (3 ov)
Marko Salmenkivi, Antti Leino 15.03.-29.04. ti, pe 10-12 C222
Kurssilla perehdytään tiedon hallinnan ja data-analyysin erityiskysymyksiin, kun analysoitava aineisto sisältää spatiaalista eli paikkaan liittyvää informaatiota. Kurssilla tutustutaan käytännössä ArcGIS-paikkatietojärjestelmään. Kurssiin kuuluu harjoitustyö.  
 
582448 Tiedon louhinnan menetelmät (3 ov)
Yonleht. Pirjo Moen 17.01.-04.04. ma 10-12 B222
Kurssilla tutustutaan tiedon louhinnan keskeisiin käsitteisiin ja menetelmiin sekä tiedon louhintaprosessiin. Kurssi sisältää sekä teoreettista että käytännöllistä materiaalia. Kurssilla sovelletaan ns. tutkivaa oppimista, jossa pääosa työskentelystä tapahtuu ryhmissä omatoimisesti ongelmaa ratkomalla. Kurssikirja: Han, J., Kamber, M.: Data mining: concepts and techniques. Morgan Kaufmann, 2001.  
 
581257 Tiedonhakumenetelmät (3 ov)
Yonleht. Jussi Piitulainen 17.01.-23.02. ma, ke 10-12 C222
Tiedonhaun peruskäsitteet. Tiedon tallennus- ja hakuprosessi. Tiedonhakumallit. Täsmäytysmenetelmät. Luonnollisen kielen käsittely hakua varten. Kyselystrategiat ja käyttöliittymät. Kurssiin liittyy harjoitustyö.  
 
581354 Tietokantarakenteet ja -algoritmit (4 ov)
Prof. Seppo Sippu 25.01.-21.04. ti, to 14-16 D122
Tietokanta ja transaktiot. Häiriöistä elvytys. Samanaikaisuuden hallinta. Fyysisten tietokantarakenteiden elvytys ja samanaikaisuuden hallinta. Kyselyiden käsittely. Hajautetun tietokannan hallinta. Sivupalvelinjärjestelmän hallinta. Rinnakkaistietokannat.  
 
581286 Kolme käsitettä: informaatio (4 ov)
Prof. Petri Myllymäki 20.01.-10.03. to 16-19 B222
Kurssi on johdatus informaatioteoriaan erityisesti tietojenkäsittelytieteellisten sovellusten kannalta. Kurssilla ei ole tavanomaisia laskuharjoituksia ja se suoritetaan toteuttamalla ohjelmointiprojekteja sekä kirjoittamalla aihepiiriin liittyvä tieteellinen kirjoitelma. Esitietoina Tieteellisen kirjoittamisen kurssi ja sujuva ohjelmointitaito.  
 
58147 Koneoppiminen (4 ov)
Prof. Jyrki Kivinen 25.01.-13.04. ti 16-18, ke 14-16 D122
Kurssilla tutustutaan viimeaikaiseen koneoppimisen tutkimukseen. Tarkasteltuja aiheita ovat mm. oppimisen kiihdyttäminen (boosting) ja tukivektorikoneet sekä niiden analysoiminen. Kurssi edellyttää riittäviä matemaattisia valmiuksia.  
 
582450 Modeling of Perception (3 ov)
Aapo Hyvärinen 27.01.-03.03. to 14-16 B222
The course will be arranged in cooperation with the Helsinki University of Technology. 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. Six more lectures will be given at HUT. Prerequisites: basic courses in differential calculus, probability and linear algebra.  
 
582459 Semanttinen web (2 ov)
Yonleht. Eero Hyvönen 17.03.-05.05. to 14-17 B222
Semanttinen web (Semantic Web) on webin seuraava sukupolvi, jossa sisältöjä esitetään koneiden ymmärtämässä muodossa. Tämä mahdollistaa mm. tietojärjestelmien aiempaa paremman yhteentoimivuuden sekä älykkäiden web-järjestelmien kehittämisen. Kurssilla esitellään semanttisen webin perusteknologioita (kuten RDF, RDF Schema ja OWL), sovelluksia ja työkaluja sekä tutustutaan aihepiiriin käytännössä harjoitustöiden avulla. Esitietovaatimukset: XML-metakieli, Teköäly. 
 
582469 Computational Systems Biology (3 ov)
Prof. Esko Ukkonen, Liisa Holm 18.01.-10.03. ti 12-14, to 14-16 DK116
The course discusses functioning of cells from the systems perspective: metabolic networks and gene regulation. Guest lecturers introduce the biological background, after which analysis and modeling methods are discussed. The course is organized as collaboration of the departments of computer science and biosciences.  
 
58037 Tietokoneavusteiset oppimisympäristöt (4 ov)
Yonleht. Jaakko Kurhila 27.01. to 10-12 C222
Kurssi toteutetaan verkkokurssina. Ensimmäinen tapaaminen to 27.1. klo 10-12 on pakollinen kaikille osallistujille. 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ä.  
 

Seminaarit

 
58304309 Käyttöliittymäsuunnittelun vaikutukset vaatimusmäärittelyyn (2 ov)
Yonleht. Sari A. Laakso 19.01.-04.05. ke 10-12 B222
 
 
58305110 Luonnollisen kielen jäsentäminen (2 ov)
Yonleht. Jussi Piitulainen 17.02.-24.02. to 10-12 C222, 16.03.-04.05. ke 10-12 C222
 
 
58305107 Mobile Web Services (2 ov)
Suresh Chande 03.02.-21.04. to 16-18 C222
 
 
58302102 Ohjelmistoagenttiteknologia (2 ov)
Heimo Laamanen 24.01.-02.05. ma 14-16 B222
 
 
58305102 Ohjelmistojen ylläpito (2 ov)
Prof. Jukka Paakki 19.01.-04.05. ke 14-16 B222
 
 
58305104 Ohjelmistotekniikan pro gradu -seminaari (2 ov)
Prof. Inkeri Verkamo 20.01.-07.05. to 8-10 B222
 
 
58305103 Ohjelmistotuotanto ja tietokonepelit (2 ov)
Leht. Juha Vihavainen 20.01.-28.04. to 14-16 C222
 
 
58305112 Research Seminar on Data Analysis for Bioinformatics (2 ov)
Prof. Samuel Kaski 20.01.-28.04. to 14-16 CK107
 
 
58305109 Samanaikaisuudenhallinta (2 ov)
Ass. Jan Lindström 17.01.-02.05. ma 16-18 B222
 
 
58305111 Seminar on Property Testing (2 ov)
Taneli Mielikäinen 20.01.-28.04. to 12-14 C222
 
 
58301104 Tietojenkäsittelytieteen historia (2 ov)
Leht. Teemu Kerola 20.01.-28.04. to 12-14 B222
 
 
58304313 Tietojenkäsittelytieteen tohtoriseminaari (2 ov)
Prof. Hannu Toivonen 07.03.-09.05. ma 10-13 CK107
 
 
58305101 Tietokonegrafiikan seminaari (2 ov)
Leht. Otto Nurmi 17.01.-02.05. ma 12-14 B222
 
 
58305105 Tietoturva: luottamus ja varmuus (2 ov)
Timo Karvi 19.01.-04.05. ke 16-18 C222
 
 
58305108 Verkko-opetusteknologiat (2 ov)
Juha Puustjärvi 24.01.-09.05. ma 8-12 DK116
 
 
58304304 Älykkäiden järjestelmien tutkimusseminaari (2 ov)
Yonleht. Eero Hyvönen 18.01.-19.04. ti 14-16 B222
 
 
opetus@cs.helsinki.fi