Está en la página 1de 70

Luis Rodríguez Herrador

Proyecto fin de carrera

El problema del bear in en


Backgammon
Luis Rodríguez Herrador El problema del bear in en Backgammon

Índice

Índice
1.Objetivos del proyecto......................................................................................................................3
1.1.Especificación del problema..................................................................................................... 4
1.2.Uso de redes para aprender a predecir...................................................................................... 7
1.3.Resumen del contenido del documento.................................................................................. 10
2.Aplicación de redes a juegos.......................................................................................................... 11
3.Revisión histórica del Backgammon.............................................................................................. 14
4.Reglas del juego..............................................................................................................................21
Situación inicial.........................................................................................................................21
Objetivo del juego..................................................................................................................... 22
Movimiento de las piezas..........................................................................................................23
Comer piezas.............................................................................................................................25
Bearing off................................................................................................................................ 26
Doubling cube........................................................................................................................... 27
Gammons y Backgammons.......................................................................................................28
Irregularidades...........................................................................................................................29
Bear in....................................................................................................................................... 30
5.Redes TD........................................................................................................................................ 31
5.1.Estructura................................................................................................................................ 33
5.2.Desarrollo matemático............................................................................................................ 35
5.3.Problemas de predicción......................................................................................................... 41
6.Diseño de una red para el problema del bear in..............................................................................43
6.1.Bear off................................................................................................................................... 44
6.2.Presentación de la red de bear in.............................................................................................46
7.Mejoras sobre las redes TD............................................................................................................ 52
7.1.Combinación con una resolución numérica............................................................................53
7.2.Entrenamiento secuencial....................................................................................................... 54
7.3.Abanico de resultados finales................................................................................................. 57
8.Funcionamiento del software..........................................................................................................59
9.Resultados.......................................................................................................................................67
10.Conclusiones.................................................................................................................................69

Pág. 2
Luis Rodríguez Herrador El problema del bear in en Backgammon

1.Objetivos del proyecto

El objetivo de este proyecto es la aplicación de una red TD a un problema


concreto, como es el del bear in en el juego del backgammon. Las redes TD
siempre han sido fascinantes para mí, desde que topé con ellas, puesto que
han sido diseñadas para predecir, para ser capaces de ver donde ojos humanos
y otros programas no han sido capaces de llegar. El simbolismo aparejado a la
predicción siempre ha sido un tema que me ha interesado mucho, y es por esto
que he tratado de usar estas redes en mi proyecto fin de carrera.

El motivo por el que elegí el juego del backgammon es que he sido


jugador a nivel semiprofesional durante varios años, y la resolución de una
parte importante de este juego como es el bear in siempre ha quedado
desierta. Al final en las conclusiones haré un estudio económico de lo que
puede representar en pérdidas para un programa de backgammon el jugar mal
estas posiciones.

Sólo comentar que el uso de estas redes ha sido la alternativa elegida a


la programación dinámica para la resolución de este problema, que fue la
primera opción barajada.

Pág. 3
Luis Rodríguez Herrador El problema del bear in en Backgammon

1.1.Especificación del problema

El Backgammon, al igual que otros muchos juegos de mesa, supone un


reto matemático de difícil solución. Desde el punto de vista computacional, nos
enfrentamos a un juego compuesto por quince piezas, las cuales en la mayoría
de las situaciones pueden moverse sin problemas acordemente con una tirada
de dos dados. De esta forma, una simple tirada de dados supone una
combinación de:

15×15=225 movimientos

Por tanto, para una determinada posición nos enfrentamos


aproximadamente a 225 posibilidades, sin tener en cuenta que una tirada con
idéntico resultado en los dados son cuatro movimientos en lugar de dos, y a los
que hay que restar los movimientos ilegales. Para tomar una decisión sobre
cuál de las 225 posiciones resultantes es mejor, debemos evaluar
posteriormente la jugada que realizará el contrario. Pero resulta que el
contrario no tiene otras 225 posibilidades, sino que tiene ese número por cada
una de las 21 combinaciones posibles de dados, de forma que el crecimiento
exponencial de posibilidades que ofrece el Backgammon hace absurda la idea
de poder realizar un análisis exahustivo de todas las posibilidades, con sus
correspondientes estadísticas de llegar a ellas.

Tradicionalmente, la única forma de resolver el problema era realizar un


número considerable estadísticamente de partidas desde una misma posición.
Para que el resultado tuviera alguna fiabilidad, los jugadores empleados a tal
fin debían jugar a un nivel de clase mundial, para que los movimientos fueran,
si no óptimos, cercanos a él. Por ello, para el desarrollo del Backgammon era
necesario que dos campeones mundiales se pasaran una semana jugando una
misma posición en miles de partidas para llegar a una conclusión
suficientemente fiable de acerca de cuál era la mejor jugada a realizar. Esta

Pág. 4
Luis Rodríguez Herrador El problema del bear in en Backgammon

afirmación conlleva una contradicción en sí misma, ya que sobre cada jugada


posterior realizada en la partida debería hacerse un procedimiento similar a la
jugada en estudio, lo cual es imposible, y además los jugadores para llegar a
un nivel de perfección tal era necesario que pudieran apoyarse en literatura
sobre jugadas concretas inexistentes por su propio planteamiento. Se trató de
implementar en ordenadores programas que simularan este comportamiento,
pero al tener un juego mediocre, las conclusiones a las que llegaban no podían
considerarse fiables y su nivel de juego no era en absoluto excepcional.

Es por todo esto que hasta la década pasada las consideraciones


matemáticas sólo se trasladaran al backgammon en situaciones puntuales del
final del juego donde las posibilidades eran abordables, y que la literatura se
refiriera sólo a aspectos estratégicos del juego, los cuales permitían jugar a un
gran nivel.

Sin embargo, durante la década pasada apareció Tesauro, un


programador de IBM, que desarrolló un software basado en redes neuronales
que permitía el autoaprendizaje de la red a través del juego contra sí misma.
Este fue el primer paso para llevar el Backgammon a un punto de vista hasta
entonces no contemplado y que es la referencia en el juego profesional del
Backgammon en nuestros días. A partir de ahí surgieron diversos programas de
Backgammon, siendo GNU Backgammon y Snowie los dos mejor considerados.

Aunque Tesauro no logró que su programa llegara a superar a los


campeones del mundo del momento, sí que brindó al resto de programadores
de la idea principal en la que debían basarse los programas de Backgammon.
El problema que presentaba el software de Tesauro es que trataba de englobar
toda la estrategia del Backgammon con una sóla red neuronal, y con unas
entradas que se correspondían únicamente con la definición posicional del
tablero. Posteriormente se introdujeron mejoras en ambos sentidos, y de esta
manera los nuevos programas de software definen redes para ámbitos

Pág. 5
Luis Rodríguez Herrador El problema del bear in en Backgammon

concretos, e incorporan nuevas neuronas que indican características notables


de la posición, lo cual permite a la red “visionar” mejor la situación.

Por tanto todavía se encuentran en desarrollo los programas de


Backgammon, ya que son muchos los aspectos a considerar y muy variadas las
redes a usar en cada caso. Una mayor especialización de las redes neuronales
nos lleva a un mejor resultado en determinadas parcelas del juego. Los
programadores se han encontrado con problemas a la hora de desarrollar el
software ya que es necesaria una base matemática para poder aplicar
correctamente las características de cada red a situaciones particulares del
juego.

El proyecto que presento es la solución de uno de los problemas que


adolecen los programas actuales de Backgammon, probablemente el más
comentado en los foros de debate. Este problema consiste en que en
situaciones de carrera, en las que las piezas de ambos bandos se han pasado y
no es posible “comer”, y encontrando todavía algunas piezas en los cuadrantes
intermedios (el outfield, que son las casillas de la 7 a la 18), los programas
actuales pierden movimientos al tratar de llevar sus efectivos a las posiciones
más cercanas a sus respectivas casas (esto es, al 1 o al 24). Esto se tradujo
hace algún tiempo en una severa crítica tras idear un juego paralelo al
Backgammon, sobre el que hablaré en el capítulo de resultados, ya que es la
demostración de la eficiencia de mi red.

Pág. 6
Luis Rodríguez Herrador El problema del bear in en Backgammon

1.2.Uso de redes para aprender a predecir

El uso de redes neuronales ha tomado un gran auge de un tiempo a esta


parte. Una red neuronal conceptualmente es una abstracción matemática del
cerebro humano, tratando de llevar al terreno computacional características
distintivas de los seres humanos. Una de las capacidades de las que está
dotado el cerebro humano, y de las que carece completamente un sistema
computacional cerrado es la de predecir el futuro. Este aprendizaje lo realiza el
cerebro humano basándose en la experiencia. Por ello, un sistema que trate de
asemejarse a nosotros debería tomar la experiencia como base para tomar sus
propias decisiones

Un ejemplo sencillo de esto que acabo de exponer sería el hecho de que


una persona es capaz de levantarse por la mañana y predecir la temperatura
que hará por la noche con cierta fiabilidad. Sin embargo, un simple programa
de ordenador es tan sólo capaz de obtener datos de un sensor y decir la
temperatura actual. Es posible programarle para que tome datos de un
histórico, de forma que haga una predicción basándose en la diferencia de
temperatura del día anterior, pero seguiría siendo un dato condicionado. La
base de la predicción es que el programa sea capaz de revisar los históricos de
los últimos meses, y que en base a eso determine la temperatura nocturna, del
mismo modo que lo hacemos nosotros. Estas predicciones pueden ser llevadas
al campo del Backgammon, pero también al de las predicciones meteorológicas
o al del movimiento bursátil, por citar algunas aplicaciones.

La mayoría de los problemas de búsqueda de patrones pueden resolverse


de esta manera, esperando que el programa prediga las clasificaciones
correspondientes. También están siendo usadas estas redes en búsquedas
heurísticas, en las que la red asume una función de evaluación que predice si
es conveniente evaluar ciertas partes del espacio de búsqueda, o aprendiendo
el modelo subyacente en un problema sin resolver. Una de ventajas que

Pág. 7
Luis Rodríguez Herrador El problema del bear in en Backgammon

presenta este tipo de redes es que los datos puede tomarlos directamente de
algún sensor, con lo que el mismo programa se autoabastece de datos y busca
las funciones predictivas correspondientes.

El tipo de redes que menciono son las denominadas redes TD (temporal


differences), que son redes basadas en el aprendizaje incremental optimizadas
para problemas de predicción. Los sistemas tradicionales de aprendizaje se
basan en la comparación de la previsión realizada con el resultado real, en un
sólo paso, mientras que las redes TD se basan en el aprendizaje sobre
previsiones sucesivas hasta llegar al resultado final. Por ejemplo, supongamos
una persona dedicada a la previsión del tiempo que quisiera desarrollar un
software para predecir un lunes si lloverá el sábado siguiente. Dicho software
mediría las condiciones ambientales dicho lunes, haría su previsión, y la
compararía con el resultado obtenido el sábado. De esta forma, si el programa
acertara se reforzarían valores próximos a los del lunes como representativos
de lluvia. Esto evidentemente es un punto de vista erróneo, ya que a lo mejor
el sábado llueve mientras el lunes lucía un sol espléndido. Las redes TD
realizan una previsión del tiempo que hará el martes, y luego del miércoles, y
así sucesivamente, de forma que la red consiga una perspectiva completa de lo
que ha sido la evolución del las condiciones climatológicas, y que achaque la
tormenta a un cambio en las condiciones el jueves, y no al tiempo soleado del
lunes.

En el ejemplo presentado podemos ver además la potencia de estas


