Next: Bibliografia
Up: Memoria
Previous: Propuesta de Bases
  Índice General
El desarrollo de máquinas que juegan al ajedrez ha abarcado el
interés del hombre desde hace más de 100 años. La primera
inventiva, denominada "El Turco", a pesar de ser una simple
farsa, fue el primer indicio de una carrera de varias décadas y
esfuerzos de muchas horas de trabajo en mejorar la calidad y
capacidad de los programas con el objetivo de poder derrotar al
mejor jugador humano de la especialidad. Este interés estaba
ligado a la relación que se podía establecer entre las soluciones
encontradas al problema del ajedrez y su aplicación en otras
áreas de la Inteligencia Artificial.
Las primeras ideas
apuntaron a imitar la forma de pensar del jugador humano, con
rápidas selecciones de movimientos y evaluaciones basadas en
aspectos estratégicos. Lamentablemente, esta primera intención
chocó contra los pésimos resultados obtenidos por los programas y
las tremendas dificultades que significó el tratar de modelar la
forma de jugar ajedrez de los humanos, motivo por el cual el fin
de los 60 marcó el inicio de una nueva estrategia para enfrentar
el problema, los programas de "fuerza bruta".
Los buenos resultados obtenidos por estos programas junto con los
continuos avances en Hardware y desarrollo de Software crearon
nuevas esperanzas de poder crear una máquina que derrotase al
hombre, si bien la idea de "buscar un movimiento más" y el
desarrollo enfocado a extender lo más posible la fuerza de cálculo
(aspectos tácticos) dejó muy de lado el desarrollo ligado a la
comprensión propia del ajedrez (aspectos estratégicos del juego).
En la década del 70 muchos ya opinaban acerca del tiempo faltante para
derrotar al campeón mundial, pensando en que los próximos
adelantos en hardware serían suficiente para que en base a un
cálculo concreto de muchas jugadas se pudiese superar la
desventaja estratégica frente a los jugadores humanos. Los
resultados a principio de los 80 resultaron ser bastante
sorprendentes, pues si bien muchos programas ya eran capaces de
desarrollar un nivel de juego aceptable la idea de derrotar al
campeón mundial se veía aún muy lejana. A pesar de aventajar
notablemente en cálculo a los humanos, los programas carecían de
una comprensión estratégica suficiente, lo cual los hacía cometer
errores que serían explotados muchos movimientos después.
El enfoque volvió entonces hacia el lado de la comprensión del
juego. La función de evaluación de los programas tomó un carácter
de neta importancia y el trabajo junto a los expertos empezó a ser
bastante común. El año 1997 marca el clímax de esta larga historia
con la derrota del campeón mundial Kasparov por el supercomputador
DeepBlue. El objetivo fue cumplido y el interés en el tema bajó
notoriamente.
El proceso en sí estuvo demasiado enfocado a este objetivo, y
dentro de su desarrollo existieron muchos aspectos que
probablemente fueron desestimados en búsqueda del logro principal.
Dentro de estos estaba la medición de la real capacidad de
"inteligencia" de las máquinas que juegan al ajedrez, qué
aspectos hacían a unas más fuertes que otras y qué herramientas
podían utilizarse para medir estos aspectos. Más allá de un
adelanto en la velocidad de procesamiento o bien la memoria del
hardware en donde funcionase el programa, hay un desarrollo de
software que no necesariamente fue comparado ni evaluado de
adecuada manera. Se "descansó" en el hecho de que la evolución
del hardware compensaría algunas posibles deficiencias de
eficiencia y optimización del software. Esta idea quedó expresada
en las competencias realizadas entre computadoras de ajedrez, en
donde la medición de fuerza ajedrecística estaba reflejada por la
obtención de puntos y resultado en una tabla de posiciones sin
tomar en cuenta aspectos propios del hardware en donde funcionaba
el programa ni la capacidad demostrada por los desarrolladores en
el código fuente de ella.
Este trabajo buscó justificar esta hipótesis y proponer
herramientas de medición de la capacidad ajedrecística de las
máquinas, restringiendo y nivelando ciertas capacidades de su
funcionamiento. La tarea fue bastante extensa puesto que debió
realizarse un extenso trabajo de revisión y clasificación
bibliográfica, determinar cuáles fueron los principales avances
históricos realizados desde un punto de vista computacional y
ajedrecístico y observar cómo influyen aspectos propios del
funcionamiento de los programas en estos avances. Algunos
aspectos del funcionamiento de los programas resultaron fáciles
de medición, tales como los relacionados con el hardware y la
capacidad de búsqueda en profundidad, pero otros ligados a
aspectos propios de la comprensión del juego y sobretodo la forma
de "ver y sentirlo" no podían ser estandarizados ni evaluados
con parámetros similares. En este último aspecto se descubre una
capacidad propia del ajedrez y la adaptabilidad humana hacia él en
las distintas formas de percepción e intuición.
El principal problema del futuro desarrollo de programas que
jueguen ajedrez es la carencia de entusiasmo por crear nuevos
avances puesto que el principal objetivo de años pasados ya ha
sido cumplido. Aún así, instituciones relacionadas con el tema
como la ICGA mantienen su actividad y organizan aún competencias si bien
ligadas ya a otros juegos. Los avances científicos podrán estar
ligados a extender la capacidad de los algoritmos de búsqueda en
su selectividad y optimización, y también en poder mejorar la
función de evaluación en base a estrategias de aprendizaje. Otra
área de interés podrá ser la derivación de estrategias a partir de
bases de datos de partidas de ajedrez. En este momento las bases
de datos sólo entregan el movimiento óptimo en base a un análisis
de neto cálculo para posiciones de 5 o menos piezas. Lo que se
necesita son programas que a partir de estas bases de datos
puedan deducir estrategias correctas de juego. Una solución a
este problema resultaría en un gran beneficio para la
Inteligencia Artificial.
Probablemente en el futuro seguiremos viendo competencias entre
computadoras, si bien no podemos asegurar que haya un aumento en
el interés en el tema puesto que la capacidad de realizar
programas de alto nivel está al alcance de un hardware estándar y
un buen manual de programación. A pesar de esto, los avances en
dispositivos de mínima capacidad podrán ser un interesante tema de
avance para poder probar hardware en espacios físicos cada vez más
reducidos.
Next: Bibliografia
Up: Memoria
Previous: Propuesta de Bases
  Índice General
Santiago de Chile, Julio 2003