Zoeken met opponent-modellen Jeroen Donkers IKAT, Vakgroep Informatica, Universiteit Maastricht...

Post on 13-May-2015

223 views 4 download

Transcript of Zoeken met opponent-modellen Jeroen Donkers IKAT, Vakgroep Informatica, Universiteit Maastricht...

zoeken met opponent-modellen

Jeroen Donkers

IKAT, Vakgroep Informatica, Universiteit Maastricht

Promotor: H.J. van den Herik

Co-promotor: J.W.H.M. Uiterwijk

InhoudInhoud

• Het domein

• Zoeken met opponent-modellen

• Onderzoeksvraag

• Theoretische en experimentele resultaten

• Conclusies

Het domeinHet domein• Kunstmatige Intelligentie =

het verrichten van taken door computers die als typisch menselijk worden (werden) gezien

• Het spelen van bordspelen zoals schaken is een geliefd studiedomein

• In dit domein zijn al grote successen behaald (denk aan Deep Blue)

Het domeinHet domein

• Spelen vormen een gesloten en goed beschreven domein (vanwege de spelregels)

• We beperken ons hier tot spelen:– voor twee spelers (die om de beurt zetten)– zonder verborgen informatie– zonder kansaspect (dobbelstenen)– waarbij als één speler wint, de ander verliest

• Bijv. Schaken, Lines of Action, Bao

Een voorbeeld: Nim-5Een voorbeeld: Nim-5

• Neem om de beurt 1, 2 of 3 lucifers

• Degene die de laatste lucifer pakt, wint

Een voorbeeld: Nim-5Een voorbeeld: Nim-5

Een voorbeeld: Nim-5Een voorbeeld: Nim-5

Een voorbeeld: Nim-5Een voorbeeld: Nim-5

Een voorbeeld: Nim-5Een voorbeeld: Nim-5

Winnaar

ZoekboomZoekboom

• De computer speelt het spel door eerst alle mogelijkheden voor beide spelers in een boom-vorm te representeren:

ZoekboomZoekboom

4 3 21 2 3

5

2 1 0 1 0 0

0

1 0 0 0

1

1

1

1

1

1

1 1 1 1

11

2 2 2

2 2

2

2

3

33

1 1

03

1 0 0 0 0

2 1 2 1 0 1

Stap 1: uitkomsten bepalen (vanuit speler “groen”)

ZoekboomZoekboom

4 3 2

2 1 0 1 0 0

0

1 0 0 0

1

1

1

1

1

1

1

1 1 1 1

11

2

2 2 2

2 2

2

2

3

3

33

1 1

+1 +1 +1 +1 +1 +1–1 –1 –1 –1 –1

5

03

1 0 0 0 0

2 1 2 1 0 1

Stap 2: uitkomsten terugvoeren

+1 –1

ZoekboomZoekboom

4 3 2

2 1 0 1 0 0

0

1 0 0 0

1

1

1

1

1

1

1

1 1 1 1

11

2

2 2 2

2 2

2

2

3

3

33

1 1

+1 –1 +1 +1 +1 +1 +1 +1–1 –1 –1 –1 –1

5

03

1 0 0 0 0

2 1 2 1 0 1

ZoekboomZoekboom

+1 –1 +1 +1 +1 +1 +1 +1–1 –1 –1 –1 –1

1

11 1 1

+1 –1 –1

–1 –1 +1 –1 +1 +1

+1

–1 +1 +1 +1

1

1

1 1 1 1 1 1

11

2

2 2 2

2 2

2

2

3

3

33

+1

–1+1

+1 –1 –1 –1 –1

+1 +1 +1 +1 –1 +1

Groen kan altijd winnen!

ZoekboomZoekboom

1

11 1 1

+1 –1 –1

–1 –1 +1 –1 +1 +1

+1

–1 +1 +1 +1

1

1

1 1 1 1 1 1

11

2

2 2 2

2 2

2

2

3

3

33

+1

–1+1

+1 –1 –1 –1 –1

+1 +1 +1 +1 –1 +1

Stap 3: optimale strategie bepalen

