Aiheita - TiraLabra/Kevat-2014 GitHub Wiki
Aiheen voi keksiä itse, tai valita alla olevasta listasta itselleen mielenkiintoinen aihe. Listalla olevat aiheet ovat vain ehdotuksia, niitä voi muokata ja kehittää - lopullinen aihe sovitaan yhdessä ohjaajan kanssa.
###Verkot ja polunesintä Miten löydetään tehokkaasti nopein/lyhyein reitti labyrintistä ulos. Labyrintti voi olla tehty esimerksi ascii-merkeistä tai piirretty kuva.
Miten löydetään tehokkaasti nopein/lyhyin reitti verkossa kahden pisteen välillä. Verkon pisteet voivat olla esimerkiksi katuosoitteita, joukkoliikenteen pysäkkejä tai koordinaatteja. Hyvä artikkeli aiheesta: http://theory.stanford.edu/~amitp/GameProgramming/AStarComparison.html
Rahtifirma NopsaToimitus haluaa saada paketit perille mahdollisimman nopeasti ja vähillä polttoainekustannuksilla. Suunnittele miten voidaan laskea reitti toimitusautolle, niin että kaikki paketit tulee toimitettua perille mahdollisimman lyhyellä ajomatkalla. Kussakin toimituspaikassa käydään vain kerran.
###Tiedon tiivistys Tiedosto tulisi saada mahtumaan pienempään tilaan, miten tämä onnistuu? Toivottava lopullinen koko on 40-60% alkuperäisestä koosta. Tiedosto pitää myös pysytä avaamaan alkuperäiseen muotoon myöhemmin.
###Tekoälyt Shakki, go (laajennettu risti-nolla) jne ovat hauskoja ja haastavia pelejä. Niitä olisi kiva pelata tietokonetta vastaan, tehtävänäsi on kehittää valitsemallesi pelille tekoäly. Tekoälyn pitää pystyä pelaamaan niin ihmistä kuin itseään vastaan.
Kivi-sakset-paperi on kaikille tuttu peli. Onnistutko toteuttamaan tekoälyn, joka päihittää ohjaajan? Kun tekoälysi on hyvä voit jatkaa kehitystä ottamalla mukaan vielä kaksi vaihtoehtoa: Lisko ja Spock. http://upload.wikimedia.org/wikipedia/commons/a/ad/Pierre_ciseaux_feuille_l%C3%A9zard_spock_aligned.svg sekä http://www.youtube.com/watch?v=x5Q6-wMx-K8
###Tietorakennevertailut Tietorakenteita on monenlaisia, mikä olisi paras kuhunkin ongelmaan? Vertaile neljää eri tietorakennetta (esimerkiksi puita tai kekoja), joita ei ole käsitelty Tietorakenteet ja algoritmit -kurssilla. Tutki missä tilanteessa kukin on paras, eli missä tilanteessa käyttäisit kutakin rakennetta.
###Muuta kivaa Rahtifirma NopsaToimitus haluaa optimoida konttikuljetuksissa käytettävän tilan. Suunnittele miten voidaan täyttää yksi tai useampi kontti mahdollisimman tehokkaasti, jos tiedetään pakettien määrä ja koot. Ideaa voi hakea kuutiopalapelin ratkaisijasta.
Suunnittele säännöllisten lauseiden tulkki. Miksi? Loistava vastaus: http://blog.stevenlevithan.com/archives/10-reasons-to-learn-and-use-regular-expressions
Matriisien laskenta käsin on rankkaa puuhaa. Suunnittele matriisilaskin joka osaa perusoperaatioiden lisäksi lasken matriisin determinantin.