VAATIMUSMÄÄRITTELY. PROJEKTITYÖ Tik Wclique
|
|
- Maarit Katajakoski
- 6 vuotta sitten
- Katselukertoja:
Transkriptio
1 VAATIMUSMÄÄRITTELY PROJEKTITYÖ Tik
2 SISÄLLYSLUETTELO Sisällysluettelo... 2 Versiohistoria JOHDANTO Algoritmi Graafi Nauty Mermaid YLEISKUVAUS TOIMINNOT ja VAATIMUKSET Painottamattomien graafien vaatimukset Painottamattoman maksimiklikin koko Yhden maksimiklikin laskeminen Kaikkien maksimiklikkien laskeminen Yhden klikin laskeminen kokoa S Kaikkien klikkien laskeminen kokoa S Yhden klikin laskeminen vähintään kokoa S Kaikkien klikkien laskeminen vähintään kokoa S Solmujen järjestäminen Ensisijaiset "olisi hienoa" -ominaisuudet Klikkien laskenta annetulla solmujen määrällä Painotettujen graafien vaatimukset Painotetun maksimiklikin koko Yhden maksimiklikin laskeminen Kaikkien maksimiklikkien laskeminen Yhden klikin laskeminen kokoa S Kaikkien klikkien laskeminen kokoa S Yhden klikin laskeminen vähintään kokoa S Kaikkien klikkien laskeminen vähintään kokoa S Eri syöteformaattien lukeminen Solmujen järjestäminen MUUT OMINAISUUDET Tehokkuus ja käytettävyys Kieli ja kieliasu Siirrettävyys Käyttökirja Testaaminen Jatkokehitys Liite: Use Case kuva... 11
3 VERSIOHISTORIA Versio Päivämäärä Laatija Kuvaus Dufva Proposal Dufva First draft Dufva Second draft Dufva Third draft Dufva Fourth draft Dufva Edited according to comments received from Patric Östergård and Harri Haanpää
4 VAATIMUSMÄÄRITTELY 4 (11) 1. JOHDANTO Tässä dokumentissa kuvataan ohjelman asiakkaan vaatimuksia. Dokumentti koostuu johdannosta, jonka alaotsikoissa on kerrottu termeistä, jotka saattavat olla ennestään vieraita. Yleiskuvauksessa on mainittu toteutustyökalut, liittymät muihin ohjelmiin ja käyttöympäristön. Toiminnot luvussa kuvataan järjestelmältä vaadittavat ominaisuudet yleisellä tasolla. Neljännessä luvussa mainitaan muista ohjelman ominaisuuksista kuten suorituskykytoiveista ja käytettävyydestä. Liitteenä on Mermaid -ohjelmalla muodostettu UML -kuvaus ohjelman vaatimuksista. Se että käytetäänkö UML -kuvausta toiminnallisessa määrittelyssä on epävarmaa, koska vaatimukset ovat tyypiltään sellaisia, ettei UML anna toiminnalliseen määrittelyyn suurta informatiivista hyötyä. Tavoitteena -ohjelmassa on muodostaa algoritmille toimiva ympäristö, jolloin algoritmin käyttö helpottuu ja algoritmille voidaan luoda uusia käyttötapoja. Ohjelmasta on olemassa jo alustava prototyyppi, jossa on jo jotain ominaisuuksia painavimman klikin löytämiseksi. Sen voi ladata osoitteesta: ~ pat/wclique.html 1.1 Algoritmi Algoritmi jonka ympärille ohjelma rakennetaan on julkinen ja algoritmin toimintaa on kuvattu Internetissä seuraavissa dokumenteissa: "A Fast Algorithm for the Maximum Clique Problem" ~ pat/paper1.ps "A New Algorithm for the Maximum-Weight Clique Problem" ~ pat/paper2.ps Algoritmilla voidaan ratkaista olemassa olevasta graafista asioita joista ollaan kiinnostuneita. Luvussa 1.2 on lyhyt selvitys siitä mikä on graafi. Algoritmi on muodostettu pseudokielellä ja yksi projektin kohteista on muuttaa se C -kielellä toimivaksi. 1.2 Graafi Useissa yhteyksissä tarkastellaan joukkoa solmuja tai tiloja, joista joko on tai ei ole mahdollista siirtyä välittömästi toinen toisiinsa. Tyypillisiä esimerkkejä tällaisista ovat kartta, johon on merkitty kaupunkeja, sekä näiden väliset suorat liikenneyhteydet, tietokoneohjelman kulkua kuvaava vuokaavio ja sukupuut. Graafi, eli verkko G = ( V, E ) muodostuu äärellisistä joukoista V ja E, joista V on ns. solmujen joukko (solmuista
5 VAATIMUSMÄÄRITTELY 5 (11) käytetään myös joissain yhteyksissä nimityksiä kärki tai piste), ja E on sivujen joukko (käytössä myös nimitykset kaari ja haara). Jotta edellinen lause hiukan selkenisi niin Kuva 1 on esitetty kaksi graafia. A-graafi on painottamaton (unweighted) ja b-graafi on painotettu (weighted), jossa solmun paino on sulkujen sisällä. Klikki tarkoittaa yhteyttä usean solmun välillä. ohjelma ei ota kantaa, kuten Nauty ohjelma, siihen onko graafi suunnattu vai suuntaamaton. A-kohdassa maksimiklikin koko on kuusi, b-kohdan graafin maksimiklikin koko on (1) 2 3 2(8) 3(2) 4 5 4(6) 5(4) 6 Graafi a 6(5) Graafi b Kuva 1. Kaksi graafia. 1.3 Nauty Nauty on C kielellä tehty ohjelma jolla voidaan muodostaa automorfisia ryhmiä sekä graafeille että suunnatuille graafeille. Se myös pystyy muodostamaan kanonisia nimiöintejä. Nauty on vapaasti tieteellisissä tarkoituksissa käytettävä ohjelma jonka ohjelmakoodi on julkinen. Nauty ohjelma voidaan ladata osoitteesta: Mermaid Mermaid on Nokialla käytetty ohjelma jolla voidaan luoda UML kuvaus ohjelmalle (ks. liitteenä oleva Mermaidilla tehty UML kuvaus vaatimuksista). Ideana on että esim. yhtä vaatimus soikiota klikattaessa, päästään tarkempiin määrittelyihin, jotka kuuluisivat toiminnalliseen määrittelyyn.
6 VAATIMUSMÄÄRITTELY 6 (11) 2. YLEISKUVAUS Projektityön aihe on ohjelma, josta tulee tieteellisessä käytössä vapaasti käytettävä, eli lähdekoodi on julkinen. Ohjelmatyö tehdään Patric Östergårdille, jonka toimittamassa PostScript dokumentissa:, Patric Östergård, September 28, 2000 on määritelty toivomuksia ohjelmasta. Projektityön koodi tehdään Ansi-C muodossa jolloin se on käyttöjärjestelmästä riippumaton. Ohjelmaa käytetään pääasiassa Unix/Linux käyttöjärjestelmässä jolloin pääosin ohjelman testaus tehdään Nokian tietokoneissa, joissa on Linux käyttöjärjestelmä. Tarvittaessa TKK:n Tietojenkäsittelyteorianlaboratorio on myös käytettävissä. Lopuksi pyritään varmistamaan ohjelman toiminta myös Windows pohjaisissa käyttöjärjestelmissä. Syöte jota en annetaan tulee olla ascii- tai binäärimuotoista, komentoriviparametrit ovat asciita. Tuloste jota sta saadaan on asciimuotoista. Kuva 2 on esitetty syöte- ja tulosteformaatit esimerkkigraafista. 4(3) Esimerkkigraafi 1(1) 2(8) 6(6) 8(5) 3(2) 7(4) 5(3) Syöteformaatti (Dimacsin ascii) c input_jd_w c weighted graph p clq 8 20 e 1 2 e 1 3 e 1 6 e 1 7 e 1 8 e 2 3 e 2 4 e 2 5 e 2 6 e 2 7 e 2 8 e 3 5 e 3 6 e 3 7 e 3 8 e 5 6 e 5 7 e 6 7 e 6 8 e 7 8 n 1 1 n 2 8 n 3 2 n 4 3 n 5 3 n 6 6 n 7 4 n 8 5 c input_jd_uw c unweighted graph p clq 8 20 e 1 2 e 1 3 e 1 6 e 1 7 e 1 8 e 2 3 e 2 4 e 2 5 e 2 6 e 2 7 e 2 8 e 3 5 e 3 6 e 3 7 e 3 8 e 5 6 e 5 7 e 6 7 e 6 8 e 7 8 n 1 1 n 2 1 n 3 1 n 4 1 n 5 1 n 6 1 n 7 1 n 8 1 Tulosteformaatti Kuva 2. n syöte- ja tuloste formaatit. Projektityön päätarkoitus ei ole kehittää itse algoritmia. Jos kuitenkin algoritmi tarvitsee pientä "viilaamista", algoritmin muodostamisessa pseudokielestä syntyy ongelmia tai algoritmi tarvitsee jatkokehitystä, niin yhteyshenkilönä asiakkaan puolelta toimii Harri Haanpää.
7 VAATIMUSMÄÄRITTELY 7 (11) 3. TOIMINNOT JA VAATIMUKSET Ensisijainen päämäärä tässä projektissa on muodostaa toimiva käyttöympäristö algoritmille, jota voidaan kutsua toisesta C kielellä tehdystä ohjelmasta komennolla wclique. Tämä tapahtuu tuottamalla aliohjelmakirjasto, jolla voidaan etsiä klikkejä graafeista. Toissijainen tarkoitus on tuottaa aliohjelmakirjastoon perustuva komentoriviltä ajettava ohjelma, joka ratkoo samoja ongelmia. Ohjelman tulee toimia Unix/Linux käyttöjärjestelmässä yhdessä Nauty ohjelman kanssa ilman ongelmia. Alla on esimerkki C kielen rutiini, eli kuinka ohjelmaa voidaan kutsua. #include "wclique.h"... main() {... /* define graph */... wclique(...); /* process results */... } n tulee ainakin sisältää ensisijaiset vaatimukset, jotka käsittelevät painottamattomia ja painotettuja graafeja (kappaleet ja ). Kuvassa 1 on esitetty mitä tarkoitetaan painotetulla ja painottamattomalla graafilla. 3.1 Painottamattomien graafien vaatimukset Painottamattoman maksimiklikin koko Haluttaessa tietää graafin ominaisuuksista maksimiklikin koko, ohjelman tulee hakea se. tulostaa vastauksena solmujen määrän Yhden maksimiklikin laskeminen -ohjelman tulee laskea pyydettäessä yksi maksimiklikki Kaikkien maksimiklikkien laskeminen -ohjelman tulee laskea pyydettäessä kaikki maksimiklikit.
8 VAATIMUSMÄÄRITTELY 8 (11) Yhden klikin laskeminen kokoa S n tulee hakea yhden luokkaa S olevan klikin solmupisteet Kaikkien klikkien laskeminen kokoa S n tulee hakea kaikkien niiden klikkien solmupisteet, jotka ovat kooltaan luokkaa S Yhden klikin laskeminen vähintään kokoa S n tulee hakea solmupisteet yhdestä klikistä joka on vähintään luokkaa S Kaikkien klikkien laskeminen vähintään kokoa S n tulee hakea kaikkien niiden klikkien solmupisteet, jotka ovat kooltaan vähintään luokkaa S. Kohdissa mainituista kaikkien klikkien laskemisesta: Jos halutaan vain yksi tietynlainen klikki, ohjelma tulostaa sen. Jos pyydetään ohjelmaa hakemaan kaikki tiettyä tyyppiä olevat klikit ei tällainen lähestymistapa välttämättä ole mahdollinen (niitä voi olla miljoonittain). Silloin ohjelma kutsuu jokaisen löydetyn klikin kohdalla funktion. Tämän funktion nimi on wclique- rutiinin parametreina ja käyttäjä luo itse kyseisen funktion. Vrt. qsort() lajittelurutiini C-kielessä missä funktio, joka vertaa kahta alkiota, on annettu parametrina Solmujen järjestäminen n pitää pystyä järjestämään uudelleen graafin solmut Ensisijaiset "olisi hienoa" -ominaisuudet Klikkien laskenta annetulla solmujen määrällä n tulisi laskea yksi tai kaikki klikit annetulla solmujen määrällä, tietyin määrävälein, esimerkiksi: : 2 solmua : 3 solmua Tämä vaatimus on ns. "Olisi hienoa" -ominaisuus ja ei kuulu ehdottomasti vaadittuihin ohjelman ominaisuuksiin.
9 VAATIMUSMÄÄRITTELY 9 (11) 3.2 Painotettujen graafien vaatimukset Painotetun maksimiklikin koko Haluttaessa tietää graafin ominaisuuksista maksimiklikin koko, ohjelman tulee hakea se. Tulosteena palauttaa maksimiklikin painoarvon Yhden maksimiklikin laskeminen -ohjelman tulee laskea pyydettäessä yksi maksimiklikki Kaikkien maksimiklikkien laskeminen -ohjelman tulee laskea pyydettäessä kaikki maksimiklikit Yhden klikin laskeminen kokoa S n tulee hakea yhden luokkaa S olevan klikin solmupisteet Kaikkien klikkien laskeminen kokoa S n tulee hakea kaikkien niiden klikkien solmupisteet, jotka ovat kooltaan luokkaa S Yhden klikin laskeminen vähintään kokoa S n tulee hakea niiden kaikkien klikkien määrä, jotka ovat kooltaan luokkaa S tai enemmän Kaikkien klikkien laskeminen vähintään kokoa S n tulee hakea kaikkien niiden klikkien solmupisteet, jotka ovat kooltaan vähintään luokkaa S Eri syöteformaattien lukeminen Ohjelman tulee pystyä lukemaan dimacsin ascii ja binaari syöteformaatteja. Syöte ja tulostetiedoston ulkoasu on esitetty kuvassa 2. Tarkempaa tietoa syötteen sisällöstä saa osoitteesta: ~ pat/wclique.html
10 VAATIMUSMÄÄRITTELY 10 (11) Solmujen järjestäminen n pitää pystyä järjestämään uudelleen graafin solmut. 4. MUUT OMINAISUUDET 4.1 Tehokkuus ja käytettävyys Vaatimus n tehokkuus ominaisuuksista on, että ohjelma toimii vähintään yhtä nopeasti kuin Patric Östergårdin n protoversio. Ohjelman käytettävyys tulisi olla samalla tasolla kuin Brendan McKayn Nauty ohjelmassa. 4.2 Kieli ja kieliasu Ohjelmakoodin kommentointi tehdään englanniksi mahdollisimman selkeästi jotta jatkokehitys olisi helppoa ja koodi ymmärrettävää. 4.3 Siirrettävyys Tuotteen on oltava arkkitehtuuri riippumaton ja vaivattomasti käännettävissä ANSI C yhteensopivalla kääntäjällä erilaisissa Unix-koneissa ja mielellään myös Windows-koneissa. 4.4 Käyttökirja Käyttökirja toimitetaan englannin kielellä LaTex formaatissa. Käyttökäsikirjassa on selkeästi ja kattavasti dokumentoitava, miten tuotetta käytetään aliohjelmakirjastona ja miten sitä käytetään komentoriviltä. 4.5 Testaaminen Tuote tulee testata huolellisesti. Testaus tulee suorittaa tieteellisesti oikealla tavalla, jotta tulokset ovat luotettavia. 4.6 Jatkokehitys Tehdyt ratkaisut on dokumentoitava niin hyvin että jatkokehittelijä voi pelkän dokumentaation perusteella suunnitella, miten toteuttaa haluamansa muutokset.
11 VAATIMUSMÄÄRITTELY 11 (11) LIITE: USE CASE KUVA Use case kuva ohjelman vaatimuksista.
VAATIMUSMÄÄRITTELY. PROJEKTITYÖ Tik Wclique
VAATIMUSMÄÄRITTELY PROJEKTITYÖ Tik-76.115 SISÄLLYSLUETTELO Sisällysluettelo... 2 Versiohistoria... 3 1. JOHDANTO... 4 1.1 Algoritmi... 4 1.2 Graafi... 4 1.3 Nauty... 5 1.4 Mermaid... 5 2. YLEISKUVAUS...
LisätiedotTOIMINNALLINEN MÄÄRITTELY. PROJEKTITYÖ Tik-76.115 Wclique
TOIMINNALLINEN MÄÄRITTELY PROJEKTITYÖ Tik-.115 SISÄLLYSLUETTELO Sisällysluettelo... Versiohistoria... 1. JOHDANTO... 4 1.1 Tarkoitus ja kattavuus... 4 1. Tuote... 4 1. Määritelmät, termit ja lyhenteet...
LisätiedotTOIMINNALLINEN MÄÄRITTELY. PROJEKTITYÖ Tik Wclique
TOIMINNALLINEN MÄÄRITTELY PROJEKTITYÖ Tik-.115 SISÄLLYSLUETTELO Sisällysluettelo... Versiohistoria... 1. JOHDANTO... 4 1.1 Tarkoitus ja kattavuus... 4 1. Tuote... 4 1. Määritelmät, termit ja lyhenteet...
LisätiedotTOIMINNALLINEN MÄÄRITTELY. PROJEKTITYÖ Tik Wclique
TOIMINNALLINEN MÄÄRITTELY PROJEKTITYÖ Tik-7.115 SISÄLLYSLUETTELO Sisällysluettelo... Versiohistoria... 1. JOHDANTO... 4 1.1 Tarkoitus ja kattavuus... 4 1. Tuote... 4 1. Määritelmät, termit ja lyhenteet...
Lisätiedot- painottamattoman graafin solmujen järjestäminen. - painotetun graafin solmujen järjestäminen
1. DEMO TUOTTEEN OMINAISUUKSISTA Tuotteesta demotaan seuraavat asiat: - käyttöliittymä - painottamattoman graafin solmujen järjestäminen - painotetun graafin solmujen järjestäminen - yhden maksimiklikin
LisätiedotTEKNINEN MÄÄRITTELY. PROJEKTITYÖ Tik Wclique
TEKNINEN MÄÄRITTELY PROJEKTITYÖ Tik-76.115 SISÄLLYSLUETTELO Sisällysluettelo... 2 Versiohistoria... 3 1. JOHDANTO... 4 1.1 Tarkoitus ja kattavuus... 4 1.2 Tuote ja ympäristö... 4 1.3 Määritelmät, merkintätavat
LisätiedotWCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma
TKK/DISKO/Tik-76.115 WCLIQUE Projektiryhmä Clique http://www.hut.fi/~jekahkon/wclique/testplan.pdf WCLIQUE Ohjelmistoprojekti WCLIQUE_TP Projektiryhmä Clique: Janne Dufva, 75008T, email: janne.dufva@nokia.com
LisätiedotWCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma
TKK/DISKO/Tik-76.115 WCLIQUE Projektiryhmä Clique http://www.hut.fi/~jekahkon/wclique/testplan.pdf WCLIQUE Ohjelmistoprojekti WCLIQUE_TP Projektiryhmä Clique: Janne Dufva, 75008T, email: janne.dufva@nokia.com
LisätiedotWCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma
TKK/DISKO/Tik-76.115 WCLIQUE Projektiryhmä Clique http://www.hut.fi/jekahkon/wclique/testplan.html WCLIQUE Ohjelmistoprojekti Projektiryhmä Clique: Janne Dufva, 75008T, email: janne.dufva@nokia.com, 75014C,
LisätiedotTIEDONKULKU. PROJEKTITYÖ Tik-76.115 Wclique
TIEDONKULKU PROJEKTITYÖ Tik-76.115 SISÄLLYSLUETTELO Sisällysluettelo... 2 Versiohistoria... 2 1. JOHDANTO... 3 1.1 Tämän dokumentin tarkoitus... 3 1.2 Projekti... 3 2. Tiedonkulku... 3 2.1 Yleistä... 3
LisätiedotGraafin 3-värittyvyyden tutkinta T Graafiteoria, projektityö (eksakti algoritmi), kevät 2005
Graafin 3-värittyvyyden tutkinta T-79.165 Graafiteoria, projektityö (eksakti algoritmi), kevät 2005 Mikko Malinen, 36474R 29. maaliskuuta, 2005 Tiivistelmä Artikkelissa käydään läpi teoriaa, jonka avulla
Lisätiedot6.4. Järjestyssuhteet
6.4. Järjestyssuhteet Joukon suhteilla voidaan kuvata myös alkioiden järjestystä tietyn ominaisuuden suhteen. Järjestys on myös kaksipaikkainen suhde (ja on monia erilaisia järjestyksiä). Suhde R joukossa
LisätiedotWCLIQUE. Ohjelmistoprojekti. Loppuraportti
TKK/DISKO/Tik-76.115 WCLIQUE Projektiryhmä Clique http://www.hut.fi/jekahkon/wclique/loppuraportti.pdf WCLIQUE Ohjelmistoprojekti Versio 1.0-1 Projektiryhmä Clique: Janne Dufva, 75008T, email: janne.dufva@nokia.com
LisätiedotKäyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä
www.niksula.cs.hut.fi/~jjkankaa// Demosovelluksen tekninen määrittely v. 0.6 Päivitetty 11.12.2000 klo 20:26 Mickey Shroff 2 (12) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite
Lisätiedot10. Painotetut graafit
10. Painotetut graafit Esiintyy monesti sovelluksia, joita on kätevä esittää graafeina. Tällaisia ovat esim. tietoverkko tai maantieverkko. Näihin liittyy erinäisiä tekijöitä. Tietoverkkoja käytettäessä
LisätiedotTEKNINEN MÄÄRITTELY. PROJEKTITYÖ Tik-76.115 Wclique
TEKNINEN MÄÄRITTELY PROJEKTITYÖ Tik-76.115 SISÄLLYSLUETTELO Sisällysluettelo... 2 Versiohistoria... 2 1. JOHDANTO... 3 1.1 Tarkoitus ja kattavuus... 3 1.2 Tuote ja ympäristö... 3 1.3 Määritelmät, merkintätavat
LisätiedotTietorakenteet ja algoritmit - syksy 2015 1
Tietorakenteet ja algoritmit - syksy 2015 1 Tietorakenteet ja algoritmit - syksy 2015 2 Tietorakenteet ja algoritmit Johdanto Ari Korhonen Tietorakenteet ja algoritmit - syksy 2015 1. JOHDANTO 1.1 Määritelmiä
LisätiedotT Testiraportti - integraatiotestaus
T-76.115 Testiraportti - integraatiotestaus 16. huhtikuuta 2002 Confuse 1 Tila Versio: 1.1 Tila: Päivitetty Jakelu: Julkinen Luotu: 19.03.2002 Jani Myyry Muutettu viimeksi: 16.04.2002 Jani Myyry Versiohistoria
LisätiedotSÄHKE-hanke. Abstrakti mallintaminen Tietomallin (graafi) lukuohje
04.02.2005 1 (6) SÄHKE-hanke Versio ja pvm Laatinut Tarkpvm Tarkastanut Hyvpvm Hyväksynyt 2.0 / 04.02.2005 Anneli Rantanen 15.02.2005 Markus Merenmies 18.02.2005 Ohjausryhmä 04.02.2005 2 (6) Muutoshistoria
LisätiedotTEKNINEN MÄÄRITTELY. PROJEKTITYÖ Tik-76.115 Wclique
TEKNINEN MÄÄRITTELY PROJEKTITYÖ Tik-76.115 SISÄLLYSLUETTELO Sisällysluettelo... 2 Versiohistoria... 2 1. JOHDANTO... 3 1.1 Tarkoitus ja kattavuus... 3 1.2 Tuote ja ympäristö... 3 1.3 Määritelmät, merkintätavat
Lisätiedot8. Näppäimistöltä lukeminen 8.1
8. Näppäimistöltä lukeminen 8.1 Sisällys Arvojen lukeminen näppäimistöltä Java-kielessä. In-luokka. In-luokka, käännös ja tulkinta Scanner-luokka. 8.2 Yleistä Näppäimistöltä annettujen arvojen (syötteiden)
LisätiedotUCOT-Sovellusprojekti. Asennusohje
UCOT-Sovellusprojekti Asennusohje Ilari Liukko Tuomo Pieniluoma Vesa Pikki Panu Suominen Versio: 1.00 Julkinen 15. joulukuuta 2006 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä Hyväksyjä Päivämäärä
LisätiedotTietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen
Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari 1 1. JOHDANTO 1.1 Määritelmiä 1.2 Tietorakenteen ja algoritmin valinta 1.3 Algoritmit ja tiedon määrä 1.4 Tietorakenteet ja toiminnot 1.5 Esimerkki:
LisätiedotJULKISTEN VERKKOPALVELUJEN LAATUKRITEERISTÖN KONSEPTI
JULKISTEN VERKKOPALVELUJEN LAATUKRITEERISTÖN KONSEPTI Onesta Solutions Oy Pasilanraitio 5 00240 HELSINKI www.onesta.fi 2/6 Versiohistoria Versio Pvm Selitys Muutokset Tekijät 0.1 26.3.2007 Alustava versio
LisätiedotKysymys: Voidaanko graafi piirtää tasoon niin, että sen viivat eivät risteä muualla kuin pisteiden kohdalla?
7.7. Tasograafit Graafi voidaan piirtää mielivaltaisen monella tavalla. Graafin ominaisuudet voivat näkyä selkeästi jossain piirtämistavoissa, mutta ei toisessa. Eräs tärkeä graafiryhmä, pintagraafit,
Lisätiedot8. Näppäimistöltä lukeminen 8.1
8. Näppäimistöltä lukeminen 8.1 Sisällys Arvojen lukeminen näppäimistöltä Java-kielessä. In-luokka. In-luokka, käännös ja tulkinta Scanner-luokka. 8.2 Yleistä Näppäimistöltä annettujen arvojen (syötteiden)
LisätiedotLaskennan teoria (kevät 2006) Harjoitus 3, ratkaisuja
581336 Laskennan teoria (kevät 2006) Harjoitus 3, ratkaisuja 1. S! axc X! axc X! by c Y! by c Y! " 2. (a) Tehtävänä on konstruoida rajoittamaton kielioppi, joka tuottaa kielen f0 n 1 n jn 1g. Vaihe1: alkutilanteen
LisätiedotELM GROUP 04. Teemu Laakso Henrik Talarmo
ELM GROUP 04 Teemu Laakso Henrik Talarmo 23. marraskuuta 2017 Sisältö 1 Johdanto 1 2 Ominaisuuksia 2 2.1 Muuttujat ja tietorakenteet...................... 2 2.2 Funktiot................................
LisätiedotTAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos. Harjoitustyö 4: Cache, osa 2
TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja tietokonetekniikan laitos TKT-3200 Tietokonetekniikka I Harjoitustyö 4: Cache, osa 2.. 2010 Ryhmä Nimi Op.num. 1 Valmistautuminen Cache-työn toisessa osassa
LisätiedotAlgoritmit 1. Luento 1 Ti Timo Männikkö
Algoritmit 1 Luento 1 Ti 10.1.2017 Timo Männikkö Luento 1 Algoritmi Algoritmin toteutus Ongelman ratkaiseminen Algoritmin tehokkuus Algoritmin suoritusaika Algoritmin analysointi Algoritmit 1 Kevät 2017
LisätiedotJohdatus graafiteoriaan
Johdatus graafiteoriaan Syksy 2017 Lauri Hella Tampereen yliopisto Luonnontieteiden tiedekunta 126 Luku 3 Puut 3.1 Puu 3.2 Virittävä puu 3.3 Virittävän puun konstruointi 3.4 Minimaalinen virittävä puu
LisätiedotTAMPEREEN TEKNILLINEN YLIOPISTO
TAMPEREEN TEKNILLINEN YLIOPISTO Digitaali- ja Tietokonetekniikan laitos TKT-3200 Tietokonetekniikka ASSEMBLER: QSORT 06.09.2005 Ryhmä 00 nimi1 email1 opnro1 nimi2 email2 opnro2 nimi3 email3 opnro3 1. TEHTÄVÄ
LisätiedotAlgoritmit 1. Luento 3 Ti Timo Männikkö
Algoritmit 1 Luento 3 Ti 17.1.2017 Timo Männikkö Luento 3 Algoritmin analysointi Rekursio Lomituslajittelu Aikavaativuus Tietorakenteet Pino Algoritmit 1 Kevät 2017 Luento 3 Ti 17.1.2017 2/27 Algoritmien
LisätiedotSe mistä tilasta aloitetaan, merkitään tyhjästä tulevalla nuolella. Yllä olevassa esimerkissä aloitustila on A.
Tehtävä. Tämä tehtävä on aineistotehtävä, jossa esitetään ensin tehtävän teoria. Sen jälkeen esitetään neljä kysymystä, joissa tätä teoriaa pitää soveltaa. Mitään aikaisempaa tehtävän aihepiirin tuntemusta
Lisätiedot10. Painotetut graafit
10. Painotetut graafit Esiintyy monesti sovelluksia, joita on kätevä esittää graafeina. Tällaisia ovat esim. tietoverkko tai maantieverkko. Näihin liittyy erinäisiä tekijöitä. Tietoverkkoja käytettäessä
LisätiedotRekursiolause. Laskennan teorian opintopiiri. Sebastian Björkqvist. 23. helmikuuta Tiivistelmä
Rekursiolause Laskennan teorian opintopiiri Sebastian Björkqvist 23. helmikuuta 2014 Tiivistelmä Työssä käydään läpi itsereplikoituvien ohjelmien toimintaa sekä esitetään ja todistetaan rekursiolause,
LisätiedotTietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Pino Pinon määritelmä Pinon sovelluksia Järjestyksen kääntäminen Palindromiprobleema Postfix-lausekkeen laskenta Infix-lausekkeen muunto postfix-lausekkeeksi Sisäkkäiset funktiokutsut
LisätiedotMäärittelyvaihe. Projektinhallinta
Määrittelyvaihe Projektinhallinta testaus määrittely suunnittelu ohjelmointi käyttöönotto, testaus tuotteenhallinta laadunvarmistus dokumentointi vaatimustenhallinta Määrittely Määrittely, eli kansanomaisesti
LisätiedotSopimus Asiakas- ja potilastietojärjestelmästä. Liite N: Kielivaatimukset
Sopimus Asiakas- ja potilastietojärjestelmästä Liite N: Kielivaatimukset VERSIOHISTORIA Päivä Versio Kuvaus Tekijä 12.3.15 3.0 Tarjouspyynnön liitteeksi 2 (6) SISÄLLYSLUETTELO 1 JOHDANTO... 4 2 JÄRJESTELMÄN
LisätiedotC-ohjelmoinnin peruskurssi. Pasi Sarolahti
C! C-ohjelmoinnin peruskurssi Pasi Sarolahti Mitä haluan oppia C-kurssilla? ja miksi? Tutustu lähimpään naapuriin Keskustelkaa miksi halusitte / jouduitte tulemaan kurssille 3 minuuttia è kootaan vastauksia
LisätiedotLisää pysähtymisaiheisia ongelmia
Lisää pysähtymisaiheisia ongelmia Lause: Pysähtymättömyysongelma H missä H = { w111x w validi koodi, M w ei pysähdy syötteellä x } ei ole rekursiivisesti lueteltava. Todistus: Pysähtymisongelman komplementti
LisätiedotJohdatus graafiteoriaan
Johdatus graafiteoriaan Syksy 2017 Lauri Hella Tampereen yliopisto Luonnontieteiden tiedekunta 62 Luku 2 Yhtenäisyys 2.1 Polku 2.2 Lyhin painotettu polku 2.3 Yhtenäinen graafi 2.4 Komponentti 2.5 Aste
LisätiedotLuku 7. Verkkoalgoritmit. 7.1 Määritelmiä
Luku 7 Verkkoalgoritmit Verkot soveltuvat monenlaisten ohjelmointiongelmien mallintamiseen. Tyypillinen esimerkki verkosta on tieverkosto, jonka rakenne muistuttaa luonnostaan verkkoa. Joskus taas verkko
LisätiedotUudelleenkäytön jako kahteen
Uudelleenkäyttö Yleistä On pyritty pääsemään vakiokomponenttien käyttöön Kuitenkin vakiokomponentit yleistyneet vain rajallisilla osa-alueilla (esim. windows-käyttöliittymä) On arvioitu, että 60-80% ohjelmistosta
LisätiedotPARITUS KAKSIJAKOISESSA
PARITUS KAKSIJAKOISESSA GRAAFISSA Informaatiotekniikan t iik seminaari i Pekka Rossi 4.3.2008 SISÄLTÖ Johdanto Kaksijakoinen graafi Sovituksen peruskäsitteet Sovitusongelma Lisäyspolku Bipartite matching-algoritmi
Lisätiedot8.5. Järjestyssuhteet 1 / 19
8.5. Järjestyssuhteet 1 / 19 Määritelmä Joukon suhteilla voidaan kuvata myös alkioiden järjestystä tietyn ominaisuuden suhteen. Järjestys on myös kaksipaikkainen suhde (ja on monia erilaisia järjestyksiä).
LisätiedotKönigsbergin sillat. Königsberg 1700-luvulla. Leonhard Euler ( )
Königsbergin sillat 1700-luvun Königsbergin (nykyisen Kaliningradin) läpi virtasi joki, jonka ylitti seitsemän siltaa. Sanotaan, että kaupungin asukkaat yrittivät löytää reittiä, joka lähtisi heidän kotoaan,
LisätiedotT Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (opetusmoniste, kappaleet )
T-79144 Syksy 2004 Logiikka tietotekniikassa: perusteet Laskuharjoitus 7 (opetusmoniste, kappaleet 11-22) 26 29102004 1 Ilmaise seuraavat lauseet predikaattilogiikalla: a) Jokin porteista on viallinen
LisätiedotGood Minton Sulkapalloliiton Kilpailujärjestelmä SEPA: Heuristinen arviointi
Good Minton Sulkapalloliiton Kilpailujärjestelmä SEPA: Heuristinen arviointi Versiohistoria: Versio: Pvm: Laatijat: Muutokset: 0.1 2006-11-25 Janne Mäkelä Alustava 1.0 2006-12-10 Janne Mäkelä Valmis 1.
LisätiedotA274101 TIETORAKENTEET JA ALGORITMIT
A274101 TIETORAKENTEET JA ALGORITMIT VERKOT ELI GRAAFIT Lähteet: Timo Harju, Opintomoniste Keijo Ruohonen, Graafiteoria (math.tut.fi/~ruohonen/gt.pdf) HISTORIAA Verkko- eli graafiteorian historia on saanut
Lisätiedot11.4. Context-free kielet 1 / 17
11.4. Context-free kielet 1 / 17 Määritelmä Tyypin 2 kielioppi (lauseyhteysvapaa, context free): jos jokainenp :n sääntö on muotoa A w, missäa V \V T jaw V. Context-free kielet ja kieliopit ovat tärkeitä
LisätiedotKuva Suomen päätieverkko 1 Moottoritiet on merkitty karttaan vihreällä, muut valtatiet punaisella ja kantatiet keltaisella värillä.
POHDIN projekti TIEVERKKO Tieverkon etäisyyksien minimointi ja esimerkiksi maakaapeleiden kokonaismäärän minimointi sekä ylipäätään äärellisen pistejoukon yhdistäminen reitityksillä toisiinsa niin, että
LisätiedotTOIMINNALLINEN MÄÄRITTELY MS
TOIMINNALLINEN MÄÄRITTELY 11.11.2015 MS YLEISTÄ 1/2 jäsennelty etenee yleiskuvauksesta yksityiskohtiin kieliasultaan selkeä kuvaa myös tulevan järjestelmän ympäristöä tarpeellisella tarkkuudella kuvaa
LisätiedotTIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 17. marraskuuta 2009
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 17. marraskuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe E tiistai 1.12. klo 10 koodigenerointi (ilman ta) Vaihe
LisätiedotT Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta
T-76.115 Tietojenkäsittelyopin ohjelmatyö Sisältö Tämä on dokumentti esittelee tietokonegrafiikkaalgoritmien visualisointijärjestelmän kehitysprojektissa käytettävän vaatimustenhallintamenetelmän. Päivämäärä
LisätiedotYlläpitodokumentti. Boa Open Access. Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Ylläpitodokumentti Boa Open Access Helsinki 2.5.2006 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Ilmari
LisätiedotSisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä 12.1 12.2 12.3 12.4
Sisällys 12. Näppäimistöltä lukeminen Arvojen lukeminen näppäimistöltä yleisesti. Arvojen lukeminen näppäimistöltä Java-kielessä.. Luetun arvon tarkistaminen. Tietovirrat ja ohjausmerkit. Scanner-luokka.
LisätiedotJohnson, A Theoretician's Guide to the Experimental Analysis of Algorithms.
Kokeellinen algoritmiikka (3 ov) syventäviä opintoja edeltävät opinnot: ainakin Tietorakenteet hyödyllisiä opintoja: ASA, Algoritmiohjelmointi suoritus harjoitustyöllä (ei tenttiä) Kirjallisuutta: Johnson,
LisätiedotEsimerkkejä polynomisista ja ei-polynomisista ongelmista
Esimerkkejä polynomisista ja ei-polynomisista ongelmista Ennen yleisempiä teoriatarkasteluja katsotaan joitain tyypillisiä esimerkkejä ongelmista ja niiden vaativuudesta kaikki nämä ongelmat ratkeavia
LisätiedotOhjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit
Ohjelmiston testaus ja laatu Ohjelmistotekniikka elinkaarimallit Vesiputousmalli - 1 Esitutkimus Määrittely mikä on ongelma, onko valmista ratkaisua, kustannukset, reunaehdot millainen järjestelmä täyttää
Lisätiedot12. Näppäimistöltä lukeminen 12.1
12. Näppäimistöltä lukeminen 12.1 Sisällys Arvojen lukeminen näppäimistöltä yleisesti. Arvojen lukeminen näppäimistöltä Java-kielessä. In-luokka. Luetun arvon tarkistaminen. Tietovirrat ja ohjausmerkit.
LisätiedotL models. Tekninen määrittely. Ryhmä Rajoitteiset
Teknillinen Korkeakoulu T-76.115 Tietojenkäsittelyopin ohjelmatyö Lineaaristen rajoitteiden tyydyttämistehtävän ratkaisija L models Tekninen määrittely Ryhmä Rajoitteiset Versio Päivämäärä Tekijä Muutokset
LisätiedotC-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa.
Taulukot C-kielessä taulukko on joukko peräkkäisiä muistipaikkoja, jotka kaikki pystyvät tallettamaan samaa tyyppiä olevaa tietoa. Taulukon muuttujilla (muistipaikoilla) on yhteinen nimi. Jokaiseen yksittäiseen
LisätiedotLyhyt kertaus osoittimista
, syksy 2007 Kertausta Luento 10 12.10.2007 Syksy 2007 1 Lyhyt kertaus osoittimista char *p; /* char, int, jne ilmoittavat, minkä tyyppisiä */ Keskusmuisti int *q; /* olioita sisältäviin muistilohkoihin
LisätiedotValppaan asennus- ja käyttöohje
Versio Päiväys Muokkaaja Kuvaus 0.9 16.2.2006 Tuukka Laakso Korjattu versio 0.1 Antti Kettunen Alustava versio Sisällysluettelo 1 Johdanto...2 2 Valppaan asennus...3 2.1 Valppaan kääntäminen...3 2.2 Valmiiksi
Lisätiedot58160 Ohjelmoinnin harjoitustyö
58160 Ohjelmoinnin harjoitustyö Testaus 30.3.2009 Tuntiop. Sami Nikander sami.nikander@helsinki.fi 58160 Ohjelmoinnin harjoitustyö, Sami Nikander 30.3.2009 1 Testaus Ohjelman systemaattista tutkimista
LisätiedotTestaussuunnitelma PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testaussuunnitelma PULSU Syksy 2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (9 op) Projektiryhmä Heikki Manninen Noora Joensuu
LisätiedotWCLIQUE Ohjelmistoprojekti. Projektisuunnitelma
Projektiryhmä OHJELMISTOPROJEKTI Clique http://www.hut.fi/jekahkon/wclique/projplan.pdf WCLIQUE Ohjelmistoprojekti Projektiryhmä Clique: Janne Dufva, 75008T, email: janne.dufva@nokia.com Juha Kähkönen,
LisätiedotOhjelmoinnin peruskurssi Y1
Ohjelmoinnin peruskurssi Y1 CSE-A1111 21.9.2015 CSE-A1111 Ohjelmoinnin peruskurssi Y1 21.9.2015 1 / 25 Mahdollisuus antaa luentopalautetta Goblinissa vasemmassa reunassa olevassa valikossa on valinta Luentopalaute.
LisätiedotHarjoitus 5 (viikko 48)
Moni tämän harjoituksen tehtävistä liittyy joko suoraan tai epäsuorasti kurssin toiseen harjoitustyöhön. Harjoitustyö edistyy sitä paremmin, mitä enemmän tehtäviä ratkaiset. Mikäli tehtävissä on jotain
LisätiedotLoppukurssin järjestelyt
C! Loppukurssin järjestelyt 29.3.2018 Ohjelmassa Yhteenvetoa palautteesta Ohjelmontitehtävän järjestelyt Tietokonetentin järjestelyt Kysyttävää / kerrattavaa 10-kierroksen asioista? Aikatauluista 10. kierroksen
LisätiedotS09 04 Kohteiden tunnistaminen 3D datasta
AS 0.3200 Automaatio ja systeemitekniikan projektityöt S09 04 Kohteiden tunnistaminen 3D datasta Loppuraportti 22.5.2009 Akseli Korhonen 1. Projektin esittely Projektin tavoitteena oli algoritmin kehittäminen
LisätiedotHarjoitus 1 (20.3.2014)
Harjoitus 1 (20.3.2014) Tehtävä 1 Piirretään tilanteesta verkko, jossa kaupungeille on annetttu seuraavat numerot: 1 = Turku 2 = Tampere 3 = Hämeenlinna 4 = Imatra 5 = Jyväskylä. 5 2 149(5) 190(4) 113(1)
LisätiedotHarjoitus 3 -- Ratkaisut
Harjoitus 3 -- Ratkaisut 1 ' '-merkki kirjoitetaan =, ' '-merkki!=, ' '-merkki ==. Yhtälöiden ratkaisusta puhutaan lisää myöhemmin. a f x, y : If ehtolauseke x y, y tämä palautetaan, jos
LisätiedotSystem.out.printf("%d / %d = %.2f%n", ekaluku, tokaluku, osamaara);
Kysy Karilta tai Kimmolta, jos tehtävissä on jotain epäselvää. Kerro WETOon liittyvät ongelmat suoraan Jormalle sähköpostitse (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida ja
LisätiedotKasvatustieteet
Kasvatustieteet 2013-15 KASVATUSTIETEET 2013-15, N =5284 MATEMATIIKKA JA REAALIAINEET Kasvatustieteisiin valituilla opiskelijoilla lyhyen matematiikan paino (49 %) on suuri, jopa suurin kaikista tutkintonimikkeistä.
LisätiedotAlgoritmit 1. Luento 9 Ti Timo Männikkö
Algoritmit 1 Luento 9 Ti 7.2.2017 Timo Männikkö Luento 9 Graafit ja verkot Kaaritaulukko, bittimatriisi, pituusmatriisi Verkon lyhimmät polut Floydin menetelmä Lähtevien ja tulevien kaarien listat Forward
LisätiedotSystem.out.printf("%d / %d = %.2f%n", ekaluku, tokaluku, osamaara);
Mikäli tehtävissä on jotain epäselvää, laita sähköpostia vastuuopettajalle (jorma.laurikkala@uta.fi). Muista nimetä muuttujat hyvin sekä kommentoida ja sisentää koodisi. Ohjelmointitehtävien osalta palautetaan
LisätiedotKYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka. Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012
KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka Joni Korjala APACHE WWW-PALVELIN Seminaarityö 2012 SISÄLLYS 1 JOHDANTO 3 2 WWW-PALVELIMEN TOIMINTA 4 3 OMINAISUUDET
LisätiedotUutisjärjestelmä. Vaatimusmäärittely. Web-palvelujen kehittäminen. Versio 1.3
Uutisjärjestelmä Vaatimusmäärittely Versio 1.3 Sisällys 1 Muutoshistoria... 4 2 Viitteet... 4 3 Sanasto... 4 3.1 Lyhenteet... 4 3.2 Määritelmät... 4 4 Johdanto...5 4.1 Järjestelmän yleiskuvaus... 5 4.2
LisätiedotOhjelmassa muuttujalla on nimi ja arvo. Kääntäjä ja linkkeri varaavat muistilohkon, jonne muuttujan arvo talletetaan.
Osoittimet Ohjelmassa muuttujalla on nimi ja arvo. Kääntäjä ja linkkeri varaavat muistilohkon, jonne muuttujan arvo talletetaan. Muistilohkon koko riippuu muuttujan tyypistä, eli kuinka suuria arvoja muuttujan
LisätiedotCUDA. Moniydinohjelmointi 17.4.2012 Mikko Honkonen
CUDA Moniydinohjelmointi 17.4.2012 Mikko Honkonen Yleisesti Compute Unified Device Architecture Ideana GPGPU eli grafiikkaprosessorin käyttö yleiseen laskentaan. Nvidian täysin suljetusti kehittämä. Vuoden
LisätiedotA274101 TIETORAKENTEET JA ALGORITMIT
A274101 TIETORAKENTEET JA ALGORITMIT GRAAFITEHTÄVIÄ JA -ALGORITMEJA Lähteet: Timo Harju, Opintomoniste Keijo Ruohonen, Graafiteoria (math.tut.fi/~ruohonen/gt.pdf) GRAAFIN LÄPIKÄYMINEN Perusta useimmille
Lisätiedot811312A Tietorakenteet ja algoritmit 2015-2016. V Verkkojen algoritmeja Osa 2 : Kruskalin ja Dijkstran algoritmit
811312A Tietorakenteet ja algoritmit 2015-2016 V Verkkojen algoritmeja Osa 2 : Kruskalin ja Dijkstran algoritmit Sisältö 1. Johdanto 2. Leveyshaku 3. Syvyyshaku 4. Kruskalin algoritmi 5. Dijkstran algoritmi
LisätiedotTietueet. Tietueiden määrittely
Tietueet Tietueiden määrittely Tietue on tietorakenne, joka kokoaa yhteen eri tyyppistä tietoa yhdeksi asiakokonaisuudeksi. Tähän kokonaisuuteen voidaan viitata yhteisellä nimellä. Auttaa ohjelmoijaa järjestelemään
Lisätiedoton rekursiivisesti numeroituva, mutta ei rekursiivinen.
6.5 Turingin koneiden pysähtymisongelma Lause 6.9 Kieli H = { M pysähtyy syötteellä w} on rekursiivisesti numeroituva, mutta ei rekursiivinen. Todistus. Todetaan ensin, että kieli H on rekursiivisesti
LisätiedotHarjoitus 3 (31.3.2015)
Harjoitus (..05) Tehtävä Olkoon kaaren paino c ij suurin sallittu korkeus tieosuudella (i,j). Etsitään reitti solmusta s solmuun t siten, että reitin suurin sallittu korkeus pienimmillään olisi mahdollisimman
Lisätiedot811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2016-2017 1. Algoritmeista 1.1 Algoritmin käsite Algoritmi keskeinen laskennassa Määrittelee prosessin, joka suorittaa annetun tehtävän Esimerkiksi Nimien järjestäminen aakkosjärjestykseen
LisätiedotTuringin koneen laajennuksia
Turingin koneen laajennuksia Turingin koneen määritelmään voidaan tehdä erilaisia muutoksia siten että edelleen voidaan tunnistaa tasan sama luokka kieliä. Moniuraiset Turingin koneet: nauha jakautuu k
LisätiedotT Testiraportti - järjestelmätestaus
T-76.115 Testiraportti - järjestelmätestaus 18. huhtikuuta 2002 Confuse 1 Tila Versio: 1.0 Tila: Päivitetty Jakelu: Julkinen Luotu: 18.04.2002 Jani Myyry Muutettu viimeksi: 18.04.2002 Jani Myyry Versiohistoria
LisätiedotLiikkuva-sovellusprojekti
Liikkuva-sovellusprojekti Joel Kivelä Erkki Koskenkorva Mika Lehtinen Oskari Leppäaho Petri Partanen Vaatimusmäärittely Julkinen Versio 010 1322014 Jyväskylän yliopisto Tietotekniikan laitos Jyväskylä
LisätiedotJulkisen hallinnon kokonaisarkkitehtuuri
Julkisen hallinnon kokonaisarkkitehtuuri Rajaukset ja tarkoitus Määrittely 0.91 Päiväys 7.5.2017 7.5.2017 2 (6) Sisällysluettelo 1 Johdanto... 3 2 JHKA:n tarkoitus... 3 3 JHKA:n rajaukset... 4 4 Miten
LisätiedotVaatimusmäärittely Ohjelma-ajanvälitys komponentti
Teknillinen korkeakoulu 51 Vaatimusmäärittely Ohjelma-ajanvälitys komponentti Versio Päiväys Tekijä Kuvaus 0.1 21.11.01 Oskari Pirttikoski Ensimmäinen versio 0.2 27.11.01 Oskari Pirttikoski Lisätty termit
LisätiedotLoppukurssin järjestelyt C:n edistyneet piirteet
C! Loppukurssin järjestelyt C:n edistyneet piirteet 30.3.2017 Ohjelmassa Ohjelmontitehtävän järjestelyt Tietokonetentin järjestelyt Esikääntäjä Parametrilistat Funktio-osoittimet Kunniamainintoja Kuura
LisätiedotAlgoritmit 2. Luento 13 Ti Timo Männikkö
Algoritmit 2 Luento 13 Ti 2.5.2017 Timo Männikkö Luento 13 Merkkijonon sovitus Horspoolin algoritmi Laskennallinen vaativuus Päätösongelmat Epädeterministinen algoritmi Vaativuusluokat NP-täydellisyys
LisätiedotOngelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?
Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä? 2013-2014 Lasse Lensu 2 Ongelma 2: Milloin ongelmat muuttuvat oikeasti hankaliksi? 2013-2014 Lasse Lensu 3 Ongelma 3: Miten hankalia ongelmia
LisätiedotTIE Tietorakenteet ja algoritmit 1. TIE Tietorakenteet ja algoritmit
TIE-20100 Tietorakenteet ja algoritmit 1 TIE-20100 Tietorakenteet ja algoritmit TIE-20100 Tietorakenteet ja algoritmit 2 Lähteet Luentomoniste pohjautuu vahvasti prof. Antti Valmarin vanhaan luentomonisteeseen
LisätiedotTAMK Ohjelmistotekniikka G Graafisten käyttöliittymien ohjelmointi Herkko Noponen Osmo Someroja. Harjoitustehtävä 2: Karttasovellus Kartta
TAMK Ohjelmistotekniikka G-04237 Graafisten käyttöliittymien ohjelmointi Harjoitustehtävä 2: Karttasovellus Kartta TAMK Karttasovellus Kartta Sivu 2/8 Sisällysluettelo 1. JOHDANTO...3 2. VAATIMUSMÄÄRITTELY...
LisätiedotKUVANKÄSITTELY THE GIMP FOR WINDOWS OHJELMASSA
KUVANKÄSITTELY THE GIMP FOR WINDOWS OHJELMASSA Ohjeistuksessa käydään läpi kuvan koon ja kuvan kankaan koon muuntaminen esimerkin avulla. Ohjeistus on laadittu auttamaan kuvien muokkaamista kuvakommunikaatiota
Lisätiedot