miércoles, 5 de mayo de 2010

AvAnCeS DeL SoFtWaRe

Avances en Software

Las primeras máquinas que lograron jugar al ajedrez realizaron funciones mínimas tales como resolver problemas de jaque mate en dos movimientos o bien mediante reglas de posición resolver finales de mates elementales. Estas máquinas funcionaban mediante componentes mecánicos, los cuales mediante sistemas de imanes o ranuras lograban descifrar la situación de la posición en el tablero y generar el movimiento adecuado.

El paso del tiempo ha dado lugar al desarrollo computacional en máquinas electrónicas de alta velocidad y hardware sofisticado, cuyo progreso ha sido meteórico en comparación a su corta existencia. Técnicas refinadas de uso de algoritmos y maquinaria más especializada capaz de realizar miles de operaciones en pocos segundos dieron nacimiento a máquinas de ajedrez que ya podían jugar al nivel de candidatos a maestro. Este avance dividido tanto en software como en hardware es lo que analizamos en el presente capítulo, comparando eficiencia, efectividad y avances logrados en el tiempo.

En términos de herramientas para el desarrollo de programas que jugasen al ajedrez en el día de hoy disponemos de un mejor y más eficiente software para editar, compilar, armar, enlazar y debugear programas.

Es algo difícil el cuantificar cuánto mejor es el software actual respecto al de antaño, puesto que no se han realizado análisis a partir de un parámetro de software dado, si bien bajo cualquier factor de medición se podría asegurar que éste no ha mejorado en los niveles que lo ha hecho el hardware. Algo sorprendente en este campo es la carencia del desarrollo de un lenguaje de programación de propósito especial para ajedrez.

A pesar de esto, podemos mencionar algunas mejoras realizadas en la programación de los principales módulos de los programas que juegan ajedrez, vale decir, generador de movimientos, función de evaluación y motor de búsqueda.