Sijaintialgoritmitehtävien automaattinen tarkastaminen

Samankaltaiset tiedostot
Sijaintialgoritmitehtävien automaattinen tarkastaminen

Trakla2-opetusympäristö

DIPLOMITYÖ ARI KORHONEN

S09 04 Kohteiden tunnistaminen 3D datasta

Kahden suoran leikkauspiste ja välinen kulma (suoraparvia)

Luku 7. Verkkoalgoritmit. 7.1 Määritelmiä

2. Seuraavassa kuvassa on verkon solmujen topologinen järjestys: x t v q z u s y w r. Kuva 1: Tehtävän 2 solmut järjestettynä topologisesti.

Selaimen kautta käytettävällä PaikkaOpin kartta-alustalla PaikkaOppi Mobiililla

Tietojenkäsittelytieteiden opetuksen kehittämisseminaari

Peilaus pisteen ja suoran suhteen Pythonin Turtle moduulilla

Teknillinen korkeakoulu T Tietojenkäsittelyopin ohjelmatyö. Testitapaukset - Koordinaattieditori

Kuva Suomen päätieverkko 1 Moottoritiet on merkitty karttaan vihreällä, muut valtatiet punaisella ja kantatiet keltaisella värillä.

Tietotekniikan perusopetuksen kehittäminen

5.3 Suoran ja toisen asteen käyrän yhteiset pisteet

Paikkatiedon opetuksen haasteita ja uusia ratkaisuja. PaikkaOppi-hanke. Helsinki Juha Riihelä.

Avaa ohjelma ja tarvittaessa Tiedosto -> Uusi kilpailutiedosto

Kompassi Suoritusten tarkistaminen ja tulosten julkaisu

Avaruuslävistäjää etsimässä

Computing Curricula raportin vertailu kolmeen suomalaiseen koulutusohjelmaan

Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla.

Tentissä ratkaistaan neljä ohjelmointitehtävää Javalla. Tehdään sähköisesti mikroluokan Windows-koneilla.

Geoinformatiikan maisteriohjelman (GIMP) toteutus Teknillisessä Korkeakoulussa. GIMP tiedotustilaisuus Ari Jolma, prof. (geoinformatiikka)

Paretoratkaisujen visualisointi

Karttapalvelun käyttöohjeet

Projektinhallintaa paikkatiedon avulla

Luku 8. Aluekyselyt. 8.1 Summataulukko

Ohje internetkarttapalveluun

Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun

YH1b: Office365 II, verkko-opiskelu

z 1+i (a) f (z) = 3z 4 5z 3 + 2z (b) f (z) = z 4z + 1 f (z) = 12z 3 15z 2 + 2

YH2: Office365 II, verkko-opiskelu

58131 Tietorakenteet (kevät 2009) Harjoitus 11, ratkaisuja (Topi Musto)

Kokemuksia paikkatietotaitojen verkko-opetuksesta

Casion fx-cg20 ylioppilaskirjoituksissa apuna

Käy vastaamassa kyselyyn kurssin pedanet-sivulla (TÄRKEÄ ensi vuotta ajatellen) Kurssin suorittaminen ja arviointi: vähintään 50 tehtävää tehtynä

Kiinteistö- ja rakennusalan digitalisaatio: BIM & GIS

Algoritmit 1. Luento 1 Ti Timo Männikkö

58131 Tietorakenteet ja algoritmit (kevät 2013) Kurssikoe 2, , vastauksia


OpenOffice.org Impress 3.1.0

2 Pistejoukko koordinaatistossa

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

5. Sijainnin määrittäminen olemassa olevalle liikuntapaikalle

Visuaalinen algoritmisimulaatio ja sen sovelluksia

Näkökulmia tietoyhteiskuntavalmiuksiin

Ponnahdusikkunoiden ja karttatekstien hallitseminen ArcGIS Online kartoissa

