Actualmente estoy haciendo un proyecto que consiste en crear una IA para jugar al juego Gomoku (es como un tic tac toe, pero se juega en un tablero de 15 * 15 y requiere 5 seguidos para ganar). Ya he implementado con éxito una IA de tic tac toe perfecta usando Q learning y teniendo estados / acciones del juego almacenados en una tabla, pero para un tablero de 15 * 15 los posibles estados del juego se vuelven demasiado grandes para implementar este proyecto.
Mi pregunta es, ¿debería usar redes neuronales o algoritmos genéticos para este problema? Y más específicamente, ¿cómo debo implementar esto?
Respuestas:
Para gomoku, parece un poco exagerado usar redes neuronales o el algoritmo genético, ya que ambos toman un tiempo y, la mayoría de las veces, no van como lo desean. El árbol de juego de Gomoku es bastante grande, pero puedes obtener una IA decente de minimax, poda de árbol de juego y una buena función heurística (que incluye contar medio y completo 2s, 3s, 4s, ... etc.) en lugar del mapeo todo el espacio
Si no está familiarizado con la poda alfa beta y minimax, consulte https://www.cs.cornell.edu/courses/cs312/2002sp/lectures/rec21.htm
Si realmente desea utilizar redes neuronales o algoritmos genéticos, puede hacerlo para la experiencia de aprendizaje. Con respecto a las redes neuronales, una forma de hacerlo es la siguiente:
Por supuesto, esta es solo una forma, y primero necesitarías encontrar los datos del juego.
Una nota al margen, la aplicación del algoritmo genético puede ocurrir de varias maneras, como la optimización de parámetros en una red neuronal como se mencionó anteriormente o la búsqueda en el árbol del juego, ¡así que asegúrese de tener claro cómo define la configuración del problema con él! Lo mismo ocurre con formas alternativas de aplicar una red neuronal.
Finalmente, es útil saber que gomuku está resuelto. Consulte /programming/6952607/ai-strategy-for-gomoku-a-variation-of-tic-tac-toe para conocer los pensamientos e ideas de los demás.
fuente