Kognitiivinen mallintaminen I

Samankaltaiset tiedostot
Kognitiivinen mallintaminen 1

Rationaalinen agentti. Kognitiivinen mallintaminen I. Rationaalinen agentti. Rationaalinen agentti. Kognitiivinen mallintaminen I, kevät /1/08

4 Heuristinen haku. Eero Hyvönen Helsingin yliopisto

Algoritmit 1. Luento 9 Ti Timo Männikkö

.. X JOHDATUS TEKOÄLYYN TEEMU ROOS

Eero Hyvönen Helsingin yliopisto

Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?

Ongelma 1: Ovatko kaikki tehtävät/ongelmat deterministisiä?

v 8 v 9 v 5 C v 3 v 4

13 Lyhimmät painotetut polut

Symbolinen mallintaminen: tausta. Kognitiivinen mallintaminen I. Symbolisysteemin hypoteesi. Symbolisysteemin hypoteesi

1 Ratkaisuja 2. laskuharjoituksiin

Luku 7. Verkkoalgoritmit. 7.1 Määritelmiä

Harjoitus 6 ( )

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

Harjoitus 6 ( )

811312A Tietorakenteet ja algoritmit Kertausta jälkiosasta

JOHDATUS TEKOÄLYYN TEEMU ROOS

JOHDATUS TEKOÄLYYN TEEMU ROOS

Malliratkaisut Demot

Algoritmit 1. Luento 8 Ke Timo Männikkö

JOHDATUS TEKOÄLYYN TEEMU ROOS

Turingin koneen laajennuksia

811312A Tietorakenteet ja algoritmit Kertausta jälkiosasta

Silmukkaoptimoinnista

Algoritmit 2. Luento 10 To Timo Männikkö

JOHDATUS TEKOÄLYYN TEEMU ROOS

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

811312A Tietorakenteet ja algoritmit V Verkkojen algoritmeja Osa1 : Leveys- ja syvyyshaku

Algoritmit 1. Luento 1 Ti Timo Männikkö

5. Rajoitelaskenta (Constraint Satisfaction)

Joonas Haapala Ohjaaja: DI Heikki Puustinen Valvoja: Prof. Kai Virtanen

Algoritmit 1. Luento 7 Ti Timo Männikkö

Algoritmit 2. Luento 11 Ti Timo Männikkö

Algoritmit 1. Luento 14 Ke Timo Männikkö

Tietorakenteet, laskuharjoitus 7, ratkaisuja

A TIETORAKENTEET JA ALGORITMIT

Nollasummapelit ja bayesilaiset pelit

Kombinatorinen optimointi

Ohjelmistotekniikan laitos OHJ-2550 Tekoäly, kevät

Valitaan alkio x 1 A B ja merkitään A 1 = A { x 1 }. Perinnöllisyyden nojalla A 1 I.

Algoritmit 2. Luento 7 Ti Timo Männikkö

Bayesin pelit. Kalle Siukola. MS-E2142 Optimointiopin seminaari: Peliteoria ja tekoäly

811312A Tietorakenteet ja algoritmit V Verkkojen algoritmeja Osa 2 : Kruskalin ja Dijkstran algoritmit

Algoritmit 1. Luento 13 Ma Timo Männikkö

Mat Lineaarinen ohjelmointi

Ohjelmistotekniikan laitos OHJ-2550 Tekoäly, kevät

Graafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria

verkkojen G ja H välinen isomorfismi. Nyt kuvaus f on bijektio, joka säilyttää kyseisissä verkoissa esiintyvät särmät, joten pari

3. Ongelmanratkonta haun avulla. Eero Hyvönen Helsingin yliopisto

Datatähti 2019 loppu

T : Max-flow / min-cut -ongelmat

Haku osittaisen informaation vallitessa

Algoritmit 1. Luento 13 Ti Timo Männikkö

Olkoon seuraavaksi G 2 sellainen tasan n solmua sisältävä suunnattu verkko,

TIE Tietorakenteet ja algoritmit 261

10. Painotetut graafit

Kieli merkitys ja logiikka. 2: Helpot ja monimutkaiset. Luento 2. Monimutkaiset ongelmat. Monimutkaiset ongelmat

Luku 8. Aluekyselyt. 8.1 Summataulukko

j n j a b a c a d b c c d m j b a c a d a c b d c c j

Algoritmit 2. Luento 4 Ke Timo Männikkö

Äärellisten mallien teoria

Tiedon esittäminen ja päättely. Kognitiivinen mallintaminen I. Merkitys. Merkitys. Kognitiivinen mallintaminen I, kevät /13/07

Algoritmit 2. Luento 13 Ti Timo Männikkö

Algoritmit 2. Luento 14 Ke Timo Männikkö

A*-algoritmi ja siihen pohjautuvat muistirajoitetut heuristiset reitinhakualgoritmit

Algoritmit 2. Luento 6 To Timo Männikkö