Aluksi Kahden muuttujan lineaarinen yhtälö

Matematiikan tukikurssi

Paikkatiedon opetus ja sähköiset ylioppilaskirjoitukset

massa vesi sokeri muu aine tuore luumu b 0,73 b 0,08 b = 0,28 a y kuivattu luumu a x 0,28 a y 0,08 = 0,28 0,08 = 3,5

58131 Tietorakenteet ja algoritmit (kevät 2016) Ensimmäinen välikoe, malliratkaisut

3 PAIKKATIETOHARJOITUSTA

Avainsanat: geometria, kolmio, ympyrä, pallo, trigonometria, kulma

Department of Mathematics, Hypermedia Laboratory Tampere University of Technology. Roolit Verkostoissa: HITS. Idea.

7.4 Sormenjälkitekniikka

Gimp 3. Polkutyökalu, vektori / rasteri, teksti, kierto, vääntö, perspektiivi, skaalaus (koon muuttaminen) jne.

811312A Tietorakenteet ja algoritmit, , Harjoitus 7, ratkaisu

Graafin 3-värittyvyyden tutkinta T Graafiteoria, projektityö (eksakti algoritmi), kevät 2005

13 Lyhimmät painotetut polut

Johnson, A Theoretician's Guide to the Experimental Analysis of Algorithms.

elearning Salpaus Elsa-tutuksi

Moodle-oppimisympäristö

a) Sievennä lauseke 1+x , kun x 0jax 1. b) Aseta luvut 2, 5 suuruusjärjestykseen ja perustele vastauksesi. 3 3 ja

811312A Tietorakenteet ja algoritmit Kertausta jälkiosasta

Kokoelmakilpailu Lomakeohje, Laji.fi-sarja 1. Rekisteröityminen

HELSINGIN YLIOPISTO TIEDEKASVATUS. helsinki.fi/tiedekasvatus v 1.2

Korma [Tiedoston otsikko] Ssähkno Maija VIPU-KÄYTTÄJÄN OHJE. SÄHKÖINEN TUKIHAKU 2014 Karttatoiminnot

Algoritmit 1. Luento 9 Ti Timo Männikkö

Robotteja liikenteessä

FOTONETTI BOOK CREATOR

etunimi, sukunimi ja opiskelijanumero ja näillä

Kompassi-digikokeen suoritusten arviointi ja tulosten julkaisu

Fronter Varauskalenteri-työkalu

802118P Lineaarialgebra I (4 op)

Algoritmit 2. Luento 6 To Timo Männikkö

KMTK-tietokannan yleistys ja monitasoprosessit (KMTK-Yleistys)

FORMATIIVINEN ARVIOINTI

Paikkatiedon hyödyntäminen vesiensuojeluyhdistyksissä

Matikkaa KA1-kurssilaisille, osa 3: suoran piirtäminen koordinaatistoon

Tilastokeskuksen postinumeroalueittaisen avoimen tiedon käyttäminen ArcGIS Onlinessa

ELM GROUP 04. Teemu Laakso Henrik Talarmo

Algoritmi on periaatteellisella tasolla seuraava:

Collector for ArcGIS. Ohje /

9.5. Turingin kone. Turingin koneen ohjeet. Turingin kone on järjestetty seitsikko

Datatähti 2019 loppu

y=-3x+2 y=2x-3 y=3x+2 x = = 6

Rekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä

Ohjeita PaikkaOpin oppimisympäristön käyttöönottoon

Kenguru 2018 Cadet (8. ja 9. luokka)

Transkribuksen pikaopas

Pauliina Munter/Suvi Junes Tampereen yliopisto / Tietohallinto Valitse muokkaustila päälle kurssialueen etusivun oikean yläkulman painikkeesta.

Diplomi-insinööri- ja arkkitehtikoulutuksen yhteisvalinta 2018 Insinöörivalinnan matematiikan koe, , Ratkaisut (Sarja A)