Heuristisch zoekenHeuristisch zoeken

• Voor interessante spelen zoals schaak kan de zoekboom onmogelijk volledig worden opgesteld

• Daarom wordt de boom “afgekapt” op een zekere diepte

• Bovendien wordt er in de boom “gesnoeid” om de efficiëntie te verhogen

Heuristisch zoekenHeuristisch zoeken

.25 –1 –1

1

1 11

2

2 22

3

33

.25

–1.25 .33 .5 .33 .5 –1 .5

Bij het afkappen van de boom wordt een heuristische evaluatiefunctie gebruikt in plaats van de echte uitkomst

Opponent-modellenOpponent-modellen• De evaluatiefunctie bepaalt in grote mate de

strategie van een speler• De evaluatiefunctie kan daarom als

opponent-model dienen

• Stel dat we de evaluatiefunctie van de tegenstander kennen, kunnen we er dan ons voordeel mee doen?

Opponent-Model SearchOpponent-Model Search

• Iida et al (`93) Carmel & Markovitch (`93)

• Een zoekmethode die er vanuit gaat dat de evaluatiefunctie van de opponent bekend is:– voorspelt eerst welke zet een opponent zou

doen met deze evaluatiefunctie– kiest dan op basis van de eigen evaluatiefunctie

welke eigen zet het beste lijkt

ProbabilisticOpponent-Model SearchProbabilisticOpponent-Model Search• Donkers et al (2000)

• Het opponent-model is een mix van een aantal opponent-types, ieder met een eigen evaluatiefunctie

• De werking is verder ongeveer gelijk aan die van Opponent-Model Search: eerst voorspellen en dan een eigen keuze maken

OnderzoeksvraagOnderzoeksvraag

• Onder welke condities kunnen OM search en PrOM search het spelen door computers verbeteren

• Er is zowel theoretisch als empirisch onderzoek gedaan

Theoretische resultatenTheoretische resultaten

• Er bestaat een manier om beide zoekmethoden efficiënt te programmeren, maar:

• PrOM Search kost meer rekentijd dan OM Search voor de zelfde zoekboom

• Beide methoden kosten veel meer rekentijd dan de traditionele aanpak

Theoretische resultatenTheoretische resultaten

• OM Search heeft last van risico’s, een aantal daarvan waren al bekend:– het opponent-model kan verkeerd zijn– de voorspellingen kunnen fout zijn– de eigen evaluatiefunctie kan slechter zijn dan

die van de tegenstander

• Maar er is een extra risico:

Theoretische resultatenTheoretische resultaten• Overschattingen in de eigen

evaluatiefunctie kunnen leiden tot rampen:– de opponent wordt gelokt naar een positie

waarvan je onterecht verwacht dat die heel aantrekkelijk is

– de opponent weet wel beter en gaat fluitend met je mee

– hoe groter de overschatting, hoe liever je er heen wilt...

Experimentele resultatenExperimentele resultaten

• Wanneer je OM Search onbezonnen toepast, zijn de resultaten zeer slecht, vergeleken met de traditionele aanpak:– kost meer rekentijd– je verliest vaker, zelfs met perfecte kennis van

de opponent

• PrOM Search is wel veiliger, maar kost ook veel meer rekentijd

Experimentele resultatenExperimentele resultaten• OM Search werkt redelijk als:

– je absolute kennis hebt (eindspel)– je perfecte kennis van de opponent hebt– je niet zomaar overschattingen maakt– je extra tijd hebt om goed te voorspellen

• PrOM Search presteert dan over het algemeen beter dan OM Search, heel soms zelfs beter dan de traditionele aanpak

ConclusiesConclusies

• Onbezonnen toepassen van OM Search en PrOM search is onverstandig

• Het is niet alleen belangrijk de opponent goed te kennen (Nosce Hostem), je moet ook je eigen evaluatiefunctie goed kennen (Nosce Te Ipsum)

Thales van Milete (640 vC)Thales van Milete (640 vC)

Soen Tzoe (500 vC)Soen Tzoe (500 vC)

“Ken uw vijand, ken u zelfen uw overwinning is onbedreigd.”