Teknillinen korkeakoulu


Etusivulle

Kurssiesite

Aikataulu

Ohjeita

Aiheet

Luennot

Linkkejä

Henkilökunta

Kevät 2001


T-106-290 Ohjelmoinnin laboratoriotyöt

Kurssiesite kevät 2003

0. Johdanto

Kurssilla toteutetaan kokeellinen algoritmitutkimukseen liittyvä pienimuotoinen tutkimusprojekti. Samalla tutustutaan tieteelliseen työskentelyyn.

Kurssi on tarkoitettu vain T-koulutusohjelman opiskelijoille.

1. Tavoitteet

  • Kurssilla tutustutaan kokeellisen algoritmitutkimuksen metodiikkaan ja ongelmiin. Käsiteltävät algoritmit liittyvät pääosin kurssin T-106.250 Tietorakenteet ja algoritmit sisältöön. Kurssilla on mahdollisuus tutustua erityisesti omien aiheuiden kautta myös muihin aihepiireihin.
  • Kurssilla harjoitellaan mittaamista, tieteellisen artikkelin kirjoittamista, tulosten tilastollista käsittelyä ja graafista esittämistä sekä virhelähteiden analysointia. Mittausjärjestelmä toteutetaan ohjelmoimalla.
  • Artikkelin työstämisen myötä tutustutaan tieteelliseen kirjoittamiseen, arviointiin ja palautteen antamiseen (reviewing) sekä tieteellisen esityksen pitämiseen.

2. Esitiedot

Kurssin esitietoina vaaditaan, että opiskelija on suorittanut hyväksytysti seuraavat kurssit.

Tilastomatematiikan perusteiden tuntemuksesta on hyötyä, mutta asiaa voi opiskella kurssin aikanakin.

3. Opetusmenetelmät

  1. Luennot
    • Luennot ovat maanantaisiin klo 8.30-10 salissa T1 ja ne kestävät alustavan suunnitelman mukaan 10.2. asti. 1. luento on 13.1.
    • Luennoilla käsitellään lähinnä seuraavia asioita:
      • Johdatus kokeelliseen algoritmitutkimukseen. Miksi sitä tarvitaan, minkälaisia metodeja ja ongelmia siellä esiintyy?
      • Esimerkkejä koejärjestelyistä, algoritmeista ja tuloksista
      • Tulosten kriittinen tarkastelu
      • Tieteellisen artikkelin kirjoittaminen
      • Työkaluohjelmia tieteelliseen kirjoittamiseen: Latex, Gnuplot
      • Lisäksi jokin erikoisluento, joka liittyy kokeelliseen tutkimukseen.
    • Luentorunko tulee kurssin WWW-sivulla.
  2. Tutkielma
    • Tutkielmassa perehdytään syvällisemmin johonkin tietorakenteiden ja algoritmien osa-alueeseen. Tähän liittyy tutustuminen uusiin algoritmeihin, niiden vertailu toisiinsa sekä teoreettisesti tasolla (analyyttiset tulokset) että käytännössä. Viimeksi mainittu tarkoittaa sitä, että implementoidaan joukko algoritmeja ja tehdään niille kokeellisia vertailuja. Pääpaino on vertailussa. Algoritmit tutkielmiin pyritään valitsemaan siten, että niiden koodin pitäisi olla saatavilla valmiina tai pseudokoodina, jolloin ohjelmointiin ei menisi liikaa aikaa.

4. Arvosanan muodostuminen

Kurssi suoritetaan tekemällä tutkielma, joka arvioidaan asteikolla 0-5. Kurssin läpäiseksi on tutkielma suoritettava vähintään arvosanalla 1. Kurssista ei järjestetä tenttiä. Arvosana muodostuu teoriaosuudesta (paino 20%), koesuunnitelmasta (20%) sekä loppuraportista (60%). Huomaa, että teoriaosuus ja koesuunnitelma todellakin muodostavat kurssin arvosanasta 40%!

5. Tutkielma

5.1 Tavoitteet

Tutkielman tavoitteena on opettaa kokeellisen algoritmitutkimuksen metodiikkaa ja ongelmia sekä kokeellisten tulosten käsittelyä. Tutkielmalla on myös välillisiä tavoitteita. Siinä harjoitellaan tiedon hakemista, ohjelmointia, kykyä kriittiseen ajatteluun, raportin kirjoittamista ja esittämistä julkisesti.