redes, ya que las predicciones sucesivas permiten un tiempo de aprendizaje
menor y sus predicciones resultan ser más acertadas. En el caso del
Backgammon es todavía más claro, ya que un sistema tradicional consideraría
buena una jugada al inicio de la partida simplemente atendiendo si al final de
la misma el resultado es positivo, y viceversa, y tal vez la jugada ha sido la
peor elección que podíamos haber hecho. Las redes TD distinguirían que la
partida se ha ganado gracias a que el resto de jugadas han sido correctas o tal

Pág. 8
Luis Rodríguez Herrador El problema del bear in en Backgammon

vez se ha debido a un día de suerte extrema.

Uno de los resultados más sorprendentes de las redes TD es que su


aprendizaje es no supervisado. Esto es, que la red no necesita patrones de
entrada que le dicten los valores de salida. La red aprende tomando datos del
exterior, y es capaz de extrapolar predicciones por sí misma. Si nos situamos
en el plano del backgammon, para entrenar una red mediante entrenamiento
supervisado sería necesario el apoyo de un campeón del mundo que
estableciera si la jugada patrón es correcta o no, y además puntuarla con
respecto a las otras posibles. En el caso de redes TD un experto en informática
es capaz de desarrollar un programa de backgammon que juegue a niveles
superiores a campeones del mundo, sin más que conocer las reglas del juego.
Además, la red entrenada por el campeón del mundo no llegaría jamás a jugar
al nivel de la red creada por el informático.

Lo que acabo de comentar es especialmente interesante para el


desarrollo de software para los temas más diversos. Ya no es necesario hacer
un máster en economía para ser un experto en bolsa, ya que una red TD es
capaz de llegar a resultados sorprendentes en campos predictivos.

Pág. 9
Luis Rodríguez Herrador El problema del bear in en Backgammon

1.3.Resumen del contenido del documento

A lo largo del texto trataré de acercarles al juego del Backgammon, ya


que no es de difusión extendida en nuestro país, y no es común encontrar a
alguien que sepa sus reglas, y mucho menos sus estrategias y variantes. Con
esto llegaré a la necesidad de resolver el problema que les planteo, ya que
aunque parezca de poca trascendencia sí que es importante para el software
existente, tanto por las partidas perdidas por esta causa como por la imagen
ofrecida al consumidor.

Comentaré aspectos fundamentales de las redes TD, tanto en su


concepción como en su funcionamiento, pero sin entrar en demostraciones
matemáticas de su convergencia1. Estos aspectos comenzarán con una
comparación con redes de entrenamiento supervisado, para mostrar la
potencia de las redes TD en el campo de la predicción. Pasaré de redes TD
equivalentes a redes de entrenamiento supervisado a unas redes TD cuya
potencia va más allá de éstas.

Para finalizar extrapolaré los resultados mostrados al problema en


estudio, que es el del bear in en el juego del backgammon, y comentaré la red
utilizada para su resolución, así como las mejoras introducidas para su
particularización al problema. Finalmente mostraré el uso de la aplicación
generada en base a toda esta información, necesaria para llegar a los
resultados finales, en los que se ve claramente el beneficio de la red
construida.

1 Para su desarrollo matemático ver “Machine Learning 3” de Richard S. Sutton, 1988

Pág. 10
Luis Rodríguez Herrador El problema del bear in en Backgammon

2.Aplicación de redes a juegos

En este capítulo trataré brevemente de hacer una comparativa entre la


inteligencia artificial de los programas de ajedrez frente a los de backgammon,
tanto sus diferencias conceptuales como prácticas.

En primer lugar, el factor que diferencia ambos juegos


fundamentalmente es la diversidad de opciones que se presentan, ya que el
backgammon debido a las 21 posibilidades azarosas de los dados, presenta un
número de variantes muy superior al del ajedrez. Mientras es conocido por
todos que los programas de ajedrez basan su potencia de cálculo en el análisis
del espacio de posibilidades futuras, de forma que se evalúan posibilidades
hasta un gran número de posiciones después, los programas de backgammon
sólo podrían usar este método para rastrear pocas jugadas sucesivas (por el
momento el rastreo se reduce a cuatro jugadas posteriores en los programas
más potentes). Mientras el ajedrez permite con métodos de rastreo selectivos
eliminar gran número de jugadas y sus correspondientes ramas, el
Backgammon permite una discriminación muy reducida.

Además de lo expuesto, la evaluación de una posición de backgammon


resulta mucho más confusa que una de ajedrez, ya que distintas estrategias
nos llevan a movimientos diametralmente opuestos, y la elección de la
estrategia en backgammon puede resultar sorprendentemente confusa incluso
para campeones del mundo. Por estas razones, Hans Berliner en 1979 obtuvo
unos pésimos resultados al tratar de generar un evaluador de posiciones
similar al del ajedrez acompañado de un rastreo de posiciones. Este evaluador
se basaba en tres conceptos:

• Suavidad, la función de evaluación debía presentar una superficie suave, sin


saltos, en el espacio de soluciones. Si la superficie fuera discontínua con
respecto a algún parámetro definitorio, el programa evaluador tendería a

Pág. 11
Luis Rodríguez Herrador El problema del bear in en Backgammon

conceder demasiada importancia a dicho parámetro y jugar incorrectamente


en situaciones donde distintas opciones de movimiento se encontrasen a
ambos lados de la discontinuidad.
• No linealidad, puesto que las funciones lineales no modelan correctamente
relaciones entre distintos parámetros.
• Coeficientes, que serían obtenidos experimentalmente.

Con estas características, Berliner obtuvo un programa que ganaba 0.3


puntos por game frente a un jugador humano, lo cual le situaba a un nivel
bastante pobre (en backgammon los games pueden valer más de un punto, por
lo que 0.3 puntos por partida no significa que su rival humano ganase
únicamente 0.7 puntos por game de media, sino probablemente bastante
más). La puntuación en backgammon la comentaré en el capítulo dedicado a
sus reglas.

Desde un punto de vista conceptual, los programas de ajedrez tienen su


punto fuerte en la parte táctica, mientras adolecen la estratégica. Esto es, si
hacemos una comparación frente al juego humano a nivel de grandes
campeones del mundo, una máquina de ajedrez es capaz de jugar con
perfección un movimiento desde el punto de vista táctico, y obtienen su
ventaja en partidas donde la estrategia está bien definida. Si la partida está
decidida a la ofensiva, la máquina no fallará, mientras que en zonas de
confusión es donde el ser humano domina. Podríamos decir que desde este
punto de vista el ser humano es más intuitivo que la máquina, es capaz de
extraer una lectura global de la situación en la partida, sin entrar en la
evaluación numérica que realiza el ordenador.

Sin embargo, con las redes neuronales aplicadas al backgammon, se


produce curiosamente el efecto contrario. Una red neuronal es capaz de jugar
estratégicamente muy por encima del ser humano, y fallar en la táctica,
cometer errores técnicos de cálculo que difícilmente se asociarían a una

Pág. 12
Luis Rodríguez Herrador El problema del bear in en Backgammon

máquina computacional. Esto nos induce a pensar que las redes neuronales
están dotadas de cierta intuición, que son capaces de asimilar globalmente las
posiciones, más que entrar en un análisis numérico de tiros directos e
indirectos, en los que puede llegar a fallar2.

Debemos suponer con lo expuesto que las redes neuronales se asemejan


más al comportamiento humano que la simple evaluación numérica. La
combinación de ambos métodos están comenzando a utilizarse con resultados
muy buenos. Mientras la computación bruta es capaz de analizar un gran
número de posiciones, las redes neuronales permiten “intuir” las ramas por las
que debemos buscar los óptimos de las soluciones.

2 Un tiro directo se produce cuando es posible comer una ficha del contrario con la tirada de un dado, mientras que
indirecto es cuando la distancia a la ficha libre del contrario requiere del uso de los dos dados.

Pág. 13
Luis Rodríguez Herrador El problema del bear in en Backgammon

3.Revisión histórica del Backgammon

El backgammon nació en la antigua Mesopotamia, en el imperio persa,


actualmente Irán, Iraq y Siria, y es considerado el más antiguo de los juegos
que se conocen. Tradicionalmente se jugaba usando tableros de madera,
piezas de piedra y dados fabricados con huesos, piedras, madera o cerámica.
Han sido hallados tableros que datan de varios miles de años antes de Cristo,
usados por egipcios, sumerios, romanos y persas.

A lo largo de su historia,
el backgammon ha sido
relacionado con líderes y
aristocracia de estas antiguas
civilizaciones, como
demuestran las reliquias Ilustración 1 Senat

recuperadas y la literatura de distintas épocas. Tableros de 3x10, 3x12 y 3x6


metros cuadrados fueron encontrados en Egipto, donde era conocido como el
“Juego de los trenta cuadrados” o “Senat”. Estos artilugios datan de 3000-1788
AC y tanto las reglas como el uso del
dado continúan siendo un misterio.
Tableros de madera fueron hallados en
la tumba real de Ur al Chaldees, en el
centro de Sumeria, y datan de 2600 AC,
además de dados tetraédricos, y se
Ilustración 2 Ur conocen como “Juegos reales de Ur”.
Varias de las reglas usadas en este juego fueron descubiertas en una escritura
cuneiforme que data de 177 AC.

Pág. 14
Luis Rodríguez Herrador El problema del bear in en Backgammon

El backgammon en Roma

También han sido hallados restos romanos de un juego llamado “Ludus


Duodecim Scriptorum”, el juego de las 12 líneas, con tableros de cuero y 30
piezas, 15 de ébano y 15 de marfil, que datan de 600 AC, y que se piensa que
es una evolución del Senat egipcio. Durante el primer siglo después de Cristo,
el juego de las 12 líneas fue reemplazado por una variante con 2x12 líneas en
lugar de 3x12, aproximándose ya a la versión actual de backgammon. El juego
llegó a Inglaterra tras su conquista por Roma en el siglo I DC, y fue llamado
“Tabula”, un nombre genérico para el tablero sobre el que se jugaba. Este
pasatiempo fue bastante popular, llegando a ser el juego favorito de
emperadores como Claudius. Sobre el 50 DC, Claudius escribió una historia del
juego de Tabula, pero
lamentablemente no se ha
recuperado ningún ejemplar. En su
tumba pudo encontrarse un tablero
Ilustración 3 Ludus Duodecim Scriptorum de Tabula, que según las creencias
de la época llevaba para hacer más ameno el viaje al otro mundo. El Tabula fue
también el juego responsable de la creciente adicción en Roma las apuestas, y
por ello se le declaró ilegal al instaurarse la República. En el siglo sexto
después de Cristo, el juego pasó a llamarse “Alea”, o “el arte de jugar con los
dados”. Alea fue el primer precursor del actual Backgammon, aunque había
muchas variantes en lo referente a posiciones y movimientos.

El backgammon en Asia

En el suroeste de Asia, en Persia, apareció un juego llamado “Nard” un


poco antes de 800 AC. Al Nard se jugaba de forma parecida al Alea, y se
usaban únicamente dos dados para mover las piezas. También llamado
“Nardshir”, “Nardeeshir” o “Nard-i-shir”, ya que Nard era el nombre persa que
hacía referencia a los productos derivados de la madera, como lo era el tablero

Pág. 15
Luis Rodríguez Herrador El problema del bear in en Backgammon

donde se jugaba. Otro nombre con el que se le conocía era “Takhteh Nard”,
que significaba “batalla sobre madera”. Una antigua escritura que describe el
simbolismo del juego ha revelado que:

El tablero representa un año; cada lado contiene 12 marcas por los