811312A Tietorakenteet ja algoritmit Kertausta jälkiosasta

IT-OSAAJA, TIETOJENKÄSITTELYN ERIKOISTUMISOPINNOT

MATEMATIIKKA JA TAIDE II

V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen

Vektorien pistetulo on aina reaaliluku. Esimerkiksi vektorien v = (3, 2, 0) ja w = (1, 2, 3) pistetulo on

10. Kerto- ja jakolaskuja

Suvi Junes Tietohallinto / Opetusteknologiapalvelut 2013

Transkriptio:

Sijaintialgoritmitehtävien automaattinen tarkastaminen Jussi Nikander Teknillinen korkeakoulu Ohjelmistotekniikan laboratorio jtn@cs.hut.fi Tiivistelmä Sijaintialgoritmit ja tietorakenteet ovat tärkeä osa kartografian ja geoinformatiikan perusopetusta. Opetusta ei kuiteinkaan ole tarjolla kuin harvoissa oppilaitoksissa, eikä aiheesta ole kattavaa oppikirjaa. Hajautunutta opetusta tukemaan on TKK:lla suunniteltu verkkopohjainen oppimisympäristö, jonka tärkeä osa on sijaintialgoritmien ja -tietorakenteiden automaattinen tarkastusjärjestelmä Spatial TRAKLA2. Tässä paperissa esitellään Spatial TRAKLA2:n periaate, aiottu käyttötarkoitus sekä käsitellään joitain toteutukseen liittyviä haasteita. 1 Johdanto Sijaintialgoritmeilla tarkoitetaan 2- tai 3- ulotteisten paikkatietojen käsittelyyn tarkoitettuja algoritmeja. Ne ovat tärkeä osa kartografian ja geoinformatiikan tietoteknisissä sovelluksissa ja tämän takia keskeinen osa alueen perusopetusta. Sijaintialgoritmien opetusta ei kuitenkaan ole tarjolla monessakaan oppilaitoksessa, eikä kunnollista opetusmateriaalia ole olemassa. Aiheesta on toki kirjoitettu useita oppikirjoja, kuten [2, 7, 8], mutta yksikään ei kata kaikkia tarvittavia perustietoja. Alan hajautuneisuus ja opetusmateriaalin vähäisyys on herättänyt Teknillisessä korkeakoulussa kiinnostuksen verkkopohjaisen oppimisympäristön rakentamiseen. Ympäristön tarkoitus on toimia keskitettynä resurssina, jota voidaan käyttää hajallaan olevan opiskelijaaineksen opetuksessa. Tärkeä osa järjestelmää ovat automaattisesti tarkastettavat tehtävät, jotka toteutetaan Ohjelmistotekniikan laboratoriossa kehitetyn TRAKLA2-oppimisympäristön [5] avulla. Oppimisympäristöä rakennetaan TKK:n Ohjelmistotekniikan laboratorion sekä Kartografian ja geoinformatiikan laboratorion yhteistyönä. 2 TRAKLA2-järjestelmä TRAKLA2 on tietorakenteiden ja algoritmien automaattinen tarkastusjärjestelmä, joka otettiin TKK:lla ensimmäisen kerran testikäyttöön kevään 2003 tietorakenteiden ja algoritmien peruskurssilla. Se korvasi kokonaan kurssilla käytetyn vanhan TRAKLA-järjestelmän [3] keväällä 2004. Järjestelmä on tämän jälkeen otettu käyttöön muun muassa Turun yliopis-

