Opgaven Kunstmatige Intelligentie 1 maart 2017

Vergelijkbare documenten
Oude tentamens Kunstmatige intelligentie Universiteit Leiden Informatica 2005

Uitwerkingen opgaven Kunstmatige intelligentie

Opgaven Kunstmatige intelligentie 4 mei 2012

Opgaven Kunstmatige intelligentie 2 mei 2018

Uitwerkingen Sum of Us

Uitwerking tentamen Algoritmiek 10 juni :00 13:00

Vierde college algoritmiek. 2 maart Toestand-actie-ruimte Exhaustive Search

Datastructuren en Algoritmen

Computerspellen in soorten en maten

Hoofdstuk 3 (vanaf 3.5) en 4 van Russell/Norvig = [RN] Gericht zoeken en verder

Opgave 2 ( = 12 ptn.)

Computationele Intelligentie

Examen Datastructuren en Algoritmen II

Computationele Intelligentie

rekentrainer jaargroep 6 Vul de maatbekers. Kleur. Zwijsen naam:

Uitwerking tentamen Analyse van Algoritmen, 29 januari

Uitwerking tentamen Algoritmiek 9 juli :00 13:00

Tentamen Kunstmatige Intelligentie (INFOB2KI)

rekentrainer jaargroep 6 Vul de maatbekers. Kleur. Zwijsen naam:

Het minimale aantal sleutels op niveau h is derhalve

Uitwerking tentamen Algoritmiek 9 juni :00 17:00

START WISKUNDE-ESTAFETTE RU 2007 Je hebt 60 minuten voor 20 opgaven. Het totaal aantal te behalen punten is 600.

Examen Datastructuren en Algoritmen II

Zwijsen. jaargroep 4. naam: reken-wiskundemethode voor het basisonderwijs. rekentrainer. jij. Bezoek alle leuke dingen. Teken de weg.

Grafen en BFS. Mark Lekkerkerker. 24 februari 2014

Twaalfde college complexiteit. 11 mei Overzicht, MST

Leest hij eerst de eerste kolom van boven naar beneden, dan de tweede enzovoorts, dan hoor je

Uitgebreide uitwerking tentamen Algoritmiek Dinsdag 5 juni 2007, uur

Examen Datastructuren en Algoritmen II

De Leidsche Flesch Studievereniging voor Natuurkunde, Sterrenkunde, Wiskunde en Informatica sinds DLF Pointerworkshop

e ronde Klas 3 4

Jijbent.nl: spelregels Shogi. Bram Schoonhoven Copyright 2017 Jijbent.nl

Vijfde college algoritmiek. 2/3 maart Exhaustive search

ALGORITMIEK: antwoorden werkcollege 5

ALGORITMIEK: antwoorden werkcollege 5

Uitgebreide uitwerking Tentamen Complexiteit, mei 2007

Uitgebreide uitwerking tentamen Algoritmiek Dinsdag 2 juni 2009, uur

Opgaven voor Kansrekening

WISKUNDE-ESTAFETTE RU Minuten voor 20 opgaven. Het totaal aantal te behalen punten is 500

Examen Datastructuren en Algoritmen II

Doorzoeken van grafen. Algoritmiek

Formeel Denken 2014 Uitwerkingen Tentamen

Kraters slaan. Rekenoefening groep 5&6. Doel. Materiaal. Voorbereiding. Beschrijving. groep 5&6 - Kraters slaan

blok 11 groep 4 Malmberg s-hertogenbosch

Computationale Intelligentie Dirk Thierens

Een voorbeeld. Computationele Intelligentie Zoeken met een tegenstander. Een voorbeeld vervolg. Een zoekprobleem met een tegenstander

FLIPIT 5. (a i,j + a j,i )d i d j = d j + 0 = e d. i<j

1 Rekenen met gehele getallen

Kunstmatige Intelligentie (AI) Hoofdstuk 6 van Russell/Norvig = [RN] Constrained Satisfaction Problemen (CSP s) voorjaar 2015 College 7, 31 maart 2015

Examen Datastructuren en Algoritmen II

ALGORITMIEK: antwoorden werkcollege 5

144 Samenvatting. Onderzoeksvraag 1: Hoe kunnen we Monte-Carlo Tree Search aanpassen