meses del año; las 24 marcas del tablero representan las horas del día; las 30
piezas representan los días del mes; la suma de los lados opuestos del dado
representan los 7 días de la semana; los colores usados para cada bando
representan el día y la noche.

T'shu-p'u fue el nombre con el que los chinos adoptaron el juego del
Nard, el cual se cree que fue inventado en la India occidental, y que llegó a
China durante la dinastía Wei (220-265 DC), y se
hizo muy popular entre 479-1000 DC, donde
pasó a llamarse “Sugoroku” por los japoneses. El
Nard se introdujo en Europa a través de Italia o
España tras la ocupación de Sicilia en 902 DC. El
Ilustración 4 Dados chinos término “Tabula” fue usado por varias culturas
para llamar a este juego proveniente de Asia, ya que era similar al que habían
extendido los romanos. De hecho, el Nard parecía ser una versión modificada
del Tabula, tal vez incorporando algunos aspectos del Senat egipcio. La
principal diferencia entre ambos juegos era que el Tabula usaba tres dados,
mientras el Nard tan sólo usaba dos. El uso de dos dados para jugar al Tabula
se fue extendiendo rápidamente, llegando a ser muy popular.

Proliferación y estandarización del backgammon

La primera mención en inglés impreso fue en “El Codex Exoniensis”:


“These two shall sit at tables...” en 1025 DC, y fue llamado Nard o “Tables”.
Durante la edad media fue un juego muy popular en las tabernas inglesas. El
ajedrez restó popularidad al Tables más tarde, en el siglo XV. Durante el

Pág. 16
Luis Rodríguez Herrador El problema del bear in en Backgammon

reinado de Elizabeth I, el juego fue prohibido por algún tiempo, debido a su


naturaleza de juego de azar en el que se solía apostar dinero.

En otros países, el juego ganó en popularidad bajo distintos nombres:


“Tavola Reale” en Italia, “Tables Reales” en España, “Tavli” en Grecia, “Tavla”
en Turquía, “Tric Trac” en Francia, “Backgammon o Tables” en Inglaterra,
“Puff” en Alemania, “Vrhcaby” en Chequia y “Swan-liu” en China. Se dice que
el término “Backgammon” apareció en 1645 mediante la conjunción de “baec”
(back, espalda o atrás) y “gamen” (game, juego) según los sajones, o mediante
la conjunción de “bac” o “bach” (little, pequeño) y “gammon” o “cammaun”
(battle, batalla) según los galeses, siendo la primera la más aceptada. Otra
teoría plantea que su nombre se originó porque siempre se encontraba en el
anverso de los tableros de ajedrez, aunque no es prácticamente considerada.

En esta época, el Tabula usaba dos dados,


incluyendo además unas reglas de dobles
próximas a las actuales, con la excepción de
que no había doubling cube (dado de dobles)
ni cuenta de gammons y backgammons. En
1743 Edmond Hoyle estableció las reglas del
juego del Backgammon en su “Treatise on
Backgammon”, convirtiéndose en el primer
conjunto de reglas modernas existente.

Ilustración 5 Treatise on Backgammon

Pág. 17
Luis Rodríguez Herrador El problema del bear in en Backgammon

Historia moderna del Backgammon

1920-1960
El doubling cube apareció en Nueva York sobre 1920, introducido por un
jugador desconocido que pretendía resaltar la faceta de destreza del juego
frente a la de puro azar, incrementando así el mercado del Backgammon. En
esta época el Backgammon se limitó prácticamente a la clase alta en clubs
privados, hasta que varias publicaciones en revistas de gran tirada lo llevaron
al resto de la sociedad. Sus reglas fueron modificadas en 1931 en los Estados
Unidos para llegar al juego que conocemos en la actualidad. Durante la
depresión estadounidense cayó su popularidad, a lo que se trató de combatir
con más textos publicados, pero continuó decayendo durante la segunda
guerra mundial. En este periodo no se produjeron avances en la técnica del
juego.

1960-1990
La popularidad del Backgammon aumentó durante los años 60, tras los
esfuerzos del príncipe Alexis Obelensky (Oby), quien promocionó y organizó
torneos a nivel mundial, con la aparición del
primer Campeonato del Mundo en las
Bahamas. Comenzaron la publicación de
libros especializados, siendo el primero
“Backgammon: The Action Game”, del mismo
Oby. Los años 70 han sido descritos
frecuentemente como los del “boom” del
Backgammon, con un notable incremento de
libros, revistas, columnas en periódicos,
torneos, publicidad, etc. Pasó de ser un juego
exclusivo para la clase media-alta a ser un
juego popular incluso para generaciones de
Ilustración 6 Libro de Oby
jóvenes. Libros de introducción al

Pág. 18
Luis Rodríguez Herrador El problema del bear in en Backgammon

Backgammon acercó el juego a todos, como fueron: “The Backgammon Book”


por Jacoby & Crawford, “Backgammon: The Cruelest Game” por Cooke &
Bradshaw, que llevaron a la aparición de volúmenes más avanzados, como
“Backgammon for Profit” de Dwek y el clásico “Backgammon” de Paul Magriel,
conocido por todos como la “biblia del Backgammon”. La popularidad hizo que
las sumas de dinero de los premios crecieran notablemente, alentando la
aparición de jugadores profesionales.

En los años 80 el Backgammon volvió a experimentar una recaída entre


el público joven debido a la aparición de los videojuegos y la diversión que
podían brindar estos a las mentes adolescentes. Sin embargo, el interés por
encontrar soluciones al juego se vio renovado con la aparición de los
programas informáticos de Backgammon, que aunque no llegaban a ser
competitivos en partidas, resultaban muy útiles a la hora de realizar rollouts3
sobre jugadas particulares, con el consiguiente ahorro de tiempo para el
jugador profesional, y permitiendo una mayor comprensión y profundidad de la
táctica y la estrategia del juego.

1990-Presente
La revolución en el campo de los ordenadores continuó hasta que Gerald
Tesauro, trabajador de IBM, desarrolló un programa que era capaz de aprender
por sí mismo a jugar al Backgammon usando redes neuronales, llamado TD-
Gammon, llegando a jugar a nivel mundial. Otro éxito importante para el
Backgammon fue la creación de FIBS (First Internet Backgammon Server) en
1993 por Andreas Schneider, alojado en un servidor gratuito en Suecia. Cerca
de 100 jugadores con conexión a internet pudieron jugar al mismo tiempo con
la posibilidad de salvar sus partidas, ver jugar a otros y comparar sus niveles
mediante un sistema de rating.

El noruego Frederic Dahl creó la primera red neuronal de Backgammon

3 Un rollout consiste en jugar un número de partidas suficiente desde una determinada posición realizando las
diferentes jugadas posibles para dar un resultado estadístico de dicha posición

Pág. 19
Luis Rodríguez Herrador El problema del bear in en Backgammon

comercial, cuyo nombre fue Jellyfish. Su programa tenía la


habilidad de asignar una equity4 a cada posición y realizar
rollouts sobre posiciones con un sistema novedoso. Jellyfish
fue incluido como jugador en FIBS y se crearon foros de
discusión de Backgammon, donde se comentaban jugadas y
se analizaban partidas. Posteriormente Olivier Egger creó
Snowie, un software más comercial de Backgammon, con un interfaz más
accesible para el usuario, y la capacidad para importar y
analizar partidas grabadas en estándares actualmente
utilizados. Lo último referente a programas de Backgammon
es el GNU Backgammon, basado en software libre, con un
código fuente abierto para descargar e implementar mejoras.

4 La equity de una posición representa la media de puntos por partida que ganaríamos si jugáramos una sucesión
infinita de partidas desde esa posición

Pág. 20
Luis Rodríguez Herrador El problema del bear in en Backgammon

4.Reglas del juego

Situación inicial

El backgammon es un juego de dos jugadores, jugado en un tablero


compuesto de 24 triángulos que alternan colores claros y oscuros, dividido en
dos filas, cada fila en dos cuadrantes de 6 triángulos. Cada uno de los
triángulos del tablero recibe comunmente el nombre de “punto”. Los puntos
están numerados del 1 al 24, comenzando por el home del jugador blanco. De
esta forma, se suele hablar del punto 5, punto 15, etc. La gran parte de la
terminología usada en backgammon es anglosajona, y en todo el texto
respetaré en la medida de lo posible dicha nomenclatura. Los cuadrantes
reciben los nombre de “outer board” o “midfield” si nos encontramos entre los
puntos 7 y 18, mientras que reciben el nombre de “inner board” o “home” si
nos encontramos entre los puntos 1 y 6 (“home” del jugador blanco) o entre los
puntos 19 y 24 (“home” del jugador negro, que aparece como rojo en gran
parte de los programas comerciales por motivos de visibilidad). El outer board
y el inner board se encuentra separado por el “bar”, que tradicionalmente es la
parte de madera del tablero en la que se encuentran las bisagras por donde se
pliega el mismo.

Ilustración 7 Posición inicial

Pág. 21
Luis Rodríguez Herrador El problema del bear in en Backgammon

Cada jugador dispone de 15 piezas (comunmente “checkers”) de su


color, que son las que podrá mover. La situación inicial de las piezas es la
mostrada en la ilustración 1. Aunque existen variantes respecto a la colocación
inicial de las piezas, esta posición es la que establece la reglamentación
internacional. Otras disposiciones surgieron como simplificaciones o bien para
llevar las partidas a posiciones más técnicas desde el principio, de manera que
se redujera el azar de la partida frente a la técnica del jugador.

Cada jugador debe tener su propio par de dados y un cubilete para


agitarlos y evitar su manipulación, causa de numerosos conflictos en este
juego. Además, se incluye un dado denominado “doubling cube”, con los
números 2, 4, 8, 16, 32, 64 en sus caras, y que se utiliza para saber la
situación de la partida en lo referente a los dobles. Nos dice en cada momento
el valor de la partida.

Objetivo del juego

El objetivo del juego para cada jugador es llevar todas sus fichas dentro
de su correspondiente home para luego sacarlas fuera del tablero, lo que se
denomina “bear off”. El primer jugador en conseguirlo será el ganador de la
partida (“game”), aunque no del juego (“match”) en la mayoría de los casos,
ya que se pactan a un número determinado de puntos. El valor de cada game
viene determinado por el doubling cube, modificado por la situación final de la
partida, como ya comentaré más adelante. El primer jugador en alcanzar o
superar el número de puntos establecido será el ganador del match.
Normalmente un match se juega entre 5 y 9 puntos, aunque en campeonatos
suelen encontrarse entre 17 y 25 puntos.

Las piezas sólo pueden ir en un sentido, contrario para ambos jugadores.


En ningún caso un jugador podrá mover una pieza en sentido contrario al que
le corresponde, y que es siempre el que apunta a su propio home. En la

Pág. 22
Luis Rodríguez Herrador El problema del bear in en Backgammon

ilustración 2 podemos ver el sentido que deben tomar las fichas.

Ilustración 8 Sentido de juego

Movimiento de las piezas

Para comenzar el juego, cada jugador lanza uno de sus dados. Esto
determina el jugador que comenzará moviendo, que será el que saque una
tirada mayor, y la tirada con la que lo hará, que será la resultante de los dos
dados lanzados. Si la tirada de ambos es la misma, se vuelven a lanzar hasta
que sean diferentes. Después de esta tirada inicial, los jugadores irán turnando
sus tiradas y movimientos, cada uno lanzando sus correspondientes dos dados.

Cada tirada de dados indica el número de puntos que el jugador puede


mover sus piezas. Como antes he mencionado, siempre en su correspondiente
sentido, nunca hacia atrás. Las normas aplicables al movimiento son las
siguientes:

1. Una pieza sólo puede moverse a un punto abierto, esto es, un punto que no
esté ocupado por dos o más piezas contrarias. Por tanto, puntos abiertos
serán aquellos en los que no se encuentre ninguna pieza, o que las piezas
sean del jugador que mueve, sin importar el número, o bien está ocupado
por una única pieza del contrario.
2. Los números que han resultado en la tirada de dados representan dos
movimientos diferenciados. Por ejemplo, si un jugador ha lanzado los dados

Pág. 23
Luis Rodríguez Herrador El problema del bear in en Backgammon

obteniendo un 3 y un 5, puede mover tres puntos con una ficha y cinco con
otra siempre a puntos libres, o con la misma ficha. Hay que tener en cuenta
que son movimientos diferenciados, por lo que si el movimiento se realiza
con la misma ficha, primero debemos ejecutar un movimiento si es posible
(si va a un punto libre) y luego el otro, no considerar la suma de ambos
dados. El orden de los movimientos es indistinto, por lo que puede moverse
primero el 3 y luego el 5 o viceversa.

Ilustración 9 Ejemplos para una tirada 3-5

3. Un jugador cuya tirada de dados sea la misma en ambos debe mover 4


veces en lugar de 2, por supuesto esos 4 movimientos con el resultado
obtenido en los dados. Por ejemplo, una tirada 6-6 significa que el jugador
dispone de 4 movimientos de 6 puntos cada movimiento para efectuar. Estos
movimientos puede repartirlos libremente entre sus piezas, de forma que
una misma pieza puede efectuar los 4 movimientos si lo desea.
4. El jugador debe realizar los 2 movimientos correspondientes a la tirada de
dados siempre que sea posible (o 4 en caso de que haya resultado un doble
en la tirada). Cuando sólo es posible efectuar uno de los dos movimientos, el
jugador debe efectuarlo. Si el efectuar un movimiento impide que se pueda
realizar el segundo, mientras que otras opciones sí permiten realizar los dos
movimientos, el jugador está obligado a tomar una de estas opciones, ya
que si es posible debe jugar los dos dados. En caso de que el jugador no
tenga movimientos legales con la tirada, pierde su turno. En el caso de que
la tirada sea un doble, se actuará de igual forma, realizando tantos
movimientos como sea posible.

Pág. 24
Luis Rodríguez Herrador El problema del bear in en Backgammon

Comer piezas

Cuando tenemos una sola pieza del jugador contrario en un punto,


denominamos a esta pieza “blot”. Si movemos una pieza en nuestro turno
sobre un blot, estamos “comiendo” (“hitting”) la pieza del contrario, y esta
pieza pasa a situarse en el bar (la parte central del tablero).

Siempre que un jugador tenga una o más piezas en el bar, su obligación


será sacar estas piezas antes de mover cualquier otra pieza. Estas piezas
ingresan en el tablero por el home del jugador contrario. Una pieza ingresa en
el tablero con una tirada de dados que la lleve a un punto libre, considerando
el bar como una casilla extra que se encuentra justo al final de cada home
(como un punto 0 y 25).

Por ejemplo, en la ilustración 4, el jugador blanco tiene una pieza en el


bar. Su tirada de dados ha sido 4-6, por lo que su primer movimiento debe ser
obligatoriamente desde el bar al punto 21. Tras efectuar este movimiento
puede realizar otro con el 6, con la pieza que desee siempre que sea a un
punto libre (puede mover también la pieza que acaba de salir del bar). Si por
ejemplo la tirada hubiera sido un 5-6, un 5-5 o un 6-6, el jugador no podría salir
del bar, por lo que perdería su turno.

Ilustración 10 Ejemplo de movimiento desde el bar

Si el jugador tiene más de una pieza en el bar, antes de mover otra pieza

Pág. 25
Luis Rodríguez Herrador El problema del bear in en Backgammon

debe tener todas estas piezas fuera del bar. De esta forma, si el jugador
hubiera tenido dos piezas en el bar, una tirada 4-6 sólo le hubiera permitido
sacar una de ellas, por lo que el otro movimiento no habría podido realizarlo.

Bearing off

El término bearing off se utiliza para denominar la salida de fichas del


tablero, objetivo primero del juego. Para poder comenzar el bearing off, todas
las piezas del jugador deben encontrarse en su home board. Una tirada de
dado permite sacar una ficha del tablero correspondiente a dicha tirada de
dado. Un 4 permitiría sacar una ficha que se encontrase a 4 puntos de
distancia de salir del tablero (con todas las piezas restantes en el home board o
fuera ya del tablero).

Si no hay ninguna pieza en el punto correspondiente a la tirada de dado,


es posible mover una pieza que se encuentre en un punto superior. Si no se
encontrase ninguna pieza en el punto 4 con nuestra tirada, podemos mover
una pieza del 5 al 1, o del 6 al 2. Si no hubiera piezas en los puntos superiores
(en este caso 5 y 6), el jugador puede (y está obligado a ello) a sacar del
tablero la pieza del punto más cercano a la tirada realizada (el 3 en nuestro
caso, luego el 2 y finalmente el 1).

Un jugador no está obligado a realizar un bear off si tiene opción a otro


movimiento legal. Por ejemplo, aún encontrando piezas en el punto 4 con
nuestra tirada, el jugador puede optar por mover una pieza desde el punto 5 o
6, moviendo 4 puntos.

Ilustración 11 Bear off

Pág. 26
Luis Rodríguez Herrador El problema del bear in en Backgammon

En la ilustración 5 podemos ver que el jugador tiene únicamente dos


movimientos posible. El marcado en la figura es el más lógico, puesto que saca
dos piezas del tablero, pero también podría optar por mover del 5 al 1 con su
dado más bajo, y su segundo movimiento sería forzado, que sería sacar del
tablero una pieza del punto 4. Recuerdo que los movimientos en backgammon
siempre son secuenciales, de forma que al efectuar un primer movimiento, del
dado que decidamos, el segundo se realiza a partir de la posición resultante.

Como ya he comentado, un jugador debe tener todas sus piezas activas


(no son piezas activas las que ya han salido del tablero, pero sí las que se
encuentran en el bar) en su home board. Si una pieza es comida durante el
bear off, la pieza saldrá por el home board del contrario, y debe llegar a su
propio home board antes de poder continuar con el bear off. El primer jugador
en sacar las 15 piezas del tablero gana el game.

Doubling cube

En backgammon comienza cada game en 1 punto de valor por ganar.


Durante el transcurso del game, un jugador puede percibir que su ventaja es
suficiente como para decidir doblar el valor de la partida. Esto puede hacerlo
en su turno y antes de haber tirado los dados.

El jugador contrario tiene dos opciones al recibir un doble. Puede


rechazarlo, con lo que el jugador que dobla gana automáticamente el game por
valor de lo que marque en ese momento el doubling cube, o puede aceptarlo,
con lo que el doubling cube debe girarse para doblar el valor de la partida y se
continúa con esta normalmente. En el momento en que un jugador acepta un
doble, se hace “dueño” del doubling cube, por lo que tan sólo él puede volver a
ofrecer un doble. Con esto se evita que un jugador que vaya ganando pueda
doblar en todos los turnos. En el principio del game ninguno de los jugadores
es dueño del doubling cube, por lo que cualquiera de los dos puede doblar en

Pág. 27
Luis Rodríguez Herrador El problema del bear in en Backgammon

su turno correspondiente.

Como ya he mencionado, pero para que resulte más claro, dobles


posteriores al primero se denominan redobles. Si el jugador contrario no acepta
el redoble, el jugador que ha doblado gana tantos puntos como marca el
doubling cube, que en este caso será más de uno. Si un jugador no acepta el
primer doble, el contrario tan sólo se lleva un punto. No hay límite para los
redobles en un game, pero el dado de dobles sólo llega al 64 puesto que no es
nada común encontrar un game en la que se den tal número de dobles, y que
un match nunca se establece a tantos puntos (sería probablemente un match a
infinitos puntos a los que se juega generalmente por dinero, y que la diferencia
de puntos es la que determina la cantidad a pagar).

En un match a varios puntos, cuando un jugador llega a un punto por


debajo del límite, se dice que el otro está en “crawford”, y no le está permitido
doblar a este último. Este estado sólo tiene efecto en un game. Por ejemplo, en
un match a 5 puntos, si un jugador llega a 4 puntos el otro se sitúa en
crawford, por lo que no puede doblar (el primero sí puede doblar, pero no tiene
sentido ya que sólo necesita un punto para ganar la partida). En el siguiente
game pueden suceder dos cosas. Si gana el jugador con 4 puntos acaba el
match, mientras si gana el jugador en crawford deja de estarlo, por lo que
puede doblar en el siguiente game.

Gammons y Backgammons

Son situaciones especiales del game que se dan al terminar éste. Si al


finalizar el game, esto es, cuando uno de los jugadores ha sacado todas sus
piezas del tablero, el jugador que ha perdido ha conseguido sacar del tablero al
menos una pieza, el juego se considera simple, y el jugador que gana se anota
tantos puntos como indica el doubling cube (un punto, si nadie ha doblado
durante el game).

Pág. 28
Luis Rodríguez Herrador El problema del bear in en Backgammon

Si por el contrario el jugador que ha perdido no ha conseguido sacar


ninguna pieza del tablero, se dice que ha sido Gammon, por lo que el ganador
se anotará el doble de puntos de lo que indique el doubling cube. Puede ser
incluso peor, puesto que si el jugador que pierde, al hacerlo tiene alguna pieza
en el bar o en el home board del contrario, la partida se denomina
Backgammon, y el jugador que gana lo hace con el triple del valor del doubling
cube.

Irregularidades

Pueden darse las siguientes irregularidades en el juego de backgammon


que es conveniente corregir:

1. Los dados deben tirarse de forma simultánea, no uno tras otro. La tirada
debe realizarse sobre el lado derecho del tablero, donde están los home
boards. El lanzamiento debe repetirse si algún dado cae fuera del lado
derecho del tablero (deben repetirse ambos dados) o si uno de los dados cae
sobre una pieza o cae de canto.
2. Un turno ha finalizado cuando el jugador recoge sus dados del tablero. Si el
movimiento es incompleto o ilegal, el jugador contrario tiene el derecho de
permitir la jugada tal como ha sido realizada o requerirle al jugador que ha
movido que efectúe correctamente el movimiento. El movimiento se
considera que ha sido aceptado cuando el jugador contrario efectúa su
propia tirada de dados.
3. Si un jugador lanza sus dados antes de que el contrario haya retirado los
suyos del tablero, la tirada queda invalidada. Esta regla no suele
considerarse cuando el movimiento del contrario es forzado (sólo tiene una
posibilidad) o no tiene movimientos legales, o cuando nos encontramos en la
recta final del juego sin que pueda haber encuentro entre las piezas de

Pág. 29
Luis Rodríguez Herrador El problema del bear in en Backgammon

ambos jugadores.

Bear in

Por último hablaré de la parte correspondiente a lo que atañe


directamente al proyecto. En esta fase no se introducen reglas especiales, sino
que se juega con las ya mencionadas, pero es conveniente delimitar ahora esta
parte.

El bear in se corresponde con la parte en la que un jugador o ambos


tratan de introducir sus piezas desde el midfield hasta su home board sin que
sea posible ya contacto entre las piezas de ambos bandos.

Pág. 30
Luis Rodríguez Herrador El problema del bear in en Backgammon

5.Redes TD

Como ya he comentado con anterioridad, las redes TD (temporal


differences) son una particularización de las redes neuronales convencionales,
cuyo objetivo es la predicción de eventos futuros. Las redes TD están
diseñadas para asimilar información sobre el presente y arrojar evaluaciones
sobre una situación futura.