5.2 Toteutus

  • Tutkielman laajuus voi olla 2-5 ov aiheesta riippuen.
  • Kurssilla on määritelty joukko valmiita aiheita. On myös mahdollista ja suositeltavaakin tehdä tutkielma omasta aiheesta, jos haluaa syventyä jonkin erityisalueen algoritmeihin. Jos haluatte tehdä tutkielman omasta aiheesta, tutustukaa ensin muihin aiheisiin ja laatikaa vastaavan tyyppinen aihe-ehdotus, jonka voitte lähettää kurssin luennoijalle kommentoitavaksi ja hyväksyttäväksi.
  • Tutkielma tehdään 2-3 hengen ryhmässä.
  • Tutkielmia ohjaavat pääosaltaan kurssin tuntiassistentit.
  • Kukin ryhmä muodostaa www-sivuston, jonka alle kurssiin liittyvät dokumentit kootaan. Tarkemmat ohjeet tästä sekä dokumenttien palauttamisesta löytyvät kurssin www-sivulta. Tarkat aikataulut ovat myös kurssin www-sivulla.
  • Kaikki tutkielmaraportit kirjoitetaan Latex-tekstinkäsittelyjärjestelmää käyttäen, koska Latex on hyvin keskeinen väline tieteellisen tekstin tuottamisessa.
  • Tutkielma aloitetaan palauttamalla 1-2 sivun minisuunnitelma, joka sisältää seuraavat asiat:
    • aihe omin sanoin kuvattuna
    • arvio työn laajuudesta (tunteina)
    • asetettu arvosanatavoite
    • lyhyt työsuunnitelma (mitä tehdään missäkin vaiheessa, mikä on aikataulu, paljonko työaikaa kuluu kuhunkin vaiheeseen)
    • suunnitelma tehdään valmiille Latex-pohjalle
  • Seuraavassa vaiheessa tehdään kirjallisuustutkimusta ja tarkka koesuunnitelma.
    • Kirjallisuustutkimuksessa perehdytään aiheessa annettuihin algoritmeihin ja niiden teoreettisiin ominaisuuksiin sekä etsitään algoritmien koodit valmiiksi.
    • Koesuunnitelmassa esitetään yksityiskohtaisesti koejärjestelyt ja tavoitteet, minkä muuttujien vaikutusta tuloksiin aiotaan selvittää. Tavoitteet tulee perustella hyvin.
  • Koesuunnitelmaa valmisteltaessa pidetään palaveri, johon voi osallistua useampi samaa aihetta työstävä ryhmä. Tällöin voidaan vaihtaa ajatuksia kokeista ja suunnata niitä mielenkiinnon mukaan.
  • Kurssin assistentit tarkastavat teoriaosan ja koesuunnitelman ja kutsuvat tarvittaessa työryhmän palaveriin, jossa voidaan selvittää suunnitelman mahdollisia ongelmia.
  • Tutkielmasta kirjoitetaan loppuraportti, joka sisältää seuraavia asioita:
    • Koetulokset graafisessa muodossa
    • Virhelähteiden analyysi
    • Vertailu teoreettisiin tuloksiin
    • Päätelmät koetulosten perusteella
    • Toteutuneet työmäärät ja niiden vertailu minisuunnitelmaan
  • Loppuraportin palautuksen jälkeen kaikki työryhmät referoivat toistensa raportteja ja antavat niistä kirjallista palautetta. Palautteen perusteella voi omaa työtä vielä parantaa ennen kuin siitä jätetään lopullinen versio kurssin henkilökunnan arvosteltavaksi.
  • Kurssin järjestäjät voivat mahdollisesti laatia hyvistä töistä yhtenäisen koostejulkaisun kurssin päätteeksi.
  • Parhaat loppuraportit esitetään minikonferenssissa muille kurssilaisille ja muille asiasta kiinnostuneille henkilöille. Niiden tiivistelmät ja raportit esitetään myös WWW:ssä.

6. Oppimateriaali ja tiedottaminen

Oppikirjaa asiasta ei ole. Prujujen kautta tulee jonkin verran kirjallista materiaalia.

7. Kurssin henkilökunta

Kurssin vetäjänä toimii professori Lauri Malmi, joka on tavattavissa vastaanottoaikoinaan huoneessa B227. Kurssin käytännön järjestelyistä vastaa assistentti Juha Tukkinen. Tuntiassistenttina toimivat teekkarit Ville Nenonen, Mikko Rahikainen, Jussi Rautio sekä Antti Tiainen. He neuvovat tutkielman tekemisessä ja arvioivat palautettavat raportit. Jokaiselle ryhmälle nimetään jokin tietty vastuuassistentti, joka hoitaa ryhmän neuvonnan alusta loppuun ja arvioi raportit.

Kurssiin liittyvistä asioista tiedotetaan luennoilla ja kurssin WWW-sivun ajankohtaista -palstalla. Sivun osoite on http://www.cs.hut.fi/Opinnot/T-106.290/.

Otaxissa on uutisryhmä opinnot.tik.labratyot, jossa voidaan käydä keskustelua ja jonne voi esittää kysymyksiä assistenteille. Uutisryhmää ei kuitenkaan käytetä varsinaiseen tiedottamiseen.

Tiedusteluja voi lähettää myös sähköpostitunnukselle jtukkine@cs.hut.fi, jolloin kurssin assistentit vastaavat niihin yleensä korkeintaan päivän parin viiveellä. Sähköpostitse kannattaa kysyä lähinnä vain kurssin järjestelyihin liittyviä asioita. Muiden ongelmien (esim. algoritmien toiminta, ohjelmointiongelmat, koejärjestelyt, raportin kirjoittamainen,...) osalta kannattaa sopia tapaaminen oman vastuuassistentin kanssa.

Kurssilla ei käytetä enää varsinaista seinällä olevaa ilmoitustaulua.

8. Ilmoittautuminen

Kurssilla käytetään KUHA-kurssihallintojärjestelmää. Ryhmät muodostetaan siellä. Ilmoittautuminen alkaa 13.1.2003 kello 12:00. Tarkemmat ohjeet asiasta tulevat kurssin WWW-sivulle.



Kurssin sähköposti osoitteella: jtukkine@cs.hut.fi
Kurssin uutisryhmä: opinnot.tik.labratyot
Sivun sisältöä on viimeksi päivitetty 2003-01-22 .