Kunstmatige intelligentie
Programmeeropgave 1 van 2009 — SameGame

SameGame De eerste programmeeropgave (in het voorjaar van 2009) behorende bij het vak Kunstmatige intelligentie gaat over het eenpersoons spel SameGame. Het is de bedoeling een eenvoudig programma dat dit spel speelt te schrijven, waarbij een Monte Carlo methode wordt gebruikt. Voor links over dit spel: Jawbreaker, Bubble Breaker, SameGame en SameGame (wiki). Het is ook in KDE/Gnome te vinden bij "Games".
Er mag vrijelijk —met bronvermelding— gebruik gemaakt worden van een stuk voorbeeld-code.

SameGame gaat als volgt. Op een m bij n bord (m rijen en n kolommen, beide minstens 1) heeft ieder vakje een (in eerste instantie random) "kleur". Er zijn 5 kleuren. De speler moet een gebied aanwijzen. Een gebied bestaat uit minstens 2 vakjes met dezelfde kleur, en verder kun je vanuit één vakje uit het gebied alle andere bereiken door herhaald horizontaal en/of verticaal naburige vakjes uit het gebied te doorlopen. Het door de speler aangewezen gebied wordt verwijderd, en de speler krijgt voor een gebied met v vakjes (v-2)2 punten. In de kolom(men) waaruit één of meer vakjes verdwijnen, vallen de erboven liggende vakjes omlaag totdat ze op overgebleven vakjes of de grond vallen. Mochten één of meer hele kolommen leeg raken, dan schuiven de kolommen hier rechts van op naar links. Het spel houdt op als er geen gebieden meer zijn. (Er zijn overigens wat verschillende varianten, bijvoorbeeld met strafpunten voor de overgebleven vakjes, maar wij spelen de hier genoemde.) De speler wil zoveel mogelijk punten scoren.

Gebruik nu een viertal AI-componenten:

Laat deze spelers spelen, en rapporteer de bevindingen. Kortom: maak diverse simulaties.
Er wordt niet gevraagd om een programma dat aan alle software engineering standaards voldoet! Houd het programma dus eenvoudig — maar wel netjes!

Deadline: dinsdag 24 februari 2009.
In te leveren: een geprint exemplaar van het verslag 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: kosters@liacs.nl.

2 februari 2009 — http://www.liacs.nl/home/kosters/AI/samegame.html