Mate emateko programatua
2010/02/01 Roa Zubia, Guillermo - Elhuyar Zientzia Iturria: Elhuyar aldizkaria
Badago modu perfektu bat xakean jokatzeko. Piezak mugitzeko sekuentzia ezin hobea da, sekuentzia hori erabiliz gero ez baitago partida galtzeko arriskurik. Hala ere, arazo bat dago: inork ez daki zein den sekuentzia perfektu hori.
Jokoen teoriak, matematikaren adar batek, aspaldi frogatu zuen existitzen dela, baina, xakearen konplexutasuna dela eta, ezin izan dute matematikariek aurrerago joan. Ez dakite sekuentzia horrek irabaztera ala berdinketara eramaten duen ere. Partida perfektua existitzen da, baina inork ez daki zein den. Hori berri ona da xake-jokalarientzat.
Hala ere, informatikariek aurrerapen handiak egin dituzte. Gaur egun, xakean jokatzeko softwarea ez da kalkulu hutsean oinarritzen, baizik eta estrategiaren esparruan sartu da. "Piezen kokapenak ebaluatzen ditu irizpide estrategiko baten arabera, hainbat ezaugarri aztertuta: endrokeak, peoien kokapena, alfilentzako diagonal irekiak ote dauden eta abar" dio Antonio Salmeron Almeriako Unibertsitateko informatikariak. "Jakina, gero kalkulua erabili behar du jokaldiak egoera oker batera eraman duen edo ez jakiteko. Baina, oinarrian, estrategiak bideratzen du ordenagailuaren jokoa".
Giza estrategia
Giza jokalarien jokoa ere estrategiak bideratzen du. Oinarrian, gerra bateko bataila batean bezala, eremua kontrolpean hartzen saiatzen da; xakean, taularen erdigunea mendean hartzea da eremua kontrolpean hartzea, bai piezak han kokatuta, bai eta beste kokapen batzuetatik erdigunean dagoenari eraginda ere. Hori lortuta, jokoa ondo bideratuta dago. Eta, hori lortzeko, estrategia erabili behar da.
Estrategia bera definitzea zaila da. Maila askotan funtzionatzen du, eta faktore asko hartzen ditu barruan. Adibidez, estrategia erabiltzeak esan nahi du erabakiak hartzea, besteari ziria sartzeko mugimenduak egitea, piezak trukatzearen etekinak neurtzea (arerioari pieza bat jateko beste bat sakrifikatzea), pieza batekin baino gehiagorekin sartzea erasoan eta abar. Eta hori jokaldiak eta arerioaren erantzuna kalkulatzea baino gehiago da.
Maisu handi batzuek esaten dute xakean joka daitekeela inongo kalkulurik egin gabe, eta estrategia hutsa irizpide hartuta. "Nik uste dut hori gehiegi esatea dela, baina, behintzat, adierazten du nolako garrantzia duen estrategiak kalkuluekin alderatuta" dio Salmeronek.
Estrategia informatikoa
Hain zuzen ere, azken urteetan, xakean jokatzeko softwareak horretan aurreratu du: programazioari estrategiaren ikuspuntua gehitu zaio.
"Informatikaren ikuspuntutik, xakea bilaketa-arazo bat da. Irabazi handienera eramaten duten mugimendu-sekuentzia egokienak bilatu behar dira" dio Salmeronek. Hori egiten duten algoritmo ezagunak badaude, Minimax izenekoa, adibidez. Ordenagailuak jokaldi posibleen zuhaitz bat eraikitzen du, baina ez osorik; Minimax algoritmoak emaitza txarretara bideratzen duten adarrak detektatzen ditu, eta ez ditu garatzen. Horrek alferrikako kalkulu asko saihesten du. Oinarrizko estrategia bat da. Baina gaur egungo softwareek Minimax baino askoz estrategia finduagoak erabiltzen dituzte.
"Horretarako, beharrezkoa da adimen artifiziala" dio Salmeronek. Ordenagailuak jokatzen ikasten du, oso algoritmo konplexuen bitartez, xake-partiden datu-baseak aztertuta.
Teknika asko daude horretarako. Antonio Salmeronek eta haren lankideek, adibidez, sare bayestarren ideia aplikatu diote xakearen problemari. Probabilitatearen distribuzio baten irudikapen matematiko bat da, aldagai-multzo batetik abiatuta. Xakearen kasuan, irudikapen horrek esaten dio ordenagailuari zer jokaldik bideratzen duten emaitza on baterantz eta zeinek ez.
"Alde batetik, giza jokalariek jokatutako partiden datu-baseetatik ikasteko baliabide bat da, eta, bestetik, aurrean duen jokalaria nolakoa den antzematen laguntzen dio". Oinarrian, hiru jokalari-mota daude: erasotzaileak, posiziozkoak eta tartekoak. "Ordenagailuak gizakia balitz bezala jokatzea nahi dugu; hau da, arerio erasokor baten aurka jokatzen duenean, posiziozko jarrera hartzea, eta alderantziz. Jokalari bat ez da eroso sentitzen kontrako joko-mota jokatzera behartzen dutenean".
Deep Blue
Adimen artifizialaren teknikak erabilita, informatikariek lortu dute makinek ezin hobeto jokatzea. "Gaur egun, xake-programek ia edozein jokalarik baino indar handiagoa dute" dio Salmeronek. Ez da denbora asko IBM enpresaren Deep Blue ordenagailuak eta Gari Kasparov jokalariak elkarren kontra jokatu zutela; 1996an lehen aldiz, eta 1997an beste bost partida. Bigarren partida Deep Bluek irabazi zuen; ordenagailu batek maisu handi baten kontra irabazten zuen lehen aldia zen. Ordenagailuak kalkulu-ahalmen izugarria zuen, baina estrategia ere erabiltzen zuen.
Geroztik, ez dago zalantzarik xake informatikoaren ahalmenari buruz. Hala ere, partida haien garaian, asko hitz egin zuten Turing testari buruz. Adimen artifizialaren ideia zahar bat zen. 1950eko hamarkadan, Alan Turing ingelesak esan zuen laster makinak gai izango zirela gizakiak imitatzeko adimenari dagokionez. Hortaz, test bat proposatu zuen elkarrizketa baten bidez makina bat eta pertsona bat bereizi ahal izateko. Eta xakearen mundua adimen artifizialaren esparrutik hain gertu egonda, hainbatek xakearen bidezko Turing test bat osatzea proposatu zuten: jokalari batek xake-partida bat nola jokatzen zuen ikusita, makina bat edo pertsona bat bereizi ahal izateko testa zen.
Deep Bluek Kasparovi irabazi zionean, zalantza sortu zen, xakearen bidezko Turing test hori posible izango zen edo ez. Bigarren partida bukatuta, Kasparovek esan zuen Deep Bluek ez zuela ordenagailu bat bezala jokatu. Giza jokalari batekin konparatu zuten.
Dena dela, ordutik aurrera asko hobetu dituzte xake-programak. Programazioa hobetu dute, eta ordenagailuak ere hobetu dituzte. Horren ondorioz, egoera erabat aldatu da. "Gaur egun, oso programa aurreratuak daude etxeko ordenagailurako, 50 edo 60 eurotan eros daitezkeenak" dio Salmeronek. "Ia edozeini irabazten dioten programak dira. Normalean, xake-jokalariek entrenatzeko erabiltzen dituzte".
Programa ezagunena Fritz da, oso software komertzial arrunta gaur egun. Fritzek, nahiz eta partida gehienak irabazten dituen --estrategia konplexuak erabilita gainera--, ez du gizakiak bezala jokatzen. Turingen testean argi ikusiko litzateke programa bat dela. "Horregatik ez dira erakargarriak programa horiek; ahalmen handiegia dute, beti irabazten dute, eta, gainera, oso monotonoak dira. Beti modu berean irabazten dute" dio Salmeronek. "Hain zuzen ere, hori da, nire ustez programatzaileen erronka: joko hori gizatiartzea. Niri ez zait gustatzen gaur egungo xake-programa baten kontra jokatzea".
Xake-programak egiten dituzten enpresetan hori da helburua. Estrategiaren kontuak agian ez du goia jo, baina oso maila altura iritsi da. Sobrakoa. Baina giza jokoaren antzekoa den joko bat garatu nahi dute orain; ez test bat gainditzeko, baina bai bizitasuna emateko. Asko falta da oraindik ordenagailuek gizakiek bezala pentsatzeko; baita xakean ere.
Gai honi buruzko eduki gehiago
Elhuyarrek garatutako teknologia