Jätkänshakkipeliautomaatti
Niskanen, Kari (2006)
Niskanen, Kari
Kajaanin ammattikorkeakoulu
2006
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201004126329
https://urn.fi/URN:NBN:fi:amk-201004126329
Tiivistelmä
Insinöörityön tarkoituksena oli suunnitella ja toteuttaa Kajaanin ammattikorkeakoululle
jätkänshakkipeliautomaatin ohjelmakoodi. Jätkänshakkipeliautomaattia on tarkoitus käyttää eri
tilaisuuksissa, kuten esimerkiksi messuilla, joissa esitellään Kajaanin ammattikorkeakoulua sekä sen eri
koulutusaloja. Peliautomaatin tarkoituksena on esitellä tietotekniikankoulutusohjelman tarjoamia
mahdollisuuksia.
Ohjelma toteutettiin c-kielellä 8051-mikrokontrollerille. Laitteistona peliautomaatissa käytettiin valmista
testilaitetta, joka sisältää graafisen LCD-näytön, 8051:n ja matriisinäppäimistön. Kehitysympäristönä
työssä käytettiin IAR ANSI C -kääntäjää sekä Intel 8051:n emulaattoria. Peliä pelataan tietokonepelaajaa
vastaan. Tietokonepelaajan tekoälyn toteutuksen tavoitteena oli toteuttaa ns. itseoppivatekoäly, eli
ensimmäisessä pelissä tietokone tietää ainoastaan säännöt, jonka jälkeen pelien edetessä tietokone oppii
pelin eri strategiat. Kun ns. oppiminen on tapahtunut, lopputuloksena tulee aina tasapeli tai tietokone
voittaa.
Ohjelmaa testattiin eri ohjelmointivaiheissa. Testauksessa saatujen testitulosten perusteella voitiin
havaita, että kyseinen ohjelma toimi odotusten mukaisesti. Lopputuloksena saatiin ohjelma, joka sisälsi
laitteiston tarvitsemat ohjelmat ja jätkänshakkipelin pääohjelman varustettuna tietokonepelaajan
tekoälyllä.
jätkänshakkipeliautomaatin ohjelmakoodi. Jätkänshakkipeliautomaattia on tarkoitus käyttää eri
tilaisuuksissa, kuten esimerkiksi messuilla, joissa esitellään Kajaanin ammattikorkeakoulua sekä sen eri
koulutusaloja. Peliautomaatin tarkoituksena on esitellä tietotekniikankoulutusohjelman tarjoamia
mahdollisuuksia.
Ohjelma toteutettiin c-kielellä 8051-mikrokontrollerille. Laitteistona peliautomaatissa käytettiin valmista
testilaitetta, joka sisältää graafisen LCD-näytön, 8051:n ja matriisinäppäimistön. Kehitysympäristönä
työssä käytettiin IAR ANSI C -kääntäjää sekä Intel 8051:n emulaattoria. Peliä pelataan tietokonepelaajaa
vastaan. Tietokonepelaajan tekoälyn toteutuksen tavoitteena oli toteuttaa ns. itseoppivatekoäly, eli
ensimmäisessä pelissä tietokone tietää ainoastaan säännöt, jonka jälkeen pelien edetessä tietokone oppii
pelin eri strategiat. Kun ns. oppiminen on tapahtunut, lopputuloksena tulee aina tasapeli tai tietokone
voittaa.
Ohjelmaa testattiin eri ohjelmointivaiheissa. Testauksessa saatujen testitulosten perusteella voitiin
havaita, että kyseinen ohjelma toimi odotusten mukaisesti. Lopputuloksena saatiin ohjelma, joka sisälsi
laitteiston tarvitsemat ohjelmat ja jätkänshakkipelin pääohjelman varustettuna tietokonepelaajan
tekoälyllä.