Kunstmatige Intelligentie (AI) Hoofdstuk 5 van Russell/Norvig = [RN] Spel(l)en. voorjaar 2016 College 6, 22 maart 2016

LES: Vier op een rij. BENODIGDHEDEN Per leerling werkblad Vier op een rij (zie p. 5) kleurpotloden, potlood en gum AFBEELDING SPELLETJE

Basistechnieken Microsoft Excel in 15 minuten

V = {a, b, c, d, e} Computernetwerken: de knopen zijn machines in het netwerk, de kanten zijn communicatiekanalen.

Opdrachten Toeval Opdrachten Toeval Opdracht 1.1 (Bestaat toeval) Opdracht 1.2(toeval in de natuur)

LES: Waslijn. BENODIGDHEDEN Per leerling werkblad Stapjes maken (zie p. 5) potlood en gum AFBEELDING SPELLETJE


LES: Vier op een rij 2

Zoekproblemen met tegenstanders. Zoekalgoritmen ( ) College 9: Zoeken met een tegenstander (I) Een zoekprobleem met een tegenstander

FORMULA MOTOR RACING

Examen Datastructuren en Algoritmen II

Hoofdstuk!7!Kortste!paden!

Uitgebreide uitwerking Tentamen Complexiteit, juni 2017

Combinatoriek en rekenregels

Algoritmes in ons dagelijks leven. Leve de Wiskunde! 7 April 2017 Jacobien Carstens

Wiskunnend Wiske. 5. Goochelende getallen. Wat ik ga studeren? Wiskunde natuurlijk!

Duration: 2 hrs; Total points: 100 No documents allowed. Use of electronic devices, such as calculators, smartphones, smartwatches is forbidden.

Tentamenset A. 2. Welke van de volgende beweringen is waar? c. N R N d. R Z R

Examen Datastructuren en Algoritmen II

Handleiding Japanse puzzels

LEREN DAMMEN DAMWERKBOEK. De Eerste Zet. Naam. Regiowerking Noord Palmans, Z. Versie: 2018 DAMWERKBOEK VOOR KINDEREN

Tiende college algoritmiek. 14 april Dynamisch Programmeren, Gretige Algoritmen, Kortste Pad met BFS

Inleiding. Spelmateriaal

rekentrainer jaargroep 5 Timo loopt steeds verder weg. Teken Timo bij de kruisjes op de weg en maak de tekening af. Zwijsen naam:

Deeltentamen Kunstmatige Intelligentie

Discrete Wiskunde 2WC15, Lente Jan Draisma

Mijn project noemt Het Wari-spel. De doelgroep van mijn programma is iedereen die houdt van strategische spelen.

Rekentijger - Groep 6 Tips bij werkboekje A

Hoofdstuk 1. Afspraken en notaties

Opgave 1 - Uitwerking

Jijbent.nl: spelregels Stacko. Bram Schoonhoven Copyright 2019 Jijbent.nl

Ieder tweetal heeft nodig: Een kopie van de slagschipspelletjes: 1. 1A, 1B voor spel A, 2B voor spel A, 3B voor spel 3

Jijbent.nl: spelregels Rozenkoning. Dirk Henn Copyright 2019 Jijbent.nl

Groep Inleiding. 2. Het invullen van leerling informatie. 3. Maken van voorbeelden voor de testafname

DiceRun. Doel. Inhoud. Voorbereiding

Datastructuren: stapels, rijen en binaire bomen

Netwerkdiagram voor een project. AOA: Activities On Arrows - activiteiten op de pijlen.

Kosten. Computationale Intelligentie. Een zoekprobleem met stapkosten. Een voorbeeld: het vinden van een route. Zoeken met kosten.

Het rooster is het eigenlijke spelbord. Bij elk vak hoort juist 1 kaart.

Antwoorden. Magische vierkanten Vierkant voor Wiskunde Doeboek 8

Tiende college algoritmiek. 26 april Gretige algoritmen

Examen Datastructuren en Algoritmen II

5 keer beoordeeld 4 maart Wiskunde H6, H7, H8 Samenvatting

DETROIT - CLEVELAND / GRAND PRIX

(Kunst)Matige intelligentie

Tiende college algoritmiek. 2 mei Gretige algoritmen, Dijkstra