El problema de la predicción ya había sido abordado con anterioridad


usando redes neuronales, pero con pobres resultados. El tratamiento con el
que se formulaban las redes era el refuerzo o la desestimación de los pesos
tras la comparación entre la predicción y el resultado real del evento. Esto
limitaba el campo de aplicación a predicciones a muy corto plazo, y con
resultados lentos de obtener, ya que debía transcurrir todo el periodo para
poder realizar la comparación. Sin embargo, la aparición de las redes TD has
supuesto un giro total en el diseño de redes predictivas. Estas redes se basan
en predicciones sucesivas hasta llegar a la conclusión final. Puede demostrarse
que la convergencia de estas redes es mucho mejor que el de las anteriores en
la gran mayoría de casos predictivos, con unos resultados mucho más fiables, y
obtenidos en menos tiempo, ya que el entrenamiento de la red pasa por un
elevado número de estadios antes de la comparación con el resultado final.

El uso de estas redes es muy amplio. Ya que se basan en el análisis de


situaciones actuales para predecir el futuro, algunos ejemplos que podemos
poner es el uso para juegos de mesa, como es el caso de este proyecto, en los
que una determinada posición puede llevarnos a ganar o perder la partida,
predicciones meteorológicas, si viendo una nube negra podemos prever que va
a llover, o predicciones bursátiles, si la red es capaz de traducir una
determinada cartera de acciones en un futuro valor contable.

La primera aparición de las redes TD fue gracias al programa de damas

Pág. 31
Luis Rodríguez Herrador El problema del bear in en Backgammon

de Samuel (1959). Para cada pareja de posiciones sucesivas, el programa de


Samuel utilizaba las evaluaciones de estas dos posiciones para modificar la
evaluación de la posición actual. Este método se fue desarrollando y apareció
posteriormente en otros programas, como el de Holland (1986), Sutton (1984),
Witten (1977), etc.

Las redes TD han tenido un desarrollo deficiente, y han permanecido


mucho tiempo sin una base teórica firme que les diera consistencia. Esto se ha
debido a que siempre han aparecido integradas en sistemas más complejos, en
las que eran usadas para mejorar funciones de evaluación, basándose en una
previsión más acertada de la conclusión de determinadas situaciones, como si
se cumplen ciertos objetivos, o por el contrario se llega a una penalización, o
simplemente si se gana o se pierde una partida. Nunca han sido estudiadas por
separado como una herramienta predictiva para cualquier tipo de hecho
arbitrario. Su estudio fue formalizado por Sutton en 1987, estableciendo una
base teórica firme para su posterior desarrollo.

Pág. 32
Luis Rodríguez Herrador El problema del bear in en Backgammon

5.1.Estructura

El esquema general de una red TD es el mismo que el de cualquier otra


red. Tiene una capa de entrada y otra de salida, con varias capas intermedias.
En cada capa las neuronas se conectan con las de la siguiente capa para
transmitir la información ponderada por los pesos de las conexiones. La capa
de entrada registra la situación actual, y la de salida debe resultar la previsión
futura.

La diferencia entre las redes TD y las tradicionales no radica en su


estructura física, sino en su entrenamiento. Las redes tradicionales (llamo a
otras redes tradicionales por haber tenido un desarrollo anterior al de las redes
TD) se basan en el entrenamiento supervisado. Para “enseñar” a la red, es
necesario establecer previamente una serie de patrones que guiarán a la red, y
que serán su referencia. La red tratará de buscar una función que aproxime la
información dada por los patrones, de forma que ante una entrada cualquiera
que no sea un patrón, la respuesta de la red debe ser consecuente con el
espacio de soluciones planteado. De esta forma, las redes tienen como
principal aplicación la búsqueda de funciones para espacios de soluciones. En
el caso de sistemas de predicción, las redes tradicionales se entrenan
comparando la previsión con el resultado final del experimento.

Sin embargo, las redes TD no aplican este sistema de entrenamiento. Lo


que hace una red TD es lanzar una evaluación sobre el resultado final del
experimento. Un instante después se lanza otra predicción, y se compara la
anterior con esta predicción nueva, tomando esta última como correcta y
modificando consecuentemente los pesos. Se vuelve a repetir este proceso
tantos instantes como se quiera o lo permita el problema, y en cada paso se
modifican los pesos comparando la previsión actual con todas las previsiones
anteriores. Evidentemente, consideramos en cada paso correctas unas
previsiones que no lo son, ya que la única previsón correcta es la del último

Pág. 33
Luis Rodríguez Herrador El problema del bear in en Backgammon

paso, que es la comparación directa con el resultado del experimento. Este


método lleva a la convergencia de la red bajo determinadas circunstancias,
obteniendo una herramienta que permite evaluar una situación y lanzar una
previsión con garantías.

Pág. 34
Luis Rodríguez Herrador El problema del bear in en Backgammon

5.2.Desarrollo matemático

Para realizar este desarrollo partiré de las redes neuronales tradicionales


y su desarrollo (usando la regla de Widrow-Hoff) para llegar a la situación de
las redes TD. Llegaré a unas redes TD que provocan un cambio en los pesos
iguales a los de las redes tradicionales, pero que pueden ser implementadas
incrementalmente y requieren mucha menos potencia de cálculo.
Posteriormente trasladaré estos resultados a redes TD con variaciones
diferentes en los pesos, y que son a las que se hace mención durante todo este
texto.

Considerando problemas de predicción de varios pasos en la que la


secuencia de resultados obtenida en los diferentes eventos tiene la forma x1,
x2, x3, ... , xm, z, donde cada xt es un vector de observaciones disponible en el
periodo t de la secuencia, y z es el resultado final del experimento. Los valores
de xt deben ser valores reales obtenidos de la observación del experimento en
cada periodo, mientras que la z debe ser un valor escalar real, que sea la
codificación del resultado. En cada periodo se realiza una predicción del
resultado del experimento, y que vendrán denominadas por P1 , P2 , P3 , ... , Pm ,
todas ellas estimaciones de z. En general, puede considerarse que cada
predicción es una función de todas las predicciones anteriores, pero por
simplicidad tomaremos que cada predicción es únicamente dependiente de xt.
Estas predicciones también dependen del vector de pesos, w, que es variable.
En adelante usaré la siguiente nomenclatura para cada predicción, teniendo en
cuenta sus dependencias, P(xt , w).

Todos los procedimientos de aprendizaje se expresan como


actualizaciones del vector de pesos. Por el momento consideraré que dichas
actualizaciones sólo se realizan al finalizar el experimento, y no en cada
periodo. En cada observación se calculará una variación en los pesos, que será
∆wt , pero sólo se realizará un cambio global al final del experimento. La

Pág. 35
Luis Rodríguez Herrador El problema del bear in en Backgammon

variación de los pesos será la suma de los incrementos obtenidos:

m
w  w∑  w t (1)
t=1

Posteriormente, consideraré la actualización de pesos en cada uno de los


periodos de que consta el experimento. También pueden encontrarse redes TD
en las que la modificación de los pesos se realiza una vez alcanzado un umbral
suma de variaciones.

Si consideramos entrenamiento supervisado, cada una de las


predicciones realizadas debe compararse con el resultado final, y calcular así la
modificación en los pesos. El incremento en el periodo t será debido a la
diferencia entre la predicción realizada en dicho periodo, Pt , y z, y este
incremento afectará a los pesos según la conocida regla de Widrow-Hoff, de
forma que un peso se modificará en función de lo que afecte al resultado final.
Matemáticamente resulta:

 w t = z−P t  ∇ w P t (2)

, donde α es un parámetro positivo que afecta al ratio de aprendizaje, y el


gradiente es un vector que representa la variación de la predicción respecto de
cada peso.

Si consideramos la situación en que Pt es una función lineal de xt y w,


tendremos la famosa regla “delta”, o el método de aprendizaje de Widrow-Hoff:

 w t = z−w T x t  x t

La idea básica de este desarrollo es que la diferencia entre z – wTxt es el


error cometido en la predicción. Puesto que la predicción debía haber sido z,
modificamos los pesos para aproximar la predicción al resultado deseado. Esto

Pág. 36
Luis Rodríguez Herrador El problema del bear in en Backgammon

está multiplicado por el vector de observaciones porque xt indica lo que una


variación en cada peso supondrá en el error.

Una modificación a esta regla es la denominada regla delta generalizada


o backpropagation, de Rumelhart, Hinton y Williams (1985). En este caso, Pt es
obtenida en una red multicapa con multiconexión y resulta una función no
lineal de xt y w. La regla de aprendizaje sigue siendo la misma que con la regla
delta, pero su computación es considerablemente más compleja, ya que los
gradientes son difíciles de obtener.

En cualquier caso hay que hacer notar que la variación de los pesos
depende directamente del resultado del experimento, y no puede calcularse la
variación de los pesos hasta haber acabado. Desde el punto de vista
computacional, todos los resultados intermedios deben ser renombrados y
guardados para poder compararlos con el resultado final. En otras palabras,
estos métodos no pueden ser computados incrementalmente.

Sin embargo, existe un método TD que da los mismos resultados que la


backpropagation y que sí puede ser computado incrementalmente. La clave
está en representar el error z – Pt como una suma de cambios en las
predicciones, y que es:

m
z−P t =∑  P k 1−P k  ,donde P m1=z por definición
k =t

Usando esto, las ecuaciones (1) y (2) pueden ser combinadas, resultando:

m m m m t
w  w∑  z−P t  ∇ w P t =w∑  ∑  P k 1−P k  ∇ w P t =w∑  P t1−P t  ∑ ∇ w P k
t=1 t=1 k =t t=1 k =1

Pág. 37
Luis Rodríguez Herrador El problema del bear in en Backgammon

Por tanto, el incremento que resultaría tras esto sería:

t
 w t = P t1−P t  ∑ ∇ w P k (3)
k =1

Al contrario que (2), esta ecuación sí puede ser computada


incrementalmente, puesto que cada variación en los pesos depende
únicamente de un par de predicciones sucesivas y de la suma de los valores
pasados de ∇wPt . Desde el punto de vista computacional, se ahorra el espacio
en memoria, ya que no es necesario registrar los valores de todos estos
gradientes, sino únicamente de su suma, pero aumenta el número de
operaciones a realizar.

Familia TD lambda

Una de las ventajas fundamentales de las redes TD es su sensibilidad a


los cambios en predicciones sucesivas, así como a su diferencia con el
resultado final. En respuesta a un incremento (decremento) en el valor de una
predicción con respecto a la anterior, se modifican los pesos de manera que se
incrementen (decrementen) algunas o todas las predicciones de los vectores
de situación precedentes. En el punto anterior hemos visto el caso en que
todas las predicciones anteriores se modifican exactamente en la misma
cantidad. Sin embargo, una herramienta que dota de mayor potencia a las
redes TD es la de asignar una mayor variación a periodos más recientes en el
tiempo. En la práctica suele utilizarse un decremento exponencial, en el que la
modificación de la predicción lanzada k periodos atrás se modifica según λk:

t
 w t = P t1−P t  ∑ t−k ∇ w P k , 01 (4)
k =1

Si tomamos λ = 1 tenemos (3), que es la implementación TD equivalente a redes de


entrenamiento supervisado. De esta forma suele denominarse este método TD(λ), y al caso

Pág. 38
Luis Rodríguez Herrador El problema del bear in en Backgammon

anterior TD(1).

Pueden obtenerse resultados en la literatura experta que nos muestran la


