HKGBB0, Artificiell intelligens



Relevanta dokument
A B C D E F A B C D E F (3) Svar: Tabellen ger grafen:

de var svåra att implementera och var väldigt ineffektiva.

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.

Asymptotisk analys innebär att... man försöker uppskatta vad som händer för stora indatamängder.

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

Fråga 5 (1 poäng) För att definiera ett sökproblem krävs...

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann

I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd.

2D Potentialen i en nervcell definieras normalt som skillnaden i spänning mellan dess axon och dendrit.

Mycket kortfattade lösningsförslag till tenta i AI 6 nov 2003

Grundläggande Idéer Algoritmens komponenter Numerisk optimering Genetisk Programmering. Genetiska Algoritmer

Vad behövs för att skapa en tillståndsrymd?

Agent som lär sig. Maskininlärning. Genetiska algoritmer. Typer av återkoppling. ! Introduktion. ! Genetiska algoritmer!

I en deterministisk omgivning beror nästa tillstånd bara av agentens handling och nuvarande tillstånd.

Antag att följande träd genereras i ett spelförande program om vi applicerar evalueringsfunktionen

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Enlagersnät Flerlagersnät Generalisering. Artificiella Neuronnät

Artificiella Neuronnät

Antag att b är förgreningsfaktorn, d sökdjupet, T (d) tidskomplexiteten och M(d) minneskomplexiteten.

Artificiell Intelligens Lektion 7

Genetisk programmering i Othello

Symboler och abstrakta system

729G43'Ar*ficiell'intelligens' Kunskapsrepresenta*on' Kunskapsrepresenta*on' Kunskapsbaserade'agenter' Kunskapsbaserad'agent' Arne'Jönsson' HCS/IDA' '

ARTIFICIELLA NEURALA NÄT. MARCO KUHLMANN Institutionen för datavetenskap

Genetiska Algoritmer. 10 mars 2014

729G43 Artificiell intelligens (2016) Maskininlärning 3. Marco Kuhlmann Institutionen för datavetenskap

ANN fk. Örjan Ekeberg. Framåtkopplade Nät. återkopplade nät. Olika arkitekturer. BackPropagation through Time. Kalman-Filter tekniker

Regression med Genetiska Algoritmer

729G43 Artificiell intelligens Sökning

Linköpings universitet

Kunskapsbaserad agent. Kunskapsrepresentation. Wumpus-världen. Wumpusvärlden. Bris. Bris. Bris. Bris. Bris. Bris. Stank. Stank.

Syntaktisk parsning (Jurafsky & Martin kapitel 13)

Probabilistisk logik 2

Tänk på följande saker när du skriver tentan:

genetiska algoritmer

TATM79: Föreläsning 1 Notation, ekvationer, polynom och summor

Datastrukturer och algoritmer. Föreläsning 15 Inför tentamen

Föreläsning 7. Felrättande koder

Sökning och sortering

Föreläsning 5: Grafer Del 1

Mångfald inom en art. Genotyp. Genpool. Olika populationer. Fig En art definieras som

729G43 Artificiell intelligens (2016) Maskininlärning 2. Marco Kuhlmann Institutionen för datavetenskap

Föreläsning 1. Introduktion. Vad är en algoritm?

Algoritmer, datastrukturer och komplexitet

Mångfald inom en art. Genotyp. Genpool. Olika populationer. Fig En art definieras som

Algoritmer, datastrukturer och komplexitet

Grundläggande logik och modellteori

Tentamen Datastrukturer för D2 DAT 035

Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen.

Sökning. Sökning. Köoperationer. Generell sökalgoritm

Tentamen, Algoritmer och datastrukturer

729G43 Artificiell intelligens / Maskininlärning 2. Marco Kuhlmann

Lösningsförslag för tentamen i Datastrukturer (DAT037) från

Algoritmer, datastrukturer och komplexitet

Tentamenskod: Inga hjälpmedel är tillåtna

F13: Regulatorstrukturer och implementering

Neurovetenskap 30/08/2013. Kognitiv neurovetenskap. Lober. Olika färg, olika vävnadsstruktur. Hjärnbarken

Tentamen: Programutveckling ht 2015

Föreläsning 11. Giriga algoritmer

Dekomposition och dynamisk programmering

Föreläsning 5 Innehåll

Artificial Intelligence

1. Inledning, som visar att man inte skall tro på allt man ser. Betrakta denna följd av tal, där varje tal är dubbelt så stort som närmast föregående

TATA42: Föreläsning 9 Linjära differentialekvationer av ännu högre ordning

Sub-symbolisk kognition & Konnektionism. Kognitionsvetenskaplig Introduktionskurs (729G01) Mats Andrén,

Föreläsning 8: Intro till Komplexitetsteori

