De derde programmeeropgave (in het voorjaar van 2017) behorende bij het vak
Kunstmatige intelligentie gaat over het
spel Clobber, net als de eerste opgave.
Daar zijn de spelregels te vinden.
De voorbeeldcode is iets aangepast, zie hier.
Voor de huidige opgave kijken we voornamelijk naar de tweepersoons-versie, maar voel je vrij om meer dan twee spelers te onderzoeken.
Het is de bedoeling een zoekalgoritme te schrijven dat, gegeven een spelconfiguratie, een zo goed mogelijke zet vindt. We gebruiken hiervoor het minimax-algoritme, met alpha-beta pruning. Er moeten verschillende (member-)functies geschreven worden:
De eerder genoemde functies mogen worden aangevuld met meer geavanceerde technieken of heuristieken zoals: quiescence search, null-moves, transpositie-tabellen, etc. Ook stellen we interessante evaluatiefuncties op prijs (let op de executiesnelheid; denk: 1 minuut voor 100 tweepersoons spelletjes random tegen alpha-beta met diepte 6, 6 bij 6 bord).
Een paar opmerkingen:
Deadline: donderdag 20 april 2017, 11:00 uur.
In te leveren: een geprint exemplaar van het verslag
(alleen eigen C++-code in de appendix)
tijdens
het college, en de C++-code van het programma naar onderstaand adres.
Het verslag moet aan verschillende
eisen voldoen.
Vragen en/of opmerkingen kunnen worden gestuurd naar: w.a.kosters@liacs.leidenuniv.nl.
27 maart 2017 — http://www.leidenuniv.liacs.nl/~kosterswa/AI/clobberop32017.html