Kognitiivinen mallintaminen 1
|
|
- Pia Kahma
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 Kognitiivinen mallintaminen 1 Uutta infoa: Kurssin kotisivut wikissä: Suorittaminen tentillä ja laskareilla (ei välikoetta 1. periodissa)
2 Ongelmanratkaisu Sisältöä: Hyvinmääritellyt ongelmat Ongelma-avaruus (tila-avaruus) Hakustrategiat ongelma-avaruudessa hakupuu sokea haku tietoinen haku heuristiikat
3 Hyvinmääritellyt ongelmat Hyvinmääritelty ongelma: määrittelee yksiselitteisesti ja kokonaan ongelmanratkaisijalle annetun informaation ongelmanratkaisijan vaihtoehdot halutun lopputilan Tietoon perustuva ongelma: ratkaisuun tarvitaan vain rajattu määrä tietoa Esimerkkejä (hyvinmääriteltyjä & tietoon perustuvia) Shakki Lähetyssaarnaaja ja ihmissyöjä ongelma(laskareissa) Hanoin torni Aritmetiikan ongelmat
4 Ongelman tila-avaruus Ongelmat kuvataan tilasiirtyminä ongelman tila-avaruudessa (lyhyesti: ongelma-avaruudessa) Ongelma-avaruuden tila on ote ongelmanratkaisutilanteesta tietyllä ajanhetkellä. kuvaus objekteista ja relaatioista objektien välillä Esimerkiksi shakkipelin alkutila kuvaa nappuloiden värin ja sijainnin laudalla sekä sen että on valkoisen vuoro siirtää. Tila-avaruus voidaan esittää suunnattuna verkkona tai puuna, jonka solmut vastaavat tiloja ja nuolet siirtymiä tilojen välillä Esim: osa ristinollan tila-avaruutta
5 Ongelman tila-avaruus Ongelmanratkaisu on alkutilan muuttaminen halutuksi lopputilaksi käymällä läpi sarja tilasiirtymiä. Usein mahdolliset tilasiirtymät voidaan jakaa luokkiin. sotilaan siirtäminen yhden eteenpäin lähetin siirtäminen diagonaalisesti Siirtymiä kutsutaan seuraajafunktioiksi.
6 Etsi reitti Aradista Bukarestiin
7 reitti Aradista Bukarestiin Alkutila: Arad, Romania Lopputila: Bukarest, Romania Seuraajafunktio: autoilu kaupungista toiseen. Hyvinmääritelty & tietoon perustuva: Yksikäsitteinen ja täydellinen informaatio, sekä ongelmanratkaisijan vaihtoehdot kussakin tilanteessa. Lopputila Ratkaisuun tarvitaan vain rajattu määrä tietoa
8 Pölynimuriagentti refleksiagentti (ympäristöä mallintava agentti) Havainnot: sijainti ja sisältö e.g., [A,Dirty] Toiminnot: Left, Right, Suck, NoOp
9 Ongelma-avaruus Tilat, (alkutila), ehdot lopputilalle, toiminnot (seuraajafunktio), polun kustannus?
10 Tila: 0,1 likaisuudelle ja L, R robotin sijainnille Alkutila esim. (1,1;L). Toiminnot: L, R, S Loppuehto: (0,0;L) & (0,0;R) Kustannus: 1 / toiminto
11 Etsintä ongelma-avaruudessa Usein ongelma-avaruuden tilassa on useita mahdollisia siirtymiä. Miten löydetään siirtymät, jotka ovat mahdollisia kulloisessakin tilassa? Millä perusteella oikea siirtymä valitaan? Ongelmanratkaisu voidaan nähdä etsintänä(search) ongelma-avaruudessa. Ratkaistakseen ongelman, systeemin on etsittävä oikea polku alkutilasta haluttuun tilaan.
12 Reitti Aradista Bukarestiin
13 Hakupuu
14
15 Etsintä ongelma-avaruudessa Hakustrategian arviointi: täydellinen: jokin maalitila voidaan saavuttaa alkutilasta aikavaativuus: puuhun luotujen solmujen lkm tilavaativuus: yhtäaikaa muistissa pidettävien solmujen lkm optimaalinen: löytää aina parhaan ratkaisun Muita ominaisuuksia: b: haarautumisaste d: matalimmalla olevan maalisolmun syvyys m: tila-avaruuden pisin pituus (voi olla )
16 Hakustrategia On olemassa useita algoritmeja lyhimmän polun löytämiseen. Sokeat hakustrategiat (uninformed search, blind search) Tietoinen haku (informed search, heuristic search) Sokeita hakustrategioita syvyyshaku (depth-first) halvin ensin haku (uniform cost) leveyshaku (breadth-first search) rajoitettu syvyyshaku (depth-limited) asteittain syvenevä haku (iterative deepening) kaksisuuntainen haku (bidirectional)
17 leveyshaku puun alkusolmu (juuri) laajennetaan ensin kaikki laajennetut solmut käydään läpi ja laajennetaan ennenkuin edetään syvemmälle puussa. algoritmin suoritus vaatii kaikkien solmujen pitämisen muistissa
18 leveyshaku
19 Arviointi b: haarautumisaste d: matalimmalla olevan maalisolmun syvyys m: tila-avaruuden pisin pituus Täydellinen? Kyllä Aika?1+b+b 2 +b 3 + +b d + b(b d -1) = O(b d+1 ) Tila?O(b d+1 )(jokainensolmuon muistissa) Optimaalinen? Kyllä(polun kustannus=1) Tilankäyttö on ongelma.
20 syvyyshaku laajentaa aina puussa syvimmällä olevan solmun ensin käyttää vain vähän muistia (vain yhden polun kerrallaan
21 syvyyshaku
22 syvyyshaku
23 Arviointi Täydellinen?Ei, epäonnistuujostila-avaruuseiole äärellinen tai jos polussa on silmukka. Korjataan poissulkemalla toistuvat tilat toimii kun tila-avaruus on äärellinen Aika?O(b m ): pahajosmis on paljonsuurempid (m= maksimipituus, d=ratkaisun pituus) Tila? O(bm), eli lineaarinen tilavaatimus! Optimaalinen? Ei
24 hakustrategioita rajoitettu syvyyshaku asetetaan raja, johon syvyyshaku pysäytetään kullakin polulla ongelma on optimaalisen syvyyden valinta halvin ensin -haku valitaan seuraavaksi laajennettava solmu sen perusteella, mikä on polun kustannus kustannus kasvaa kun polulla edetään, ja jokin toinen polku voi tulla kannattavammaksi
25 asteittain syvenevä haku yhdistää leveys- ja syvyyshaut algoritmi tekee syvyyshakua, mutta etsinnän syvyys on rajoitettu kun koko puu on etsitty rajoitettuun syvyyteen asti, aloitetaan etsintä alusta lisäten etsinnän syvyyttä puu generoidaan uudestaan jokaista syvyyttä varten algoritmi on kuitenkin tehokas
26 Asteittain syvenevä haku
27 Asteittain syvenevä haku
28 Asteittain syvenevä haku
29 Asteittain syvenevä haku
30 asteittain syvenevä haku Täydellinen? Kyllä Aika?(d+1)b 0 + d b 1 + (d-1)b b d = O(b d ) Tila? O(bd) Optimaalinen? Kyllä.
31 kaksisuuntainen haku kaksi hakua; toinen eteenpäin alkutilasta ja toinen taaksepäin halutusta lopputilasta haut kohtaavat toisensa lyhimmällä polulla vaatii sen, että mahdolliset lopputilat on eksplisiittisesti listattu siirtyminen ongelma-avaruudessa taaksepäin ei aina ole helppoa
32 Tietoinen haku Tietoisessa haussa käytettävissä on lisätietoa ongelmasta. paras ensin -haku (best first -search) laajennettava solmu valitaan heuristisen funktion avulla. h(n) = halvimman polun arvioitu hinta solmusta n haluttuun lopputilaan. Esimerkkitapauksessa heuristinen funktio h(n) voisi olla esimerkiksi matka linnuntietä kaupungista n Bukarestiin.
33 reitti Aradista Bukarestiin
34 Ahne paras-ensin haku
35 Täydellinen?Ei, voi jäädä silmukkaan, esim. Iasi Neamt Iasi Neamt Aika?O(b m ), mutta parempi heuristiikka parantaa tuloksia dramaattisesti Tila?O(b m ) --kaikki solmut muistissa Optimaalinen? Ei
36 paras ensin -haku valittu heuristinen funktio voi yhä antaa huonon alun haulle haku voi eksyä harhapolulle, eikä enää palaa takaisin A*-haku minimoi polun kokonaiskustannuksen: siinä otetaan huomioon g(n) = jo kuljetun polun hinta solmussa n h(n) = arvioitu hinta solmusta n lopputilaan f(n) =g(n)+h(n) arvioitu polun kokonaishinta n:n kautta lopputilaan
37 A*-haku
38
39 Etsintä ongelma-avaruudessa Ihmiset eivät yleensä käytä sokeaa hakua vaan käyttävät jotain heuristiikkaa. Esim. Taaksepäinketjutus (backward chaining): edetään lopputilasta kohti alkuehtoja. Välitavoite-analyysi (Means-Ends analysis): valitaan välitavoite johon pyritään lopputilan sijaan.
40 ongelmanratkaisija Ongelmanratkaisu voidaan siis nähdä matkana ongelma-avaruudessa seuraavien tilojen löytäminen, evaluointi ja oikean tilan valinta tavoitteiden ja välitavoitteiden asettaminen ja hallinta heuristiikkojen käyttö ongelman representaatio
Kognitiivinen mallintaminen I
Kognitiivinen mallintaminen I Symbolinen mallintaminen: 2. luento Ongelmanratkaisu Ongelmanratkaisu Rationaalinen agentti Ongelma-avaruus Hakustrategiat ongelma-avaruudessa sokea haku tietoinen haku heuristiikat
LisätiedotRationaalinen agentti. Kognitiivinen mallintaminen I. Rationaalinen agentti. Rationaalinen agentti. Kognitiivinen mallintaminen I, kevät /1/08
Rationaalinen agentti Kognitiivinen mallintaminen I Yksinkertainen refleksiagentti Toiminta perustuu ainoastaan agentin havaintoihin kullakin ajanhetkellä. Luento III Symbolinen mallintaminen Ongelmanratkaisu
Lisätiedot4 Heuristinen haku. Eero Hyvönen Helsingin yliopisto
4 Heuristinen haku Eero Hyvönen Helsingin yliopisto Strategioita: - Breath-first - Uniform-cost - Depth-first - Depth-limited - Iterative deepening - Bidirectional Tekoäly, Eero Hyvönen, 2004 2 Heuristisen
Lisätiedot.. X JOHDATUS TEKOÄLYYN TEEMU ROOS
1 3 1 3 4 3 2 3 4 3 2 3 1 2 3 4 122 31 4 3 1 4 3 1 122 31........ X.... X X 2 3 1 4 1 4 3 2 3 2 4 1 4 JOHDATUS TEKOÄLYYN TEEMU ROOS 2. ETSINTÄ JA PELIT LEVEYSSUUNTAINEN HAKU 1 9 3 2 5 4 6 7 11 16 8 12
LisätiedotOhjelmistotekniikan laitos OHJ-2550 Tekoäly, kevät
96 Prolog voi päätyä samaan ratkaisuun monen päättelypolun kautta Tällöin sama ratkaisu palautetaan useita kertoja minimum(x,y,x):- X=Y. Molempien sääntöjen kautta löytyyy sama
LisätiedotOngelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?
Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä? 2012-2013 Lasse Lensu 2 Ongelma 2: Milloin ongelmat muuttuvat oikeasti hankaliksi? 2012-2013 Lasse Lensu 3 Ongelma 3: Miten hankalia ongelmia
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ätiedotHaku osittaisen informaation vallitessa
136 Haun merkittävä ongelma on mahdollisuus laajentaa uudelleen jo kertaalleen tutkittu tila Näin äärellinen tila-avaruus voi johtaa äärettömään hakupuuhun Ratkeava ongelma voi muuttua käytännössä ratkeamattomaksi
Lisätiedot13 Lyhimmät painotetut polut
TIE-20100 Tietorakenteet ja algoritmit 297 13 Lyhimmät painotetut polut BFS löytää lyhimmän polun lähtösolmusta graafin saavutettaviin solmuihin. Se ei kuitenkaan enää suoriudu tehtävästä, jos kaarien
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ätiedotJOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS KURSSIN PERUSTIEDOT VALINNAINEN AINEOPINTOTASOINEN KURSSI, 5 OP PERIODI 3: 18.1.2016-6.3.2016 (7 VIIKKOA+KOE) LUENNOT (CK112): MA 14-16, TI 14-16 LASKUHARJOITUKSET: RYHMÄ
LisätiedotJOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS KURSSIN PERUSTIEDOT VALINNAINEN AINEOPINTOTASOINEN KURSSI, 4 OP PERIODI 1: 6.9.2012-12.10.2012 (6 VIIKKOA) LUENNOT (B123, LINUS TORVALDS -AUDITORIO): TO 10-12, PE 12-14 LASKUHARJOITUKSET
LisätiedotJOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS KURSSIN PERUSTIEDOT VALINNAINEN AINEOPINTOTASOINEN KURSSI, 5 OP PERIODI 3: 16.1.2017-3.3.2016 (7 VIIKKOA+KOE) LUENNOT (CK112): MA 14-16, TI 14-16 LASKUHARJOITUKSET: RYHMÄ
LisätiedotJOHDATUS TEKOÄLYYN TEEMU ROOS
JOHDATUS TEKOÄLYYN TEEMU ROOS KURSSIN PERUSTIEDOT VALINNAINEN AINEOPINTOTASOINEN KURSSI, 5 OP PERIODI 1: 4.9.2014-17.10.2012 (7 VIIKKOA+KOE) LUENNOT (B123, LINUS TORVALDS -AUDITORIO): TO 10-12, PE 12-14
Lisätiedotv 8 v 9 v 5 C v 3 v 4
Verkot Verkko on (äärellinen) matemaattinen malli, joka koostuu pisteistä ja pisteitä toisiinsa yhdistävistä viivoista. Jokainen viiva yhdistää kaksi pistettä, jotka ovat viivan päätepisteitä. Esimerkiksi
LisätiedotOhjelmistotekniikan laitos OHJ-2550 Tekoäly, kevät
128 Näille pätee kolmioepäyhtälö (triangle inequality) muodossa h(n) c([n,a], n') + h(n'), missä n' S(n) (valittu toiminto on a) ja c([n,a], n') on askelkustannus Linnuntie on myös monotoninen heuristiikka
LisätiedotHarjoitus 6 ( )
Harjoitus 6 (21.4.2015) Tehtävä 1 Määritelmän (ks. luentomoniste s. 109) mukaan yleisen, muotoa min f(x) s. t. g(x) 0 h(x) = 0 x X olevan optimointitehtävän Lagrangen duaali on missä max θ(u, v) s. t.
LisätiedotA ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.
Esimerkki otteluvoiton todennäköisyys A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä. Yksittäisessä pelissä A voittaa todennäköisyydellä p ja B todennäköisyydellä q =
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ätiedot1 Ratkaisuja 2. laskuharjoituksiin
1 1 Ratkaisuja 2. laskuharjoituksiin Tehtävä 1. (a) Yksinkertainen reeksiagentti ei voi toimia rationaalisesti tässä tilanteessa, eli maksimoida suoriutumismittaansa (performance measure). Yksinkertainen
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ätiedot5. Rajoitelaskenta (Constraint Satisfaction)
5. Rajoitelaskenta (Constraint Satisfaction) Eero Hyvönen Helsingin yliopisto Solution = An assignment of values for the variables satifying the contraints Some CSPs: optimal solution is the best solution
LisätiedotUnify( Tuntee(Jussi, x), Tuntee(y, z) ) { y/jussi, z/x } { y/jussi, x/jussi, z/jussi }
98 Ongelman edellä aiheuttaa saman muuttujanimen käyttö Toisaalta eri lauseiden muuttujanimillä ei ole merkitystä (ennen sidontaa) ja muuttujien nimentä voidaan standardoida Mahdollisia samaistuksia on
LisätiedotValitaan alkio x 1 A B ja merkitään A 1 = A { x 1 }. Perinnöllisyyden nojalla A 1 I.
Vaihto-ominaisuudella on seuraava intuition kannalta keskeinen seuraus: Olkoot A I ja B I samankokoisia riippumattomia joukkoja: A = B = m jollain m > 0. Olkoon vielä n = m A B, jolloin A B = B A = n.
LisätiedotMalliratkaisut Demot
Malliratkaisut Demot 6 24.4.2017 Tehtävä 1 Määritelmän (ks. luentomonisteen s. 107) mukaan yleisen muotoa min f(x) s.t. g(x) 0 h(x) = 0 x X (1) olevan optimointitehtävän Lagrangen duaali on min θ(u,v)
LisätiedotTKT20001 Tietorakenteet ja algoritmit Erilliskoe , malliratkaisut (Jyrki Kivinen)
TKT0001 Tietorakenteet ja algoritmit Erilliskoe 5.1.01, malliratkaisut (Jyrki Kivinen) 1. [1 pistettä] (a) Esitä algoritmi, joka poistaa kahteen suuntaan linkitetystä järjestämättömästä tunnussolmullisesta
LisätiedotSilmukkaoptimoinnista
sta TIE448 Kääntäjätekniikka, syksy 2009 Antti-Juhani Kaijanaho TIETOTEKNIIKAN LAITOS 8. joulukuuta 2009 Sisällys Sisällys Seuraava deadline Vaihe F maanantai 14.12. klo 12 rekisteriallokaatio Arvostelukappale
Lisätiedot3. Ongelmanratkonta haun avulla. Eero Hyvönen Helsingin yliopisto
3. Ongelmanratkonta haun avulla Eero Hyvönen Helsingin yliopisto Haku Tavoiteperustaisilla agenteilla Tavoitteen (goal( goal) ) saavuttaminen Ongelman muotoilu (sopivalla yleisyystasolla) Esim. maailma
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ätiedotAlgoritmit 1. Luento 14 Ke 25.2.2015. Timo Männikkö
Algoritmit 1 Luento 14 Ke 25.2.2015 Timo Männikkö Luento 14 Heuristiset menetelmät Heuristiikkoja kapsäkkiongelmalle Kauppamatkustajan ongelma Lähimmän naapurin menetelmä Kertaus ja tenttivinkit Algoritmit
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ä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ä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ä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ä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ätiedot58131 Tietorakenteet ja algoritmit Uusinta- ja erilliskoe ratkaisuja (Jyrki Kivinen)
58131 Tietorakenteet ja algoritmit Uusinta- ja erilliskoe 12.9.2018 ratkaisuja (Jyrki Kivinen) 1. [10 pistettä] Iso-O-merkintä. (a) Pitääkö paikkansa, että n 3 + 5 = O(n 3 )? Ratkaisu: Pitää paikkansa.
Lisätiedot811312A Tietorakenteet ja algoritmit V Verkkojen algoritmeja Osa1 : Leveys- ja syvyyshaku
811312A Tietorakenteet ja algoritmit 2016-2017 V Verkkojen algoritmeja Osa1 : Leveys- ja syvyyshaku Sisältö 1. Johdanto 2. Leveyshaku 3. Syvyyshaku 4. Kruskalin algoritmi 5. Dijkstran algoritmi 811312A
LisätiedotHarjoitus 6 ( )
Harjoitus 6 (30.4.2014) Tehtävä 1 Määritelmän (ks. luentomoniste s. 109) mukaan yleisen, muotoa min f(x) s.t. g(x) 0 h(x) = 0 x X (1) olevan optimointitehtävän Lagrangen duaali on max θ(u,v) s.t. u 0,
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ätiedot3. Hakupuut. B-puu on hakupuun laji, joka sopii mm. tietokantasovelluksiin, joissa rakenne on talletettu kiintolevylle eikä keskusmuistiin.
3. Hakupuut Hakupuu on listaa tehokkaampi dynaamisen joukon toteutus. Erityisesti suurilla tietomäärillä hakupuu kannattaa tasapainottaa, jolloin päivitysoperaatioista tulee hankalampia toteuttaa mutta
Lisätiedot1. (a) Seuraava algoritmi tutkii, onko jokin luku taulukossa monta kertaa:
Tietorakenteet, laskuharjoitus 10, ratkaisuja 1. (a) Seuraava algoritmi tutkii, onko jokin luku taulukossa monta kertaa: SamaLuku(T ) 2 for i = 1 to T.length 1 3 if T [i] == T [i + 1] 4 return True 5 return
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ätiedot4 INFORMOITU ETSINTÄ AHNE PARAS ENSIN -STRATEGIA
INFORMOITU ETINTÄ okeilla etsintämenetelmillä ei ole käytössään muuta informaatiota kuin etsintäongelman määrittely. Informoidut etsintämenetelmät (informed search strategies) ovat sellaisia, jotka voivat
Lisätiedot58131 Tietorakenteet ja algoritmit (syksy 2015) Toinen välikoe, malliratkaisut
Tietorakenteet ja algoritmit (syksy 0) Toinen välikoe, malliratkaisut. (a) Alussa puu näyttää tältä: Lisätään 4: 4 Tasapaino rikkoutuu solmussa. Tehdään kaksoiskierto ensin oikealle solmusta ja sitten
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ätiedot58131 Tietorakenteet ja algoritmit (kevät 2013) Kurssikoe 2, , vastauksia
58131 Tietorakenteet ja algoritmit (kevät 2013) Kurssikoe 2, 652013, vastauksia 1 [6 pistettä] Vastaa jokaisesta alla olevasta väittämästä onko se tosi vai epätosi ja anna lyhyt perustelu Jokaisesta kohdasta
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ätiedotJoonas Haapala Ohjaaja: DI Heikki Puustinen Valvoja: Prof. Kai Virtanen
Hävittäjälentokoneen reitin suunnittelussa käytettävän dynaamisen ja monitavoitteisen verkko-optimointitehtävän ratkaiseminen A*-algoritmilla (valmiin työn esittely) Joonas Haapala 8.6.2015 Ohjaaja: DI
LisätiedotAlgoritmit 2. Luento 14 Ke Timo Männikkö
Algoritmit 2 Luento 14 Ke 3.5.2017 Timo Männikkö Luento 14 Ositus ja rekursio Rekursion toteutus Kertaus ja tenttivinkit Algoritmit 2 Kevät 2017 Luento 14 Ke 3.5.2017 2/30 Ositus Tehtävän esiintymä ositetaan
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ä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ätiedotT : Max-flow / min-cut -ongelmat
T-61.152: -ongelmat 4.3.2008 Sisältö 1 Määritelmät Esimerkki 2 Max-flow Graafin leikkaus Min-cut Max-flow:n ja min-cut:n yhteys 3 Perusajatus Pseudokoodi Tarkastelu 4 T-61.152: -ongelmat Virtausverkko
LisätiedotMiten käydä läpi puun alkiot (traversal)?
inääripuut ieman lisää aidon binääripuun ominaisuuksia lehtisolmuja on yksi enemmän kuin sisäsolmuja inääripuut tasolla d on korkeintaan 2 d solmua pätee myös epäaidolle binääripuulle taso 0: 2 0 = 1 solmu
LisätiedotDiskreetit rakenteet
Diskreetit rakenteet 811120P 5 op 7. Oulun yliopisto Tietojenkäsittelytieteiden laitos 2015 / 2016 Periodi 1 Mikä on verkko? verkko (eli graafi) koostuu solmuista ja väleistä, jotka yhdistävät solmuja
Lisätiedotverkkojen G ja H välinen isomorfismi. Nyt kuvaus f on bijektio, joka säilyttää kyseisissä verkoissa esiintyvät särmät, joten pari
Tehtävä 9 : 1 Merkitään kirjaimella G tehtäväpaperin kuvan vasemmanpuoleista verkkoa sekä kirjaimella H tehtäväpaperin kuvan oikeanpuoleista verkkoa. Kuvan perusteella voidaan havaita, että verkko G on
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ätiedotAlgoritmit 1. Luento 13 Ti 23.2.2016. Timo Männikkö
Algoritmit 1 Luento 13 Ti 23.2.2016 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ätiedotKoe ma 1.3 klo 16-19 salissa A111, koeaika kuten tavallista 2h 30min
Koe Koe ma 1.3 klo 16-19 salissa A111, koeaika kuten tavallista 2h 30min Kokeessa saa olla mukana A4:n kokoinen kaksipuolinen käsiten tehty, itse kirjoitettu lunttilappu 1 Tärkeää ja vähemmäntärkeää Ensimmäisen
Lisätiedot58131 Tietorakenteet (kevät 2009) Harjoitus 11, ratkaisuja (Topi Musto)
811 Tietorakenteet (kevät 9) Harjoitus 11, ratkaisuja (Topi Musto) 1. Bellmanin-Fordin algoritmin alustusvaiheen jälkeen aloitussolmussa on arvo ja muissa solmuissa on arvo ääretön. Kunkin solmun arvo
LisätiedotMat Lineaarinen ohjelmointi
Mat-.40 Lineaarinen ohjelmointi 5..007 Luento 9 Verkkotehtävän erikoistapauksia (kirja 7., 7.5, 7.9, 7.0) Lineaarinen ohjelmointi - Syksy 007 / Luentorunko (/) Verkkotehtävän ominaisuuksia Kuljetustehtävä
Lisätiedot14. Luennon sisältö. Kuljetustehtävä. Verkkoteoria ja optimointi. esimerkki. verkkoteorian optimointitehtäviä verkon virittävä puu lyhimmät polut
JYVÄSKYLÄN YLIOPISTO 14. Luennon sisältö Kuljetustehtävä esimerkki Verkkoteoria ja optimointi verkkoteorian optimointitehtäviä verkon virittävä puu lyhimmät polut kevät 2012 TIEA382 Lineaarinen ja diskreetti
LisätiedotAlgoritmit 2. Luento 10 To Timo Männikkö
Algoritmit 2 Luento 10 To 19.4.2018 Timo Männikkö Luento 10 Peruutusmenetelmä Osajoukon summa Verkon 3-väritys Pelipuut Pelipuun läpikäynti Algoritmit 2 Kevät 2018 Luento 10 To 19.4.2018 2/34 Algoritmien
LisätiedotKombinatorinen optimointi
Kombinatorinen optimointi Sallittujen pisteiden lukumäärä on äärellinen Periaatteessa ratkaisu löydetään käymällä läpi kaikki pisteet Käytännössä lukumäärä on niin suuri, että tämä on mahdotonta Usein
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ä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ätiedotDatatähti 2019 loppu
Datatähti 2019 loppu task type time limit memory limit A Summa standard 1.00 s 512 MB B Bittijono standard 1.00 s 512 MB C Auringonlasku standard 1.00 s 512 MB D Binääripuu standard 1.00 s 512 MB E Funktio
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ä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ätiedotA*-algoritmi ja siihen pohjautuvat muistirajoitetut heuristiset reitinhakualgoritmit
A*-algoritmi ja siihen pohjautuvat muistirajoitetut heuristiset reitinhakualgoritmit Oskari Torikka Pro gradu -tutkielma Tietojenkäsittelytieteen laitos Tietojenkäsittelytiede Helmikuu 2015 ITÄ-SUOMEN
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ä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ätiedotLyhin kahden solmun välinen polku
Lyhin kahden solmun välinen polku Haluamme etsiä lyhimmän polun alla olevan ruudukon kohdasta a kohtaan b vierekkäisten (toistensa sivuilla, ylä- ja alapuolella olevien) valkoisten ruutujen välinen etäisyys
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ätiedotTIE Tietorakenteet ja algoritmit 261
TIE-20100 Tietorakenteet ja algoritmit 261 12 Graafit Seuraavaksi tutustutaan tietorakenteeseen, jonka muodostavat pisteet ja niiden välille muodostetut yhteydet graafiin. Keskitymme myös tyypillisimpiin
LisätiedotOlkoon seuraavaksi G 2 sellainen tasan n solmua sisältävä suunnattu verkko,
Tehtävä 1 : 1 a) Olkoon G heikosti yhtenäinen suunnattu verkko, jossa on yhteensä n solmua. Määritelmän nojalla verkko G S on yhtenäinen, jolloin verkoksi T voidaan valita jokin verkon G S virittävä alipuu.
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ätiedotOikeasta tosi-epätosi -väittämästä saa pisteen, ja hyvästä perustelusta toisen.
Tietorakenteet, kevät 2012 Kurssikoe 2, mallivastaukset 2. (a) Järjestämistä ei voi missään tilanteessa suorittaa nopeammin kuin ajassa Θ(n log n), missä n on järjestettävän taulukon pituus. Epätosi: Yleisessä
LisätiedotVerkko-optimointiin perustuva torjuntatasan laskenta mellakkapoliisin resurssien kohdentamisessa (valmiin työn esittely) Paavo Kivistö
Verkko-optimointiin perustuva torjuntatasan laskenta mellakkapoliisin resurssien kohdentamisessa (valmiin työn esittely) Paavo Kivistö 21.01.2013 Ohjaaja: Kai Virtanen Valvoja: Raimo P. Hämäläinen Työn
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ätiedotTuntemattomassa ympäristössä etsiminen
165 Tuntemattomassa ympäristössä etsiminen Online haussa agentin on reagoitava havaintoihinsa välittömästi tekemättä pitkälle tulevaisuuteen ulottuvia suunnitelmia Tuntemattomassa ympäristössä tutkiskelu
LisätiedotV. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen
V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen Luento omatoimisen luennan tueksi algoritmiikan tutkimusseminaarissa 23.9.2002. 1 Sisältö Esitellään ongelmat Steiner-puu Kauppamatkustajan
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ätiedotRatkaisu. Tulkitaan de Bruijnin jonon etsimiseksi aakkostossa S := {0, 1} sanapituudelle n = 4. Neljän pituisia sanoja on N = 2 n = 16 kpl.
iskreetti matematiikka, syksy 00 arjoitus, ratkaisuista. seta 8 nollaa ja 8 ykköstä renkaaksi niin, että jokainen yhdistelmä 0000, 000,..., esiintyy täsmälleen kerran. Vihje: Tulkitse de ruijnin jonon
LisätiedotAlgoritmit 2. Luento 12 Ke Timo Männikkö
Algoritmit 2 Luento 12 Ke 26.4.2017 Timo Männikkö Luento 12 Rajoitehaku Kauppamatkustajan ongelma Lyhin virittävä puu Paikallinen etsintä Vaihtoalgoritmit Geneettiset algoritmit Simuloitu jäähdytys Algoritmit
LisätiedotTIEA382 Lineaarinen ja diskreetti optimointi
TIEA382 Lineaarinen ja diskreetti optimointi Jussi Hakanen Tietotekniikan laitos jussi.hakanen@jyu.fi AgC 426.3 Yleiset tiedot Tietotekniikan kandidaattiopintojen valinnainen kurssi http://users.jyu.fi/~jhaka/ldo/
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ätiedotMat Lineaarinen ohjelmointi
Mat-.34 Lineaarinen ohjelmointi 9..7 Luento Kokonaislukuoptimoinnin algoritmeja (kirja.-.) Lineaarinen ohjelmointi - Syksy 7 / Luentorunko Gomoryn leikkaava taso Branch & Bound Branch & Cut Muita menetelmiä
LisätiedotPienin virittävä puu (minimum spanning tree)
Pienin virittävä puu (minimum spanning tree) Jatkossa puu tarkoittaa vapaata puuta (ks. s. 11) eli suuntaamatonta verkkoa, joka on yhtenäinen: minkä tahansa kahden solmun välillä on polku syklitön: minkä
LisätiedotInformaation arvo. Ohjelmistotekniikan laitos OHJ-2550 Tekoäly, kevät
259 Informaation arvo Öljykenttään myydään porausoikeuksia, palstoja on n kappaletta, mutta vain yhdessä niistä on C euron edestä öljyä Yhden palstan hinta on C/n euroa Seismologi tarjoaa yritykselle tutkimustietoa
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ätiedot811120P Diskreetit rakenteet
811120P Diskreetit rakenteet 2018-2019 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ä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ätiedotJohdatus verkkoteoriaan luento Netspace
Johdatus verkkoteoriaan luento 20.3.18 Netspace Kurssin sijainti muussa suunnitellussa kokonaisuudessa Verkko eli graafi, tasoverkko, solmut, välit, alueet, suunnatut verkot, isomorfiset verkot, verkon
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ätiedotHakumenetelmät ja ongelmanratkaisu
20..2018 Hakumenetelmät ja ongelmanratkaisu Älykkään järjestelmän odotetaan ratkaisevan ongelmia, jotka olisivat muutoin ihmiselle kuuluvia päätöksenteko, kun pohjatiedot esim. antureilta ovat olemassa
LisätiedotTKHJ:ssä on yleensä komento create index, jolla taululle voidaan luoda hakemisto
Indeksin luonti ja hävitys TKHJ:ssä on yleensä komento create index, jolla taululle voidaan luoda hakemisto Komentoa ei ole standardoitu ja niinpä sen muoto vaihtelee järjestelmäkohtaisesti Indeksi voidaan
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ätiedotAlgoritmien suunnittelu ja analyysi (kevät 2004) 1. välikoe, ratkaisuja
58053-7 Algoritmien suunnittelu ja analyysi (kevät 2004) 1. välikoe, ratkaisuja Malliratkaisut ja pisteytysohje: Jyrki Kivinen Tentin arvostelu: Jouni Siren (tehtävät 1 ja 2) ja Jyrki Kivinen (tehtävät
LisätiedotHelsingin yliopisto/tktl Kyselykielet, s 2006 Optimointi Harri Laine 1. Kyselyn optimointi. Kyselyn optimointi
Miksi optimoidaan Relaatiotietokannan kyselyt esitetään käytännössä SQLkielellä. Kieli määrittää halutun tuloksen, ei sitä miten tulos muodostetaan (deklaratiivinen kyselykieli) Tietokannan käsittelyoperaatiot
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ätiedot