rekentrainer jaargroep 5 Timo loopt steeds verder weg. Teken Timo bij de kruisjes op de weg en maak de tekening af. Zwijsen naam:

Transcriptie:

Opgaven Kunstmatige Intelligentie 1 maart 2017 Opgave 1. a. Denkt een schaakprogramma? b. Denkt een (Nederlands-Engels) vertaalprogramma? c. Denkt een C ++ -compiler? d. Denkt Watson, the IBM-computer die in februari 2011 Jeopardy! won? En voldoet Watson aan de Turing-test? e. Kan een computer denken? Opgave 2. a. De omgeving voor een agent kan statisch of dynamisch zijn. Wat betekent het tussengeval semidynamisch? Geef een voorbeeld. b. De omgeving voor een agent kan deterministisch of stochastisch zijn. Hoe zou je een situatie inschatten waarbij een tegenstander zetten doet die je zelf niet kunt voorspellen? Geef van alle drie een voorbeeld. c. Is de omgeving bij het spelen van een spelletje poker 1. ja/nee volledig observeerbaar, 2. ja/nee episodisch,. ja/nee deterministisch/strategisch? Geef duidelijke verklaringen van de antwoorden. En wat is het antwoord bij 2. op een pokertoernooi? Opgave. a. Geef een korte PEAS beschrijving van een meerpersoons autoracespel dat via internet gespeeld wordt, en waarbij met op afstand bestuurbare auto s gereden wordt. Vertel ook waar de PEAS afkortingen van zijn. b. Maak een korte PEAS beschrijving voor de taak-omgeving van een ploeg robots die voetbal speelt. Geef hiertoe per letter P-E-A-S een tweetal steekwoorden. c. En idem voor een student die een schriftelijk tentamen maakt. Opgave 4. Een agent bevindt zich in de linker of in de rechter kamer. De enige mogelijke acties zijn L: ga naar de linker kamer en R: ga naar de rechter kamer. Geef de toestand-actie-ruimte met de drie bereikbare belief states voor het sensorloze (conformante) geval. Opgave 5. Probeer een eenvoudig schaak-programma (witte dame en koning tegen zwarte koning) onder te brengen in elk van de volgende categorieën, door het steeds in gedachten iets krachtiger te maken: 1) reflex-gebaseerde agent, 2) idem, met toestand, ) doel-gebaseerde agent, 4) nut-gebaseerde agent, 5) lerende agent. Opgave 6. Probeer het programma van de tweede programmeeropgave onder te brengen in één of meer van de volgende categorieën: 1) reflex-gebaseerde agent, 2) idem, met toestand, ) doel-gebaseerde agent, 4) nut-gebaseerde agent, 5) lerende agent. Opgave 7. We bekijken schuifpuzzels, zoals de 15-puzzel. Bij zo n schuifpuzzel heb je een graaf waarbij alle knopen behalve één een uniek nummer hebben. Je mag een getal naar zijn buur 1

schuiven als die buur geen nummer heeft. (De knopen blijven op hun plek zitten.) De vraag is: welke posities kun je vanuit een vaste bereiken? a. Los de twee meest linkse onderstaande puzzels op. Oftewel: hoeveel verschillende patronen, die niet (door herhaald te schuiven) in elkaar over te voeren zijn, heb je? Geef eerst het aantal verschillende mogelijke posities. 1 2 1 2 1 2 2 4 1 b. Hoeveel verschillende patronen, die niet in elkaar over te voeren zijn, heb je als de getallen 1, 2,..., n 1 op een cirkel liggen, waarbij ieder getal alleen met de eerst kleinere en eerst grotere verbonden is? (n is de lege plek, verbonden met 0 en n 1.) Als voorbeeld (het tweede plaatje is al het geval n = ) laat het derde plaatje de situatie met n = 4 zien (en dat is analoog aan de 15-puzzel eigenlijk de -puzzel). c. En voor een vlinderdasje (zie het vierde plaatje)? d. Hoe zou je een computerprogramma schrijven dat dit uitrekent? Opgave 8. (opgave van tentamen 1 juni 2001) a. Leg het A*-algoritme uit. b. Wanneer heet een heuristiek toelaatbaar (= admissibel)? c. Wat is de pathmax equation en waarvoor wordt deze gebruikt? d. Bepaal een kortste pad van begin naar doel voor onderstaande graaf. Beginknoop is A, doelknoop is Z. De kostenfunctie staat naast de takken van de graaf. Gebruik achtereenvolgens gezond verstand, Depth First Search (DFS) en Breadth First Search (BFS). Wordt het eenvoudiger als alle kosten 1 zijn? e. Voer het A*-algoritme uit voor onderstaande graaf. Gebruik zonodig de pathmax equation. Beginknoop is A, doelknoop is Z. Bij de knopen staat tussen haakjes de (overigens toelaatbare) heuristische functie. Geef duidelijk aan hoe het algoritme verloopt. f. Wat is de effectieve vertakkingsgraad (= effective branching factor) b* in dit geval? Geef de betreffende formule. A(5) D(4) 2 2 C(4) 5 5 B(7) 6 F (0) Z(0) E() 4 2

