Para comenzar su programa, programe en las reglas del ajedrez. Programe en el tablero inicial y un algoritmo que genere todos los movimientos legales posibles desde cada posición. Crea un reconocedor para usar cuando el juego termine.
El juego de ajedrez más simple es uno que alterna movimientos: el jugador hace un movimiento, luego el motor de ajedrez elige el movimiento más lógico de uno de sus movimientos legales. Repite hasta que alguien gane. (Eso tiene que incluir permitir que el jugador ofrezca un empate con la computadora pudiendo aceptar y rechazar, si lo desea, por supuesto).
Después de eso, puedes comenzar a hacerlo no estúpido. Construya un evaluador para asignar un puntaje a cada posición. Comience con su evaluador básico (Q = 9, R = 5, B = N = 3, P = 1, K = infinito). Trabaja desde allí.
- Procesamiento de lenguaje natural: ¿Cuál es la mejor manera de detectar si un fragmento de texto es interrogativo?
- Cómo obtener el número de coprimos de n bajo n
- ¿Cuál es el mejor algoritmo de procesamiento de imágenes para comparar una pintura recibida como entrada contra la base de datos y seleccionar la coincidencia más cercana?
- ¿Cómo funciona la búsqueda 'YouTube'? ¿Cómo te señala con precisión una canción con solo unas pocas palabras de la letra?
- ¿De dónde viene el nombre perceptrón?
Finalmente, agregue un algoritmo Minimax. Es decir, observa algunos movimientos y trabaja hacia atrás, suponiendo que el jugador tomará el puntaje más bajo de cada rama y que elegiría el más alto. Elija el movimiento que conduce al mejor algoritmo minimax.
Un ejemplo, de tres en raya, donde 1 es una victoria para X y 0 es un empate:
Crédito y más detalles: KR-IST – Conferencia 5a Juego jugando con Minimax y Poda