Gebruik het C++-voorbeeldprogramma van de website. Dit genereert random Tetris-stukken, die naar beneden vallen. Geheel gevulde regels verdwijnen. Je algoritme moet het zolang mogelijk hier tegen volhouden — als er (gedeeltes van) stukken boven de rand van de "put" uitsteken stopt het proces. Het enige wat het programma moet doen is het kiezen van 1. de oriëntatie van het huidige stuk en 2. de kolommen waarin het stuk valt (positie). Er mag — in tegenstelling tot bij het "echte" spel — daarna niet meer geroteerd of geschoven worden. Informatie over het volgende stuk mag niet gebruikt worden. Er mag hooguit één zet vooruit gekeken worden, dat wil zeggen: je mag kijken wat er gebeurt als je het huidige stuk op alle mogelijke manieren zou laten vallen.
Gebruik nu een drietal AI-componenten:
Gebruik gnuplot
om voor het verslag
enkele grafieken te plotten.
Maak een file plot.p met daarin bijvoorbeeld
set xrange [-4:4]
plot sin(x)
En laad deze file in gnuplot met gnuplot> load "plot.p"
om een grafiekje van de sinus te plotten.
Als je een file met resultaten hebt (zeg iets.uit;
twee getallen per regel):
1 24
2 31
3 56
4 7
kun je deze eenvoudig met gnuplot in een grafiek printen
met plot "iets.uit" with lines.
Hierbij kun je zonodig PostScript-uitvoer genereren
met behulp van
gnuplot> set terminal postscript eps enhanced color
gnuplot> set output "file.ps"
vlak voor het plot-commando te geven
(of enhanced monochrome voor grijswaarden-plaatjes).
En dat allemaal in een plot-file, dan hoef je het niet steeds
over te tikken.
Op internet staat alles en meer over gnuplot, bijvoorbeeld
hier of
daar.
Kijk verder in de
LaTeX-handleiding
(Hoofdstuk 4.1) hoe je PostScript-files in LaTeX kunt importeren.
Deadline: dinsdag 28 februari 2012;
Den Haag: woensdag 21 maart 2012.
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.
Probeer in het verslag ook kort een relatie te leggen
met de theorie zoals die behandeld is tijdens de colleges.
Vragen en/of opmerkingen kunnen worden gestuurd naar: kosters@liacs.nl.
30 januari 2012 — http://www.liacs.nl/home/kosters/AI/teet.html