Opgave 9. (opgave van tentamen 25 juni 200) a. Leg het A*-algoritme en het IDA*-algoritme uit. b. Stijgen bij het A*-algoritme de f-waarden langs de paden altijd? Zo nee, wat kun je hieraan doen? c. Voer het A*-algoritme uit voor onderstaande graaf; hierbij is k een vast positief geheel getal, minstens 2. Gebruik zonodig de pathmax equation. Beginknoop is A, doelknopen zijn Y en Z. Bij de knopen staat tussen haakjes de (overigens admissibele) heuristische functie. De kostenfunctie staat naast de takken van de graaf; tussen de B i -knopen zit steeds gewicht 1, tussen de C i s steeds 2 en tussen de D i s steeds. Geef duidelijk aan hoe het algoritme verloopt, en met name in welke volgorde de knopen ontwikkeld worden. d. Leg uit waarom in dit geval het IDA*-algoritme niet zo prettig werkt. A(4) D 1 (2) 1 C 1 (0) 2 B 1 (2) D 2 (2) D k (2) 2 Y (0) 2 2 Z(0) C 2 (0) C k (0) 7 1 B 2 (2) B k (2) Opgave 10. (opgave van tentamen 4 juni 2004) a. Leg het A*-algoritme en het IDA*-algoritme uit. Geef expliciet de formule voor f en denk aan de stop-conditie. Geef aan waarin A* en IDA* verschillen. b. Stijgen bij het A*-algoritme de f-waarden langs de paden altijd? Zo nee, wat kun je hieraan doen? c. Bekijk onderstaande ongerichte graaf. Beginknoop is A, doelknoop is H. Bij de knopen staat tussen haakjes de heuristische functie. De kostenfunctie staat naast de takken van de graaf. Geef aan voor welke waarden van σ > 0 de heuristiek admissibel is. A(5) D(0) 6 2 2 C() σ 7 4 B(0) 6 G(2) 5 F (1) σ H(0) 6 E(2)

d. Voer het IDA*-algoritme uit voor deze graaf. Neem aan dat σ zo is dat de heuristiek admissibel is. Gebruik zonodig de pathmax equation. Geef duidelijk aan hoe het algoritme verloopt, en met name in welke volgorde knopen ontwikkeld worden. Dit hangt af van de waarde van variabele σ! Opgave 11. (opgave van tentamen 21 augustus 2006) a. Leg het A*-algoritme en het IDA*-algoritme uit. Geef expliciet de formule voor f en denk aan de stop-conditie. Geef aan waarin A* en IDA* verschillen. b. Bekijk onderstaande gerichte graaf. Beginknoop is A, doelknopen zijn Y en Z. De kostenfunctie staat naast de pijlen in de graaf. Bij de knopen staat tussen haakjes de heuristische functie. Maak deze met zo min mogelijk wijziging(en) admissibel. c. Voer het IDA*-algoritme uit voor deze graaf. Gebruik zonodig de pathmax equation. Geef duidelijk aan hoe het algoritme verloopt, en met name in welke volgorde knopen ontwikkeld worden. Geef de verschillende mogelijkheden, afhankelijk van ρ > 0 (een reëel getal). d. Geef de best denkbare admissibele heuristische waarden bij de knopen. H(6) 5 Y (0) ρ D(7) G(4) 1 1 1 A(5) 4 C() 2 F (0) 1 Z(0) 5 1 6 B(2) 1 E(7) Opgave 12. (opgave van tentamen 22 juni 2011) a. Leg het A*-algoritme en het IDA*-algoritme uit. Geef de verschillen duidelijk aan. Geef expliciet de formule voor f (wat stellen g en h voor?) en denk aan de stop-conditie. b. We bekijken onderstaande gerichte graaf. Beginknoop is A 1, doelknopen zijn Z 1 en Z 2. Bij de knopen staat tussen haakjes de waarde van de admissibele heuristische functie h. Alle horizontale takken hebben kosten 1, alle diagonale takken kosten 2. Voer het A*-algoritme uit. Gebruik zonodig de pathmax equation. Geef duidelijk aan hoe het algoritme verloopt, en met name in welke volgorde de knopen ontwikkeld worden. Indien er hierbij keuzes mogelijk zijn, geef ze dan allemaal. B 1 (5) B 2 (4) B (4) B 4 () B 5 (2) B 6 (1) A 1 (5) A 2 (4) A (0) A 4 (2) A 5 (1) A 6 (0) Z 2 (0) Z 1 (0) c. Idem, maar nu het IDA*-algoritme. 4

