1
!
luis E. JUAN VIDALFS
En el mercado existen numerosos programas que juegan al ajedrez. Todos los
cficionados o curiesos por el juego los han usado alguna que otra ver. Este ai
explica paso a paso cémo se hace un programa de ajedrez. Los métodos de busqueda,
las funciones de evaluacién, todo.
eet
‘vino copaz de ju:
gar al ojedrezho sido una meta que ha ara:
Aolactencién de los hombres durone sigh.
"Yaen 1796, e barén Von Kempen presen
lobo en Atria un sorprendente autémotaco-
pot de vencer a sus contincartes humanos,
fatels ques cortoron Nopoleén Bonopee
y Figar Allan Poe. Muchos afos despues se
Canprcbs que wEl Turco» (que os se lara
bad oniat aera vier oun
‘pero jugador humane de pequero ext
(0, ue era quien en reoidad gobermaba los
lo primero maquina jugadora de ojedrez
«sin frampay ive constuide haco 1890 nor
ruesiro Leonardo Torres Quevedo y todavia
tsi y funciona. Sefcto de un ingenio elec
trmetbicocopaz de dar mate de ore yrey
conto rey.
Snembargo, el outénico upadres del mo-
ero ojedrer por ordenador es el matemei-
‘onorleamericano Claude Elwood Shannon,
ayiencon su aticuo «Programming « compo-
Jeo lay ches, pubiodo en Scenic Ame
ican en febrero de 1950, estobleci los prin
pics undomentales que todavia contituyen
Ipod cs todo os programas de ae
hex pra ordenodor, ene els los famosas
sftrategias Ay Bs que vren nos
Elbjzivo del presente orticlo es exponer
lasdees ylementos bsios necesrios para
Ibinplementaion de un programa de ciedrex
Yuet secrela son, que olgonos de nves
hosletores se sienlonsficienlementecnimo-
dos como para intent levoros ala prac.
ASI SE HACE
UN PROGRAMA
DE AJEDREZ
‘A éstos les ougurames infermincbles horas
de experimentocién absorbentee instructive,
Elprimercbstcvlo «super cuondo se pre.
tende programar un ordenador para jugar ol
ajedrea es, obviomente, el de cémo vexpicar
les en qué consste el iveoo.
Dodo que el ordenador es un ent capaz so
lomente de clnacener y manipuiornimeros
{a veloided vermosa, desde lego) 0 810
fet necesrio convert la realidad isica de un
{ablero de 64 cosils y 32 piezas de 12 tipos
diferentes en una estructura matemetico fe
mente proesable por l ordenador, sino lon
bien roladar sus compleas regls a funcio
nes ruméricas y, todavia més important, re-
ducir a ecuacines lode el conocinient téc
‘coy estrtégico que marca la diferencia en-
fre un autemico ugodor de ajedrery cluien
«que sto sabe mover las peas
‘Asi pues, los elements que delinen la o-
reas c realizar por todo programa de cjedrez
som ls iguienes
2) Representocién de posciones.
bb) Generac de mevinentos.
¢) Evalvacién de posiones.
d) Esrotega de bisquedo
Enos siguientes apartodos estdireinos lo
implerentacion delos elementos enuniados,
haciendo observer que, mientras los dos pi
‘eros estén ya plenomente conseguidos so-
bie un ordenoder, na existe (lodova) un ok
goritna dpimo pora los dos utimos, siendo
culo
precisamerte la evalvacién de posiciones ka
{ue detemina pte de ego dl pro
‘rama y la estraegia de binqueda, 0 eicen
‘en trminos de ecanomio de empo,
Hemos exclude ratomiente de presenta
cién de dots, que puede ic desde el simple
cédigo algebraic hasto ls graces tcimen-
sionales, porando por coardenads obase de
10's, por ser un tema secundari indepen
uti:
eferimos el de lo Table 1, ye que sim-
E da ervoque
yy de ecopiuro «al paso» delos peanes. A
laizquierda se representan los cécigos delos
piezcs del programe y ale derecho, los dels
piezas del contrincente. Obsérvese que el ed-
sale el velar de dicho piezo en lo evaluacisn
Los funcones generedores de movinientos
eberén ser copoces de coeur, para coda
mee Ic promocion de pod que lego ole ce
7 |tuad veo ar] Apa ag rate ts een ieee
Pen V) folopapage ar spre TEI
2 etn acien modo dos cua ono 0203 0 oso a
3 [tala 44) 91] 92] 93] 4] 95] 9497} 96} oo
aie 80] 81/2) 82 Gales} ae a7) 68) @9]
5 fei nate ol 2 72] 73] 74] 75] ral 77] 78 75]
6 [re movida <0) 61] 62] 63] 64| 65] 66] 67] 6a] 63]
7 {Qoma 0} i $2] $3455] ol 57 Sa 59]
8 [Rey ro movida 40 $i] 42] 43) 48) 45) 4] 47] 43] 49)
a bye, 30) 3if 32} 33] 34] a5) 36] 37] 38] 35)
aa 3 $2] 93] 34] 35
etree Hiner ies, ‘202i 22] 23) 24| 25] 27| zal 29
TABLA Toff 12] 13) 14) 15] 16h 171 1 19)
0505 08) 09
Eneuonio les piezos, exten mmerosos O00! 0210310410 a as |
datos de roracontsan pouty a bn fo obcdetgh
soles FIGURA 1
“Gontines
[2[4y4Ts Ts [o
[aja laste fo
dfololololo
ofolofojojo
[o[olofo{ojofa
o/ololofololo
d/o fofolojofa
oo fofofololo
ofojofoljofolo
TABLA 2B
filo, En cuanto os piezosllamadas adesli=
antes» (dama, fore y af), un fag adicio
ral indica al programe que puede continuor
explorando una determinada direccién incre-
‘meni! mientos ga enconando cals vocios
Enla Tab 2b, fas condiciones asociedos 0
losmovimientos respectivos dela Tabla 2 son
las siguientes:
lo hay cond
Jo cosilla destino esté vacia,
= Siencosla destino hay une piezoca
trv.
5=Sencesilocrigen-1 hoy un peer
toro clio 2.
en coil orien +1 hoy un pa
‘rari cédigo 2
eo req cre
eglas enrogue largo,
Notes gue al errcque ito conierad
movimiento de ry,
Un programa que desarrollara exci
mente los dos elementos onteriormente #1
puestos se limitoria @ mover (muy cor
‘ene eso sos pets sningin eo de
estratiigico, ni siquiera téctico, ignorando com
pletomente el fnlimo dl jedrez, que ed
de dar mate ol rey contrario,
Esto cegle fundomental, edar mate al
Y contrarian, ton ci de emir, eek
troardinariament dif de hoctilo com
prender a uncrdenador, hsioe puna deg
solo son posibles oproximaciones indirect
bend en xs Sen
4). Uno mejor progresiva de lo pica
els piets propis respecte clos dco»
'rarioacabors conducendo ol mate
B) Et conraca vere ntntora naniews
la posicién de ss pezos on buena camale
$20 posible,
El desarrollo del primer principio requiere
unas funciones de evaluaion de la pose,
‘yeldel segundo, unas estrotegios de busqueds:
La fuerza de vego de un programa desi
drez viene determinada fundamentalmenteporlacolided de su funcisnevoluadora de po
Scions Esta ele adopiot a forma siguiente:
Fatah that thy
endef, f . sn las funciones parciles
ue evaldon diversosfocores de lo posicin
{noteriel, movitdod, estuctura de peones,
tHe }y baby son os coelicientes de pon
dara relative de codefector, que pueden
voriorsegun la fse dl juego en que se en-
‘entre a portide (aperture, media juego 0
faa}.
La msn dla funcin evaluadore es sig
rorun valor numércoinic 0 coda pescién
ariginade por el generodor de movimiento,
ue representa lo condods de dicho poscion
fleno en valor ebsolute como en signa), yen
baxe al cual la esrategic de busqueda dec:
i6 el movimiento reslzor en code tno
de juego, Evidentemente,cvanio mayor seo
Al nimero (ode foctres considerados, més
recia sera a funcionF, pero mayor sed el
fenpo de proceso requerido.
‘A confinuocién se exponen ls principales
‘uncionesparciales de evaluacién de lo posi-
6n, fy
Esl coracteristica mésimportante del ce
rez yest conlituido por es piezospresen-
lesenelablero por parte de cad band, co
a uno cans valor reatvo, El vloresign:
do generolmente« ls distiotostpos de ie-
208
PEON =1 TORRE=5
CABALLO=3 DAMA
ALFIL=3 REY=200
(en realidad, infrito)
Le funcién dopa simplemente la formula
fis ( Valores piezas propes)—(2 Volores
piers contri)
TBs
Silay [cR) Ds Sie
i)
Tie hafiols [7 [4
TL hopwls la [4
éfe) 9s] [els]
s[et7[ pepe pe
Tapas ati
FIGURA 2
Iriciolmene, por tonto, f =239-239=0
Se puede ofizmor la voloracion de los pie
zos signando, por ejemplo, un 3.5 losali
les evando es la pars dl color enelobe-
re alostobalavon los psiione erradas
Finalmente, eremes quecon esa dnico fun
«ién el programa comienze yo a comporor
se como un jugodor, si bien sv jvego resulta
un tonto primitive,
Ocupa el segundo lugar en importancio y
cone nl uere oa mosinentos
ios co priors que e! programe puede reol-
{zor con ws piez0s. Como sjempio, obsérvese
que desde a poscin iil de paride code
bande tiene une movlidod=20 (2x8 movk
mientos licios del peon més 2x2 de cabo)
Lr funen puede adapt forma spin’
(Mov. p. propa] (Mo. p. conor
iow. p propos] + Mov. p. contains]
- M10
Iniolment, f= I-95
Se trato de un concept facil de compren
der pero dficl de cuariicar. Grosso mod,
{os pezos extn desarrlladas cvondo se ho
lan fuera de sus cuadros inicoles; no obstan
te a buena pacico del jedrez cconseo de
sorcllor primero cobals alles, enrecar 0