AVL-puut. eräs tapa tasapainottaa binäärihakupuu siten, että korkeus on O(log n) kun puussa on n avainta

Oikeasta tosi-epätosi -väittämästä saa pisteen, ja hyvästä perustelusta toisen.

Harjoitus 1 ( )

Dynaamiset regressiomallit

Johdatus verkkoteoriaan luento Netspace

Laskennan mallit (syksy 2010) Harjoitus 4, ratkaisuja

Hakumenetelmät ja ongelmanratkaisu

Johdatus verkkoteoriaan 4. luento

Sovellettu todennäköisyyslaskenta B

Algoritmit 2. Luento 6 Ke Timo Männikkö

Harjoitus 4 ( )

Malliratkaisut Demot

Diskreetit rakenteet

Kieli merkitys ja logiikka. 4: Luovuus, assosiationismi. Luovuus ja assosiationismi. Kielen luovuus. Descartes ja dualismi

A TIETORAKENTEET JA ALGORITMIT

Määrittelydokumentti

Algoritmi on periaatteellisella tasolla seuraava:

Algoritmit 2. Luento 12 Ke Timo Männikkö

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

Induktiotodistus: Tapaus n = 0 selvä; ol. väite pätee kun n < m.

Miten käydä läpi puun alkiot (traversal)?

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

TKHJ:ssä on yleensä komento create index, jolla taululle voidaan luoda hakemisto

Itsestabilointi: perusmääritelmiä ja klassisia tuloksia

Search space traversal using metaheuristics

Algoritmit 2. Luento 4 To Timo Männikkö

Informaation arvo. Ohjelmistotekniikan laitos OHJ-2550 Tekoäly, kevät

Etsintä verkosta (Searching from the Web) T Datasta tietoon Heikki Mannila, Jouni Seppänen

TIEA382 Lineaarinen ja diskreetti optimointi

Tulosten arviointi. tulosten arviointi. voimmeko luottaa saamiimme tuloksiin?

1 Reaaliset lukujonot

Pelin tekoäly. Aleksi Vuorela IIO14S1. Tietorakenteet ja algoritmit harjoitustyö Joulukuu 2015

Harjoitus 1 ( )

Transkriptio:

Kognitiivinen mallintaminen I Symbolinen mallintaminen: 2. luento Ongelmanratkaisu Ongelmanratkaisu Rationaalinen agentti Ongelma-avaruus Hakustrategiat ongelma-avaruudessa sokea haku tietoinen haku heuristiikat Saara Huhmarniemi 1

Rationaalinen agentti Agentti on jokin joka toimii. Joitain ominaisuuksia: autonominen kontrolli ympäristön havainnointi muutokseen sopeutuminen Rationaalinen agentti saavuttaa parhaan lopputuloksen olosuhteet huomioon ottaen. Rationaalinen agentti Rationaalinen = tehdä "järkevin" valinta Rationaalisuus kullakin ajanhetkellä riippuu neljästä asiasta: Suoritusarvo, joka määrää onnistumisen Agentin a priori tieto Agentin toimenpidevalikoima Agentin havaintohistoria Järkevyyden kriteeri = suoritusarvo (performance measure), jonka perusteella agentti arvioi toimintaansa. Saara Huhmarniemi 2

Rationaalinen agentti Esimerkiksi asuntoa imuroivan agentin suoritusarvo voisi olla asunnon puhtaus ajan funktiona. Suoritusarvon valinta vaikuttaa siihen, miten agentti toimii. Miten toimii agentti, jonka suoritusarvo on suorittaa mahdollisimman paljon imurointia ajan funktiona? Rationaalinen agentti Rationaalinen agentti valitsee jokaiselle havaintohistorialle toimenpiteen, joka maksimoi suoritusarvon odotusarvon. Toimenpiteen valinnassa agentti käyttää havaintohistoriaa sekä agentin a priori tietoa. Saara Huhmarniemi 3

Rationaalisuus? Rationaalisuus Kaikkitietävyys Ei ole mahdollista todellisuudessa Selvänäköisyys Ongelmanratkaisu Kuinka saavuttaa päämäärä joka ei ole itsestään selvästi saatavilla? suunnittelu, aikataulutus vian etsintä pelit "palapeliongelmat" Mitä kognitiivisia kykyjä tarvitaan ongelmanratkaisussa? Saara Huhmarniemi 4

Tehtävä Mitä kognitiivisia kykyjä tarvitaan ongelmanratkaisussa? Ongelmanratkaisu Ongelmanratkaisu yleisesti: miten saavuttaa jokin päämäärä, joka ei ole heti saatavilla? suunnittelu, aikataulutus, vianetsintä, pelit, muut pähkinät kuten ristisanat "Älykäs" toimija ratkaisee ongelmat joko nopeasti tai jonkun "näkemyksen" avulla. Saara Huhmarniemi 5