d. Hoeveel knopen worden er in totaal ontwikkeld bij c (eventueel afhankelijk van de gekozen volgorde)? En hoeveel als de heuristische h-waarde in alle A-knopen met 1 wordt opgehoogd? Kan het nog beter? Opgave 1. (opgave van tentamen 1 juni 2012) B(0) a. Leg het A*-algoritme en het IDA*-algoritme uit. Geef de 2 verschillen duidelijk aan. Geef expliciet de formule voor f (wat 4 stellen g en h voor?) en denk aan de stop-conditie. A() X(5) Z(0) b. We bekijken nevenstaande ongerichte graaf. Beginknoop 1 is A, doelknoop is Z. Bij de knopen staat tussen haakjes de C(2) waarde van de admissibele heuristische functie h. Voer het A*-algoritme uit. Gebruik zonodig de pathmax equation. Geef duidelijk aan hoe het algoritme verloopt, en met name in welke volgorde de knopen ontwikkeld worden. Indien er hierbij keuzes mogelijk zijn, geef ze dan allemaal. c. Idem, maar nu het IDA*-algoritme. d. Nu gaan we weer van A naar Z, maar moeten intussen in X een pakje ophalen. Wat zijn nu toestanden (hint: er zijn er 9 of 10)? Hoe moeten we de heuristische functie h uitbreiden? Geef de best mogelijke h, en laat zien hoe IDA* in het gunstigste geval verloopt. Opgave 14. (opgave van tentamen 4 juni 2004) 1 2 We bekijken het nevenstaande spel voor twee personen. Speler A kiest een 4 5 6 getal en streept dit getal (bijvoorbeeld ) en getallen er recht onder en 7 8 9 rechts ervan (6 en 9) weg; dit moeten er samen minstens zijn, dus bijvoorbeeld 8 of 9 mogen niet als eerste zet. Daarna doet Speler B analoog (bijvoorbeeld 1, en ook 2, 4 en 7 verdwijnen; 5 en 8 blijven). De som van de overgebleven getallen (5 + 8 = 1) is de uitkomst van het spel. Speler A wil uiteindelijk zo hoog mogelijk eindigen, speler B zo laag mogelijk of juist andersom (%). a. Geef de spelboom (= game tree) die hierbij hoort. b. Beschrijf in woorden het minimax-algoritme. c. Voer dit uit voor de spelboom van a, voor beide opties bij (%). d. Voer het α-β-algoritme uit voor beide opties. Geef ook een korte rechtvaardiging voor het snoeien. Zorg ervoor dat de ordening van de knopen zo is dat er in beide gevallen zoveel mogelijk gesnoeid kan worden! Opgave 15. (opgave van tentamen 19 juni 2007) We spelen het volgende tweepersoons spel. Speler A kiest een getal, zeg a, uit {1, 2,, 4}. Daarna kiest speler B een getal, zeg b, uit {0, 1, 2,, 4}, maximaal gelijk aan a. Als beide getallen even zijn of oneven, wint A, en anders B. Men wint met a b + 1 punten. Aan het begin van het spel mag B kiezen of A zijn keuze zelf mag bepalen of met een eerlijke vierzijdige dobbelsteen. a. Geef de spelboom (= game tree) die hierbij hoort. Denk aan kansknopen. b. Beschrijf in woorden het minimax-algoritme. c. Voer het expecti-minimax-algoritme uit voor de spelboom van a. d. Nu mag B aan het begin niets kiezen, A mag geheel zelf zijn keuze bepalen, en B moet b 0 nemen. Geef opnieuw de spelboom en voer het minimax-algoritme uit. e. Voer het α-β-algoritme uit, in de situatie van d. Zorg ervoor dat de ordening van de knopen zo is dat er zoveel mogelijk gesnoeid kan worden! 5

