A.I. Tic Tac Toe

2005 - Marcello Zaniboni

logikai

Spectrum (48k)

Az EDSAC számítógépet a cambridge-i egyetem matematikai laboratóriumában helyezték üzembe 1949-ben. A már Neumann-elvek szerint működő szobaméretű számítógép 3500 elektroncsövet tartalmazott és 2 kbyte memóriával rendelkezett. Másodpercenként 600 parancsot tudott teljesíteni. Erre a gépre készítette el Alexander Sandy Douglas 1952-ben az OXO nevű egyszerű logikai játékát, amely a kétszemélyes absztrakt stratégiai táblás játék, a gomoku játékcsalád egy széles körben ismert tagja (nálunk Amőba néven ismert a játék). A játékot Douglas PhD-téziséhez írta, mely az ember-számítógép interakcióval foglalkozott. A játék annyira egyszerű volt, hogy gyakorlatilag inkább demoprogramnak fogható fel: a két játékos hagyományosan X és O alakú jelekkel (bábukkal) játszik. A 3×3 mezőből álló táblára felváltva teszik le a jeleiket, bármelyik még szabad mezőre. Az nyer, akinek sikerül egy vonalban 3 jelet elhelyeznie, vízszintes, függőleges vagy átlós irányban. Ha mindkét fél helyesen játszik, az eredmény szükségszerűen döntetlen lesz. A játékot telefontárcsa segítségével lehetett irányítani (annak a mezőnek a számát kellett "tárcsázni" ahova lépni szeretnénk), és a számítógéphez csatlakoztatott, eredetileg memóriaként szolgáló higanytartályok állapotát jelző primitív képernyőn lehetett látni.
Az eredeti program értelemszerűen nem terjedhetett el hiszen csak az EDSAC gépen létezett. Később Tic-Tac-Toe néven mégis rendeget "klónja" készült, na nem a játékélmény miatt, hanem hogy bemutassák az ún. játékfák kiértékelésének módszereit (akit mélyrehatóbban érdekel az elmélet, itt utánaolvashat).
Ezen Spectrum változat érdekessége, hogy a gép "tanulási képességét" demonstrálja. A program eleinte gyengén játszik. Érdekesebb a dolog, ha mi kezdünk: helyes stratégiával eleinte még tudunk nyerni. Elegendő játék és "tanulás után" azonban már döntetlenre hozza a gép a játékot akkor is, ha nem ő kezd.
A program kezelése nagyon egyszerű: először ki kell választani, hogy a kezdő játékos (O jellel), vagy a másodiknak lépő játékos (X jellel) szeretnénk-e lenni. Játék közben csak a kívánt mező számát kell - na nem "betárcsázni" - , hanem megnyomni (hogy melyik mező hányas számú, az a jobb oldali fehér ablakban látható, bár teljesen logikus). Ha vége a játéknak (valamelyik fél nyer, vagy betelik a tábla),a program kiírja az eredményt, a "tanulásra" felhasználható még szabad memóriát. Majd pár pillanat múlva új játék kezdődik.