2 Sijaintialgoritmitehtävien automaattinen tarkastaminen tossa, Tampereen teknillisessä yliopistossa ja Åbo akademissa. Opiskelijat ovat olleet tyytyväisiä järjestelmään ja kokevat sen auttavan opiskelua [4]. TRAKLA2- järjestelmään kuuluu sovelma, jonka avulla tehtäviä ratkaistaan, sekä verkkopohjainen ympäristö, joka huolehtii opiskelijoiden autentikoinnista, pistekirjanpidosta ja muista kurssin ylläpitoon tarvittavista toiminnoista. Verkkoympäristö on geneerinen ja sitä voi käyttää minkä tahansa kurssin yhteydessä. TRAKLA2-tehtävät ovat visuaalisia algoritmisimulaatiotehtäviä [5], joita ratkotaan ratkotaan WWW-sivuun upotetun sovelman avulla. Sovelma antaa käyttäjälle joukon tietorakenteita, joihin hänen on tehtävä muutoksia tietyn algoritmin mukaisesti. Tietorakenteet näytetään graafisina visualisaatioina ja käyttäjä muokkaa niitä manipuloimalla annettuja symboleja. Järjestelmä peilaa visualisaatioihin tehdyt muutokset vastaaviin tietorakenteisiin, joten käyttäjä muokkaa oikeita tietorakenteita visualisaation kautta. Kuvassa 1 näkyy tyypillinen TRAKLA2- tehtävä. Ylhäällä on ohjauspaneeli josta käyttäjä voi siirtyä tuottamassaan toimintosarjassa eteen- ja taaksepäin, alustaa tehtävän uudelleen, pyytää arviointia tai katsoa tehtävän mallivastauksen. Ohjauspaneelin alla on tietorakenteiden visualisaatiot. Opiskelija voi pyytää tehtävän arviointia tai sen mallivastausta milloin tahansa. Arvioinnista annetaan palautteena muun muassa oikeiden operaatioiden lukumäärä sekä tehtävästä annettu pistemäärä. Mallivastaus on graafinen algoritmianimaatio, joka näyttää miten oikea algoritmi muokkaa annettuja tietorakenteita. Mallivastauksen katsomisen jälkeen ei tehtävään voi enään pyytää arviointia, vaan se täytyy alustaa uudelleen. Samoin tehtävä täytyy alustaa uudelleen arvioinnin jälkeen. Alustettaessa tehtävään arvotaan uudet alkuarvot. Tehtävien tarkastaminen perustuu mallivastauksen ja opiskelijan tuottaman toimintosarjan vertailuun. Tarkastettaessa tehtävää opiskelijan toimintosarjan tiloja verrataan mallivastauksen tiloihin. Koska käyttäjän tekemät muutokset visualisaatioon heijastuvat vastaaviin tietorakenteisiin, voidaan käyttäjän tekemän toimintosarjan oikeellisuus tarkistaa vertaamalla sitä algoritmin tekemiin operaatioihin. Koska järjestelmä pystyy tallentamaan sekä käyttäjän että algoritmin tuottaman toimintosarjan, voidaan molemmista tehdä algoritmianimaatio, jossa tehdyt muutokset näytetään askel askeleelta. 3 Työn päämäärä ja haasteet TRAKLA2-järjestelmää on käytetty jo useita vuosia menestyksekkäästi tietorakenteiden ja algoritmien peruskursseilla. Alusta lähtien on kuitenkin ollut tarkoitus laajentaa järjestelmää kattamaan myös muita aihealueita. Sijaintialgoritmien laajennus, työnimeltään Spatial TRAKLA2, on ensimmäinen algoritmiikan erikoisalue, joka järjestelmään lisätään. Spatial TRAKLA2 otetaan keväällä 2007 käyttöön Kartografian ja geinformatiikan laboratorion kurssilla Maa- 123.340 Spatial Data Algorithms 1. Kurssi on suunnattu kartografian ja geoinformatiikan kolmannen vuoden opiskelijoille ja sen esitietona on geoinformatiikan, tietorakenteiden ja algoritmien sekä ohjelmoinnin perusteiden tuntemus. Kurssin opiskelijoilta vaaditaan siis vain kaksi ohjelmointiin ja algoritmiikkaan liittyvää opintojaksoa, joten heiltä ei voi 1 http://www.tkk.fi/units/cartography/courses/maa-123340/

