Projectomschrijving
Dit labjournaal vergezelt de vierde en laatste opdracht van het project Zoeken, Sturen & Bewegen, zoals wordt onderwezen in het eerste jaar van de BSc van de studie AI aan de UvA.
De eerdere opdrachten behandelden verschillende aspecten van de robotica. Vaak werden deze toegepast op een bekend probleem voor AI-peuters: schaken. Zo zijn eerder pathplanning en inverse kinematics aan bod gekomen. In deze laatste week werd ons gevraagd een eigen onderzoek te bedenken. Dit project mocht al dan niet in het verlengde liggen van de eerder gemaakte opdrachten. Wij hebben er voor gekozen het thema ZS&B uit te breiden tot ZZS&B: Zien, Zoeken, Sturen & Bewegen.
In de tweede week lieten we een computer tegen ons schaken. Wij deden steeds een zet, waarna het programma GnuChess een tegenzet berekende. Vervolgens plande een Java-module een pad van beginvakje naar eindvakje voor het stuk dat de computer wilde zetten. Tenslotte werd dit pad ook daadwerkelijk uitgevoerd door een UMI RTX 173 robotarm.
Doelstelling
Wat ons echter dwarszat was dat de menselijke zet niet alleen handmatig moest worden gedaan, maar vervolgens ook nog moest worden ingevoerd op de computer! Wij vonden het niet meer dan redelijk dat wij ons zouden beperken tot het verplaatsen van een stuk en dat er vervolgens via twee foto's (voor en na de zet) zou worden bepaald wat de menselijke zet was.
Ons doel is dus het bouwen van een opstelling en het schrijven van bijbehorende code om het verplaatsen van een stuk op een schaakbord te kunnen detecteren. Deze zet moet naar een text-file worden gescheven, waarna deze door de computer kan worden ingelezen. Zo voorkomt men in ieder geval overbodig typewerk!
Indeling van de site
De uiteindelijk resultaten en hoe we daar zijn gekomen kan men in dit labjournaal vinden. We hebben uiteraard geprobeerd de site zo logisch mogelijk in te delen, zodat u geen problemen ondervindt bij het opzoeken van informatie.
- Onder de link 'De opstelling' vindt u een gedetailleerde omschrijving van de opstelling die we hebben gebruikt.
- Bij 'Het programma' vindt u een voorbeeld-run van ons programma. Hier wordt stap voor stap uitgelegd hoe ons programma te werk gaat. Bovendien worden hier de belangrijkste problemen toegelicht die we onderweg zijn tegengekomen en hoe we deze hebben opgelost.
- Onder 'Apparatuur' vindt u alle relevante informatie over de materialen die we in onze opstelling hebben gebruikt.
- De 'Raw data' bevat twee voorbeeldfoto's van voor en na een zet. Uiteraard worden er door het programma een aantal bewerkingen op deze foto's uitgevoerd. Deze zijn voor de duidelijkheid van het verhaal te vinden te vinden bij 'Het programma'.
- Bij 'Broncode' vindt u uiteraard de code van onze software.
- Daaronder vindt u de drie links 'Planning', 'Logboek' en 'Dagboek'. Hier is te zien hoe we uiteindelijk tot deze resultaten zijn gekomen in chronologische volgorde.
- Tenslotte het stukje 'Contact', om te zien hoe u ons kunt bereiken.