siguiente gráfica, representativa del error cometido en la red tras ser
entrenada. El error considerado es el medio logarítmico entre unas
predicciones ideales y las obtenidas según diferentes valores de λ y de α. Para
poder obtener estos resultados los experimentos han sido realizados sobre
problemas matemáticamente resolubles, en los que es posible obtener con
exactitud la previsión correcta en cada momento. Las gráficas resultantes son:

En esta gráfica podemos apreciar cómo las redes TD obtienen mejores


resultados que las redes con entrenamiento supervisado en cuanto a
problemas de predicción se refiere. Ya hemos visto que una red TD con valor
unitario de lambda tiene el mismo resultado que una red con entrenamiento
supervisado.

Pág. 39
Luis Rodríguez Herrador El problema del bear in en Backgammon

Aquí podemos ver cómo el valor óptimo del parámetro a varía para los
distintos valores de λ. Puede apreciarse cómo el óptimo se desplaza hacia la
derecha a medida que disminuimos el valor de α. También puede observarse
que el error disminuye con valores de λ menores que 1, y que el óptimo suele
estar sobre 0,3 (en el caso de estudio).

Pág. 40
Luis Rodríguez Herrador El problema del bear in en Backgammon

5.3.Problemas de predicción

Debemos distinguir dos tipos de resoluciones a los problemas de


predicción en lo que a entrenamiento se refiere. Estos problemas son los de un
paso y los de varios pasos (single-step o multi-step). En los problemas de un
paso toda la información referente al cambio de pesos es tomada una sóla vez,
siempre al final del experimento, mientras que en problemas de varios pasos
se considera que la información obtenida en cada uno de los eventos es
relevante, y se procede en cada uno de ellos a modificar los pesos de la red.

Los problemas de predicción han sido resueltos tradicionalmente en un


paso, comparando únicamente la predicción con el resultado. Las redes TD
pueden contruirse de las dos maneras, aunque es en varios pasos donde
alcanzan mejores resultados. Por ejemplo, si tomamos la predicción
meteorológica antes expuesta, podemos considerar que la predicción del
martes es suficientemente buena para modificar los pesos comparándola con
la del lunes, y así sucesivamente. Si hacemos la modificación de la red en cada
paso, nos encontramos con una red de varios pasos. Sin embargo si vamos
anotando lo que supondría esa modificación en los pesos, y sumamos todas las
modificaciones al final del experimento para obtener la variación total,
realizando esta modificación una sóla vez al final, nos encontramos con una red
de un paso.

Podemos ver que aparecen problemas tratados con redes clásicas de un


sólo paso, mientras que realmente nos encontramos ante una secuencia de
pasos. Este es el caso por ejemplo del reconocimiento por voz o escritura. La
resolución tradicional era tomar patrones de entrada correspondientes a las
palabras aisladas, y someter a la red a un entrenamiento supervisado. Sin
embargo, cuando la gente lee o escucha algo, recibe una cadena, no un
elemento aislado, de fonemas o letras, y constantemente reconsidera su
hipótesis de lo que realmente está leyendo o escuchando. Esta consideración

Pág. 41
Luis Rodríguez Herrador El problema del bear in en Backgammon

hace que el problema pueda ser planteado con redes TD, de forma que se
realiza una hipótesis de lo que se lee o escucha en cada paso, tal y como lo
hace el cerebro humano. Con redes TD se han mejorado en gran medida los
sistemas clásicos de reconocimiento de voz y escritura.

Pág. 42
Luis Rodríguez Herrador El problema del bear in en Backgammon

6.Diseño de una red para el problema del bear in

Para justificar el planteamiento realizado en la elaboración de la red TD


para el bear in, tengo que aclarar primero cómo he resuelto el bear off.
Recuerdo que el bear off era la situación en la que todas las piezas del jugador
se encuentran en el home.

Más adelante comentaré el porqué de la resolución previa del bear off en


este problema en cuestión.

Pág. 43
Luis Rodríguez Herrador El problema del bear in en Backgammon

6.1.Bear off

Una red TD debe entrenarse pasando por diferentes estados hasta llegar
a una conclusión. Durante todos estos estados la red debe arrojar previsiones
de cuál será el desenlace de la partida (o del experimento a estudiar, si
hablamos genéricamente). Por tanto, debemos dar un valor de lo que resultará
en el experimento, codificando dicho experimento. Cada previsión debe darnos
el valor final.

En los programas de backgammon, se toman 4 neuronas de salida, y que


representan las posibilidades de ganar, de hacer gammon, de perder y de sufrir
un gammon. Una previsión cualquiera debe darnos 4 valores correspondientes
a estos datos. La ponderación de estos valores es la equity de la partida, y que
indica el número medio de puntos que ganaríamos si jugásemos infinitas
partidas desde esa posición.

Una primera prueba realizada con mi red TD proyectada de esta manera


arrojaba resultados esperados: la red jugaba igual de mal que lo hacían las
existentes en el mercado. Esto se debe a lo que ya he comentado en varias
ocasiones, y es que las redes TD asimilan correctamente la parte estratégica
de la partida, pero no la táctica, y esta situación es puramente táctica. Para
que la red asimile mejor la parte táctica es necesario que las previsiones sean
a más corto plazo. Esto hace que pierdan su mayor ventaja, pero si luego se
combinan con redes de previsión a largo plazo el resultado es óptimo. Las
redes TD deben formal una red mayor, modular, con redes especializadas en
cada sector.

Para resolver por tanto el problema del bear in es necesario reducir el


alcance de la previsión. De esta forma me planteé resolver numéricamente el
problema del bear off. Su resolución es simple, y consiste en comenzar desde

Pág. 44
Luis Rodríguez Herrador El problema del bear in en Backgammon

las posiciones de menor número de pips5, calculando el número medio de


tiradas necesarias para sacar todas las piezas. De esta forma un programa
rastreador de posiciones por número de pips busca las posibilidades y toma la
mejor jugada para una tirada de dados dada, que al ser de menor número de
pips ya se conoce el número medio de tiradas, y así para todas las posibles
tiradas de dados. Luego se hace la media para obtener el valor medio de
tiradas de dados necesarias para sacar todas las piezas.

El método anteriormente descrito serviría teóricamente para la


resolución del bear in, pero el número de posibilidades que debemos calcular
crece exponencialmente, y hace inviable su uso hasta el punto 12. Por ello he
usado una combinación entre la resolución numérica y la aplicación de una red
TD.

5 Los pips son el número de puntos que restan para sacar todas las piezas del tablero. Una pieza en el punto 5 contaría
como 5 pips, una en el 12 como 12 pips, etc. y luego se suma para todas las piezas

Pág. 45
Luis Rodríguez Herrador El problema del bear in en Backgammon

6.2.Presentación de la red de bear in

Actualmente los programas de backgammon pierden movimientos al


llevar las piezas a puntos bajos en el bear in. Esto lo hacen ya que comienzan
el bear off con un valor bajo en pips, lo cual da una falsa impresión de ventaja,
ya que en el bear off estaremos perdiendo puntos en las tiradas altas. Por
ejemplo, si tenemos todas las piezas en el punto 1, una tirada de 6 doble nos
haría perder 20 pips, ya que de los 24 pips que podríamos avanzar con la tirada
sólo podemos contar 4. Es necesario dotar al programa de inteligencia para
salvar este problema.

El problema del bear in en backgammon radica en que es un problema


técnico y no estratégico. Como ya he comentado en capítulos anteriores, la
principal virtud de las redes TD en la aplicación al backgammon se encuentra
en el apartado estratégico, donde la red es capaz de asimilar posiciones y
extraer la estrategia correcta a seguir en cada momento. Desde el punto de
vista técnico, esto es, en cálculo bruto tal y como están entendidas las
máquinas de otros juegos como el ajedrez, las redes TD pierden eficacia. Por
esto, en una posición particularmente técnica como es la del bear in, una red
TD debe estar tremendamente especializada para obtener un buen resultado.
Suponía un reto por tanto encontrar una red TD capaz de asimilar movimientos
técnicos.

La potencia de las redes TD no radica es su estructura, sino en su


entrenamiento. Sus estructuras suelen ser muy simples, y rara vez llega más
allá del perceptrón de una sóla capa. En mi caso, la estructura es la siguiente,
considerando que cada capa se encuentra unida únicamente con la siguiente
(lo que trataremos de determinar serán los pesos óptimos de la red):

Pág. 46
Luis Rodríguez Herrador El problema del bear in en Backgammon

Capa de entrada

La capa de entrada es una asimilación de la posición en la que se


encuentra la partida. Para ello he tomado 8 neuronas de entrada por cada
punto del tablero. Puesto que el bear in sólo incluye el midfield y home de un
jugador, serán en total 12 puntos por 8 neuronas, un total de 96 neuronas en la
capa de entrada. Por cada punto se activará la neurona correspondiente al
número de piezas que se encuentren en él. De esta forma la primera neurona
correspondiente a cada punto tendrá valor 1 si no hay piezas en dicho punto, y
valor 0 en cualquier otro caso. La neurona 3 se activará si hay 2 piezas en
dicho punto. La octava neurona representa a un número de piezas igual o
superior a 7.

Otras redes TD usadas en backgammon incluyen más neuronas en la


capa de entrada. Esto facilita la labor de la red a la hora de "leer" la posición.
Es frecuente incluir el número de blots6 o de primes7, la distancia de los blots a
tus propias piezas, el valor de la partida, etc. Estos datos mejoran la
comprensión de la red, ya que de otra manera la convergencia es hacia unos
valores no óptimos. Sin embargo, todo esto se hace para mejorar el aspecto
estratégico de la red, de modo que en el caso que planteo he optado por
utilizar únicamente neuronas que hacen referencia a la posición de las piezas
en el tablero.

En otras aplicaciones, conviene hacer un estudio cuidadoso de la capa de


entrada, ya que es muy determinante para alcanzar buenos resultados, no sólo
de convergencia, sino también de optimalidad de la red. Los primeros
programas de backgammon encontraban precisamente este problema. Al
incluir únicamente la posición como dato de entrada, la red no alcanzaba un
nivel suficiente. Posteriormente se han ido incluyendo datos cuidadosamente,

6 Pieza que se encuentra sola en un punto y es susceptible de ser comida


7 Un prime se forma cuando se sitúan piezas formando barrera (dos o más piezas en un punto) consecutivamente. De
esta forma los primes se denominan por el número de barreras consecutivas (por ejemplo, 4-prime, 6-prime)

Pág. 47
Luis Rodríguez Herrador El problema del bear in en Backgammon

puesto que no todos ellos conducen a una mejora en el resultado de la red.

Capa intermedia

La teoría en redes aconseja que se introduzca una neurona en la capa


media por cada 3 neuronas en la capa de entrada. Tras múltiples pruebas
realizadas con la red construida, un aumento en el número de neuronas de la
capa intermedia no conduce a mejoras significativas en los resultados
obtenidos. La convergencia se hace más lenta y el resultado obtenido es el
mismo. En el capítulo de resultados incluyo un apartado con algunas de las
pruebas realizadas. De la misma manera, una disminución en el número de
neuronas tampoco resulta beneficioso, ya que empeoran los resultados de la
red.

Capa de salida

La capa de salida muestra la previsión realizada por la red. En mi caso,


una sóla neurona en la capa de salida arroja un valor que representa la
desviación prevista respecto de una posición óptima en el bear off. Como ya he
descrito en el punto anterior, esta neurona debe darnos la previsión de la
desviación respecto al óptimo de media de tiradas que necesitaremos para
sacar todas las piezas del tablero una vez lleguemos al bear off para un
número determinado de pips.