Nikander 3 Kuva 1: TRAKLA2-sovelma, jossa puun läpikäyntitehtävä olettaa samanlaista tietoteknistä osaamista kuin kolmannen vuoden tietotekniikan opiskelijoilta. Esimerkiksi opiskelijoiden valmiudet seurata ja tulkita pseudokoodia eivät välttämättä ole samalla tasolla kuin tietotekniikan opiskelijoilla. Opetuksessa on tärkeää ottaa opiskelijoiden tausta huomioon. Koska Spatial TRAKLA2 on suunnattu ensisijaisesti geoinformatiikan opiskelijoille, on esimerkiksi paikkatietoa käsiteltäessä syytä käyttää konseptuaalisia visualisaatioita, kuten erilaisia karttanäkymiä. Tällaiset näkymät ovat geinformatiikan opiskelijoille keskeinen ymmärtämisen väline. He ovat tottuneet käyttämään karttaesityksiä ja algoritmien havainnollistaminen kuvia piirtämällä on heille luonnollinen oppimismuoto. Lisäksi useat sijaintitietorakenteet sisältävät tietoa, jolle on olemassa luonnollinen visualisaatio kaavakuvana tai karttana. Esimerkiksi korkeustieto on luonnollista näyttää korkeuskäyrien tai värikoodauksen avulla, kaupunkien sijainnit karttanäkymässä ja niin edelleen. Monien sijaintitietorakenteiden vakiintunut visualisaatio ei suoraan ota kantaa siihen, miten rakenne on toteutettu. Esimerkiksi Voronoi-diagrammit [1] visualisoidaan yleensä polygoniverkkojen avulla riippumatta siitä, mitä tietorakennetta käyttäen diagrammi on tallennettu. Monissa oppikirjoissa sijaintialgoritmiongelmien ratkaisut kuvataankin vain piirroksin, ja ratkaisun kuvauksesta ei saa käsitystä algoritmin tarkasta toiminnasta. Näitä kirjallisuudesta tuttuja visualisaatioita tulisi käyttää myös TRAKLA2- tehtävissä, koska niiden avulla käyttäjän on helppo yhdistää tehtävä johonkin tiettyyn aihealueeseen. Sijaintialgoritmitehtävien tekemiseen ei siis tulisi tarvita algoritmin yksityiskohtien tuntemusta. Tehtävien tulisi kuvata algoritmit korkealla käsitetasolla käyttäen hyväksi geoinformaatikoille jo valmiiksi tuttuja visualisaatioita. Tästä huolimatta tehtävien tulisi testata algoritmin keskeisen toiminnallisuuden sekä perusidean hallintaa. Ratkaistakseen tehtävän opiskelijan tulisi pystyä osoittamaan, että hän tietää mitä ongelmaa algoritmi ratkaisee, ja miten algoritmin suoritus etenee. Korkean käsitetason visualisaatioita käytettäessä on lisäksi pidettävä huolta siitä, että ne eivät trivialisoi tehtävää. Visualisaatioon on helppo sisällyttää suuria määriä tietoa, mitä itse algoritmilla ei ole

