Estoy tratando de probar y escribir una IA de ajedrez. ¿Hay algo que pueda usar en .NET Framework (o tal vez incluso en un programa de ajedrez escrito en Lua) que me permita escribir y probar una IA de ajedrez sin preocuparme por hacer realmente una partida de ajedrez?Programando un ajedrez AI
Respuesta
No estoy seguro de lo que está tratando de hacer.
Si está buscando una GUI de ajedrez lista para usar, puede usar WinBoard. Está completamente desacoplado del (los) motor (es) de ajedrez subyacente (s), gracias a un protocolo de comunicación establecido. Su motor de ajedrez se convierte así en una aplicación de consola que intercambia comandos con la GUI.
Una alternativa más moderna siguiendo el mismo concepto es UCI. Una GUI que admite UCI es Arena.
No estoy seguro de cómo no estoy seguro, aunque revisaré esos enlaces, ¡gracias! – RCIX
Lo siento, no fue sarcástico. Simplemente prefiera el término "gui de ajedrez" en lugar de "juego de ajedrez", que es bastante ambiguo. Por cierto, http://www.gamedev.net/reference/programming/features/chess1/ es un muy buen tutorial sobre la construcción de un motor de ajedrez, en caso de que no lo sepas. – AndreaG
+1 para los grandes consejos, y +1 para el enlace en tu comentario. –
Aquí hay algunos tableros de ajedrez de fuente abierta/juegos que se ejecutan en Windows.
- Utilice uno de los juegos de ajedrez de código abierto.
- Calcule la interfaz que decide el próximo movimiento de la computadora.
- Implemente su propia IA usando la misma interfaz y elimine la parte de la interfaz de usuario.
- Compara tu IA con la incluida.
- Diversión!
Escribo un blog de ajedrez de computadora que lo lleva a través de todos los pasos de escribir un motor de ajedrez en C# desde cero, incluye una sección de enlaces de ajedrez de computadora y un kit de partida de ajedrez.
Adam Berent
Buen trabajo. ¿Ha considerado convertir la clase BoardEvaluation en una interfaz (IBoardEvaluation)? Los desarrolladores podrían conectar sus propias clases de evaluación en. –
No es una mala idea, gracias. –
- 1. Programación de ajedrez (sin AI) - mueve la validación
- 2. Ajedrez optimizaciones
- 3. Programando experimentos
- 4. Creación de un juego de mesa AI
- 5. Programando dinámicamente una grilla que consta de 64 botones (8x8)
- 6. Diseñando objetos para un juego de ajedrez en Java
- 7. Programando primero, segundo marco?
- 8. ¿Cómo puedo modelar un tablero de ajedrez cuando programo una computadora para jugar al ajedrez?
- 9. Programando la aplicación P2P
- 10. Programando VHDL en Linux?
- 11. C# XNA: ¿Motor AI?
- 12. Pool Billiard AI
- 13. AI conectable en Haskell
- 14. AI/problema de inferencia
- 15. C# AI Library
- 16. Tablero de ajedrez JavaScript gratuito
- 17. MSTest + ajedrez en VS 2010
- 18. Juego de ajedrez en JavaScript
- 19. Programando redes neuronales con Python?
- 20. Java - Programando con aserciones preguntas
- 21. Java - Programando una tarea diaria
- 22. RTS AI: ¿por dónde empezar?
- 23. Vuelo algoritmo de juego AI?
- 24. Gomoku array-based AI-algorithm?
- 25. ¿Cómo hacer un tablero de ajedrez en numpy?
- 26. Diseño orientado a objetos para un juego de ajedrez
- 27. Cómo hacer un tablero de ajedrez de JButtons
- 28. ¿Existe algo así como AJEDREZ para Java?
- 29. Creación de GUI de ajedrez en WPF
- 30. Programando texto parcialmente parcial en un campo de entrada
Buena suerte! Escribir un buen motor de ajedrez es notoriamente difícil. –