El tablero tiene un tamaño de 10×10. La flota en mi versión incluye:
Regla clave: No está permitido que los barcos se toquen ni por los lados ni por las esquinas, dejando siempre una casilla de agua alrededor.
Para programar la inteligencia artificial de la CPU he seguido las ideas del artículo de Rodin et al. (1988), con ajustes necesarios a mi flota y reglas.
Cuando la CPU logra un impacto:
Los barcos pequeños son los más difíciles de encontrar. Si al final quedan destructores sin localizar, la CPU aplica un patrón de limpieza (“mop-up”) diseñado para cubrir de manera óptima barcos de 2 casillas.
Para defenderse, la CPU coloca los barcos siguiendo estrategias perimetrales y rotando entre partidas, siempre con corona de agua alrededor para cumplir la regla de no contacto.
Rodin, E. Y., Cowley, J., Huck, K., Payne, S., & Politte, D. (1988). Developing a strategy for "battleship". Mathematical and Computer Modelling, 10(2), 145-153. DOI