Digital spatial library is an electronic archive of geographic imagery data such as multi¡¾layer map images. The real¡¾time or mobile imaging application provides user with view of geographic map in the real time. The map image is retrieved from a remote server via network or served from the data base located on the user¡Çs mobile device. The main problem in digital spatial libraries is the huge storage size of the images, which affects equally storage and transmission performance. It has been shown that the best compression results for map images can be achieved if the images are decomposed into binary seantic layers, which are consequently compressed by the algorithm designed to handle binary data (e.g. JBIG). There is no problem if semantic layers forming the map image are originally available. However, when the map exists only as a color raster image, the semantic layers can be obtained only through the separation process. The separation leads to appearance of severe artifacts in places when one layer overlaps another. These artifacts affect statistical properties and consistency of the layers and result in degraded visual quality and compresson performance. In the current work, we design the technique to restore semantic layers of the map images by removing or suppressing the artifacts caused by layer eparation process. We restrict our technique in such a way that when the restored layers will be again combined into a color map image, it will be identical to the original. Because of possible applications in the mobile devices with restricted computational and memory resource, we must also restrict ourselves with the complexity of the algorithms. Therefore we chose Mathematical Morphology as the base tool for the design of restoration technique. The designed restoration technique provides better performance for the compression of reconstructed layers instead of corruptedones with popular lossless compression algorithms (ITU Group 4, PNG, and JBIG). Besides that, reconstructed layers have good visual appearance, which is especially important in applications where some layers must be removed (or in opposite, extracted) from the map image.
Väriä käsitellään usein kolmella arvolla, esimerkiksi RGB-arvoilla. Värin esittäminen tällaisenaan ei kuitenkaan aina riitä, sillä on olemassa tilanteita, missä ihminen ei erota kahden eri kohteen väriä toisistaan tietyssä valaistuksessa. Valaistusta muutettaessa väriero voidaan kuitenkin havaita. Lisäksi tällaiset esitykset ovat laiteriippuvaisia ja hankalia käsitellä valaistuksen muuttuessa. Väristä voidaan fysikaalisesti mitata värispektri, eli valon intensiteetti aallonpituuden funktiona. Värispektrit vievät kuitenkin runsaasti levytilaa ja niiden tarkka mittaaminen on usein hidasta.Tässä tutkielmassa etsitään optimaalinen näytteenotto värispektreille. Tasavälisessä näytteenotossa etsitään näytteenottoväli tarkastelemalla värispektrin energiaa eri taajuuksilla sekä tavallisilla virhemitoilla. Tutkielmassa keskitytään myös Lagrangen interpolointiin perustuvaan menetelmään, eri integrointimenetelmien tarkkuuteen sekä eri tapoihin laskea värispektreistä tristimulusarvot. Lisäksi tutustutaan värispektrien kanavien välisiin korrelaatioihin sekä lasketaan pääkomponenttianalyysin avulla tarvittava kantavektorien määrä, joka esittää värispektrisarjan kelvollisesti pienemmällä määrällä parametreja. Uutena menetelmänä esitetään epätasavälinen näytteenotto, mikä valitsee värispektrien kanavat parametrina annettavan painofunktion mukaisesti.
Tutkielma koostuu teoreettisen osan lisäksi kokeellisesta osasta, jossa vertaillaan eri menetelmien avulla värispektrien virheellisyyttä näytteenoton muuttuessa. Tutkielmassa esitetään optimaalinen tasavälinen näytteenotto eri spektrisarjoille taajuustason mittauksen ja virheanalyysin perusteella. Lisäksi epätasavälisessä näytteenotossa todetaan, että opponenttiväriteoriaan ja värispektrien kanavien väliseen korrelaatioon perustuvien painofunktioiden avulla voidaan tietyille testisarjoille saavuttaa pienempi virhe tasaväliseen näytteenottoon nähden.
ACM-luokat (ACM Computing Classification System, 1998 version): G.1.1 - G.1.4, G.1.9.
Avainsanat: energia, integrointi, interpolointi, korrelaatio, näytteenotto, painofunktio, pääkomponenttianalyysi, taajuus, tristimulusarvot, virheanalyysi, väri, värispektri.
Algorithm visualization is an efficient way to teach programming. Several different visualization techniques have been developed in the past decades. The Concretization Environment Framework, CEF, combines algorithm visualization with concrete objects (e.g. Lego Mindstorms robots). CELM, Concretization Environment for Lego Mindstorms is an application of this framework. By using the framework, the user can turn the mental model the user has into a concrete one. User feedback on the framework and its application has confirmed the functionality of the concept and the usefulness of the approach.ACM-classification (ACM Computing Classification System, 1998 version): K.3.2 [Computer and Education]: Computer and Information Science Education - Computer Science Education; I.6.8 [Simulation and Modeling]: Types of Simulation - Distributed, Parallel
Keywords: algorithm, concretization, robotics, role-based, visualization
Digital Image Archive Systems are become well known nowadays. It is widely used in such industrial applications as Medicine, History or Building Industry. Image Archive System is a database which allows to find and retrieve necessary Digital Image and representing it using different devices. In view of Spectral Image research, necessity of Spectral Image Archive System has been appeared.One of the main problems of this system is large amount of the memory, which is allocated for Spectral Image storage. Therefore, there is a necessity of compression method for reduction of amount of saved information.
One such method is proposed in the current thesis. The method is based on Principal Component Analysis (PCA). PCA is a transformation that reduces dimension of the input vectors. Additionally, the method was improved by means of applying color segmentation (clustering) for the more effective PCA-transformation working. K-means method was introduced for the clustering and then clustering method was adopted for PCA specially. All methods were tested with different parameters. As the result of tests tables and diagrams were obtained. It was proved that PCA is appropriate for spectral image compression. Combination of clustering of colors, manipulating spectral, * * * b a L and * *b a color, are presented. Furthermore, principal new clustering method was proposed in this master’s thesis for PCA application improvement.
Key Words: Spectral Image, Compression, Archive System, Principal Component Analysis, Clustering Methods, k-means, Compression Ratio, Color Difference E . , Root Mean Square Error.
Jokaisessa menestyvässä ohjelmistotalossa täytyy olla käytössä joku prosessi ohjelmistojen tuottamiseksi. Erilaisia prosessimalleja on runsaasti erilaisiin tarpeisiin, erilaisille tiimeille ja erilaisiin projekteihin. XP-ohjelmointi on kevyt ja tehokas prosessi pienille tiimeille ja pieniin projekteihin. Se lukeutuu ns. notkeisiin prosesseihin. RUPprosessi on muodollisempi ja tarkemmin määritelty prosessi. Tässä tutkielmassa esitellään nämä kaksi ohjelmistotuotantoprosessia, selvitetään minkälaisiin olosuhteisiin ne soveltuvat sekä esitetään yhtäläisyyksiä ja eroja niiden välillä.ACM-luokat (ACM Computing Classification System, 1998 version): D.2, K.6.3
Avainsanat: XP-ohjelmointi, RUP-prosessi, ohjelmistotuotantoprosessi
Hajautettujen järjestelmien rakentaminen on pääsääntöisesti kalliimpaa ja monimutkaisempaa kuin keskitettyjen järjestelmien. Merkittävänä syynä tähän ovat hajautetuille järjestelmille ominaiset ja niissä usein toistuvat ongelmat. CORBA-standardi määrittelee hajautettujen järjestelmien toteutusalustan, joka sisältää tällaisten ongelmien ratkaisemiseen tarkoitettua toiminnallisuutta. Tässä tutkielmassa tutustutaan hajautettuihin järjestelmiin ja CORBA-standardiin, sekä tutkitaan CORBA:n käyttökelpoisuutta hajautettujen järjestelmien toteutusalustana. Tutkiminen tehdään jakamalla hajautetuille järjestelmille ominaiset ongelmat kuuteen eri ongelma-alueeseen ja tarkastelemalla CORBA:n näihin ongelma-alueisiin tarjoamia teknisiä ratkaisuja. Tutkimus keskittyy itse standardiin, ei sen toteutuksiin. Tämän vuoksi esimerkiksi tehokkuutta tutkitaan vain teoreettisella tasolla. Tutkimus osoitti CORBA:n olevan erittäin käyttökelpoinen toteutusalustaksi, sillä se tarjoaa paljon valmiita ratkaisuja hajautettujen järjestelmien keskeisiin ongelma-alueisiin. Erityisen kiittävästi standardissa on ratkaistu yhteensopivuusongelmat. Tietoturvaan liittyvissä ratkaisuissa sen sijaan on puutteita.ACM-luokat (ACM Computing Classification System, 1998): C.1.4, C.2.4, D.4.7
Avainsanat: Hajautetut järjestelmät, CORBA
Käytettävyyden arvioinnin avulla on mahdollista arvioida ja parantaa järjestelmien käytettävyysominaisuuksia. Tämän tutkimuksen tavoitteena on helpottaa eri käytettävyyden arviointimenetelmien valintaa sekä ymmärtää ihmisen ja tietokoneen vuorovaikutuksen, käyttäjäkeskeisen suunnittelun sekä käytettävyyssuunnittelun perusteita. Tutkielma käsittelee myös järjestelmän todellisilla käyttäjillä suoritettua käytettävyystestausta teorian sekä tapaustutkimuksen avulla.Suoritetusta tutkimuksesta ilmeni, että käytettävyystestaus on hyvä menetelmä käytettävyyden arvioinnin suorittamiseen. Käytettävyyslaboratoriossa suoritetun käytettävyystestauksen avulla on mahdollista löytää järjestelmän käytettävyysongelmat sekä kartoittaa järjestelmän hyvät ominaisuudet.
ACM-luokat (ACM Computing Classification System, 1998 version): H.5.2
Avainsanat: Käytettävyys, käytettävyystutkimus, käytettävyystestaus, käytettävyyden arviointi, käytettävyystesti.
Since the invention of computer, people have been utilising its fast computation ability, and nowadays, computer is far better than human in many routine tasks. However, there are the fields, such as computer chess, in which computer is not superior. Best human chess players still rival best computer chess programs successfully. This might happen due to the fact that chess includes something beyond pure calculations, which is beyond the capabilities of a computer, but what is quite normal for human. As an alternative, this might happen because of inaccuracy how computers estimate the goodness of a given chess position. In this thesis, an effort on the second assumption is made by means of using the advantages of genetic algorithms, which are very well known as an excellent tool for solving optimisation problems.In this thesis, the main components of a computer chess program are first reviewed. These include the well-known tree search and alpha-beta pruning. Concepts such as quiescence search, null move, and table bases are also discussed. Basic introduction to genetic algorithms is given. An own evaluation function of a chess position is constructed. A genetic algorithm is used for optimising the values of the parameters. The system is implemented and tested using an own chess engine, and the results are presented.
Työssä on kehitetty tekniikka, jonka avulla voidaan toteuttaa reaaliaikainen värikalibrointi ccd-kameralle ja näyttölaitteelle. Reaaliaikaisuudella tarkoitetaan sitä, että suurin viive ruutujen välillä videokuvassa on 30 ms. Lisäksi algoritmien toteutus on sellainen, että niitä voidaan käyttää monissa erilaisissa laitteistoissa. Tutkielman pääpainona on värikalibrointialgoritmien optimoiminen. Algoritmien optimoinnissa käytetään modernien x86-arkkitehtuurin prosessorien multimediaominaisuuksia, jotka soveltuvat hyvin väritutkimuksen sovelluksiin. Lisäksi tutkielmassa esitellään reaaliaikaisen kuvausjärjestelmän Linux-käyttöjärjestelmässä toimiva prototyyppi.ACM-luokat (ACM Computing Classification System, 1998 version): B.8, D.4.8,I.4
Avainsanat: kuvanotto, reaaliaikaisuus, digitaalinen, värikalibrointi, MMX, optimointi
Opastusjärjestelmä on tiettyä sovellusta varten tehty ja sen käyttöä helpottamaan tarkoitettu ohjelmisto, joka tarjoaa sovelluksen käyttäjälle käytönaikaista opastusta kyseisen sovelluksen käytössä. Tällaiset suoraohjeet ovat valtaosin korvanneet perinteiset painetut käyttöohjeet nykyaikaisissa sovelluksissa. Kaikkia tämä siirtymä ei kuitenkaan miellytä - tutkimusten mukaan valtaosa käyttäjistä suosii painettua käyttöohjetta opastusjärjestelmään nähden ja monilla on vaikeuksia opastusjärjestelmien käytössä. Tässä pro gradu -tutkielmassa perehdytään olemassa oleviin opastusjärjestelmiin, niissä havaittuihin ongelmiin sekä tutustutaan opastusjärjestelmän suunnitteluun ja rakentamiseen liittyviin seikkoihin niin kirjallisuuden pohjalta kuin myös käytännön tasolla.ACM-luokat (ACM Computing Classification System, 1998 version): H.5.2
Avainsanat: opastusjärjestelmä, suoraohje
The LCD of the Pocket PC COMPAQ iPAQ H3900 was characterized by standard methods that are normally applied to CRT displays. The primaries were measured, additive properties were checked, and the RGB-to-XYZ transformation and the nonlinear transfer function for each primary color channel were determined.Different color reproduction methods were compared by psychophysical tests, e.g. by applying the Paired Comparison method.
Pro gradu -tutkielmassani esittelen toiminnallisen ytimen rakenteen sovellukselle, joka sallii käyttäjän määrätä vapaasti sovelluksen käyttöliittymän mieleisekseen. Käyttäjä määrittelee sovelluksen käyttöliittymän merkkauskielen ja ohjelmointikielen avulla. Merkkauskielestä viitataan ohjelmointikielellä tehtyihin määrittelyihin. Ohjelmointikielestä viitataan merkkauskielellä määriteltyihin komponentteihin. Tämän vuoksi kielet tulee kehittää tukemaan toisiaan.Käyttäjä määrittelee sovelluksen käyttöliittymän rakenteen ja ulkoasun merkkauskielen avulla. Merkkauskieli koostuu merkitsimistä, joiden avulla käyttäjä määrittelee käyttöliittymässä esiintyvien komponenttien ominaisuudet. Esittelen käyttöliittymien määrittelyyn kehittelemäni merkkauskielen, jolla voidaan määritellä yksinkertaisia käyttöliittymiä. Merkkauskieli sisältää yleisimmin käytetyt käyttöliittymän rakenteet.
Käyttäjä määrittelee sovelluksen käyttöliittymän toiminnallisuuden ohjelmointikielen avulla. Keskeisessä asemassa on ajatus, jossa merkkauskielellä määriteltyyn käyttöliittymän komponenttiin kytketään toiminnallisuutta. Kytkennät esitetään aliohjelmakutsujen tasolla. Komponentti kytketään joko toiminnallisen ytimen operaatioon tai käyttäjän määrittelemään komentojonoon. Komentojonot voivat kutsua käyttöliittymäkirjaston tai toiminnallisen ytimen palveluita.
Havainnollistan ohjelman suorituksen etenemistä sovelluksessa, jossa on käyttäjän määrittelemä käyttöliittymä. Suorituksen etenemisen tarkastelu koostuu alustustoimenpiteistä ja ajonaikaisten syötteiden käsittelystä. Syötteiden käsittelyssä kantavana ajatuksena on ohjata ohjelman suoritus toiminnallisen ytimen operaatioihin tai käyttäjän määrittelemiin komentojonoihin käyttöliittymän sisäisen esitystavan perusteella. Alustustoimenpiteissä käsitellään merkkauskieliset ja ohjelmointikieliset määrittelyt, joiden pohjalta rakennetaan tarvittavat tietorakenteet syötteiden käsittelyä varten.
Avainsanat: Käyttöliittymä, sisäinen esitystapa, toiminnallinen ydin
Tutkimuksen kohteena on sisältötuotanto ja erityisesti Virtuaaliammattikorkeakoulun sisältötuotannon malli (yhteisvaikutteinen arvosykli). Keväällä 2000 ammattikorkeakoulujen rehtorineuvosto ARENE ry päätti Virtuaaliammattikorkeakoulun (VirtuaaliAMK) perustamisesta ja varsinaisen käytännön toimintansa VirtuaaliAMK aloitti 1.11.2000, jolloin perustettiin kehittämisyksikkö. Sisältötuotannon malli syntyi ja kehittyi tässä tutkimuksessa esitettävän mallin mukaiseksi VirtuaaliAMK:n sisältötuotantohankkeiden (2001–2003) aikana.Nykyisin ei ole enää lainkaan itsestään selvää, millaisia sisältöjä ja miten niitä tietoverkkoihin tuotetaan. Niinpä tässä tutkimuksessa pyritäänkin kuvaamaan yhteisvaikutteisen arvosyklin mukaista toimintaa ja siten osoittamaan systemaattisen toiminnan käyttökelpoisuus sähköisiin jakeluvälineisiin sisältöjä tuotettaessa. Tarkoituksena ei ole kertoa, miten asiat pitäisi tehdä, vaan tarkastella mallia kahdesta näkökulmasta: tuotantorenkaiden toiminnan kautta ja opintokokonaisuuksien tuottamisen näkökulmasta. Selittämällä ja tulkitsemalla näitä edellä mainittuja keskeisiä käsitteitä saadaan tietoa sisältötuotannon mallista käytännössä.
Tutkimuksen lähestymistapa on hermeneuttinen ja tulosten analyysitekniikkana on käytetty tilastollisia menetelmiä sekä hermeneutiikalle ominaista tulkintaa. Aineisto kerättiin sähköisillä lomakkeilla 12/2003 ja 1/2004. Koehenkilöinä olivat VirtuaaliAMK:n Itä-Suomen hankkeen tuotantorenkaiden toimijat (N=103). Tulosten perusteella voidaan sanoa, että sisältötuotantotoiminta edellyttää hyvää ilmapiiriä, kykyä yhteistyöhön, osaavaa koordinaattoria ja ajankäytön suunnittelua, riittäviä teknisiä taitoja sekä taustaorganisaation tukea. Näyttää myös siltä, että vaikka toiminta ei kaikilta osilta toteutunut yksilötasolla hyvin tai kaikki eivät olleet yhtä innokkaasti mukana, niin kuitenkin kokonaisuuteen oltiin tyytyväisiä.
ACM-luokka (ACM Computing Classification System, 1998 version): K.3
Avainsanat: sisältötuotanto, tuotantorengas, opintokokonaisuus, koulutustuote, yhteisvaikutteinen arvosykli
Perusväreiksi luokiteltavia värejä on värinnimeämiskokeiden perusteella havaittu olevan yksitoista. Nämä yleisinhimillisesti samanlaisina koetut värit ovat punainen, vihreä, sininen, keltainen, ruskea, vaaleanpunainen, purppura, oranssi, valkoinen, musta ja harmaa. Punainen on perusväreistä keskeisin, ja sen ympärille väriavaruuteen asettuvat ruskea, vaaleanpunainen, purppura ja oranssi. Sininen ja vihreä puolestaan esiintyvät väriavaruudessa suurina, jakamattomina alueina.Ihmisen värihavaintojärjestelmä on rakentunut perusvärien ympärille ja värimuisti toimii perusväriluokkien kautta. Musta, valkoinen ja harmaa havaitaan oman akromaattisen havaintokanavansa kautta ja muut värit havaitaan puna-vihreän ja sinikeltaisen vastaväriparin kombinaatioiden avulla. Perusväriluokkiin kuuluvat värinäytteet nimetään nopeammin, johdonmukaisemmin ja yksimielisemmin kuin muut värit. Lähellä väriluokan keskusta olevat värit muistetaan parhaiten, ja luokan reunoilla olevat värit siirtyvät muistissa kohti luokan keskusta eli keskusalkiota. Keskusalkio on kyseisen väriluokan paras edustaja.
Tässä tutkielmassa selvitetään yleisten perusväriluokkien teoriaa ja sen tutkimiseksi järjestettyjä värinnimeämiskokeita. Värinnimeämiskokeissa löydettyjä väriluokkien keskusalkioita verrataan itseorganisoivalla kartalla ja ei-negatiivisella matriisihajotelmalla laskettuihin keskusalkioihin. Havaitaan, että laskennallisten menetelmien tuottamat keskusalkiot sijoittuvat väriavaruuteen värinnimeämiskokeiden väriluokkien keskusalkioita tasaisemmin. Ensisijaiset kromaattiset perusvärit eli punainen, vihreä, sininen ja keltainen asettuvat samoille alueille värinnimeämiskokeiden vastaavien väriluokkien kanssa, mutta muiden väriluokkien kohdalla vaihtelu on suurempaa. Ei-negatiivisen matriisihajotelman värikylläiset ja sävyltään puhtaat keskusalkiot muistuttavat värinnimeämiskokeiden tuloksia enemmän kuin itseorganisoivan kartan spektriltään tasaiset ja siten vähemmän värikylläiset ja sävyltään epäpuhtaammat keskusalkiot.
Avainsanat: perusväri, väritermi, värinnimeäminen, värimuisti, itseorganisoiva kartta, ei-negatiivinen matriisihajotelma
This thesis describes Multimedia Broadcast/Multicast Service (MBMS). MBMS is a bearer service in a digital cellular radio communication network that supports resource-efficient point-to-multipoint transmission of multimedia data. Services provided by a mobile network operator or some external service provider can use MBMS’s capabilities to deliver identical data to multiple users simultaneously. It resembles IP multicast and it shall be compatible with it, though there are several important differences demanded by the cellular network environment. The differences and requirements for introduction of MBMS into GSM/EDGE radio access network are examined. A network level simulator was extended with abilities to simulate point-to-multipoint connections to estimate MBMS’s performance and impact on other services in the simulated network. The simulation results show that MBMS uses radio resources efficiently and that the impact on other services is minimal in comparison with alternative point-to-point delivery of the same data. The performance regarding connection throughput is close to the maximum throughput at the given modulation and coding scheme for 99% of the receiving users. However, high (99% percentile is around 20%) RLC SDU error ratio shows that existing mechanisms alone are not enough to fulfil the QoS requirements for streaming and background type of traffic, which should be delivered by MBMS. Among the possible solutions to lower the RLC SDU error ratio are simple repetition redundancy, outer coding using Reed-Solomon codes and uplink feedback.Key words: MBMS, multicast, point-to-multipoint, performance evaluation, GERAN, cellular network simulation
Informaatio on avainresurssi organisaatioiden päivittäisissä operaatioissa. Lisääntyneen tiedontarpeen vuoksi tietojen saatavuus eri lähteistä on tärkeää. Tiedon hankinta useista lähteistä on johtanut suureen määrään erilaisia sovelluksia, joiden tarkoitus on mahdollistaa tiedonhaku erityyppisistä tietokannoista. Järjestelmien kirjo edellyttää useiden erilaisten tiedonhakumenetelmien ja käyttöliittymien omaksumista. Useiden hakumenetelmien opettelu ja käyttö on kallista.Useiden tiedon varastointipaikkojen välinen vuorovaikutus helpottaa tiedonhankintaa. Tietokantojen integrointi ja monitietokantajärjestelmien luonti mahdollistavat tiedonhaun yhden käyttöliittymän kautta useista tietokannoista. Tietovarastojen luonti on toinen mahdollisuus nopeuttaa tiedonhankintaa. Tietovarastointi edellyttää eriasteista lähdetiedon yhdistämistä. Tiedon käsitteleminen useiden lähteiden kesken on mahdollista välittäjien avulla. Välittäjät sekä välittävät että käsittelevät tietoa. Kääreet toimivat välittäjien ja tietolähteiden välissä ja välittäjien apuna tiedon muuntamisessa. Erityisesti WWW-sovelluksissa datan integroinnissa ja siirrossa käytettävä XML-kieli mahdollistaa monipuolisuutensa vuoksi informaation käsittelyn ja varastoinnin ilman suuria investointeja.
Tässä tutkielmassa on tarkoitus selvittää kirjallisuuden perusteella mitä tarkoitetaan tietokantojen yhdistämisellä sekä tietovarastoinnilla ja välittäjillä datan integroinnissa. Lisäksi tarkastellaan kääreiden osuutta informaation hankintaan ja datan muuntamiseen sekä XML-kielen käyttöä lähdetiedon yhdistämisessä.
ACM-luokitus: (ACM Computing Classification System, 1998 version) H.2
Avainsanat: tietokantojen integrointi, tietovarastointi, välittäjä, kääre, XML, lähdetiedon yhdistäminen
Programming and algorithms are hard subjects to teach and learn. Especially novices seem to have problems to grasp the basic concepts of programming and algorithms. Software visualization has tried to provide help for teaching and learning these subjects. The Jeliot family is a group of program and algorithm visualization tools to help novices to form the new concepts of programming and algorithms. In this thesis, a new version of Jeliot, called Jeliot 3, and its design are introduced. The new version is meant especially for novice students who are learning programming in Java language. It visualizes the data and the control flow of the programs as well as the object-oriented concepts such as constructors and objects. In the design, we have used a modular approach that connects an interpreter and a visualization engine to each other. Our design allows the utilization of two existing systems, Jeliot 2000 as a visualization engine and DynamicJava as an interpreter, to create the basis for this new system. To connect these two systems, we have created a new intermediate language. This new language also allows a formation of different kinds of visualizations with relative ease making the system extensible. In the design of the visualization, we have used the results from studies conducted in the fields of educational psychology and software visualization, and come into the conclusion that the program visualization for novices should be as complete, continuous and consistent as possible. Jeliot 3 extends the visualization capabilities of previous members of the Jeliot family with object-oriented concepts.ACM-Classification (ACM Computing Classification System, 1998 version): K.3.2 [Computers and Education]: Computer and Information Science Education – Computer Science Education; H.5.1 [Information Interfaces and Presentation]: Multimedia Information Systems – Animations; I.6.8 [Simulation and Modeling]: Types of Simulation – Animation, Visual
Keywords: Software Visualization, Program Animation, Jeliot, Novice Programmers
Järjestelmien yhteiskäytettävyydellä säästetään kustannuksia, koska jo toteutettuja toiminnal-lisuuksia ei tarvitse ohjelmoida uudelleen. Yhteiskäytettävyyttä voidaan hyödyntää organisaa-tioiden sisäisten ja organisaatioiden välisten tietojärjestelmien yhteensovittamisessa. Erilaisis-sa ympäristöissä toteutettujen järjestelmien yhteiskäytettävyys on mahdollista ainoastaan sil-loin, kun järjestelmät kykenevät kommunikoimaan toistensa kanssa yhtenäisellä tavalla tai kommunikoinnissa käytetään apuna rajapintoja, joiden avulla muokataan lähettäjän viesti vas-taanottajan ymmärtämään muotoon. XML-perustainen SOAP-protokolla tarjoaa laajalti hy-väksytyn yhtenäisen käytännön, jonka avulla järjestelmät voivat kommunikoida suoraan tois-tensa kanssa Internetin välityksellä. Tässä tutkielmassa perehdytään SOAP-protokollaan SOAP-määritysten ja muun kirjallisuuden pohjalta.ACM-luokat: (ACM Computing Classification System, 1998 version): C.2, H.4.3
Avainsanat: SOAP, Internet, XML
Nowadays it is obvious that human eye has a very difficult structure and our vision system is so complicated. In this work, we look into the details of transformation of color signal in human retina. Firstly, we review the human visual system. We start from some biological ideas and definitions and then, we look into the details of structure of human retina. Secondly, we consider in details a Multi – Stage Color model, represented the process of transformation of color signal in retina. Then we construct an artificial neural network (ANN), based on this model. This ANN calculates the results of transformation of color signal after each retina’s level. Also, ANN constructed so, that can be changed. It is possible to add or remove some new elements in any layer, add or remove a layer, and make new connections between any elements of neural network. Finally, we make a few experiments using this network.
Nykyinen tietoyhteiskunta asettaa yksilölle suuria vaatimuksia tietotekniikan osaamisesta. Jotta tätä osaamista voitaisiin parantaa, on ensin tiedostettava, mitä on oppiminen ja miten koulutusta tehokkaimmin järjestetään. Oppimisen arviointi ja palkitseminen ovat tärkeitä tekijöitä elinikäisen oppimisen tiellä.Henkilöstön osaamisen kartoituksella pyritään aina selvittämään yksilön osaamisen tilaa; mitkä ovat hänen vahvuutensa ja heikkoutensa. Tässä tutkielmassa tehdyssä tietotekniikan osaamiskartoituksessa pääpaino oli tietoteknisten taitojen osaamisessa, mutta myös motivaatiosta ja asenteista sekä tietotekniikan koulutuksesta ja käytöstä saatiin tietoa. Tutkimus suoritettiin haastattelemalla alkukyselyn perusteella 37 henkilöstön jäsentä kvantitatiivispainotteisella lomakkeella.
Tutkimuksesta ilmeni, että henkilöstön tietotekninen osaaminen on hyvällä tasolla, mutta erot työntekijöiden ja toimihenkilöiden välillä olivat aika suuria. Toimihenkilöt pääasiassa olivat tyytyväisiä Kaukaan koulutukseen sekä osaavia, kun taas työntekijät eivät.
ACM-luokat (ACM Computing Classification System, 1998 version): K.3.2, K.4.3
Avainsanat: osaaminen, osaamiskartoitus, kartoittaminen, tieto, tietoyhteiskunta, oppiminen, koulutus, organisaatio, oppiva organisaatio, arviointi, palkitseminen
Olio-ohjelmointi on ohjelmointimenetelmä, jonka toteuttaminen ei välttämättä edellytä puhdasta oliokieltä. Tutkielmassani vertailen olio-ohjelmoinnin perusrakenteiden toteuttamista proseduraa-lisilla ohjelmointikielillä. Tämän jälkeen kuvaan olio-ohjelmoinnin toteuttamista hybridikielellä käyttäen esimerkkinä C++-kieltä. Lopuksi tutkin erityisesti Fortran 90 -kielen soveltuvuutta olio-ohjelmointiin. Tutkielmani perustuu alan kirjallisuuteen.Avainsanat: Olio-ohjelmointi, proseduraaliset kielet, C++-kieli, Fortran 90 -kieli.
Tutkielmassa luodaan katsaus kirjallisuudessa esiintyviin digitaalisten kuvien laadullisen analysoinnin menetelmiin. Valikoitua osaa näistä myös sovelletaan kokeellisesti joukolle testikuvia. Tarkoituksena on löytää se kuvissa esiintyvä piirre, joka olisi ominainen erilaisia painopapereita käyttäville painotuotoksille. Analysointityökaluja etsitään kuvien laatumittojen, sisältöpohjaisen kuvatietokantahaun sekä eräiden muiden tunnettujen kuvankäsittelymenetelmien piiristä. Valittujen menetelmien avulla tuotettuja piirrevektoreita visualisoidaan kokeellisessa osassa mm. itseorganisoivan kartan avulla. Lisäksi esitellään uudenlainen sovellettu piirre, niin ikään itseorganisoivan kartan avulla ratkaistava ’vallitsevimpien’ värien joukko. Tämä piirre tuottaakin ns. spektrikuvien laatumitta -piirteen ohella kaikkein lupaavimpia tuloksia. Tutkielma on osa laajempaa tutkimusta, jonka päämääränä on parantaa painotuotteiden laatua erilaisissa painatusolosuhteissa.Avainsanat: kuva-analyysi, laatumitat, itseorganisoiva kartta (SOM).
Tietämyksen johtaminen tarkoittaa kapea-alaisesti ymmärrettynä tietoresurssien hallintaa eli tiedon johtamista. Tässä tutkielmassa käytämme tietämyksen johtamisen laajempaa määritelmää, jolla tarkoitetaan organisaation sisällä tai saatavilla olevan merkityksellisen tiedon ja osaamisen tunnistamista, hankkimista, luomista, välittämistä ja käytön strategista johtamista. Tässä kokonaisuudessa huomioidaan aina yksilön, ryhmän ja organisaation näkökulmat.Teknologiavaatimuksissa tietämyksen johtaminen näkyy tietolähteiden ja työkalujen integrointina, asiantuntijuuteen ja käyttötapoihin perustuvana profilointina sekä yhteistyön, tiedon organisoinnin, käytön ja luomisen tukemisena. Teknologisiksi työvälineiksi soveltuvat siten pääasiassa jo olemassa olevat ratkaisut, joiden käyttötapoihin tietämyksen johtaminen tuo monipuolisuutta, tehokkuutta ja uusia näkökulmia. Teknologian hyödyntämisessä on tavoitteena, että se muodostaa kokonaisjärjestelmän, joka tukee kattavasti tietämyksen johtamisen ominaispiirteitä.
Tässä pro gradu -tutkielmassa kootaan tietämyksen johtamisen teoreettinen viitekehys sekä sen pohjalta nousevat vaatimukset ja ominaispiirteet teknologiselle tuelle. Lisäksi käymme läpi tietämyksen johtamisen teknologioiden suunnittelun ja toteuttamisen työvälineitä, jotka tukevat kokonaisen järjestelmän rakenteen muodostamista.
ACM-luokat: (ACM Computing Classification System, 1998): K.6.1
Avainsanat: tietämyksen johtaminen, teknologia, tietämysteknologia, tiedon käytön teknologia
Alueenlaajennus on kuvankäsittelytekniikka, jossa digitaalinen kuva jaetaan alueisiin yhdistämällä kuvapisteitä yhtenäiseksi alueeksi niiden väriarvon perusteella. Tutkielmassa etsittiin vastausta siihen, onko kolmiulotteinen alueenlaajennustekniikka parempi vaihtoehto kohteen seurannan menetelmänä kuin kaksiulotteinen. Kolmiulotteisessa alueenlaajennuksessa kuvasarjan kuvat muodostavat peräkkäin aseteltuina väriltään homogeenisen kappaleen. Työssä yleistetään 2D alueenlaajennustekniikka 3D tapaukseen kuvasarjojen tapauksessa ja sovelletaan kohteenseurantaan.Testaamiseen toteutettiin ohjelma, jossa voitiin valita alueenlaajennustekniikka sekä sille erinäisiä parametreja. Ohjelmaa kokeiltiin kolmella eri videoleikkeellä ja saadut tulokset taulukoitiin.
Koska videoleikkeiden määrä oli pieni, ei ehdotonta varmuutta menetelmän paremmuudesta voi saada. Kuitenkin tulosten perusteella voi todeta, että 3D-menetelmä vaikuttaa toimivammalta ratkaisulta, kun kohteen alueenlaajennuksella peittämät alueet ovat päällekkäiset peräkkäisissä kuvakentissä. Muussa tapauksessa 3D-menetelmä hukkaa kohteen.
ACM-luokat (ACM Computing Classification System, 1998 version): I.4.6, I.4.8
Avainsanat: kohteenseuranta, alueenlaajennus
Tietotekniikan nopea kehitys ja elämänmenon kiireellisyys ovat tehneet verkkooppimisympäristöistä paljon käytettyjä koulutuksessa ja opetuksessa. Niitä ei käytetä vain etäopetuksessa vaan myös perinteisessä luokka-opetuksessa. Tämän tutkielman tavoitteena on luoda aluksi katsaus verkko-oppimisympäristöön, sen määritelmään, rakenteeseen ja suunnitteluun. Arvioinnin perusteiden ja arviointikriteereiden selvityksen jälkeen esitellään seitsemän verkko-oppimisympäristöjen arviointisivustoa. Tutkielman lopussa tutustutaan esitettyihin arviointisivustoihin perustuvaan arviointimenetelmään, jota sovelletaan yhdeksään suomalaiseen verkko-oppimisympäristöön.Tuloksista tulemme huomaamaan, että suomalaiset verkko-oppimisympäristöt eivät pääsääntöisesti eroa toisistaan. Ne on rakennettu lähes samoista elementeistä, perusvaatimukset ovat kunnossa ja erikoisempia lisäpiirteitä löytyy erittäin vähän.
ACM-luokka (ACM Computing Classification System, 1998 version): K.3.1
Avainsanat: verkko-oppimisympäristö, arviointi, kriteeri
Paikkatietosovelluksissa käytetään kohteen sijainti-informaatiota sovelluksen perustana. Langattoman tiedonsiirron ja päätelaitteiden kehityksen myötä sovellukset ovat voitu toteuttaa mobiileissa ympäristöissä. Myös palvelujen tarjonta on monipuolistunut ja niiden hinta ja tehokkuus on parantunut huomattavasti. Sovellusympäristö asettaa vaatimuksia kehitettävillä järjestelmillä esimerkiksi paikkatiedon käsittelyn ja esitystavan osalta. Eri paikannusmenetelmät tuottavat vaihtelevan tasoista informaatiota paikannustarkkuuden osalta ja menetelmien käyttökelpoisuus on ympäristöstä riippuvainen. Paikkatietosovelluksen tulee tarjota tietyt peruskyselyt, joiden pohjalta sovellukseen tarvittavat muut toiminnot voidaan toteuttaa. Tässä tutkielmassa tarkastellaan paikannusmenetelmiä satelliittipaikannuksen-, verkkopaikannuksen-, yhdistettyjen paikannusmenetelmien- ja sisätilapaikannuksen osalta. Samalla tuodaan esille paikkatietosovellusten järjestelmäarkkitehtuuri, jonka osalta käsitellään sovelluksen vaatimuksia, perusarkkitehtuuria, päivitysprotokollia ja tiedonsiirtoa. Tarkastelu perustuu alan kirjallisuuteen. Esimerkkisovelluksena käydään läpi tutkimusprojektin yhteydessä kehitettyä Slider-sovellusta, tuodaan esille sovelluksessa tehtyjä ratkaisuja ja ehdotetaan esimerkkisovelluksen kehitystoimenpiteitä.Avainsanat: satelliittipaikannus, verkkopaikannus, sisätilapaikannus, paikkatietosovellukset, järjestelmäarkkitehtuuri, päivitysprotokollat, mobiilitiedonsiirto, paikkatietokyselyt
Arviointiprosessin automatisointia tarvitaan tietojenkäsittelyn opetuksessa lähinnä opiskelijamäärien kasvamisen takia. Ohjelmoinnin opettaminen vaatii käytännön ohjelmointiharjoitusten valmistelua ja arviointia, mikä vie paljon aikaa. Automatisointi vähentää opettajan tehtävien arviointiin käyttämää aikaa ja tekee arvioinnista objektiivisempaa. Opiskelijoiden kannalta katsottuna etuna on nopeampi tehtävien arviointi ja niistä saatu palaute. Tässä pro gradu -tutkielmassa on käsitelty automaattisia koodintarkastus -järjestelmiä ja niistä erityisesti Boss- ja CourseMaster -järjestelmiä, joita on myös käytännössä testattu. Testattaessa päämääränä oli selvittää Bossin ja CourseMasterin soveltuvuutta Joensuun yliopiston virtuaaliopintoihin. Testauksessa ongelmia aiheuttivat CourseMasterin asennus ja Bossjärjestelmässä tehtävien soveltuvuus järjestelmään. Käyttöönotossa haittapuolina olisivat asiakassovelluksen asentaminen jokaiselle koneelle erikseen ja palomuuriin tehtävät reiät. Lisäksi järjestelmien saaminen käyttökuntoon vaatisi huolellista valmistautumista ja huomattavan paljon aikaa.
Nowadays it is obvious that speakers can be identified from their voices. In this work we look into the details of speaker identification from the real-time system point of view. Firstly, we review the well-known techniques used in speaker identification. We look into the details of every step in identification process and explain the ideas, which leaded to these techniques. We start from the basic definitions used in DSP, then we move to the feature extraction step and review two types of features, namely MFCC and LPCC, and finally we review two speaker modeling techniques, VQ and GMM. Secondly, we analyze described techniques from the time complexity point of view and propose several approaches to their optimization. Finally, we propose a novel approach to the feature matching step in the speaker identification and analyze it theoretically and practically. The main objective of this approach is an iterative pruning of speaker models, which are far away from the unknown speech sample, during the identification process. In order to analyze this method in practice we made appropriate software and using real data we ran several tests. Empirical results show that proposed approach greatly improves identification speed in feature matching step.Keywords: speaker identification, real-time processing, vector quantization.
The evaluation of educational environments is a field in need of an interdisciplinary approach. As computers become more and more pervasive, educational computing follows this trend in the classrooms. It creates more dependencies between the parts of the learning process and it is more difficult to assess these complex relations. During the last decades the attention on usability evaluation has created many evaluation methods, which unfortunately are mostly of very limited use in the evaluation of educational environments. However, the inspiration they provide is valuable. This thesis argues that joining the idea of a usability checklist in the form of a questionnaire with the proper pedagogical and technological issues facilitates the usability evaluation process of educational environments. The main requirements of assessing technological, usability and pedagogical factors are fullfilled. The Technology-Usability-Pedagogy model (TUP) is established and the TUP questionnaire is developed.The ACM Computing Classification System (1998 version): H.5.2, K.3.1
Keywords: User Interfaces, Evaluation, Computer Uses in Education
Automaattinen puhujanvarmentaminen on yksi biometrisistä tunnistusmenetelmistä. Toimiva päätöslogiikka on kiinteä osa korkean luotettavuuden ja käytettävyyden omaavaa automaat-tista puhujanvarmennusjärjestelmää. Tässä tutkielmassa käydään ensin läpi automaattiseen puhujanvarmennukseen, ihmisen puheen tuottoon ja puheen havaitsemiseen liittyviä periaat-teita. Lisäksi tutkielmassa keskitytään kuvaamaan päätöslogiikkaan liittyvä matemaattinen perusta, kynnysarvon teoreettinen määrittely ja asettaminen, sekä normalisoitujen joukkojen perusteet ja kyseisten joukkojen muodostusvaihtoehtoja.Kynnysarvojen suunnittelussa paneudutaan kynnysarvon dynaamisen päivittämisen tarpee-seen ja päivittämiseen käytettäviin menetelmiin. Lisäksi tutkielma käsittelee puhujanvarmen-nusjärjestelmien arviointiin liittyviä työkaluja, joita ovat esimerkiksi järjestelmän keskimää-räistä virhealttiutta kuvaavat mittarit: oikeiden puhujien hylkäysvirhe (FR), huijareiden hy-väksymisvirhe (FA) ja järjestelmän keskimääräinen virhealttius (EER). Näitä samoja työka-luja käytetään myös kynnysarvojen suunnitteluun. Tutkielmaan kuuluu myös kokeellinen osuus, jossa esitellään näiden arviointiin käytettävien mittareiden testaukseen kehitetty tes-tausjärjestelmä ja testiajojen tulokset.
Avainsanat: Automaattinen puhujanvarmennus, automaattinen puhujantunnistus, päätös-logiikka, kynnysarvo.
Tutkielmamme pohjautuu opetuskokeiluun, jossa tutkittiin Empirica Control -ohjelmiston soveltuvuutta ohjelmoinnin perusrakenteiden opettamiseen. Empirica Control on visuaalinen ohjelmointiympäristö, jota voidaan hyödyntää osana Empirica-mittausjärjestelmää, jolloin toiminta voidaan sitoa konkreettiseen maailmaan. Opetuskokeilut suoritettiin Lieksassa tammi-helmikuussa 2002 lukiolla sekä perusasteella. Lieksan lukiolla kokeiluun osallistui kahdeksan ensimmäisen luokan oppilasta. Merilän perusasteella järjestettyyn kokeiluun osallistui kahdeksan viidennen ja kuudennen luokan oppilasta. Oppilaat toimivat kokeilussa neljän hengen ryhmissä ratkaisten itse määrittelemiään ongelmia Empirica-mittausjärjestelmän ja Empirica Control -ohjelmiston avulla. Tutkimuksemme perusteella voidaan todeta, että Empirica Controlin käyttö opetuksessa kannustaa oppilaita tutkivaan, luovaa ongelmanratkaisua hyödyntävään oppimiseen. Empirica Controlin avulla ohjelmoinnin perusrakenteiden opettamisesta ja oppimisesta tulee helpompaa ja mielekkäämpää kuin perinteisten ohjelmointikielten avulla.Format: Adobe Acrobat PDFAvainsanat: Empirica Control, ohjelmoinnin opettaminen, konstruktivismi, visuaalinen ohjelmointi
Ohjelmistoprojektin työmäärän arviointi on vaikeaa, koska työmäärän vaikuttavia tekijöitä on paljon, eikä kaikkien näiden tekijöiden ja työmäärän välistä riippuvuutta usein tunneta riittävän hyvin. Työmääräarvioiden tarkkuuden parantaminen on kiinnostanut sekä tutkijoita että tietojärjestelmien rakentajia pitkään ja arviointimallien mahdollisuuksia tuottaa tarkempia arvioita on tutkittu jo usean vuosikymmenen ajan. Tässä tutkielmassa esitellään tekniikoita, joita on käytetty arviointimallien rakentamiseen. Pisimpään tutkitut mallit ovat perustuneet tilastollisiin menetelmiin, yleensä regressiotekniikkaan. Koska näiden mallien tuottaman arvioinnin tarkkuus on ollut vaatimaton, on viime vuosina tutkittu, voitaisiinko ohjelmistotuotannon dynamiikkaa mallintaa paremmin tekoäly-tekniikoilla. Tutkielmassa esitellään tilastolliseen regressiotekniikkaan perustuva regressiomalli ja kaksi tekoälytekniikkaan perustuvaa mallia: analogia, joka perustuu tapauskohtaiseen päättelyyn sekä induktiiviseen päättelyyn perustuva regressiopuu. Tutkielmassa esitellään joitain viime vuosina tehtyjä tutkimuksia. Niiden tulosten perusteella ei voida esittää, että mikään arviointitekniikka olisi toista tarkempi. Eri tekniikat soveltuvat eri tilanteisiin riippuen siitä millainen kokemushistoria on käytettävissä. Mallin tarkkuuteen näyttäisi tekniikkaa enemmän vaikuttavan rakentamiseen käytetyn aineiston määrä ja laatu. Yritysten tulisi kehittää työmäärän arviointia prosessiksi, jossa omien toteutuneiden projektien ja yrityksen tilanteen kannalta merkittävien työmäärään vaikuttavien attribuuttien perusteella kehitettäisiin omaa arviointimallia, jotta ymmärrettäisiin oma tuotantoprosessi paremmin ja päästäisiin tarkempiin arvioihin.Format: Adobe Acrobat PDFAvainsanat: työmääräarviointi, regressiopuu, analogia, regressioanalyysi
Despite all the hype around the dream of a global society, the borders of the world have not disappeared. Rather, they have sharpened and changed their form from geographical to digital frontiers. The prevailing westernness of Computer Science is a major problem with the Computer Science education in developing countries. The students not only face a new subject, but also a fundamentally different philosophy and problem solving methods. In this thesis, I shall present a new member to the family of ethnosciences: ethnocomputing. Ethnocomputing challenges the prevailing way of thinking that in order to keep up with the West, other cultures have to adapt to the western ways of thinking. Relying on constructivist theories, I argue that the universal theories of computing take different forms in different cultures, and that the European view on abstract ideas of computing is culturally bound, too. Studying ethnocomputing - i.e. the computational ideas within a culture - may lead to new findings that can be used in both developing the western view of Computer Science, and improving Computer Science education in non-western cultures.Format: Adobe Acrobat PDFACM-classes (ACM Computing Classification System, 1998 version): K.3.2, K.4.0, K.4.1
Ohjelmistojen mittaamista tarvitaan, jotta niiden ominaisuuksia voitaisiin arvioida. Toimintopistearvo voidaan laskea ohjelmistosta sen elinkaaren eri vaiheissa ja siitä voidaan johtaa useita erilaisia tunnuslukuja. Toimintopistearvon laskemiseen on kehitetty useita menetelmiä. Tässä tutkielmassa keskitytään kahteen menetelmään: IFPUG 4.1 ja COSMIC-FFP 2.1. Näistä IFPUG-menetelmä on ollut hyvin suosittu 1980-luvulla ja 1990-luvun alussa, mutta menetelmän suosio on kuitenkin laskenut viime vuosina. Ongelmaksi on koettu lähinnä menetelmän monimutkaisuus sekä se, ettei IFPUG sovellu helposti uusimpien sovellustyyppien kanssa käytettäväksi. COSMIC-FFP kehitettiin 1990-luvun lopussa tuomaan parannusta havaittuihin ongelmiin. Tutkielmassa on tarkoitus selvittää kirjallisuuden perusteella näiden kahden menetelmän mukaisen laskennan suorittaminen ja menetelmiin liittyviä tutkimustuloksia.Format: Adobe Acrobat PDFAvainsanat: COSMIC-FFP, FPA, IFPUG, toimintopisteanalyysi, toimintopistelaskenta
Ohjelmistoprojektien riskienarviointi on osa riskienhallintaa ja yleisemmin osa projektin hallintaa. Riskienarviointi tarkoittaa tulevaisuuden eri tapahtumien epävarmuuden selvittämistä. Riskienarvioinnista saatavaa informaatiota käytetään projektin päätöksenteon tukena. Ohjelmistoprojekteissa ei kuitenkaan välttämättä aina arvioida projektiin liittyviä riskejä, vaan ollaan tietämättömiä niistä. Tämän vuoksi riskejä ei myöskään hallita, jolloin projekti saattaa epäonnistua. Tutkielmassa tarkastellaan kirjallisuuden avulla kuinka ohjelmistoprojektien riskejä arvioidaan. Riskejä tarkastellaan projektin eri osapuolten näkökulmista. Osapuolet vaikuttavat projektin riskeihin tässä tarkastelussa. Riskienarviointi jaetaan kolmeen osaan: riskien tunnistamiseen, analysointiin ja evaluointiin jatkotoimenpiteitä varten.Format: Adobe Acrobat PDFACM-luokat (ACM Computing System, 1998 version): D.2.9, K.6.1, K.6.3
Avainsanat: riski, riskienarviointi, ohjelmistoprojekti
Many computer science educators note that understanding and analyzing algorithms is difficult. During the last twenty years several systems have been created that use computerized visualizations of algorithms in order to help student understanding. While some positive results can be seen, several questions remain unsolved. One of these is how to ensure that the student correctly understands the visualization that was just viewed. Using artificial intelligence in computer aided education has been presented as an option, but its traditional uses are far from usable. I argue that the use of agent-based engineering can help solve the problem of combining artificial intelligence and computer aided instruction in order to answer the question of ensuring student understanding of algorithms. As proof of the concept I present a prototypical environment for algorithm animation called Seal. It is a student-driven algorithm animation environment with an instructor agent for student guidance. As a part of Seal's development a DTD has been developed for use in representing algorithms in XML.Format: Adobe Acrobat PDF
Vektoriformaattia käytetään yleisesti karttakuvien tallennuksessa. Tietyissä tapauksissa vektorikarttojen sisältämää informaatiota kannattaa muokata erilaisilla menetelmillä, jotta informaatiota voidaan hyödyntää tehokkaasti etsittäessä ratkaisuja käsiteltäviin ongelmiin. Tässä tutkielmassa tarkastelen vektori- ja rasteriformaatteja karttakuvien tallennuksessa, vektorimuodossa olevien karttakuvien rasterointia, vektorikarttojen muuntamista verkoiksi ja lähestymistapoja verkko-ongelmien ratkaisemiseksi. Rasteroinnin yhteydessä tuon esille niitä ratkaisuja, joihin päädyimme Dynamap-projektissa toteuttaessamme rasterointia vektorikartoille.Format: Adobe Acrobat PDFAvainsanat: Karttakuvat, vektorigrafiikka, rasterointi, verkkoalgoritmit, lokaalihaku, geneettinen algoritmi, kauppamatkustajan ongelma.
Ohjelmoinnin perusteiden oppimisen problematiikka näkyy erityisesti etäopetuksessa. Joensuun yliopiston lukuvuonna 2000-2001 Pohjois- Karjalan maakunnan lukiolaisille tarjoamassa tietojenkäsittelytieteen virtuaaliapprobaturissa erityisesti ohjelmointikurssien aikana opiskelijoille tuli vaikeuksia opinnoissaan. Keskeyttäneiden opiskelijoiden parissa laadittu tutkimus osoittaa, että hankalimpina asioina koettiin taulukoiden ja metodien käyttäminen sekä sovelmien ja animaatioiden tekeminen. Tutkimuksessa ilmeni, että ohjelmoinnin perusrakenteiden opiskeluun kaivataan enemmän tukea ja ohjausta. Tekemällä oppimisen hyöty osoittautui tenttivastausten nojalla ilmeiseksi. Tutkimus toteutettiin puolistrukturoituna kyselytutkimuksena kevätlukukauden 2001 aikana. Lisäksi palautettujen harjoitustehtävien ja tenttivastausten perusteella nähdään, että ohjelmoinnin perusrakenteiden oppiminen on keskeyttäneiden opiskelijoiden kohdalla jäänyt puutteelliseksi.Format: Adobe Acrobat PDF
Metadataa ja oppimisolioita voidaan hyödyntää toteutettaessa heterogeenisen opiskelijajoukon opetusta virtuaalisissa oppimisympäristöissä. Niiden avulla opetuksessa käytettävä oppimateriaali on mahdollista jakaa sopiviin, loogisiin kokonaisuuksiin, joiden ominaisuuksia pystytään soveltamaan rakennettaessa älykkäästi toimivia, opiskelijan persoonallisiin ominaisuuksiin reagoivia oppimisympäristöjä. Lisäksi oppimisolioiden periaate tukee luonnollisella tavalla muun muassa uudelleenkäytettävyyttä, jonka avulla voidaan vähentää oppimateriaalien valmistukseen liittyviä tuotantokustannuksia. Opetuksen apuna käytettävien oppimisolioiden ja niiden välisten suhteiden kuvaamiseen käytettävistä metadatastandardeista voidaan mainita esimerkkinä Dublin Core.Format: Adobe Acrobat PDF
Ohjelmistojen teko muuttuu jatkuvasti vaativammaksi. Ohjelmiston mallintamisen apuvälineeksi on luotu UML, joka on graafinen ohjelmiston mallinnuskieli. Sen ympärille on myös luotu sitä käyttäviä prosessimalleja. UML:n ja prosessimallien avulla saadaan ohjelmistokehityksessä parannettua uudelleenkäytettävyyttä, lyhennettyä ohjelmistojen kehitysaikaa ja nostettua tuottavuutta. UML on kuitenkin vielä sen verran uusi suunnittelun apuväline, ettei sen käyttö ole aivan ongelmatonta. Puutteistaan huolimatta se on tehokas apuväline mallinnettaessa ohjelmistoja.Format: Adobe Acrobat PDFTämän tutkielman tarkoituksena on kuvata UML:n käyttöä prosessissa ja kahta prosessimallia, joissa UML:ää käytetään apuvälineenä. Nämä prosessimallit ovat Rational Unified Process ja GSMS:ään kuuluva Object and Component Engineering. Näiden prosessimallien vertailun lisäksi on arvioitu niiden ominaisuuksia, UML:n roolia prosesseissa ja sen mallintamisessa.
Tutkielman teoreettinen osuus perustuu lähdekirjallisuuteen. Prosessimallien ja UML:n arviointi perustuvat käytännön kokemuksiin sekä lähdekirjallisuudesta löytyvään materiaalin.
Avainsanat: UML, ohjelmistoprosessi, UP/RUP, GSMS/OCE
Digitaalisessa muodossa olevien kuvien määrä kasvaa jatkuvasti ja kuvien tilantarve on suuri. Näin ollen on löydettävä tehokkaita menetelmiä, joilla kuvia voidaan tiivistää. Kuvien tiivistäminen voidaan jakaa häviölliseen (lossy) ja häviöttömään (lossless) tiivistämiseen. Tiivistämisprosessi jaetaan yleensä kahteen erilliseen osaan: mallintamiseen ja koodaukseen.Format: Adobe Acrobat PDFTässä tutkielmassa luodaan katsaus kolmeen erilaiseen mallintamismenetelmään: tilastolliseen, ennustavaan ja kontekstimallintamiseen, sekä kolmeen koodausmenetelmään: Huffman-, Golomb-Rice - ja aritmeettiseen koodaukseen. Tutkielmassa esitellään lisäksi kolme häviötöntä tiivistysstandardia: häviötön JPEG, FELICS ja JPEG-LS, ja vertaillaan kokeellisesti niiden tiivistystehoja.
Avainsanat: häviötön kuvantiivistys, tilastollinen mallintaminen, kontekstimallintaminen, ennustava mallintaminen, Huffman-koodaus, aritmeettinen koodaus, Golomb-Rice -koodaus, häviötön JPEG, FELICS, JPEG-LS.
Ohjelmistoprosessien kehittämisellä pyritään aikaansaamaan tehokkaampia ohjelmistojen kehitys- ja ylläpitoprosesseja ja siten laadukkaampia ohjelmistotuotteita mahdollisimman pienillä kustannuksilla. Ohjelmistoprosessien kehittämismenetelmät jakautuvat kolmeen eri suuntaukseen: arviointikehykset, formaali määrittäminen ja mittausperustainen kehittäminen. Tässä tutkielmassa käsitellään tarkemmin mittausperustaista kehittämistä tavoitteisiin perustuvan GQM-paradigman avulla. GQM-paradigman lähtökohtana on pyrkimys saavuttaa ennalta asetetut organisatoriset tavoitteet ja siten saada aikaan prosessien kehittymistä erityisen mittausohjelman avulla. Tutkielmassa esitellään tavoitteisiin perustuvan mittaamisen malli ja sitä tukeva mittausprosessi, jonka vaiheet käydään läpi käytännön esimerkkien avulla. Ohjelmistoprosessien kehittäminen ei ole kertaluonteinen, vaan jatkuva käytäntö, jolloin siitä saatavia hyötyjä ja kustannuksia arvioitaessakin pitää ottaa kehittämisprosesseissa saatu kokemus huomioon.Format: Adobe Acrobat PDFAvainsanat: GQM, mittausohjelma, ohjelmistoprosessin kehittäminen, tavoitepohjainen mittaaminen
Virtual environments constitute a new human-computer interaction paradigm where users are not simply external observers of images on a computer screen but are active participants with a computer- generated three dimensional virtual world. As virtual environment applications become more complex, it is clear that a better understanding of the principles of virtual environment interaction is needed and designers need a guidance in choosing three dimensional interaction techniques. Also virtual environments are supposed to be systems that will enhance the communication between humans and computers. If virtual systems are to be effective and well received by their users, considerable human factors research needs to be accomplished.Format: PostScriptThis paper is a literature survey which gives some solutions and a guidance of how to achieve these goals. First a set of taxonomies of interaction techniques are presented. According to these taxonomies, some current navigation, selection and manipulation techniques in which the interaction techniques are split into, are described. Also, this paper presents various types of interaction devices and visual displays which also play an important role in the success of virtual environment systems.
This paper provides an overview of many of the human factors issues that influence the acceptance of virtual reality systems, including interaction techniques usability; human performance efficiency in virtual worlds, which is likely influenced by tasks characteristics, user characteristics, human sensory and motor physiology, multimodal interaction, and the potential need for new design metaphors; health and safety issues of which cybersickness and deleterious physiological aftereffects may pose the most concern; and the social impact of the technology.
ACM-classes (ACM Computing Classification System, 1998 version): I.3.0, H.1.2, H.5.2
This thesis focuses on introducing the Jini technology on the general level and presenting an understanding of its programming models. It will also provide some ideas of how this new technology could be used in the future and for what purposes. Moreover, some problems related to the designing of distributed systems are discussed, as well as the solutions to them offered by the Jini technology.Format: Adobe Acrobat PDFAlthough Jini is build atop the Java programming language, anybody wanting to use Jini to build distributed systems has to change his or her way of thinking quite radically. Traditional distributed system development tries to hide the network layer from both the application and the developer. Jini model does not do that, because it requires that the developer really thinks about issues like partial network failures, and it provides a framework to build and design reliable and robust network services.
Right now the industry is moving from the disc centric approach to the network centric computing. The network will be the central connecting tissue and the notion of applications and peripherals will be replaced by network-available services and their consumers.
One of the greatest changes in the development of distributed systems is that traditionally data has come to the code, which uses it. With Jini, it is possible to move objects over the network. It means that both the code and the data are transferred. This model allows flexible building of new kinds of services in the network.
In addition, one of the purposes of this thesis is to present what the minimum requirements for Jini-enabled devices are and what Java features must be supported to make a minimum Jini system work within low-capacity embedded devices. Moreover, some drawbacks of this technology are discussed. Some assumptions about the future of ubiquitous computing are also made.
GOMS-mallit (Goals, Operators, Methods, Selection rules) ovat ihmisen ja systeemin välisten vuorovaikutusten kuvaamiseen tarkoitettuja apuvälineitä. Ne tarjoavat tavoitekeskeisen lähestymistavan vuorovaikutusten mallintamiseen. GOMS-mallit koostuvat neljänlaisista komponenteista, joiden avulla tapahtumia jäsennellään. Komponentteja ovat tavoitteet, operaattorit, menetelmät ja valintasäännöt.Format: Adobe Acrobat PDFGOMS-malleja on hyödynnetty etenkin järjestelmien käytettävyyden suunnittelussa ja arvioinnissa. Mallien avulla voidaan ennustaa suoritusaikoja, oppimisaikoja sekä ennakoida menetelmiä, joita käyttäjä soveltaa pyrkiessään tekemään jonkin tehtävän. GOMS mallien avulla voidaan joissain tapauksissa saavuttaa kustannussäästöjä verrattuna koehenkilöillä tehtäviin käytettävyystutkimuksiin.
Tässä työssä esitellään GOMS perusmallin rakenne ja muotoilu sekä neljä erilaista GOMS-perusmallin variaatiota.
Käytettävyyden arviointi on ohjelmiston käytettävyysominaisuuksien tutkimista. Sen tavoitteena parantaa järjestelmän käytettävyyttä. Tässä tutkielmassa tarkastellaan käytettävyyden arviointia ja esitellään kolme siihen käytettävää menetelmää; heuristinen arviointi, kognitiivinen läpikäynti ja muodollinen arviointimenettely. Näitä menetelmiä verrataan toisiinsa niiden resurssivaativuuden, ohjelmistotuotantoprosessiin sijoittumisen sekä arvioijamäärän ja arvioijien koulutuksen mukaan.Format: Adobe Acrobat PDF | PostScript
Eettisen toiminnan varmistamiseksi on myös tietotekniikka-alalle laadittu omia eettisiä ohjeistoja. Yhteisen kansainvälisen ohjeiston luominen ei kuitenkaan ole onnistunut erilaisten kulttuurien, lakien ja sosiaalisten lähestymistapaerojen vuoksi.Format: Adobe Acrobat PDFTutkielmassani perehdyin kirjallisuuden pohjalta eettisten ohjeistojen sisältöön ja merkitykseen sekä pienimuotoisen kyselytutkimuksen pohjalta ohjeistojen tarpeellisuuteen tietotekniikka-alalla. Erityisesti kiinnitin huomiota asiakastoimintaan liittyvien asioiden ohjeistamiseen.
Asiakastoimintaan liittyviä ohjeita oli paljon, mutta niiden sisältö jäi usein vaatimattomaksi, mm. hinnoittelun ja kaupankäynnin etiikkaa ei ohjeistoissa ollut esillä. Organisaation ja sen johdon toiminnan ohjeistaminen oli mukana vain harvoissa ohjeistoissa. Ohjeistojen sisällössä, rakenteessa ja myös nimiöinnissä oli runsaasti kirjavuutta. Ohessa omat suositukseni ohjeiston sisällöksi:
Kyselyn perusteella kävi selville, että vastaajista 86 % piti eettisten asioiden ohjeistamista tarpeellisena, mutta vain 36 % tiesi tai oli kuullut eettisten ohjeistojen olemassaolosta.
- Henkilökohtaiset ominaisuudet
- Ammatilliset velvollisuudet
- Organisaation johdon velvollisuudet
- Velvollisuudet asiakkaita/käyttäjiä kohtaan
- Asiakkaiden velvollisuudet
- Suhtautuminen väärinkäytöksiin.
Vastuu eettisestä toiminnasta on viime kädessä yksilöllä. Tietotekniikka-alan eettisten ohjeistojen avulla voidaan lisätä tietoisuutta alan eettisistä tavoitteista ja ihanteista, kunhan ohjeistojen ole-massaolo ja niiden sisältö tuodaan alalla tunnetuiksi. Ohjeistot voivat antaa hyvän eettisen perustan yksilön sekä työyhteisön toiminnalle, toiminnan ohjaamiselle ja päätöksenteolle. Lisäksi oh-jeistot voivat välittää positiivista imagoa eettisesti sitoutuneesta ammattikunnasta.
Dokumentaation pitkäaikaisessa arkistoinnissa on varauduttava tekniikan ja ohjelmistojen kehittymiseen. Organisaatioiden dokumentaatio on yleensä tuotettu useilla eri välineillä, josta seuraa yhteensopimattomuusongelmia. Vaikka dokumentaatio olisikin tuotettu yhdellä tekstinkäsittelyvälineellä, ei se välttämättä ole vuosien kuluttua enää käyttökelpoista. Eräs ratkaisu dokumentaation arkistointi- ja yhteensopivuusongelmiin on SGML, joka on kansainvälinen dokumenttirakenteiden määrittelyyn tarkoitettu standardi. Organisaation siirtyessä perinteisistä työvälineistä SGML:n käyttämiseen on myös vanha dokumentaatio konvertoitava SGML-muotoon.Format: Adobe Acrobat PDFTämän tutkielman tarkoituksena on tutustuttaa lukija dokumentaation SGML-konvertoimiseen liittyviin käsitteisiin ja tekniikoihin. Näiden perusasioiden pohjalta vertailemme eräiden markkinoilla olevien konversiovälineiden käyttökelpoisuutta erityyppisissä konvertointitilanteissa. Tutkielman teoreettinen osuus perustuu alan lähdekirjallisuuteen. Konversiovälineiden vertailu perustuu esimerkkidokumentaation konvertoinnista tehtyihin havaintoihin.
Tutkielmassa perehdytään kirjallisuuden pohjalta automaattiseen puhujan tunnistukseen, erityisesti tekstistä riippumattomien menetelmien kannalta sekä identifiointi- että verifiointitehtävissä. Piirreirroituksessa erityishuomiota kiinnitetään kepstrin määrittämiseen, koska tämä ja sen johdannaiset ovat tällä hetkellä ylivoimaisesti eniten käytetty piirrejoukko. Luokittelun pääpaino on vektorikvantisoinnissa (VQ), joka on hyväksi havaittu ja yksinkertainen luokittelumenetelmä. Tutkielmaan sisältyy myös kokeellinen osa, jossa testataan televisiosta kerätyllä kohinaisella ja rajoitetulla puhedatalla kepstri-VQ -yhdistelmän toimivuutta puhujan tunnistuksessa.Format: Adobe Acrobat PDFKeywords: Puhujan identifiointi, puhujan verifiointi, tekstistä riippumattomuus, kepstri, vektorikvantisointi.
Modern communication and information technologies are applied also in the field of health monitoring. Practical applications are already available and a lot of work is being done in research and development of health monitoring systems. Some of these applications are introduced. Emerging wireless communication (Bluetooth, WAP) and mobile computing technologies introduce new prospects also into this application area. An overview of these technologies is presented. In a current research project, applying these technologies in a wireless wellness monitoring system is being studied. Objectives and technical specifications of the system are presented.Format: Adobe Acrobat SPDF