4 Sijaintialgoritmitehtävien automaattinen tarkastaminen Queue Draw circle Calculate angle Angle size: XXX Kuva 2: Kaavakuva Delaunay-kolmiointitehtävän sovelmasta käytettävissään. Tällöin opiskelija esimerkiksi pystyy tekemään algoritmille mahdottomia päättelyjä, jolloin tehtävä on helpompi ratkaista, eikä enään testaa simuloitavan algoritmin toiminnan osaamista. TRAKLA2-järjestelmä ei sisällä yhtään sijaintialgoritmeja silmällä pitäen tehtyä tietorakennetta tai visualisaatiota, eivätkä järjestelmän valmiit visualisaatiot kykene ottamaan paikkatietoa huomioon. Esimerkiksi graafeille ei ole olemassa visualisaatiota, jossa solmut asetettaisiin tiettyihin koordinaatteihin. Täten esimerkiksi kaupunkien välisiä etäisyyksiä kuvaavaa verkkoa ei voi piirtää siten, että solmujen paikat ruudulla vastaisivat kaupunkien paikkoja maastossa. Järjestelmää on siis laajennettava ja siihen on tuotava niin uusia visualisaatiota kuin tietorakenteitakin ennen kuin sijaintialgoritmitehtäviä voi toteuttaa. Lisäksi on mietittävä tarkkaan minkälaisia visualisaatioita toteutettavissa tehtävissä käytetään, jotta tehtävät eivät trivialisoidu. Tehtävien tarkastamista varten ei tarvita muutoksia. Nykyinen opiskelijan tekemän simulaatiosekvenssin ja mallivastauksen vertailuun perustuva tarkastus on geneerinen ja kattaa myös paikkatietoalgoritmien tarkastamisen. 4 Esimerkki: Delaunaykolmionti TRAKLA2-järjestelmän kehityksessä ei olla vielä päästy siihen vaiheeseen, että yhtään sijaintialgoritmitehtävää oltaisiin toteutettu. Seitsemästätoista tehtävästä on käsikirjoitus, jonka avulla ne voidaan toteuttaa. Käsikirjoituksia on analysoitu, ja niistä on löydetty useita uusia tietorakenteita ja visualisaatiota, jotka järjestelmään on lisättävä. Seuraava esimerkki hahmottaa uusien tehtävien implementaation haasteita. Kuvassa 2 näkyy kaavakuva tehtävästä, jossa käyttäjän täytyy muodostaa pistejoukolle Delaunay-kolmionti (eräs sijaintitiedon esitysmuoto) käyttäen expandingwave -tekniikkaa [6]. Kuvassa ylimpänä on kolmioitava pistejoukko. Mustat pisteet kuvaavat joukon pisteitä ja ympyröidyt, alueen reunalla olevat pisteet algoritmin tarvitsemia apupisteitä. Pistejoukon alla on jono, johon käyttäjä lisää algoritmin löytämät uudet pisteet ja josta hän ottaa seuraavan käsiteltävän pisteen. Jonon vieressä olevat pyöristetyt suorakulmiot kuvaavat toimintonappeja, joilla käyttäjä voi valita haluamansa toiminnon. Alem-