1 Begrepp och Hypoteser. 2 Inlärning genom sökning. 3 Objektiv inlärning. Inlärning av en boolsk funktion från exempel.

FUZZY LOGIC. Christopher Palm chrpa087

Tildatenta Lösningsskiss

Algoritm för uppskattning av den maximala effekten i eldistributionsnät med avseende på Nätnyttomodellens sammanlagringsfunktion

Tentamen med lösningsförslag Datastrukturer för D2 DAT 035

Grundläggande logik och modellteori (5DV102)

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret Lektion 4

Tentamen i Statistik, STA A10 och STA A13 (9 poäng) Måndag 14 maj 2007, Kl

Kapitel 13. Genetiska algoritmer

Bakgrund. Bakgrund. Bakgrund. Håkan Jonsson Institutionen för systemteknik Luleå tekniska universitet Luleå, Sverige

PROBLEMLÖSNING. ! GPS! Mål medel analys! Problemlösning i programmering. Lars-Erik Janlert 2007

Algoritmer, datastrukturer och komplexitet

Komplexitetsklasser och repetition

TATM79: Föreläsning 2 Absolutbelopp, summor och binomialkoefficienter

Datastrukturer. föreläsning 6. Maps 1

Ekvivalensrelationer

Algoritmer, datastrukturer och komplexitet

Föreläsning 1. Introduktion och sökning i graf. Vad är en algoritm?

TSFS06: Bayesianska nätverk i GeNIe - kort handledning

Föreläsning 9: Turingmaskiner och oavgörbarhet. Turingmaskinen. Den maximalt förenklade modell för beräkning vi kommer använda är turingmaskinen.

Programmering för språkteknologer II, HT2014. Rum

Algoritmer, datastrukturer och komplexitet

1 Minkostnadsflödesproblem i nätverk

Genetiska algoritmer. Henrik Hansson Rapport, CDT212 Mälardalens Högskola

Epistemologi - Vad kan vi veta? 4IK024 Vetenskapsmetod och teori

Matematisk modellering - Projekt. djurförflyttningar. Viktor Griph Anders Jonsson

STA101, Statistik och kvantitativa undersökningar, A 15 p Vårterminen 2017

Algoritmer och problemlösning

TATM79: Föreläsning 1 Notation, ekvationer, polynom och olikheter

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson

SF2715 Tillämpad kombinatorik, 6hp

Data, typ, selektion, iteration

Föreläsning 10 Innehåll. Prioritetsköer och heapar. ADT Prioritetskö. Interface för Prioritetskö. Exempel på vad du ska kunna

Transkript:

HKGBB0, Artificiell intelligens Kortfattade lösningsförslag till tentan 3 november 2005 Arne Jönsson 1. Vad karaktäriserar dagens AI-forskning jämfört med den AI-forskning som bedrevs perioden 1960-1985. (2) Typiskt för modern AI-forskning är att man inte längre bara kan visa att man kan åstadkomma något som verkar intelligent i en liten leksaksvärld. Istället måste man arbeta med verkliga problem och visa att ens lösning fungerar utanför laboratoriet. Dessutom måste man formellt bevisa egenskaperna hos den artefakt man skapat och t.ex. studera dess komplexitet. Man måste också bygga sina modeller på empiriska studier av såväl den verklighet man vill modellera som att den modell man skapat verkligen fungerar. 2. Förlara begreppet asymptotiskt beteende? En algoritm har följande tidskomplexitet T (n 5 + 50n 2 + 40n + 60). Vilken asymptotisk komplexitet har algoritmen, dvs skriv om T () till O()? Asymptotiskt beteende innebär att man undersöker algoritmens beteende för stora tal, stora n i exemplet. T (n 5 + 50n 2 + 40n + 60) får då en komplexitet som bara beror av det största talet, dvs O(n 5 ). 3. Beskriv djupbegränsad sökning, dess tillämpbarhet och begränsningar. Redogör för dess egenskaper (komplett, optimal, samt tids- och minnesåtgång). Djupbegränsad sökning fungerar som djupet först med den skillnaden att man sätter ett maxdjup, l, som är det maximala sökdjupet. När detta nås avslutas alltså djupsökningen och sökalgoritmen backar uppåt i trädet och söker ner till l igen osv. Vi får då en sökstrategi som har djupet försts minneskomplexitet b l men fortfarande har tidskomplexiteten b l, dvs exponentiellt. Om l inte är för litet är metoden komplett men inte nödvändigtvis optimal. Är l för litet är metoden inte heller komplett. 4. Förklara hur genetiska algoritmer fungerar. Beskriv de olika stegen, tre olika sätt att skapa nya individer samt hur man kan värdera olika tillstånd. Visa gärna med ett exempel hur det hela fungerar. kan ses som en iterativ sökmetod som utgår från de bästa tillstånden, vanligen kallade kromosomer, och förbättrar dessa med operatorer inspirerade från naturlig genetisk variation och naturligt urval. Man arbetar parallellt med flera sökrymder, populationer. En genetisk algoritm börjar med att initialisera populationen och sen följer en loop som utvärderar, väljer föräldrar för reproduktion, korsar och muterar tills dess att en extern utvärdering anser att resultatet är tillfredställande. Föräldrarna väljs ofta slumpmässigt med hänsyn till kromosomutvärdering. Viktigt är också att införa slumpmässiga kromosomförändringar som t.ex. mutationer, då några bitar (2) 1