Opgave 16. (opgave van tentamen 22 juni 2011) Cindy en Bert spelen een tweepersoons spel; Cindy begint, daarna moet Bert, en is het spel afgelopen. Er ligt op tafel een rijtje van vier tegels met een letter (de beginletters van de twee spelers) en een getal erop: C C5 B4 B8. De speler die aan de beurt is moet naar keuze de voorste of de achterste tegel verwijderen. De einduitslag wordt op grond van de twee overblijvende tegels bepaald: als beide tegels dezelfde letter hebben, wint de speler met die beginletter, met de som van de getallen als beloning; verschillen de letters, dan wint het hoogste getal met als beloning het absolute verschil tussen de twee getallen: bij C5 B8 wint Bert met 8 5 = punten. Bert mag als hij dat wil direct vóór zijn beurt de dobbeljoker inzetten, die de middelste van de drie tegels met de voorste of achterste verwisselt, beide met even grote kans. a. Beschrijf in woorden het expecti-minimax-algoritme. b. Maak de spelboom, en bereken de expecti-minimax-waarde. c. Cindy mag van te voren één van de vier getallen met 2 ophogen of verlagen. Wat doet ze als ze verstandig is? d. Nu wordt er helemaal niet meer gedobbeld, maar mag Bert naar keuze de middelste met de voorste of achterste wisselen; hij mag het ook laten. Voer het α-β-algoritme uit. Geef ook een korte rechtvaardiging voor het snoeien. Zorg ervoor dat de ordening van de knopen zo is dat er zoveel mogelijk gesnoeid kan worden! Opgave 17. (opgave van tentamen 1 juni 2012) Bekijk het volgende tweepersoons spel, gespeeld door John en Yoko. Ze zijn om en om aan de beurt, en John begint. Er wordt gespeeld met letters uit de verzameling V = {A, B}, en een 2 2 bord. De speler die aan de beurt is mag kiezen: hij/zij verwijdert een letter van het bord, óf hij/zij zet een letter uit V op een leeg vakje van het bord. Letters uit V mogen maar één keer gebruikt worden. Het spel eindigt zodra de tweede letter uit V gebruikt is. De eerste zet betreft dus het spelen van een letter; deze dient linksboven gezet te worden. De uitslag van het spel wordt als volgt bepaald. Als er alleen één letter rechtsonder staat wint John als het een A is en Yoko als het een B is. Verder wint John als er een lege rij is (en geen lege kolom), Yoko wint als er een lege kolom is (en geen lege rij). Anders is het remise. Men wint steeds met als aantal punten het aantal letters op het bord. Twee voorbeeldspellen: - - A - A - - - B - - - - - - - - - B - Yoko wint (2) - - - - - - - A John wint (1) In de kansversie van het spel wordt de plek van de gekozen letter random bepaald (voor de beginzet blijft dit steeds linksboven); in de gewone versie moeten de spelers zelf de plaats van de gekozen letter bepalen. a. Beschrijf in woorden het expecti-minimax-algoritme. b. Maak de spelboom en bereken de expecti-minimax-waarde, voor de kansversie. c. Maak de spelboom en bereken de minimax-waarde, voor de gewone versie. d. Nu spelen we net als in c de gewone versie, zonder kansen. Voer het α-β-algoritme uit. Geef ook een korte rechtvaardiging voor het snoeien. Zorg ervoor dat de ordening van de knopen zo is dat er zoveel mogelijk gesnoeid kan worden! www.liacs.leidenuniv.nl/kosterswa/ai/opgaven1.pdf 6