Hyvinmääritellyt ongelmat Hyvinmääritellyt ja tietoon perustuvat ongelmat: Shakki Lähetyssaarnaaja ja ihmissyöjä -ongelma Hanoin torni Aritmetiikan ongelmat Hyvinmääritelty tietoon perustuva ongelma 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 ratkaisuun ei tarvita ulkopuolista tietoa. Saara Huhmarniemi 6

Tila-avaruus ja ongelmaavaruus Ongelmat kuvataan tilasiirtyminä ongelmaavaruudessa. 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ää. 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. Saara Huhmarniemi 7

Hyvinmääritelty tietoon perustuva ongelma Täydellisesti määritelty alkutila Seuraajafunktiot Täydellinen määritelmä halutusta lopputilasta tai ne ehdot, jotka halutulla lopputilalla tulee olla. reitti Aradista Bukarestiin Saara Huhmarniemi 8

reitti Aradista Bukarestiin Alkutila: Arad, Romania Lopputila: Bukarest, Romania Seuraajafunktio: autoilu kaupungista toiseen. Ongelman tila-avaruus Ongelman tila-avaruus muodostuu ongelman tiloista ja siirtymistä jotka muuttavat tilaa. Tila-avaruus voidaan esittää suunnattuna verkkona tai puuna, jonka solmut vastaavat tiloja ja nuolet siirtymiä tilojen välillä. Saara Huhmarniemi 9

Ongelma-avaruus Ongelma-avaruus on tila-avaruus laajennettuna alkutilalla ja halutulla lopputilalla. Onnistunut ongelmanratkaisu on niiden peräkkäisten siirtyminen valitseminen, jotka muuttavat alkutilan halutuksi lopputilaksi. 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. Saara Huhmarniemi 10

Etsintä ongelma-avaruudessa Kaikkein tehokkain ratkaisu ongelmaan on lyhin polku alkutilasta haluttuun tilaan. On olemassa useita algoritmeja lyhimmän polun löytämiseen. Sokeat hakustrategiat (uninformed search, blind search) Tietoinen haku (informed search, heuristic search) Saara Huhmarniemi 11

Hakustrategia 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) syvyyshaku laajentaa aina puussa syvimmällä olevan solmun ensin käyttää vain vähän muistia (vain yhden polun kerrallaan ongelma: väärän polun valinta voi johtaa pitkään harhapolkuun. Saara Huhmarniemi 12

syvyyshaku 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 "hinta" hinta kasvaa kun polulla edetään, ja jokin toinen polku voi tulla kannattavammaksi Saara Huhmarniemi 13

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 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 Saara Huhmarniemi 14

asteittain syvenevä haku 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 Saara Huhmarniemi 15

Tehtävä Mitä hakualgoritmia käyttäisit itse? Mitä ongelmia näet esitellyissä hakualgoritmeissa? Millaista heuristiikkaa tehtävässä voisi käyttää, millaisesta tiedosta olisi apua? 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 voisi olla esimerkiksi suoran viivan pituus kaupungista n Bukarestiin. Saara Huhmarniemi 16

reitti Aradista Bukarestiin Saara Huhmarniemi 17

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 jo kuljetun polun hinta solmussa n heuristisen funktion arvioiman hinnan solmusta n lopputilaan Saara Huhmarniemi 18

Etsintä ongelma-avaruudessa Ihmiset eivät yleensä käytä sokeaa hakua vaan käyttävät jotain heuristiikkaa. Esim. Kukkulalle kapuaminen (hill-climbing): Valitaan aina tila, josta on lyhin matka lopputilaan. Taaksepäinketjutus (backward chaining): edetään lopputilasta kohti alkuehtoja. Välitavoite-analyysi (Means-Ends analysis): valitaan välitavoite johon pyritään lopputilan sijaan. Saara Huhmarniemi 19

Tehtävä Vertaile heuristiikkoja; mitä heuristiikkaa itse käyttäisit kun valitset lyhintä tietä kaupungista toiseen (tietämättä tarkkoja välimatkoja)? Malleja Logic Theorist (LT) Newell et. al. (1958) General Problem Solver (GPS) Ernst ja Newell (1969) Universal Weak Method (implemented in Soar) Laird et. al. (1987) produktiosysteemi Saara Huhmarniemi 20

Hankalat ongelmat Ongelmat, jotka vaativat "näkemystä" Pienoislentokoneen suunnitteleminen alkutila: tyhjä paperi lopputila: sama paperi, jossa on piirros pienoislentokoneen rakenteesta Ongelmat, joiden ratkaiseminen vaatii liikaa tietoa rikkinäisen television korjauttaminen ja muut reaalimaailman monivaiheiset ongelmat 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 Saara Huhmarniemi 21

Hanoin Torni Tehtävä määrittele ongelma-avaruus ja siirtymäfunktiot Tehtävä Kirjoita totuustaulut propositiologiikan kaavoille Saara Huhmarniemi 22

Tehtävä Anna totuustaulu propositiologiikan kaavalle: Saara Huhmarniemi 23