Otros programas de backgammon utilizan como salida 4 neuronas,


indicando las posibilidades de ganar, de hacer gammon, de perder y de sufrir
un gammon. Esto se utiliza porque durante el juego los movimientos correctos
varían según la puntuación de la partida. Esto se ve claramente si por ejemplo
jugamos un match a 5 puntos y llevamos 4. El valor del gammon y de ganar
sería el mismo, porque en cualquier caso el match es nuestro. Sin embargo, si
sólo llevamos 3 puntos y el contrario 4 conviene arriesgar para lograr el

Pág. 48
Luis Rodríguez Herrador El problema del bear in en Backgammon

gammon, ya que esto nos llevaría a ganar la partida, y resulta igual si el


contrario nos gana simple o con gammon. En mi programa no he utilizado más
que una neurona, ya que el movimiento en el bear in es independiente de la
puntuación de la partida. Un movimiento será óptimo en cualquier caso, ya que
el programa tratará siempre de buscar el meter las piezas en el menor número
de tiradas posible.

Para evitar que la red considere bueno el aguantar piezas sin meter en el
home para así llegar al menor número de pips en el bear off, o llevar las piezas
equivocadamente a puntos cercanos a la salida, fue necesario modificar los
valores de salida. En un principio, la red se entrenaba simplemente con el
número medio de tiradas obtenido con el programa secundario. Puesto que la
red debe dar una previsión de dicho valor en cualquier jugada, el programa
debe tomar dicha evaluación para ejecutar un movimiento. Si consideramos
que el mejor movimiento es el que lleva a un menor número de tiradas media
al final, la máquina intentaba llevar las piezas lo más cercanas al punto 1,
jugando igual de mal que otros programas. Si consideramos por el contrario
que la entrada con mayor número de pips es la mejor, trataba de colocar todas
las piezas en el punto 6, lo cual tampoco es correcto.

Pág. 49
Luis Rodríguez Herrador El problema del bear in en Backgammon

Matemáticamente puede demostrarse que la mejor posición de entrada


para las piezas es la siguiente:

De esta forma lo que hice fue crear una función simple que partiera de
dicha posición como óptimo, dándole un valor de 0, y que recibiera
penalización si nos encontrásemos en el mismo número de pips pero en otra
posición, o si nos encontrásemos con un número de pips diferentes, siendo
mayor la penalización cuanto más nos alejemos de dichos valores.

Para clarificar todo esto pondré un ejemplo. Ya hemos comentado que el


óptimo se sitúa a 80 pips. Supongamos una posición cercana al bear in. Hemos
lanzado los dados obteniendo un determinado resultado. Entonces un

Pág. 50
Luis Rodríguez Herrador El problema del bear in en Backgammon

programa rastreador de posiciones analiza todos los posibles movimientos que


se nos plantean, y ejecuta la red sobre todos ellos para ver cuál es mejor. Si un
movimiento conduce más probablemente a la posición óptima ya comentada,
su previsión será un valor menor que otra que lleve a otra posición diferente. El
caso contrario sería el de llevar una pieza a puntos bajos sin necesidad de ello,
ya que el valor obtenido como resultado al final de la partida va a ser elevado,
y esto no potencia el que se recurra a estas jugadas.

Pág. 51
Luis Rodríguez Herrador El problema del bear in en Backgammon

7.Mejoras sobre las redes TD

Este capítulo está dedicado a las mejoras introducidas en mi aplicación


particular sobre la teoría general de redes TD, de forma que he mejorado la
convergencia, que ahora resulta más rápida.

También haré una comparación con otros programas de backgammon,


explicando porqué fallan, y qué es lo que hace que no jueguen correctamente.

Pág. 52
Luis Rodríguez Herrador El problema del bear in en Backgammon

7.1.Combinación con una resolución numérica

Ya lo he expuesto con anterioridad, pero vuelvo a comentarlo en este


punto. Las redes TD resultan eficaces, aplicadas al backgammon, en periodos
largos de tiempo, donde son capaces de prever el desarrollo de la partida. Sin
embargo, sus movimientos desde el punto de vista técnico no son siempre
correctos. Esto es porque su entrenamiento siempre se ha realizado a largo
plazo. Para poder obtener mejores resultados en el apartado técnico, es
conveniente acercar el final del problema. Por ello, he llevado el final del
problema del bear in al comienzo del bear off, en vez de en el final de la
partida.

Puesto que el final de la partida es relativamente lejano, el peso que


puede tener la comparación con el resultado final frente a la comparación
entre predicciones intermedias puede hacer que relentice la convergencia, e
incluso que no se produzca en determinados casos. Hay que tener cuidado al
diseñar la red para que no se produzca este problema. En el caso de mi red lo
que he hecho ha sido combinar la red con una resolución matemática
disminuyendo el horizonte del problema. El resultado ha producido un aumento
notable de la velocidad de convergencia respecto a otras redes, y unos
resultados mucho mejores.

Pág. 53
Luis Rodríguez Herrador El problema del bear in en Backgammon

7.2.Entrenamiento secuencial

Si atendemos a la función matemática que determina la variación en los


pesos de la red vemos lo siguiente:

t
 w t = P t1−P t  ∑ t−k ∇ w P k
k =1

La variación de los pesos en un periodo cualquiera puede tomar el mismo


peso que la variación en el resultado final. Si los pesos iniciales tienen una
estructura correcta, la previsión final conducirá a una modificación correcta de
los pesos, pero si la disposición inicial no es buena, la convergencia puede
llegar a ser terriblemente lenta, ya que la variación que produce el final de la
partida (que es una estimación matemáticamente correcta) puede verse
compensada por la variación de unas previsiones erróneas al comienzo de la
misma.

Existen textos que demuestran la convergencia de la red en cualquier


caso8, pero una convergencia excesivamente lenta puede llevarnos a desechar
el uso de este tipo de redes. Para solventar este problema planteé dos posibles
soluciones:

• La primera de ellas consiste en tomar un α variable en el tiempo. De esta


forma, con un valor muy pequeño en los primeros periodos y que
experimente un crecimiento exponencial estamos aplicando una variación en
los pesos mayor en las jugadas finales de la partida. Hay que tener cuidado
puesto que este entrenamiento sólo debe utilizarse como previo, para
acondicionar los pesos iniciales, y nunca como entrenamiento final, ya que
los valores que obtendríamos en la red no serían correctos. Mientas las
jugadas finales las realizaría perfectamente, perdería visión en gran medida

8 Machine learning 3, Richard S. Sutton (1988)

Pág. 54
Luis Rodríguez Herrador El problema del bear in en Backgammon

en las jugadas iniciales, y el programa no sería correcto. Por ello, una vez
realizado esta modificación en el entrenamiento y obtenidos unos pesos
iniciales, habría que tomar un valor de α constante para realizar el
entrenamiento definitivo.

• La segunda solución que tomé fue la de un entrenamiento secuencial.


Comenzando el entrenamiento por jugadas cercanas al bear off, para luego ir
distanciando cada vez más. De esta forma la red se ve incluenciada en
primera instancia por valores reales (los obtenidos para el bear off). La
convergencia con este método fue excelente. Una mejora que también
introduje fue la de no tomar como posiciones iniciales siempre las mismas,
sino que fueran aleatorias dentro de un mismo número de pips. El beneficio
obtenido con esto no era excesivo, ya que la convergencia mejoraba, pero
muy poco. Esto se debe a que en el caso que estoy estudiando los resultados
finales a los que puede llegar la partida presentan muy poca variación de
unos a otros para situaciones próximas. La pendiente de la curva que forman
los resultados finales es muy pequeña, y por ello empezar desde una
posición u otra reporta pocos beneficios, ya que los finales van a ser muy
similares. Sin embargo, este método sí que podría resultar beneficioso en
situaciones en las que los resultados finales a lo que puede llegar el
experimento son muy dispares entre sí. En estas situaciones es posible que
un cambio en la situación cercana al final del experimento, por pequeña que
sea, puede acarrear predicciones muy diferentes.

Las pruebas con los dos métodos anteriormente expuestos dieron como
resultado una convergencia mucho mayor en el segundo caso (aunque el
resultado final obtenido era similar). Mientras el primer método alcanzaba unos
valores estables y un nivel de juego correcto para un número de
entrenamientos de 500.000, el segundo método llegaba al mismo resultado tan
sólo en 300.000 games. A partir de ahora usaré la nomenclatura habitual en

Pág. 55
Luis Rodríguez Herrador El problema del bear in en Backgammon

redes TD, y a cada game jugado le denominaré training set. Un training set no
es cada actualización de pesos, sino que es el conjunto de actualizaciones
hasta llegar a la comparación con el resultado final del experimento. En las
diferentes posibilidades de entrenamiento vistas con anterioridad, podemos
hacer la consideración que en redes de un paso la actualización se produce al
final del training set, mientras que en redes de varios pasos la actualización se
produce en cada periodo del training set.

Pág. 56
Luis Rodríguez Herrador El problema del bear in en Backgammon

7.3.Abanico de resultados finales

Las redes TD desarrolladas para backgammon contemplan únicamente el


resultado final de la partida. Premian si el resultado es positivo, mientras
penalizan si el resultado es negativo. El dotar a la red de un abanico amplio de
resultados finales hace que ésta acondicione mejor los pesos.

Veamos esto mejor con un ejemplo. Supongamos una determinada


posición de la partida. Dicha partida, puesto que el backgammon es un juego
de azar, nos llevará a ganar o perder la partida con una cierta probabilidad. De
esta forma, un movimiento por el cual sólo tenemos un 20% de posibilidades
de ganar y la ganamos, estaremos reforzando los pesos de dicho movimiento,
mientras que tal vez la alternativa que nos llevaba a ganar un 70% de las
veces se haya tomado y perdido, por lo que se ha visto empeorada. Esto nos
lleva a que los entrenamientos deben ser más largos por dos motivos:

• El primero es que para que tengamos una probabilidad correcta para una
determinada posición debemos jugar un número infinito de partidas
teóricamente, lo cual no es posible, pero sí que la fiabilidad aumenta con el
número de partidas jugadas.

• El segundo es que si reforzamos una jugada mala, de forma que la


consideramos buena, mientras hundimos la buena, por haber perdido, si esto
sucede un número importante de veces por azar nos encontramos con que la
máquina jugará el movimiento incorrecto, y no probará nunca con el correcto
para reforzarlo. Por ello el entrenamiento debe contemplar cierta
aleatoriedad al realizar los movimientos, la cual lo complica. Esto también
hace que el número de partidas necesarias para entrenar la red aumente. En
el ejemplo planteado únicamente con dos posibles movimientos parece claro
que la red no tardaría demasiado tiempo en bajar los pesos correspondientes
a la jugada mala, hasta situarla por debajo de la otra, con lo que no habría

Pág. 57
Luis Rodríguez Herrador El problema del bear in en Backgammon

problemas, salvo una pequeña pérdida de tiempo, pero en situaciones reales


en las que el número de posibilidades es muy elevado, y que la diferencia
entre dos posibilidades es muy pequeña, esto puede resultar problemático.

El que exista una cantidad más dispersa de resultados hace que no se


refuercen tanto valores incorrectos, ya que no existe una aplicación tan
extricta de “premio-castigo” en función del resultado.

Pág. 58
Luis Rodríguez Herrador El problema del bear in en Backgammon

8.Funcionamiento del software

El software que se incluye en el proyecto es la plasmación de todo lo


