Aineopintojen harjoitustyö: Tietorakenteet ja algoritmit (periodi II)

58161
3-5
Algorithms and machine learning
Intermediate studies
Opintojaksossa opiskelijat harjoittelevat vaikeahkojen tietorakenteiden ja algoritmien toteuttamista, sekä erilaisten ratkaisujen vertailemista käytännössä. Työn arvioinnissa keskeistä on ohjelmakoodin oikeellisuus, selkeys ja tehokkuus, sekä vertailuissa saatujen tulosten esittäminen ja arviointi. Työn tekeminen edellyttää jossain määrin tieteellisen kirjallisuuteen perehtymistä. Esitiedot: Tietorakenteet ja algoritmit sekä Aineopintojen harjoitustyö: Ohjelmointi.
Year Semester Date Period Language In charge
2014 autumn 27.10-12.12. 2-2 Finnish Tomi Pasanen

Exercise groups

Group: 1
Time Room Instructor Date Observe
Tue 16-18 B119 Kalle Ilves 28.10.2014—28.10.2014 Aloitustilaisuus TI 16-18 B119 on kaikille pakollinen!

Ilmoittautuminen tälle kurssille alkaa tiistaina 7.10. klo 9.00.

General

Demotilaisuus maanantaina 8.12 klo 16-18 luokassa A218

Huom! Harjoitustyösi ei tarvitse olla demotilaisuuten mennessä valmis, kunhan sinulla on jotain näytetettävää muille, esim. pienimuotoinen visualisointi algoritmisi toiminnasta tai tietorakenteiden suorituskykyvertailu. Aloita demo kertomalla kuka olet ja mitä olet tehnyt. Voit näyttää lyhyesti dokumentaatiota ja yleiskuvan sovelluksesi rakenteesta, mutta kooditasolle asti ei ole tarvetta mennä, lyhyt visuaalinen esitys työstä on tärkeämpi. Pystytä sovellus laitoksen koneelle jo hyvissä ajoin etukäteen, jos vain mahdollista.

Muistathan, että demotilaisuus on pakollinen!

Tutustu kurssiwikiin.

Päätä harjoitustyösi aihe ja rekisteröidy labtooliin

5 opintopisteen arvoinen suoritus

Opiskelija, joka haluaa suorittaa kurssin viiden opintopisteen arvoisesti keskustelee asiasta ohjaajan kanssa kurssin alussa. Esimerkki lisäopintopisteeseen oikeuttavasta tekijästä: huomattavasti yksityiskohtaisempi kirjallinen selonteko ohjelman toiminnasta ja pienten optimointien vertailu:

  • Minkälaisilla syötteillä ohjelma toimii hyvin? Miksi?
  • Minkälaisilla syötteillä ohjelma toimii huonosti? Miksi?
  • Pseudokoodin ja todellisen koodin väliset ongelmat (esim. kuinka usein algoritmi joutuu muokkaamaan listaa muualta kuin alusta tai lopusta). Miten nämä voidaan parhaiten ottaa huomioon tietorakenteissa ja ohjelman yleisessä toiminnallisuudessa?
  • Testaa ja raportoi muutaman optimoinnin/muutoksen tuoma vaihtelu ohjelman suorituskykyyn.
  • Voiko algoritmin aikavaativuutta parantaa lisäämällä tilavaativuutta? Miten?

Jos nämä puuttuvat, harjoitustyöstä saa 4 opintopistettä.

Ohjausaikataulu

13.11 ohjaus luokka B221!

  • Tiistai 15-16 BK107
  • Torstai 15-16 BK107