Nikander 5 man painonapin (Calculate Angle) vieressä on tekstikenttä, jossa näkyy kyseisellä toiminnolla valitun kulman suuruus. Pistejoukon vasemmassa alareunassa on joukko pisteitä, joiden välille on piirretty viivoja. Nämä pisteet on jo käsitelty ja järjestelmä on piirtänyt vastaavat kolmiot. Vasemmassa yläkulmassa oleva ympyrä ja kolmen pisteen kautta piirretty katkoviiva kuvaavat tehtävän sen hetkistä vaihetta. Käyttäjä on ottanut jonosta tukipisteen (reunalla keskellä oleva apupiste) ja ruvennut etsimään sen naapureita. Mahdolliset naapuripisteet löydetään piirtämällä ympyrä, jonka kaarella on tukipiste sekä tunnettu naapuripiste - tässä tapauksessa vasemmassa yläkulmassa oleva apupiste - ja tarkastelemalla ympyrän sisällä olevia muita pisteitä. Jos pisteitä on vain yksi, valitaan se, ja jos niitä on useampia niin valitaan piste, jonka muodostama kulma on pienin. Muussa tapauksessa piirretään uusi, suurempi ympyrä, kunnes löytyy uusi piste tai saavutetaan ennaltamäärätty suurin mahdollinen ympyrän koko. Katkoviiva kuvaa ympyrän sisäpisteen kulmaa. Tehtävä ratkaistaan aloittamalla pistejoukon käsittely vasemmassa alakulmassa olevasta pisteestä. Käyttäjä etsii sen vieruspisteet ja lisää ne jonoon. Tämän jälkeen hän ottaa jonosta ensimmäisen pisteen ja etsii sen uudet naapurit lisäten ne jonoon. Tehtävän tekeminen loppuu, kun jono on tyhjä, jolloin alueelle on muodostunut Delaunay-kolmiointi. Tehtävän tekemisessä käyttäjällä on apunaan mahdollisuus piirtää ympyrä kahden valitun pisteen välille, sekä mitata kolmen pisteen muodostaman kulman suuruus. Tehtävässä tarvitaan useita TRAKLA2:sta tällä hetkellä puuttuvia ominaisuuksia. Ensinnäkin järjestelmässä ei tällä hetkellä ole visualisaatiota, jonka avulla voitaisiin piirtää joukko kaksiulotteiselle alueelle jakautuneita pisteitä. Samoin ympyröiden piirtäminen annetun tietorakenteen päälle tai kulmien visualisointi kaavakuvassa esitetyllä tavalla ei tällä hetkellä ole järjestelmässä mahdollista. Pistejoukko voidaan tarvittaessa esittää valmiilla tietorakenteilla, mutta rakennetta, joka pystyisi käsittelemään sekä yksittäisiä geometrisen alueen pisteitä että niistä muodostuvaa Delaunay-kolmiointia ei järjestelmässä ole. 5 Yhteenveto Spatial TRAKLA2 on sijaintitietorakenteiden ja algoritmien laajennus laajassa käytössä olevaan TRAKLA2- järjestelmään. Sitä on tarkoitus käyttää TKK:ssa osana kartografian ja geoinformatiikan opetusta. Laajennuksen käyttäjäkunta, aihealueen hyvin graafinen luonne, sekä korkean käsitetason visualisointien luomat ongelmat tekevät toteutuksesta haastavan. Tällä hetkellä sijaintitehtävistä on vasta tehty käsikirjoitukset, joiden perusteella ne voidaan implementoida. Tehtävät toteutetaan kevään ja kesän 2006 aikana, jolloin syksyllä niitä voidaan testata ja mahdolliset virheet korjata. Keväällä 2007 tehtävät otetaan käyttöön sijaintialgoritmikurssilla. Viitteet [1] F. Aurenhammer. Voronoi diagrams - a survey of a fundamental geometric data structure. ACM Comput. Surv., 23(3):345 405, 1991. [2] M. de Berg, M. V. Kreveld, M. Overmars, and O. Schwarzkopf. Computational Geometry: Algorithms and Applications. Springer, 2000.

6 Sijaintialgoritmitehtävien automaattinen tarkastaminen [3] J. Hyvönen and L. Malmi. TRAKLA a system for teaching algorithms using email and a graphical editor. In Proceedings of HYPERMEDIA in Vaasa, pages 141 147, 1993. [4] M.-J. Laakso, T. Salakoski, L. Grandell, X. Qiu, A. Korhonen, and L. Malmi. Multi-perspective study of novice learners adopting the visual algorithm simulation exercise system TRAKLA2. Informatics in Education, 4(1):49 68, 2005. [5] L. Malmi, V. Karavirta, A. Korhonen, J. Nikander, O. Seppälä, and P. Silvasti. Visual algorithm simulation exercise system with automatic assessment: TRAKLA2. Informatics in Education, 3(2):267 288, 2004. [6] M. J. McCullagh and C. G. Ross. Delaunay triangulation of a random data set for isarithmic mapping. The Cartographic Journal, 17(2), December 1980. [7] S. Wise. GIS Basics. Taylor & Francis, 2002. [8] M. Worboys and M. Duckham. GIS: A Computing Perspective. Taylor & Francis, 2004.