expuesto anteriormente. Ha sido desarrollado con visual basic 7.0, que es un
programa con el que ya había trabajado durante la carrera y que permite una
presentación más amigable. Desde el punto de vista computacional, otros
programas como c++ hubieran sido más rápidos, pero el entrenamiento de la
red no es suficientemente largo como para que dicho beneficio sea importante.
El programa de apoyo que calcula el número medio de tiradas necesarias para
sacar las piezas fuera del tablero en el bear off también lo he desarrollado bajo
visual basic 7.0.

Funcionamiento

El interfaz que presenta el software es sencillo. Un tablero que permite


ver las jugadas y una serie de instrumentos distribuidos alrededor de éste que
permite la creación y gestión de redes TD, así como sus pruebas en el tablero
de juego. Cada uno de los instrumentos se encuentra en recuadros separados,
que iré comentando su función a continuación.

Pág. 59
Luis Rodríguez Herrador El problema del bear in en Backgammon

Creación

Permite al usuario crear una nueva red TD, con un número determinado
por él mismo de neuronas en la capa intermedia. Por defecto serán 32. Las
capas de entrada y salida son fijas, y tienen 96 y 1 neuronas respectivamente.

Al crear una nueva red, el programa avisará si existe alguna red ya


creada residente en la memoria del programa, y permitirá que se salven los
pesos de ésta. En caso de que no hubiera red existente o que se proceda a
crear la red sustituyendo la anterior, el programa generará una serie aleatoria
de pesos para la red. Puesto que el programa usado es el visual basic, que está
basado en objetos, la creación de una red neuronal supone la generación de

Pág. 60
Luis Rodríguez Herrador El problema del bear in en Backgammon

dicho objeto, con sus correspondientes neuronas, y sus conexiones ponderadas


mediante pesos. Dichos pesos son los que se generan aleatoriamente. Estos
pesos generados aleatoriamente entre -0,5 y 0,5.

Jugar

Jugar significa realizar una partida de prueba, en la que podemos ver los
movimientos de la máquina. Resulta fundamental a la hora de realizar las
pruebas para determinar la potencia de la red. Nótese que el programa no
permite jugar si no hay ninguna red creada.

Lo primero que encontramos si tratamos de jugar una partida es que


tenemos la opción de hacer una tirada de dados azarosa o que podemos
asignar nosotros mismos el valor de la tirada. Esto último ha sido incluido para
poder jugar contra otros programas, ya que es el otro programa el que da el
valor de la tirada de dados.

Una vez que decidamos comenzar la partida, tendremos que editar la


posición de las piezas a partir de la cual se comenzará a jugar. Sólo
utilizaremos la parte inferior del tablero, puesto que nos encontramos en una
simulación de bear in. Para situar piezas en el tablero utilizamos el botón
izquierdo del ratón sobre el punto que deseamos situar la pieza, mientras que
el botón derecho nos permite rectificar y retirarla en caso de error. Debemos
colocar un total de 15 piezas, pudiendo también colocar piezas fuera del
tablero, en la zona de la derecha preparada para tal fin.

Pág. 61
Luis Rodríguez Herrador El problema del bear in en Backgammon

Una vez colocadas las piezas podemos comenzar a jugar.

Partida

Aquí se desarrolla la partida. Una vez pulsado el botón de comenzar, el


programa generará aleatoriamente una tirada de dados, o esperará que la
introduzcamos manualmente, según la opción elegida. Si al introducir la tirada
nos hemos equivocado, podemos rectificar con el botón de cambiar.

Si queremos que el programa ejecute la tirada obtenida, pulsamos sobre


el botón de mover, y ésta realizará el movimiento, de forma secuencial para
que podamos seguirlo.

Pág. 62
Luis Rodríguez Herrador El problema del bear in en Backgammon

Dados

Si hemos puesto los dados en manual, debemos pulsar sobre los dados
para elegir la tirada de dados.

Evaluación

Este valor indica el valor de la neurona de salida. Como ya he comentado


a lo largo del texto, este valor representa una predicción sobre la desviación
cometida con respecto a la posición óptima en la entrada para el bear off. A

Pág. 63
Luis Rodríguez Herrador El problema del bear in en Backgammon

mayor valor, mayor será la desviación que estamos cometiendo a la hora de


entrar en el home.

Entrenamiento

Esta es la parte referente al entrenamiento de la red, y que es la que


realmente es objeto de estudio.

Si nos fijamos en la parte inferior, tenemos la posibilidad de entrenar la


red en varios pasos o en un sólo paso (por cada training set). Sin embargo, en
esta versión del programa no se puede entrenar en un sólo paso, y sólo es
posible en varios pasos.

En el entrenamiento se puede trabajar sobre varios parámetros, y que


son los que son susceptibles de modificación. Estos son:

• Número de iteraciones o training sets, y que será el número de partidas que


jugará la máquina
• Valor de λ, siendo 0,15 por defecto
• Valor de α, siendo 0,01 por defecto

Una vez que comencemos a entrenar a la red, se abre otra pantalla en la


que podemos ver los pesos de la red. Cada columna representa los pesos de
una neurona con las de la capa siguiente. De esta forma, para cada neurona de
la capa de entrada tendremos 32 pesos, correspondientes a las neuronas de la
capa intermedia. El color azul representa pesos positivos, y el rojo pesos
negativos. Una barra de estado en la parte inferior nos permite conocer la
evolución del entrenamiento (el número de training sets que se han jugado).

Pág. 64
Luis Rodríguez Herrador El problema del bear in en Backgammon

La visualización de los pesos nos permite ver cómo estos se modifican


rápidamente en un principio, pero van convergiendo hasta que las variaciones
son muy pequeñas, no apreciables con el gráfico.

Pesos

Por último el programa permite cargar y salvar pesos de la red. Los pesos
han sido guardados en archivos .txt, por facilidad de uso, de forma que en
dicho archivo podemos ver el valor de los pesos de toda la red.

Pág. 65
Luis Rodríguez Herrador El problema del bear in en Backgammon

Pág. 66
Luis Rodríguez Herrador El problema del bear in en Backgammon

9.Resultados

Hace algunos meses aparecieron en internet en los foros especializados


de backgammon severas críticas al juego desarrollado por los distintos
programas en lo que al bear in se refiere. Las críticas argumentaban que
programas de estos niveles no podían permitirse perder partidas en
movimientos aparentemente irrelevantes por su sencillez, ya que la simple
lógica hace que cualquier jugador humano sea capaz de jugar mejor que las
máquinas. Sin embargo, el problema todaviá no había sido resuelto.

Para mostrar la escasa eficiencia de los distintos programas de


backgammon, capitaneados por Snowie, el software comercial más extendido,
se simplificó el backgammon a un juego sencillo que mostraba las carencias de
Snowie, GNUbackgammon y Jellyfish. El juego era muy simple. Partimos de un
bear in puro, con todas las piezas situadas en el punto 12:

Pág. 67
Luis Rodríguez Herrador El problema del bear in en Backgammon

En esta posición tenemos un bear in teórico, puesto que llegar a él en la


práctica es algo menos que imposible. Pues partiendo de aquí, se realiza una
tirada de dado, y se ejecuta la jugada. Luego se otorga la misma tirada a la
máquina, y se permite su movimiento. Se continúa así hasta el final de la
partida. Gana el jugador que meta las piezas en el menor número de tiradas,
pudiendo darse el caso de empate si entran ambos al mismo tiempo.

A simple vista es lógico pensar que los dos jugadores deben empatar
siempre, ya que estamos dando la misma tirada de dados, y deben restar por
consiguiente el mismo número de pips. Sin embargo, esto no es así, ya que los
programas actuales llevan piezas a puntos bajos en el final del home,
perdiendo pips en las tiradas finales. En comparación con el juego del humano,
la máquina habría metido al final menos piezas, pero tendría acumuladas
muchas piezas en puntos bajos mientras el humano tendría pocas piezas, la
mayoría en puntos altos. Si la siguiente tirada es una tirada alta, el humano
puede meter las mismas piezas que la máquina, pero desde puntos altos,
aprovechando mejor las tiradas de dados. Esto que puede parecer tan simple
hace que la máquina pierda más de 50% de las partidas jugadas con este
método.

Por tanto, para comparar los resultados, lo que he hecho ha sido valerme
de este mismo juego, enfrentando mi programa contra Snowie y contra mí
mismo. Los resultados obtenidos son los siguientes:

• En 100 partidas jugadas, el programa empata conmigo en su totalidad


• En 100 partidas jugadas contra Snowie, Snowie pierde 54 partidas y empata
el resto, sin llegar a ganar ninguna.

De esta forma queda demostrada la eficiencia de mi red frente a los


actuales programas de backgammon.

Pág. 68
Luis Rodríguez Herrador El problema del bear in en Backgammon

10.Conclusiones

Como ya he demostrado en el apartado anterior, la eficiencia de mi red


es superior a las actuales en el apartado del bear in. Este resultado puede ser
utilizado para implantar mi red de forma modular en las ya existentes, como se
ha hecho con otras situaciones particulares del juego.

Podemos ver un cálculo sencillo que nos lleva a conclusiones


sorprendentes:

• Un game de backgammon llega a una posición de bear in un 10% de las


veces, aunque jamás de forma tan pura como el ejemplo mostrado.
• De esta cantidad de games, podemos considerar que únicamente un 20% es
una situación de carrera, en la que el resultado está lo suficientemente
igualado como para que los errores sean representativos. En el otro 70%
restante, la ventaja de un jugador hace que la partida se decante claramente
hacia su lado, aún jugando incorrectamente.
• Al ser el backgammon un juego de azar, el resultado de la partida va a ser
determinado por las tiradas de dados, pero supongamos que un 5% puede
haberse visto influenciada por haber jugado mal una posición.

Con lo visto anteriormente, si jugamos 1.000 games, tan sólo 1 de ellos


los perderá el programa debido a su error en el bear in. Si tomamos el servidor
más famoso de backgammon de internet, que es Gamesgrid9, en el cual juegan
máquinas avaladas por personas con dinero, y consideramos lo que supone
esto, tenemos que:

• Una máquina puede jugar del orden de 10.000 games diarios.


• El valor de un game suele rondar los 10€.

9 www.gamesgrid.com

Pág. 69
Luis Rodríguez Herrador El problema del bear in en Backgammon

Esto nos lleva a la sorprendente conclusión de que una máquina que esté
jugando en este servidor pierde una media de 100€ diarios por el problema del
bear in. Es un resultado realmente alarmante.

Este resultado obtenido se ve camuflado por el hecho de que las partidas


se juegan normalmente a más de un game. Un match suele durar de media
entre 5 y 7 puntos. De esta forma, aunque la máquina haya cometido un error
en uno de los games, siempre puede demostrar en los demás su superioridad
frente a la gran mayoría de los humanos, y remontar el match. En cualquier
caso, aunque de forma disimulada, el número de games perdidos es excesivo
para un programa del nivel de Snowie.

Además, para Snowie está suponiendo un grave problema. Su gran


competidor es GNUbackgammon, que es un programa desarrollado bajo Linux,
con el espíritu de sortware libre, de forma que es gratuito. El GNU juega a un
nivel muy similar al de Snowie, y Oasya, la compañía desarrolladora de Snowie
debe asegurar que su producto aventaje al otro. Hace algún tiempo, la ventaja
comparativa de Snowie era su capacidad para analizar partidas y su sencillez
de manejo. De esta forma, los usuarios adquirían Snowie para analizar sus
partidas y aprender de los errores. Sin embargo, GNUbackgammon ha
mejorado considerablemente su interfaz, y ofrece las mismas posibilidades que
Snowie. Por todo esto, resolver problemas como el que planteo en este
proyecto puede resultar muy interesante como nueva ventaja del producto
comercial.

Pág. 70

También podría gustarte