slumpmässigt byts ut och korsningar, då man väljer ut positioner i två kromosomer och låter delarna byta plats. Om man t.ex. har enkla kromosomer bestående av sex binära siffror och vill ha bara sex ettor kan man börja med att skapa en mängd kromosomer med slummässigt satta värden: 111000 010001 000111 101011 algoritmen räknar hur många ettor det finns, i exemplet ovan blir det 3, 2, 3 respektive 4. Algoritmen väljer sedan vilka individer som skall gå vidare, samt vilka som skall reproduceras och hur de skall korsas. Vi kan låta de två bästa gå vidare och de två nästbästa korsa sig och låta den sämsta gå vidare med tre bitar muterade. Vi skulle då kunna få 101011 (bästa kromosomen från förra populationen) 111000 (en av de två nästbästa) 111111 (de två nästbästa korsade mitt i) 100100 (den sämsta muterad i position 1, 3 och 6) och kan vi förvånat konstatera att vi redan fått en lösning. 5. Gör rimliga antaganden och översätt följande meningar till predikatlogiska uttryck: Alla nystartade partier som är kontroversiella synas av massmedia Det är inte lätt att vara kontroversiell och synas av massmedia IFF är ett nystartat parti som har det lätt och visa med resolution att: IFF är inte kontroversiella (4) (1) p NystartatParti(p) Kontroversiell(p) Massmediasynas(p) (2) q Kontroversiell(q) Massmediasynas(q) HaLätt(q) NystartatParti(IFF) HaLätt(IFF) (4) Kontroversiell(IFF) efter konvertering och negering fås: (1) NystartatParti(p) Kontroversiell(p) Massmediasynas(p) (2) Kontroversiell(q) Massmediasynas(q) HaLätt(q) (3a) NystartatParti(IFF) (3b) HaLätt(IFF) (4) Kontroversiell(IFF) och sen ger resolution t.ex. (4) + (1) med {p/iff} (5) NystartatParti(IFF) Massmediasynas(IFF) (5) + (3a) ger (6) Massmediasynas(IFF) (6) + (2) med {q/iff} ger (7) Kontroversiell(IFF) HaLätt(q) (7) + (3b) ger (8) Kontroversiell(IFF) (8) + (4) ger en tom klausul 2

6. Hur kan man representera tid och tidsintervall i en generell ontologi? Visa hur minst två temporala relationer representeras. Man definierar tidsintervall i termer av när de börjar respektive slutar med ett predikat Time som tar predikat Start resp. End. Det finns fyra principiellt olika fall: Meet(i,j), Before(i,j)=After(j,i), During(i,j) och Overlap(i,j). i,j Meet(i,j) Time(End(i)) = Time(Start(j)) i,j Before(i,j) Time(End(i)) < Time(Start(j)) i,j During(i,j) Time(Start(j)) Time(Start(i)) Time(End(i)) Time(End(j)) i,j Overlap(i,j) k During(k,i) During(k,j) 7. Vad är succesor-state axiom? Visa hur man representerar handlingar med succesor-state axiom. Diskutera problem som succesor state-axiom löser och problem som kvarstår. Ett successor-state axiom är ett sätt att representera såväl handlingar som frameaxiom i situationskalkyl. Succesor-state axiom löser representationsproblemet men inte qualification-problemet, dvs att räkna upp alla förutsättningar för att lyckas utföra en handling, eller ramification-problemet, dvs problemet att räkna upp alla implicita konsekvenser av en handling. Man representerar vad som påverkas av handlingen och vad som inte påverkas av handlingen Sann i nästa situation handling utförs som gör sann redan sann och ingen handling som gör falsk utförs t.ex. x,a,s Partiledare(x,Result(a,s)) Valbar(x,s) a=väljs Partiledare(x,s) a Avsätts 8. Konstruera ett Bayesianskt nätverk med villkorssannolikhetstabeller för följande probabilistiska samband. P(a b)=0,5, P(a b)= P(b)=, P(c)=, P(d b c)=, P(d b c)=, P(d b c)=, P(d b c)=0,2 Räkna ut P(a b c d) (Det räcker att teckna uttrycket). (4) P(B) B C P(C) b b P(A) 0,5 A D b c b c b c b c P(D) 0,2 P(a b c d) = *0,6**=0,0216 3

