Me pregunto cómo entrenar una red neuronal para un juego de mesa basado en la ronda como el tic-tac-toe, el ajedrez, el riesgo o cualquier otro juego basado en la ronda. Obtener el siguiente movimiento por inferencia parece ser bastante sencillo, al alimentar el estado del juego como entrada y usar la salida como el movimiento para el jugador actual. Sin embargo, entrenar una IA para ese propósito no parece ser tan sencillo, porque:
- Es posible que no haya una calificación si un solo movimiento es bueno o no, por lo que el entrenamiento de movimientos individuales no parece ser la opción correcta
- El uso de todos los estados del juego (entradas) y movimientos (salidas) de todo el juego para entrenar la red neuronal no parece ser la opción correcta, ya que no todos los movimientos dentro de un juego perdido pueden ser malos
¿Entonces me pregunto cómo entrenar una red neuronal para un juego de mesa basado en una ronda? Me gustaría crear una red neuronal para tic-tac-toe usando tensorflow.
fuente
Creo que deberías familiarizarte con el aprendizaje por refuerzo. En este campo de aprendizaje automático, el agente interactúa con su entorno y después de eso, el agente obtiene alguna recompensa. Ahora, el agente es la red neuronal, el entorno es el juego y el agente puede obtener una recompensa +1 si gana o -1 si pierde. Puede usar este estado, acción, experiencia de recompensa para entrenar al agente. Puedo recomendar las conferencias de David Silver en youtube y el libro de Sutton también.
fuente