2.2. Kohteiden konstruktiivinen avaruusgeometrinen esitys
|
|
- Jyrki Saarinen
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 .. Kohteiden konstruktiivinen avaruusgeometrinen esitys Avaruusgeometrinen esitys on käyttäjäriippuvainen ja vaati erikoismenetelmiä tai lopuksi konversion monikulmiomalliksi. Se on korkean tason esitys ja esittää sekä muodon että rakenteen. Esitetään alkeismuotojen eli primitiivien yhdistelmä. Kuvan.8. esimerkit havainnollistavat Boolen operaatioiden käyttöä. Miellettäessä kohteet pistejoukkoina unioni operaatio (a) yhdistää kaikki kahden kohteen pisteet. Esimerkki (b) kuvaa vähentämistä, jossa toisen kohteen pisteet vähennetään ensimmäisestä. Leikkaus muodostetaan esimerkissä (c). Esitysmuoto mahdollistaa vuorovaikutteisen mallintamisen. Kyseeseen tulee varsinkin teollisuustuotannon esineet, joita suunnitellaan CAD:lla. Primitiivit ovat esim. pallon, kartion, sylinterin tai suorakulmionmuotoisia kappaleita, joita yhdistellään Boolen joukko operaatiolla ja lineaarisilla muunnoksilla kolmiulotteisesti. Kohde tallennetaan attribuuttipuuna. Lehdet sisältävät yksinkertaisia primitiivejä ja solmut operaattoreita tai lineaarisia muunnoksia. Kohde muodostetaan lisäämällä ja vähentämällä (reikien tekemiseksi).. luku 87 Kuva.8. (a) Unioni, (b) erotus ja (c) leikkaus.. luku 88 Kuvassa.9. esitetään puu, joka sisältää kahden suorakulmiokohteen yhdistämisen unionilla ja tästä erotuksen suorittamisen poraamalla reikä. Kuva.10. havainnollistaa edelleen Boolen operaatioiden kätevyyttä. Esimerkissä (a) kaksi erikseen luotua osaa yhdistetään unionilla ja tätä seuraavalla erotuksella. Esimerkissä (b) monimutkainen kappale rakennetaan sylintereistä unioneilla, mistä erotuksella saadaan lopullinen muoto. Kuva.9. Kolmesta primitiivistä rakennettu kohde puutietorakenteineen.. luku 89 Kuva.10. Boolen operaatioiden käyttöä: (a) unioni ja erotus sekä (b) kaksi unionia ja erotus.. luku 90
2 .3. Tilan alijakomenetelmät Vaikka avaruusgeometrinen esitys on tehokas, siinä on heikkouksiakin. Käytännöllinen ongelma on tarvittava mallin muodostamisen ja kuvan luomisen laskenta aika. Operaatioiden vaikutus on sitä paitsi kuvassa globaali, ja lokaaleja operaatioita, yksityiskohtien muokkausta, on vaikea tehdä. Menetelmä on volumetrinen. Kohteen käyttämä avaruuden osa on pikemmin tilavuutta kuin pintaa. Tilan alijakomenetelmä jakaa koko kohdeavaruuden hierarkkisesti kuutionmuotoisiin osiin, vokseleihin. Jokaisen vokselin kohdalla merkitään, kuuluko se kohteeseen vai ei. Tänä vaatii runsaasti muistitilaa, mutta on monesti käyttökelpoinen tapa, koska data on alkujaan tässä muodossa tai on helposti siihen muutettavissa. Esim. lääketieteellinen data on usein ylläkuvattua. Myös algoritmien ominaisuudet voivat suosia vokselidatan käyttöä. Esim. säteenjäljityksellä on etuja vokselidatalla, kun taas tavanomaisilla esitysmuodoilla se on paljon vaativampi tehtävä. Vokselidatalle tietorakenteena käytetään tyypillisesti kahdeksanpuuta (octree) kuvan.11. tapaan, jossa (a) kuutio on jaettu rekursiivisesti osiin, (b) otetaan kuutioon asetettu kohde ja (c) merkitään, mitkä kuution osista ovat kohteessa mukana. Myös tietorakenne on annettu.. luku 91. luku 9 On kaksi tapaa käyttää kahdeksanpuuta näkymän esittämiseksi. Voidaan käyttää kahdeksanpuuta sellaisenaan kohteen täydellistä esittämistä varten näkymässä. Kohteeseen käytettyjen solujen tai osien joukko muodostaa esityksen. Monimutkaisen näkymän tilanteessa tarkka kuva voi vaatia huikean määrän soluja, mikä johtaa suureen muistitilan tarpeeseen. Kuva.11. Kohteen esittäminen alijakomenetelmällä kahdeksanpuun ollessa tietorakenteena. Toinen, yleinen menettely on hyödyntää tavanomaisia tietorakenteita kohteiden esittämisessä ja käyttää kahdeksanpuuta vain kohteiden jaon kuvaamiseen näkymässä. Tällöin kahdeksanpuun lehti, joka sisältäisi jonkin kohteen tai tämän osan, sisältää viittauksen (osoittimen) kyseiseen kohteeseen.. luku 93. luku 94
3 Kuva.1. havainnollistaa tätä kaksiulotteisessa tilanteessa. Alijako on lopetettu heti, kun alue sisältää enintään vain yhtä kohdetta. Kohteen muoto esitetään omalla tietorakenteellaan. Tason ollessa kyseessä kohteet olisivat monikulmioita tai lappuja. Yleisessä mielessä alue voisi sisältää useiden kohteiden osia, jolloin käytettäisiin viittauslistaa niihin. Täten kahdeksanpuuta sovelletaan muista poikkeavasti hybridinä toisten tietorakenteiden kanssa.. luku 95 Kuva.1. Kaksiulotteisen näkymän nelipuuesitys (quadtree), jossa jakoa on jatkettu, kunnes alue sisältää enintään yhtä kohdetta. Puun lehdet viittaavat kohteen omaan tietorakenteeseen.. luku 96 Kahdeksanpuut ja monikulmiot Kahdeksanpuita ei siis tavallisesti käytetä tietorakenteena vokselidatalle, vaan järjestämään näkymää, jossa on useita kohteita. Kohteita ei esitetä vokseleilla, vaan monikulmioita sisältävinä suorakulmioisina tiloina. Suorakulmiot esitetään vokseleina. Kahdeksanpuun lehteen voidaan sijoittaa kohteiden ryhmiä, yksittäisiä kohteita, näiden osia tai jopa yksittäisiä monikulmioita. Tällainen menettely voi suuresti nopeuttaa laskentaa, varsinkin säteenjäljittämisessä. Kuvassa.13. on esimerkki, jossa on vähän kohteita, mutta näissä suuri määrä monikulmioita. Tämä johtaa syviin (epäedullisiin) puihin aliajon jakaessa lähinnä tyhjää tilaa. Kuva.13. Vähän kohteita, joilla sitä vastoin monikulmioiden lukumäärä on suuri. Kohteet ovat pieniä verrattuna huoneen tilavuuteen.. luku 97. luku 98
4 BSP puut Vaihtoehtoinen esitysmuoto on BSP puu (binary space partitioning). Sen jokainen sisäsolmu vastaa yhtä jaettua tasoaluetta, joka jakaa avaruuden tilan kahtia. Kaksiulotteinen analoginen kuva on kuvassa.14. BSP puu on kätevä tilanjakamistehtävien erikoistapauksissa, kuten piilopintojen poistossa. Jakotasojen hyödynnettävät ominaisuudet ovat: v Mikään tason toisella puolella oleva kohde ei voi leikata toisen puolen kohdetta. v Katsojaan nähden samalla tason puolella olevat kohteet ovat häntä lähempänä kuin toisen puoleen kohteet. Kahdeksanpuuhun nähden BSP puu ei ole parempi; kyse on samasta informaatiosta koodattuna eri tavalla. Kuva.14. Yhden jaon nelipuu ja BSP puu kaksiulotteisessa alueessa. Vokselikohteiden luominen Lääketieteellinen kuvantaminen on eräs keskeisistä sovellusaloista kolmiulotteisten kuvien yhteydessä. Kyseessä voi olla esim. röntgenkuva kehon osasta, jolloin pikseli vastaa tason pistettä ja tasoja asetetaan päällekkäin pinoksi. Yksinkertainen keino muuttaa tasojen pino kolmiulotteiseksi kuvaksi on ottaa kahdesta päällekkäisestä tasosta vastinpisteiden parit vokseleiksi.. luku 99. luku Kohteiden esittäminen implisiittisillä funktioilla Kokonaisen kohteen esittäminen yhdellä implisiittisellä kaavalla rajoittuu määrättyihin tapauksiin, esim. palloihin. Huolimatta rajoittuneisuudestaan näillä on merkitystä tietokonegrafiikassa. Implisiittiset funktiot ovat primitiivien vaikutuksesta muodostuneita pintoja, joilla on vaikutusta lokaalisesti. Esimerkkinä on kuvan.15. samanlaiset kynttilät, jotka muodostavat valolähteen. Tätä kuvataan liekkejä ympäröivillä ääriviivoilla. Tällainen pinta on esitettävissä sopivilla funktioilla (skalaariarvoilla). Kuva.15. Kahden kynttilän muodostama valolähde, jota kuvataan yhteiselläkin Käytetään generoijaa eli primitiiviä, jolle voidaan määritellä etäisyysfunktio d(p) sen lähellä olevia pisteitä P varten. Käytetään potentiaalifunktiota f(d(p)), joka antaa skalaariarvon pisteelle P etäisyydellä d(p) generoijasta. Vaikutusaluetta rajoitetaan tyypillisesti pallolla, varsinkin pistegeneroijalle. Esimerkki potentiaalifunktiosta on: d f ( P) = (1 ) R d R Tässä d on pisteen etäisyys generoijasta ja R vaikutussäde. Skalaariarvoista saadaan eri generoijien potentiaalifunktioiden yhteisvaikutus. Kuvan.16 vasen sarake matkii Salvador Dalin maalausta. Oikealla kunkin pallon säde määrää vastaavien generoijien vaikutuksen. Tummat pallot ovat negatiivisia generoijia, joilla muodostetaan konkaavisuuksia malliin. Näin on mahdollista luoda orgaanisia muotoja, eläviä olentoja kuvaan. pinnalla.. luku 101. luku 10
5 Kuva.16. Implisiittisellä funktiolla tuotettua mallintamista.. luku 103
4. Esittäminen ja visualisointi (renderöinti)
4. Esittäminen ja visualisointi (renderöinti) Tutkitaan erilaisia renderöintimenetelmiä, joita käytetään luvuissa 2 ja 3 esitettyjen kuvien esitysmuotojen visualisointiin. Seuraavassa selvitetään: (1)
LisätiedotAlgoritmit 2. Luento 6 To Timo Männikkö
Algoritmit 2 Luento 6 To 28.3.2019 Timo Männikkö Luento 6 B-puun operaatiot Nelipuu Trie-rakenteet Standarditrie Pakattu trie Algoritmit 2 Kevät 2019 Luento 6 To 28.3.2019 2/30 B-puu 40 60 80 130 90 100
LisätiedotTilanhallintatekniikat
Tilanhallintatekniikat 3D grafiikkamoottoreissa Moottori on projektin osa joka vastaa tiettyjen toiminnallisuuksien hallinnasta hallitsee kaikki vastuualueen datat suorittaa kaikki tehtäväalueen toiminnot
Lisätiedot10.2. Säteenjäljitys ja radiositeettialgoritmi. Säteenjäljitys
10.2. Säteenjäljitys ja radiositeettialgoritmi Säteenjäljitys Säteenjäljityksessä (T. Whitted 1980) valonsäteiden kulkema reitti etsitään käänteisessä järjestyksessä katsojan silmästä takaisin kuvaan valolähteeseen
Lisätiedot6.5. Renderöintijärjestys
6.5. Renderöintijärjestys Näkymän käsittelyjärjestyksiä on kahta tyyppiä. Ensimmäinen on monikulmioittainen käsittely, jossa kukin monikulmio prosessoidaan vuorollaan välittämättä muista. Toinen on selaussuorajärjestys,
Lisätiedot11. Tilavuusrenderöinti
11. Tilavuusrenderöinti Tilavuusrenderöinti tarkoittaa vokseliperusteisen datan käsittelyä tai visualisointia. Luvussa 2 esitettiin vokselien merkintään perustuvia tiedonesitysmenetelmiä. Suuret homogeeniset
Lisätiedot5. Grafiikkaliukuhihna: (1) geometriset operaatiot
5. Grafiikkaliukuhihna: () geometriset operaatiot Johdanto Grafiikkaliukuhihnan tarkoitus on kuvata kolmiulotteisen kohdeavaruuden kuva kaksiulotteiseen kuva eli nättöavaruuteen. aikka kolmiulotteisiakin
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ätiedotAVL-puut. eräs tapa tasapainottaa binäärihakupuu siten, että korkeus on O(log n) kun puussa on n avainta
AVL-puut eräs tapa tasapainottaa binäärihakupuu siten, että korkeus on O(log n) kun puussa on n avainta pohjana jo esitetyt binäärihakupuiden operaatiot tasapainotus vie pahimmillaan lisäajan lisäys- ja
LisätiedotAlgoritmit 2. Luento 6 Ke Timo Männikkö
Algoritmit 2 Luento 6 Ke 29.3.2017 Timo Männikkö Luento 6 B-puun operaatiot B-puun muunnelmia Nelipuu Trie-rakenteet Standarditrie Pakattu trie Algoritmit 2 Kevät 2017 Luento 6 Ke 29.3.2017 2/31 B-puu
LisätiedotAlgoritmit 2. Luento 2 To Timo Männikkö
Algoritmit 2 Luento 2 To 14.3.2019 Timo Männikkö Luento 2 Tietorakenteet Lineaarinen lista, binääripuu Prioriteettijono Kekorakenne Keko-operaatiot Keon toteutus taulukolla Algoritmit 2 Kevät 2019 Luento
LisätiedotAlgoritmit 1. Luento 10 Ke Timo Männikkö
Algoritmit 1 Luento 10 Ke 14.2.2018 Timo Männikkö Luento 10 Algoritminen ongelmanratkaisu Suunnittelumenetelmät Raaka voima Järjestäminen eli lajittelu Kuplalajittelu Lisäyslajittelu Valintalajittelu Permutaatiot
LisätiedotT-111.4310 Vuorovaikutteinen tietokonegrafiikka Tentti 14.12.2011
T-111.4310 Vuorovaikutteinen tietokonegrafiikka Tentti 14.12.2011 Vastaa kolmeen tehtävistä 1-4 ja tehtävään 5. 1. Selitä lyhyesti mitä seuraavat termit tarkoittavat tai minkä ongelman algoritmi ratkaisee
Lisätiedot10. Esitys ja kuvaus
10. Esitys ja kuvaus Kun kuva on ensin segmentoitu alueisiin edellisen luvun menetelmin, segmentoidut pikselit kootaan esittämään ja kuvaamaan kohteita muodossa, joka sopii hyvin jatkokäsittelyä varten.
LisätiedotAlgoritmit 1. Luento 8 Ke Timo Männikkö
Algoritmit 1 Luento 8 Ke 1.2.2017 Timo Männikkö Luento 8 Järjestetty binääripuu Solmujen läpikäynti Binääripuun korkeus Binääripuun tasapainottaminen Graafit ja verkot Verkon lyhimmät polut Fordin ja Fulkersonin
LisätiedotLuento 6: Geometrinen mallinnus
Tietokonegrafiikan perusteet T-111.4300 3 op Luento 6: Geometrinen mallinnus Lauri Savioja, Janne Kontkanen 11/2007 Geometrinen mallinnus / 1 Sisältö Mitä on geometrinen mallinnus tietokonegrafiikassa
LisätiedotAlgoritmit 2. Luento 7 Ti Timo Männikkö
Algoritmit 2 Luento 7 Ti 4.4.2017 Timo Männikkö Luento 7 Joukot Joukko-operaatioita Joukkojen esitystapoja Alkiovieraat osajoukot Toteutus puurakenteena Algoritmit 2 Kevät 2017 Luento 7 Ti 4.4.2017 2/26
LisätiedotAlgoritmit 2. Luento 2 Ke Timo Männikkö
Algoritmit 2 Luento 2 Ke 15.3.2017 Timo Männikkö Luento 2 Tietorakenteet Lineaarinen lista, binääripuu Prioriteettijono Kekorakenne Keko-operaatiot Keon toteutus taulukolla Algoritmit 2 Kevät 2017 Luento
LisätiedotAlgoritmit 1. Luento 7 Ti Timo Männikkö
Algoritmit 1 Luento 7 Ti 31.1.2017 Timo Männikkö Luento 7 Järjestetty binääripuu Binääripuiden termejä Binääripuiden operaatiot Solmun haku, lisäys, poisto Algoritmit 1 Kevät 2017 Luento 7 Ti 31.1.2017
LisätiedotA274101 TIETORAKENTEET JA ALGORITMIT
A274101 TIETORAKENTEET JA ALGORITMIT PUURAKENTEET, BINÄÄRIPUU, TASAPAINOTETUT PUUT MIKÄ ON PUUTIETORAKENNE? Esim. Viereinen kuva esittää erästä puuta. Tietojenkäsittelytieteessä puut kasvavat alaspäin.
Lisätiedot2 Pistejoukko koordinaatistossa
Pistejoukko koordinaatistossa Ennakkotehtävät 1. a) Esimerkiksi: b) Pisteet sijaitsevat pystysuoralla suoralla, joka leikkaa x-akselin kohdassa x =. c) Yhtälö on x =. d) Sijoitetaan joitain ehdon toteuttavia
LisätiedotPinot, jonot, yleisemmin sekvenssit: kokoelma peräkkäisiä alkioita (lineaarinen järjestys) Yleisempi tilanne: alkioiden hierarkia
Pinot, jonot, yleisemmin sekvenssit: kokoelma peräkkäisiä alkioita (lineaarinen järjestys) Yleisempi tilanne: alkioiden hierarkia Kukin alkio (viite) talletettuna solmuun (node) vastaa paikan käsitettä
LisätiedotLuku 8. Aluekyselyt. 8.1 Summataulukko
Luku 8 Aluekyselyt Aluekysely on tiettyä taulukon väliä koskeva kysely. Tyypillisiä aluekyselyitä ovat, mikä on taulukon välin lukujen summa tai pienin luku välillä. Esimerkiksi seuraavassa taulukossa
LisätiedotTIE448 Kääntäjätekniikka, syksy Antti-Juhani Kaijanaho. 9. marraskuuta 2009
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 9. marraskuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe D tiistai 10.11. klo 10 välikielen generointi Vaihe E tiistai
LisätiedotLuento 3: 3D katselu. Sisältö
Tietokonegrafiikan perusteet T-.43 3 op Luento 3: 3D katselu Lauri Savioja Janne Kontkanen /27 3D katselu / Sisältö Kertaus: koordinaattimuunnokset ja homogeeniset koordinaatit Näkymänmuodostus Kameran
LisätiedotPYÖRÄHDYSKAPPALEEN PINTA-ALA
PYÖRÄHDYSKAPPALEEN PINTA-ALA PYÖRÄHDYSKAPPALEEN PINTA-ALA Pyörädyskappaleen pinta syntyy, kun funktion kuvaaja pyörätää suoran ympäri., suomennos Matti Pauna LIERIÖ JA KARTIO Lieriöt ja kartiot ovat yksinkertiaisimpia
LisätiedotAlgoritmit 2. Luento 4 To Timo Männikkö
Algoritmit 2 Luento 4 To 21.3.2019 Timo Männikkö Luento 4 Hajautus Yhteentörmäysten käsittely Avoin osoitteenmuodostus Hajautusfunktiot Puurakenteet Solmujen läpikäynti Algoritmit 2 Kevät 2019 Luento 4
Lisätiedot12.5. Vertailua. Silmäillään laskostumisen estoa tietokonegrafiikan kannalta. Kuva 12.8. luonnehtii vaihtoehtoja.
1.5. Vertailua Silmäillään laskostumisen estoa tietokonegrafiikan kannalta. Kuva 1.8. luonnehtii vaihtoehtoja. (1)Esisuodatus äärettömästi näytteitä pikseliä kohti Lasketaan projisoidun kohteen palojen
LisätiedotTietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Rekursio Rekursion käyttötapauksia Rekursio määritelmissä Rekursio ongelmanratkaisussa ja ohjelmointitekniikkana Esimerkkejä taulukolla Esimerkkejä linkatulla listalla Hanoin
LisätiedotPOHDIN - projekti. Funktio. Vektoriarvoinen funktio
POHDIN - projekti Funktio Funktio f joukosta A joukkoon B tarkoittaa sääntöä, joka liittää jokaiseen joukon A alkioon jonkin alkion joukosta B. Yleensä merkitään f : A B. Usein käytetään sanaa kuvaus synonyymina
Lisätiedot8. Morfologinen kuvanprosessointi 8.1. Perusteita
8. Morfologinen kuvanprosessointi 8.1. Perusteita Sana morfologia viittaa muotoon ja rakenteeseen eri tieteenaloilla. Kuvanprosessoinnissa se tarkoittaa matemaattista keinoa, jolla irrotetaan kuvasta kiinnostavia
LisätiedotPintoja kuvaavien verkkojen muodostaminen ja optimointi. Antti Seppälä
Pintoja kuvaavien verkkojen muodostaminen ja optimointi Antti Seppälä Tampereen yliopisto Tietojenkäsittelytieteiden laitos Pro gradu -tutkielma Joulukuu 2001 Tampereen yliopisto Tietojenkäsittelytieteiden
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ätiedot58131 Tietorakenteet ja algoritmit (kevät 2016) Ensimmäinen välikoe, malliratkaisut
58131 Tietorakenteet ja algoritmit (kevät 2016) Ensimmäinen välikoe, malliratkaisut 1. Palautetaan vielä mieleen O-notaation määritelmä. Olkoon f ja g funktioita luonnollisilta luvuilta positiivisille
Lisätiedot811312A Tietorakenteet ja algoritmit Kertausta kurssin alkuosasta
811312A Tietorakenteet ja algoritmit 2017-2018 Kertausta kurssin alkuosasta II Perustietorakenteet Pino, jono ja listat tunnettava Osattava soveltaa rakenteita algoritmeissa Osattava päätellä operaatioiden
LisätiedotAlgoritmit 1. Luento 6 Ke Timo Männikkö
Algoritmit 1 Luento 6 Ke 25.1.2017 Timo Männikkö Luento 6 Järjestetty lista Listan toteutus dynaamisesti Linkitetyn listan operaatiot Vaihtoehtoisia listarakenteita Puurakenteet Binääripuu Järjestetty
LisätiedotHakupuut. tässä luvussa tarkastelemme puita tiedon tallennusrakenteina
Hakupuut tässä luvussa tarkastelemme puita tiedon tallennusrakenteina hakupuun avulla voidaan toteuttaa kaikki joukko-tietotyypin operaatiot (myös succ ja pred) pahimman tapauksen aikavaativuus on tavallisella
LisätiedotMäärätty integraali. Markus Helén. Mäntän lukio
Määrätty integraali Markus Helén Pinta-ala Monikulmio on tasokuvio, jota rajoittaa suljettu, itseään leikkaamaton murtoviiva. Monikulmio voidaan aina jakaa kolmioiksi. Alueen pinta-ala on näiden kolmioiden
Lisätiedot811312A Tietorakenteet ja algoritmit II Perustietorakenteet
811312A Tietorakenteet ja algoritmit 2017-2018 II Perustietorakenteet Sisältö 1. Johdanto 2. Pino 3. Jono 4. Lista 811312A TRA, Perustietorakenteet 2 II.1. Johdanto Tietorakenne on tapa, jolla algoritmi
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ätiedotPuumenetelmät. Topi Sikanen. S ysteemianalyysin. Laboratorio Aalto-yliopiston teknillinen korkeakoulu
Puumenetelmät Topi Sikanen Puumenetelmät Periaate: Hajota ja hallitse Jaetaan havaintoavaruus alueisiin. Sovitetaan kuhunkin alueeseen yksinkertainen malli (esim. vakio) Tarkastellaan kolmea mallia Luokittelu-
LisätiedotAlgoritmit 1. Luento 13 Ma Timo Männikkö
Algoritmit 1 Luento 13 Ma 26.2.2018 Timo Männikkö Luento 13 Suunnittelumenetelmät Taulukointi Kapsäkkiongelma Ahne menetelmä Verkon lyhimmät polut Dijkstran menetelmä Verkon lyhin virittävä puu Kruskalin
Lisätiedotv 1 v 2 v 3 v 4 d lapsisolmua d 1 avainta lapsen v i alipuun avaimet k i 1 ja k i k 0 =, k d = Sisäsolmuissa vähint. yksi avain vähint.
Yleiset hakupuut 4 Monitiehakupuu: Binäärihakupuu 0 1 3 5 6 7 8 v k 1 k k 3 v v 3 v 4 k 1 k 3 k 1 k k k 3 d lapsisolmua d 1 avainta Yleinen hakupuu? Tietorakenteet, syksy 007 1 Esimerkki monitiehakupuusta
LisätiedotAlgoritmi on periaatteellisella tasolla seuraava:
Algoritmi on periaatteellisella tasolla seuraava: Dijkstra(V, E, l, v 0 ): S := { v 0 } D[v 0 ] := 0 for v V S do D[v] := l(v 0, v) end for while S V do valitse v V S jolle D[v] on minimaalinen S := S
LisätiedotTietorakenteet, laskuharjoitus 7, ratkaisuja
Tietorakenteet, laskuharjoitus, ratkaisuja. Seuraava kuvasarja näyttää B + -puun muutokset lisäysten jälkeen. Avaimet ja 5 mahtuvat lehtisolmuihin, joten niiden lisäys ei muuta puun rakennetta. Avain 9
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ätiedot1 PROSENTTILASKENTAA 7
SISÄLTÖ 1 PROSENTTILASKENTAA 7 Peruskäsitteitä 8 Prosenttiarvo 9 Prosenttiluku 11 Perusarvo 13 Muutosten laskeminen 15 Lisäys ja vähennys 15 Alkuperäisten arvojen laskeminen 17 Muutosprosentti 19 Prosenttiyksikkö
Lisätiedot811312A Tietorakenteet ja algoritmit Kertausta jälkiosasta
811312A Tietorakenteet ja algoritmit 2016-2017 Kertausta jälkiosasta IV Perustietorakenteet Pino, jono ja listat tunnettava Osattava soveltaa rakenteita algoritmeissa Osattava päätellä operaatioiden aikakompleksisuus
LisätiedotKenguru 2016 Student lukiosarja
sivu 1 / 9 NIMI LUOKKA Pisteet: Kenguruloikan pituus: Irrota tämä vastauslomake tehtävämonisteesta. Merkitse tehtävän numeron alle valitsemasi vastausvaihtoehto. Väärästä vastauksesta saat miinuspisteitä
LisätiedotTehtävän V.1 ratkaisuehdotus Tietorakenteet, syksy 2003
Tehtävän V.1 ratkaisuehdotus Tietorakenteet, syksy 2003 Matti Nykänen 5. joulukuuta 2003 1 Satelliitit Muunnetaan luennoilla luonnosteltua toteutusta seuraavaksi: Korvataan puusolmun p kentät p. key ja
LisätiedotMATEMATIIKKA JA TAIDE I
1 MATEMATIIKKA JA TAIDE I Tehtävät sopivat peruskoulun alaluokille. Ne on koostettu Matematiikkalehti Solmun Matematiikkadiplomeista I VI. Sivunumerot viittaavat näiden diplomitehtävien sivuihin. Aihepiirejä:
LisätiedotMatematiikan tukikurssi
Matematiikan tukikurssi Kurssikerta 6 varuusintegraali iemmin laskimme yksiulotteisia integraaleja b a f (x)dx, jossa integrointialue on x-akselin väli [a, b]. Lisäksi laskimme kaksiulotteisia integraaleja
Lisätiedot1 Kertaus. Lineaarinen optimointitehtävä on muotoa:
1 Kertaus Lineaarinen optimointitehtävä on muotoa: min c 1 x 1 + c 2 x 2 + + c n x n kun a 11 x 1 + a 12 x 2 + + a 1n x n b 1 a 21 x 1 + a 22 x 2 + + a 2n x n b 2 (11) a m1 x 1 + a m2 x 2 + + a mn x n
Lisätiedot815338A Ohjelmointikielten periaatteet Harjoitus 3 vastaukset
815338A Ohjelmointikielten periaatteet 2015-2016. Harjoitus 3 vastaukset Harjoituksen aiheena ovat imperatiivisten kielten muuttujiin liittyvät kysymykset. Tehtävä 1. Määritä muuttujien max_num, lista,
LisätiedotAlgoritmit 2. Luento 4 Ke Timo Männikkö
Algoritmit 2 Luento 4 Ke 22.3.2017 Timo Männikkö Luento 4 Hajautus Yhteentörmäysten käsittely Avoin osoitteenmuodostus Hajautusfunktiot Puurakenteet Solmujen läpikäynti Algoritmit 2 Kevät 2017 Luento 4
LisätiedotLuento 7: Lokaalit valaistusmallit
Tietokonegrafiikan perusteet T-111.4300 3 op Luento 7: Lokaalit valaistusmallit Lauri Savioja 11/07 Lokaalit valaistusmallit / 1 Sävytys Interpolointi Sisältö Lokaalit valaistusmallit / 2 1 Varjostustekniikat
LisätiedotLuento 6: Piilopinnat ja Näkyvyys
Tietokonegrafiikan perusteet T-111.4300 3 op Luento 6: Piilopinnat ja Näkyvyys Janne Kontkanen Geometrinen mallinnus / 1 Johdanto Piilopintojen poisto-ongelma Syntyy kuvattaessa 3-ulotteista maailmaa 2-ulotteisella
LisätiedotTietorakenteet ja algoritmit
Tietorakenteet ja algoritmit Kurssin sisältö pääpiirteittäin Tarvittavat pohjatiedot Avainsanat Abstraktio Esimerkkiohjelman tehtäväkuvaus Abstraktion käyttö tehtävässä Abstrakti tietotyyppi Hyötyjä ADT:n
LisätiedotAlgoritmit 2. Luento 11 Ti Timo Männikkö
Algoritmit 2 Luento 11 Ti 24.4.2018 Timo Männikkö Luento 11 Rajoitehaku Kapsäkkiongelma Kauppamatkustajan ongelma Paikallinen etsintä Lyhin virittävä puu Vaihtoalgoritmit Algoritmit 2 Kevät 2018 Luento
LisätiedotAlgoritmit 1. Luento 4 Ke Timo Männikkö
Algoritmit 1 Luento 4 Ke 18.1.2017 Timo Männikkö Luento 4 Tietorakenteet Pino Pinon toteutus Jono Jonon toteutus Lista Listaoperaatiot Algoritmit 1 Kevät 2017 Luento 4 Ke 18.1.2017 2/29 Pino Pino, stack,
LisätiedotPaikkatiedon käsittely 6. Kyselyn käsittely
HELSINGIN YLIOPISTO HELSINGFORS UNIVERSITET UNIVERSITY OF HELSINKI Paikkatiedon käsittely 6. Kyselyn käsittely Antti Leino antti.leino@cs.helsinki.fi 1.2.2007 Tietojenkäsittelytieteen laitos Kysely indeksin
LisätiedotTIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta. Yliassistentti Jussi Hakanen syksy 2010
TIES592 Monitavoiteoptimointi ja teollisten prosessien hallinta Yliassistentti Jussi Hakanen jussi.hakanen@jyu.fi syksy 2010 Evoluutiopohjainen monitavoiteoptimointi MCDM ja EMO Monitavoiteoptimointi kuuluu
LisätiedotOppijan saama palaute määrää oppimisen tyypin
281 5. KONEOPPIMINEN Älykäs agentti voi joutua oppimaan mm. seuraavia seikkoja: Kuvaus nykytilan ehdoilta suoraan toiminnolle Maailman relevanttien ominaisuuksien päätteleminen havaintojonoista Maailman
Lisätiedot58131 Tietorakenteet (kevät 2009) Harjoitus 6, ratkaisuja (Antti Laaksonen)
58131 Tietorakenteet (kevät 2009) Harjoitus 6, ratkaisuja (Antti Laaksonen) 1. Avaimet 1, 2, 3 ja 4 mahtuvat samaan lehtisolmuun. Tässä tapauksessa puussa on vain yksi solmu, joka on samaan aikaan juurisolmu
LisätiedotLisää segmenttipuusta
Luku 24 Lisää segmenttipuusta Segmenttipuu on monipuolinen tietorakenne, joka mahdollistaa monenlaisten kyselyiden toteuttamisen tehokkaasti. Tähän mennessä olemme käyttäneet kuitenkin segmenttipuuta melko
Lisätiedot811312A Tietorakenteet ja algoritmit, , Harjoitus 5, Ratkaisu
1312A Tietorakenteet ja algoritmit, 2016-2017, Harjoitus 5, Ratkaisu Harjoituksen aihe ovat hash-taulukot ja binääriset etsintäpuut Tehtävä 5.1 Tallenna avaimet 10,22,31,4,15,28,17 ja 59 hash-taulukkoon,
LisätiedotJakotaso 1. Teoriatausta. Työvaiheet. CAD työkalut harjoituksessa parting_1_1.catpart. CAE DS Muotinsuunnitteluharjoitukset
Jakotaso 1 Technical University of Gabrovo JuhoTaipale Tampere University of Technology Tuula Höök Teoriatausta Muotin perusrakenne Jakolinja Päästöt ja vastapäästöt CAD työkalut harjoituksessa parting_1_1.catpart
LisätiedotMS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 2: Usean muuttujan funktiot
MS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 2: Usean muuttujan funktiot Antti Rasila Matematiikan ja systeemianalyysin laitos Aalto-yliopisto Syksy 2016 Antti Rasila (Aalto-yliopisto)
LisätiedotLuento 6: Geometrinen mallinnus
Tietokonegrafiikan perusteet T-111.4300 3 op Luento 6: Geometrinen mallinnus Lauri Savioja 11/05 Geometrinen mallinnus / 1 Mitä on mallintaminen? Perusmenetelmät Mallihierarkiat Sisältö Geometrinen mallinnus
LisätiedotJohdatus verkkoteoriaan 4. luento
Johdatus verkkoteoriaan 4. luento 28.11.17 Viikolla 46 läpikäydyt käsitteet Viikolla 47 läpikäydyt käsitteet Verkko eli graafi, tasoverkko, solmut, välit, alueet, suunnatut verkot, isomorfiset verkot,
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ätiedotYhtälöryhmät 1/6 Sisältö ESITIEDOT: yhtälöt
Yhtälöryhmät 1/6 Sisältö Yhtälöryhmä Yhtälöryhmässä on useita yhtälöitä ja yleensä myös useita tuntemattomia. Tavoitteena on löytää tuntemattomille sellaiset arvot, että kaikki yhtälöt toteutuvat samanaikaisesti.
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ätiedotAlgoritmit 1. Luento 10 Ke 11.2.2015. Timo Männikkö
Algoritmit 1 Luento 10 Ke 11.2.2015 Timo Männikkö Luento 10 Algoritminen ongelman ratkaisu Suunnittelumenetelmät Raaka voima Järjestäminen eli lajittelu Kuplalajittelu Väliinsijoituslajittelu Valintalajittelu
Lisätiedot58131 Tietorakenteet ja algoritmit (kevät 2014) Uusinta- ja erilliskoe, , vastauksia
58131 Tietorakenteet ja algoritmit (kevät 2014) Uusinta- ja erilliskoe, 10..2014, vastauksia 1. [9 pistettä] (a) Todistetaan 2n 2 + n + 5 = O(n 2 ): Kun n 1 on 2n 2 + n + 5 2n 2 + n 2 +5n 2 = 8n 2. Eli
LisätiedotAlgoritmit 2. Luento 9 Ti Timo Männikkö
Algoritmit 2 Luento 9 Ti 17.4.2018 Timo Männikkö Luento 9 Merkkitiedon tiivistäminen Huffmanin koodi LZW-menetelmä Taulukointi Editointietäisyys Algoritmit 2 Kevät 2018 Luento 9 Ti 17.4.2018 2/29 Merkkitiedon
LisätiedotKartio ja pyramidi
Kartio ja pyramidi Kun avaruuden suora s liikkuu pitkin itseään leikkaamatonta tason T suljettua käyrää ja lisäksi kulkee tason T ulkopuolisen pisteen P kautta, suora s piirtää avaruuteen pinnan, jota
Lisätiedot8 Joukoista. 8.1 Määritelmiä
1 8 Joukoista Joukko on alkoidensa kokoelma. Valitsemalla sopivat alkiot joudutaan tämän määritelmän kanssa vaikeuksiin, jotka voidaan välttää rakentamalla joukkooppi aksiomaattisesti. Näin ei tässä tehdä
LisätiedotLause 5. (s. 50). Olkoot A ja B joukkoja. Tällöin seuraavat ehdot ovat
jen Kahden joukon A ja B samuutta todistettaessa kannattaa usein osoittaa, että A on B:n osajoukko ja että B on A:n osajoukko. Tällöin sovelletaan implikaation ja ekvivalenssin yhteyttä. Lause 5. (s. 50).
Lisätiedot811312A Tietorakenteet ja algoritmit Kertausta jälkiosasta
811312A Tietorakenteet ja algoritmit 2018-2019 Kertausta jälkiosasta V Hashtaulukot ja binääriset etsintäpuut Hashtaulukot Perusajatus tunnettava Tiedettävä mikä on tiivistefunktio Törmäysongelman hallinta:
LisätiedotMS-A0207 Differentiaali- ja integraalilaskenta 2 (CHEM) Luento 2: Usean muuttujan funktiot
MS-A0207 Differentiaali- ja integraalilaskenta 2 (CHEM) Luento 2: Usean muuttujan funktiot Harri Hakula Matematiikan ja systeemianalyysin laitos 1 Aalto-yliopisto Kevät 2018 1 Perustuu Antti Rasilan luentomonisteeseen
LisätiedotNumeerinen analyysi Harjoitus 3 / Kevät 2017
Numeerinen analyysi Harjoitus 3 / Kevät 2017 Palautus viimeistään perjantaina 17.3. Tehtävä 1: Tarkastellaan funktion f(x) = x evaluoimista välillä x [2.0, 2.3]. Muodosta interpoloiva polynomi p 3 (x),
LisätiedotTekijä Pitkä matematiikka
K1 Tekijä Pitkä matematiikka 5 7..017 a) 1 1 + 1 = 4 + 1 = 3 = 3 4 4 4 4 4 4 b) 1 1 1 = 4 6 3 = 5 = 5 3 4 1 1 1 1 1 K a) Koska 3 = 9 < 10, niin 3 10 < 0. 3 10 = (3 10 ) = 10 3 b) Koska π 3,14, niin π
Lisätiedot811312A Tietorakenteet ja algoritmit Kertausta kurssin alkuosasta
811312A Tietorakenteet ja algoritmit 2016-2017 Kertausta kurssin alkuosasta II Algoritmien analyysi: oikeellisuus Algoritmin täydellinen oikeellisuus = Algoritmi päättyy ja tuottaa määritellyn tuloksen
LisätiedotMuita rekisteriallokaatiomenetelmiä
TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 23. marraskuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe E tiistai 1.12. klo 10 koodigenerointi (ilman rekisteriallokaatiota)
LisätiedotNÄKYMÄNHALLINTATEKNIIKAT 3D- GRAFIIKKAMOOTTOREISSA
Jarno Kansanaho NÄKYMÄNHALLINTATEKNIIKAT 3D- GRAFIIKKAMOOTTOREISSA Tietotekniikan pro gradu -tutkielma Ohjelmistotekniikan linja 30.12.2011 Jyväskylän yliopisto Tietotekniikan laitos Tekijä: Jarno Kansanaho
LisätiedotPERUSLASKUJA. Kirjoita muuten sama, mutta ota KAKSI välilyöntiä (SEURAA ALUEMERKINTÄÄ) 4:n jälkeen 3/4 +5^2
PERUSLASKUJA Matemaattisten lausekkeiden syöttäminen: Kirjoita ilman välilyöntejä 3/4+^2 3 4+ 2 Kirjoita muuten sama, mutta ota KAKSI välilyöntiä (SEURAA ALUEMERKINTÄÄ) 4:n jälkeen 3/4 +^2 3 + 4 2 Kopioi
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ätiedotKokonaislukuoptiomointi Leikkaustasomenetelmät
Kokonaislukuoptiomointi Leikkaustasomenetelmät Systeemianalyysin Laboratorio 19.3.2008 Sisällys Leikkaustasomenetelmät yleisesti Leikkaustasomenetelmät generoivilla kokonaislukujoukoilla Gomoryn leikkaavat
LisätiedotLineaarialgebra ja matriisilaskenta II Syksy 2009 Laskuharjoitus 1 ( ) Ratkaisuehdotuksia Vesa Ala-Mattila
Lineaarialgebra ja matriisilaskenta II Syksy 29 Laskuharjoitus (9. - 3..29) Ratkaisuehdotuksia Vesa Ala-Mattila Tehtävä. Olkoon V vektoriavaruus. Todistettava: jos U V ja W V ovat V :n aliavaruuksia, niin
Lisätiedotkartiopinta kartio. kartion pohja, suora ympyräkartio vino pyramidiksi
5.3 Kartio Kun suora liikkuu avaruudessa niin, että yksi sen piste pysyy paikoillaan ja suoran jokin toinen piste kiertää jossakin tasossa jonkin suljetun käyrän palaten lähtöpaikkaansa, syntyy kaksiosainen
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ätiedotLuento 7 Taulukkolaskennan edistyneempiä piirteitä Aulikki Hyrskykari
Luento 7 Taulukkolaskennan edistyneempiä piirteitä 25.10.2016 Aulikki Hyrskykari Luento 7 o Kertausta: suhteellinen ja absoluuttinen viittaus o Tekstitiedoston tuonti Exceliin o Tietojen lajittelu, suodatus
LisätiedotGraafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria
Graafit ja verkot Suuntamaton graafi: eli haaroja Joukko solmuja ja joukko järjestämättömiä solmupareja Suunnattu graafi: Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria Haaran päätesolmut:
LisätiedotMatematiikan tukikurssi
Matematiikan tukikurssi Kurssikerta 10 1 Funktion monotonisuus Derivoituva funktio f on aidosti kasvava, jos sen derivaatta on positiivinen eli jos f (x) > 0. Funktio on aidosti vähenevä jos sen derivaatta
LisätiedotJoukot. Georg Cantor ( )
Joukot Matematiikassa on pyrkimys määritellä monimutkaiset asiat täsmällisesti yksinkertaisempien asioiden avulla. Tarvitaan jokin lähtökohta, muutama yleisesti hyväksytty ja ymmärretty käsite, joista
LisätiedotKESKEISET SISÄLLÖT Keskeiset sisällöt voivat vaihdella eri vuositasoilla opetusjärjestelyjen mukaan.
VUOSILUOKAT 6 9 Vuosiluokkien 6 9 matematiikan opetuksen ydintehtävänä on syventää matemaattisten käsitteiden ymmärtämistä ja tarjota riittävät perusvalmiudet. Perusvalmiuksiin kuuluvat arkipäivän matemaattisten
Lisätiedot811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2016-2017 4. Joukot, relaatiot ja funktiot Osa 1: Joukot 4.1 Joukot Matemaattisesti joukko on mikä tahansa hyvin määritelty kokoelma objekteja, joita kutsutaan joukon alkioiksi
LisätiedotP (A)P (B A). P (B) P (A B) = P (A = 0)P (B = 1 A = 0) P (B = 1) P (A = 1)P (B = 1 A = 1) P (B = 1)
Harjoitustehtäviä (erä 1) 1 1. Käytetään yksinkertaisesti Bayesin kaavaa: P (A B) = P (A)P (B A). P (B) Tapauksessa B = 1 saadaan P (A = 0 B = 1) = P (A = 1 B = 1) = P (A = 0)P (B = 1 A = 0) P (A = 1)P
LisätiedotTampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus
Tampereen yliopisto Tietokonegrafiikka 2013 Tietojenkäsittelytiede Harjoitus 2 7.2.2013 1. Matematiikan lukiokurssissa on esitetty, että ylöspäin aukeavan paraabelin f(x) = ax 2 +bx+c,a > 0,minimikohtasaadaan,kunf
Lisätiedot