9. Visa hur planeringsgrafen, med mutexlänkar, ser ut vid planering från initialtillståndet Init(Läst(Tenta) Skrivit(Tenta)) till måltillståndet Goal(Klara(Tenta)) med handlingen OP(Action:Skriva(Tenta), Precond:Läst(Tenta), Effect: Skrivit(Tenta) Klara(Tenta)). Skrivit(Tenta) Skrivit(Tenta) Skriva(Tenta) Skrivit(Tenta) Klara(Tenta) Läst(Tenta) Läst(Tenta) 10. Förklara inlärningsmetoden Version Space. Förklara hur metoden hanterar positiva respektive negativa exempel och hur hypotesrymden påverkas. Version Space hittar både den mest specifika och den mest generella beskrivning som täcker alla positiva exempel och inget negativt. Metoden arbetar med två hypotesmängder S och G. S är de mest specifika hypoteser som täcker alla positiva exempel och inget negativt medan G är de mest generella hypoteser som täcker alla positiva exempel och inget negativt. Vid inlärning presenteras omväxlande positiva och negativa exempel. När ett positivt exempel p presenteras börjar algoritmen med att ta bort de hypoteser ur G som inte matchar p. Sedan ersätts alla hypoteser i S som inte matchar p med de mest specifika generaliseringar som matchar p, är mer specifika än någon hypotes i G och inte är mer generella än någon hypotes i S. Om det är ett negativt exempel n så gör man tvärtom, i princip. Först tar algoritmen bort de hypoteser ur S som matchar n. Sen ersätter den alla hypoteser i G som matchar n med de mest generella specialiseringar som inte matchar n, är mer generella än någon hypotes i S och inte är mer specifik än någon hypotes i G På så sätt bygger man en tolkningsrymd där G är den mest generella beskrivningen och S den mest specifika utifrån de exempel som presenterats. 11. Beskriv gradient backpropagation algoritmen. När kan den användas? Hur fungerar den? Gradient backpropagation används för inlärning av neurala nät. Man matar in indata till nätet, aktiverar nätet och får ett resultat. Detta resultat jämförs med ett förväntat resultat och det fel som uppstår används för att träna nätet. Nätet tränas genom att justera vikterna. För utdatalagret justeras vikterna genom att för varje utdatanod ändra vikterna på noderna in beroende på hur stort fel man hade multiplicerat med hur stor inverkan den dolda noden hade och sen multipliceras detta med en förstärkningsfaktor för att inte inlärningen skall svänga för mycket. För dolda lager räknas felet ut genom att man antar att den dolda nodens fel är proportionellt mot hur stort felet var i lagret ovan, dvs för det dolda lagret närmast utdatalagret räknar man det fel som fanns vid jämförelse med förväntad signal och summerar över felet från alla utdatanoder med sin vikt från den dolda noden och för dolda lager där under räknas pss fast då baserat på felet som den dolda noden fick. Man går hela tiden bakifrån utadatalagret mot indatalagret som är det sista som uppdateras. Detta upprepas tills dess att man är nöjd med resultatet. Nöjd betyder inte att man vill ha noll fel, eftersom det kan leda till överinlärning. Gradient i algoritmnamnet betyder att felet man får när man tar skillnaden mellan förväntad och erhållen multipliceras med derivatan av hela nätets utdatafunktion. 4

12. Vad är en diskursenhet? Vad innebär det att hantera lokal diskurs med diskursenheter och en historielista? Förklara hur man kan hantera följande diskurs med diskursenheter och historielista: Den feta pudeln skällde ilsket på lärarna. De blev irriterade och skällde tillbaks. Då tystnade den och lommade lojt bort i natten. En diskursenhet representerar de konstituenter i diskursen som senare kan refereras, utgöra antecedenter i refererande uttryck, oftast substantiv. Man representerar diskursenhetens individuella restriktioner och eventuella mängdrestriktioner. Att hantera lokal diskurs med historielista innebär att man lagrar diskursenheter i en lista och temporalt och väljer den första diskursenhet i historielistan vars individuella restriktioner och mängdrestriktioner passar. I diskursen ovan får vi för första meningen: DE IR SR P P = 1 {p Fet(p)} L L > 1 - I nästa yttrande kommer pronominat De att co-referera den första plural DE, dvs L. I sista yttrandet kommer sen den att co-referera första DE i singular, dvs P. Sista meningen innehåller också natten som skulle kunna ge upphov till ytterligare en diskursenhet. 5