• No results found

Deeltentamen ‘Kunstmatige Intelligentie’

N/A
N/A
Protected

Academic year: 2021

Share "Deeltentamen ‘Kunstmatige Intelligentie’"

Copied!
8
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

Deeltentamen ‘Kunstmatige Intelligentie’

Department of Information and Computing Sciences Opleiding Informatiekunde

Universiteit Utrecht Donderdag 15 december 2011

08.30 – 10:30, EDUCA-BETA

Vooraf

• Mobiele telefoons dienen uitgeschakeld te zijn.

Tijdens

• Gedurende het tentamen mag geen materiaal van de cursus geraadpleegd worden (gesloten- boek tentamen).

Na afloop

• Controleer voor je weg gaat of je je naam en alle antwoorden hebt ingevuld. Zet bij niet ingevulde antwoorden een streepje.

• Vul je naam en nummer in op het formulier bij de docent.

• Lever alle bladen in.

Succes!

(2)

Studentnr:

A. Kunstmatige Intelligentie

1. Geef minstens drie punten waar een systeem aan moet voldoen om volgens de definitie in Gottfredson, L.S. (1997). "Foreword to "intelligence and social policy"“. Intelligence 24 (1): 1–12 intelligent genoemd te kunnen worden.

2. Geef minstens twee redenen waarom volgens deze definitie Watson van IBM wel intelligent genoemd kan worden. Geef ook minstens een reden waarom Watson niet intelligent genoemd kan worden.

(3)

Naam: Studentnr:

B. Motion

3. Gegeven het volgende programma voor seek behavior, geef een programma voor flee behavior.

Je kunt de radius gebruiken als de afstand waarbuiten je “veilig’ bent en dus niet verder hoeft.

character #kinematic data character target #kinematic data target

maxSpeed #maximum speed of character radius #satisfaction radius

timeToTarget = 0.25 #within radius get to target in 0.25s def getSteering():

steering = new KinematicSteeringOutput()

steering.velocity = target.position – character.position if steering.velocity.length() < radius: return None steering.velocity /= timeToTarget

if steering.velocity.length() > maxSpeed steering.velocity.normalize()

steering.velocity *= maxSpeed

character.orientation = getNewOrientation(character.orientation,steering.velocity) steering.rotation = 0

return steering

(4)

C. (Heuristic) Searching

4. Als ik het geheugengebruik wil beperken bij het zoeken in een boom kan ik dan beter depth-first of beter breadth-first search gebruiken? Geef aan waarom.

5. Is de methode die je bij 4. hebt aangegeven compleet?

6. Om van de ingang van een huis naar een brand op zolder een kortste pad te vinden gebruikt een brandweerman het A* algoritme. Als heuristiek voor de afstand van een punt in het huis naar de brand op zolder wordt het volgende gebruikt: de euclidische afstand tot de dichtsbijzijnde trap maal het aantal verdiepingen dat je van de zolder af bent. Vind je hiermee gegarandeerd een optimale oplossing? Zo ja, schets dan het bewijs. Zo nee, geef dan een tegenvoorbeeld.

(5)

Naam: Studentnr:

D. Decision making

7. Maak een beslisboom voor een brandweerman die moet beslissen welke actie hij moet doen gebaseerd op de volgende regels:

Als je bij een huis komt en er is een grote brand of er is een persoon in het huis op een

bovenverdieping roep dan hulp in. Als de brand klein is ga dan direct naar binnen om te blussen.

Als de brand klein is, maar er is ook een slachtoffer kijk dan of er een collega is. Is er een collega om het slachtoffer te redden ga dan naar binnen om te blussen. Anders ga je het slachtoffer redden.

(6)

E. Planning

8. Laat zien hoe je met STRIPS een plan maakt dat vanuit een beginsituatie waarin geldt: at(home) AND broken(tv) AND at(tv,home)

komt tot een situatie waarin geldt: at(home) AND watch(tv,home) waarbij de volgende acties beschikbaar zijn:

switch_on(tv): { Pre: NOT broken(tv) AND at(tv,home) AND at(home), Add: watch(tv,home)}

throwaway(X):{Pre: at(X,home), Del: at(X,home), broken(X)}

buy(X):{Pre: at(shop),Add: have(X)}

transport(X,Y,Z):{Pre:have(X) AND at(X,Y), Add: at(X,Z), Del: at(X,Y)}

goto(X,Y):{Pre: at(X), Add: at(Y), Del: at(X)}

(7)

Naam: Studentnr:

F. Strategy

9. Wat is het prisoner’s dilemma? Leg uit waarom het een dilemma is.

10. Stel dat een grote en een kleine aap bij een palmboom staan en er een kokosnoot in de boom hangt die een opbrengst van 10 heeft. Als de grote aap de boom inklimt dan krijgt hij 6 en de kleine aap 4. Als de kleine aap de boom inklimt krijgt hij 1 en de grote aap 9. Als ze allebei klimmen krijgt de grote aap 7 en de kleine aap 3. Als ze allebei wachten krijgen ze niets (0). De kleine aap beslist eerst en dan de grote aap. Wat moeten ze doen en waarom kunnen ze dat het beste doen?

(8)

Naam: Studentnr:

G. Coordination

11. Maak een influence map van het grid hieronder (teken het grid op je antwoordblad) die per cell aangeeft hoe veilig het is. Hierbij is het onveilig als je dichtbij de tank komt. de tank kan zowel recht as diagonaal schieten. Ieder vakje meer afstand is het gevaar half zo groot. Het is vier keer zo veilig als je achter een muur staat. Geef aan waarom je boven of onderlangs van A naar B zal gaan. (Bedenk dat je hiervoor ook het doel in de influence map moet meenemen)

Referenties

GERELATEERDE DOCUMENTEN

3 Taakuitvoering op afstand: sturing, verantwoording en toezicht 11 4 Waarborgen van publieke belangen door checks &amp; balances 15.. Publicaties Algemene Rekenkamer

Deze windows computer moet het terminalserver proces opgestart hebben en de remote computer toegang verlenen.. Op deze wijze wordt het mogelijk gemaakt op afstand toegang te

We bekijken het volgende algoritme voor het Common Superstring probleem, dat vraagt naar een (zo kort mo- gelijke) string die een stel gegeven strings bevat: Neem herhaald de twee

Ernstige nadelen van deze opzet zijn: xx dat het later toevoegen van een extra dimensie of zelfs van een extra tabelingang een stevige ingreep vereist; xx dat partieel of, nog

He, je bent niet afgeleid in het gebouw waar zoveel mensen; dat is voor mij persoonlijk, hé…ik word altijd heel snel afgeleid door de mensen die om je heen ..die willen even gauw

Deze bepalingen maken echter niet duidelijk wanneer een computer-generated werk voldoende creatief zou (kunnen) zijn om voor auteursrechtelijke bescherming in aanmerking te komen..

Hoe kun je deze heuristieken gebruiken in het A* algoritme om de brandweerman zo snel mogelijk naar het vuur te leiden (aangenomen dat hij al minder dan 100 meter van de

Toch kun je ook zeggen dat Deep Blue niet echt intelligent is omdat het voornamelijk gebruik maakt van brute force om de beste zetten te vinden en niet begrijpt waarom een zet goed