Automatización de enemigos con redes neuronales

Clase 19 de 36Platzi CONF 2021

Resumen

La automatización con inteligencia artificial ya está ayudando a crear enemigos, prototipos y agentes para videojuegos en poco tiempo y con muy poco código. Con la guía de Héctor Pulido, backend developer en Platzi con experiencia en videojuegos, conocerás cómo combinar redes neuronales y evolución para acelerar procesos, reducir costos y elevar la calidad sin sacrificar creatividad.

¿Cómo puede la automatización con IA aliviar la crisis de costos en videojuegos?

Los costos suben y los jugadores exigen más. Esto obliga a producir experiencias más grandes y complejas, con riesgo de fallar como pasó con No Man's Sky o Cyberpunk 2077. La respuesta: automatizaciones que generen prototipos rápidos y permitan iterar hasta un resultado aceptable.

¿Qué tecnologías aplicar hoy para crear prototipos con IA?

  • Transfer para acelerar creación de contenidos.
  • Fotogrametría para obtener recursos visuales.
  • Generación de assets con redes neuronales generativas adversarias.
  • Agentes inteligentes para probar y refinar comportamientos.

¿Por qué importa iterar rápido con prototipos?

  • Reduce tiempos de validación de ideas.
  • Permite fallar barato y corregir antes.
  • Libera al equipo para enfocarse en diseño y pulido.

¿Qué es una red neuronal y por qué sirve como estimador universal?

La red neuronal artificial es descrita como la “reina de las funciones”: al cambiar sus parámetros, puede parecerse a cualquier función que imagines. Este poder como estimador universal permite modelar comportamientos complejos, como el de un enemigo o un agente de juego.

¿Cómo se entrena: backpropagation o evolución?

Usualmente se usa backpropagation. Aquí se propone evolución: crear muchas redes con parámetros distintos, evaluar su desempeño y mejorar las mejores con mutaciones y combinaciones.

  • Crear una población de redes con parámetros variados.
  • Evaluar cuáles se comportan mejor.
  • Aplicar mutaciones a las mejores.
  • Combinar redes destacadas.
  • Repetir el ciclo de forma iterativa.

Este proceso imita la evolución descrita por Darwin y permite llegar a automatizaciones funcionales muy rápido.

¿Cómo crear un enemigo o un agente en Unity con esta técnica?

La idea es simple: automatizar con matemáticas para construir un enemigo en poco tiempo. Si usas Unity, Héctor ofrece una librería para crear automatizaciones muy rápido sin programarlo todo desde cero.

¿Cómo funciona el agente en Flappy Bird?

Se diseña una red neuronal que decide si el ave salta o no a partir de entradas clave y un umbral de salida.

  • Entradas: altura del ave, velocidad, lo que tiene enfrente.
  • Salida: si es mayor que 0.5, salta.
  • Si es menor o igual, se queda estática.
  • Supervivencia: el puntaje al morir decide si la red se conserva o se descarta.

Este enfoque demuestra que la automatización no solo funciona en Flappy Bird, sino que escala a distintos géneros.

¿Qué casos de uso muestran valor más allá del ejemplo?

  • Juegos de acción para probar patrones de ataque y defensa.
  • Juegos de carrera para ajustar trayectorias y velocidades.
  • Juegos de peleas para entrenar oponentes adaptativos.
  • Fuera del gaming: coches autónomos o drones.

¿Cuál es el objetivo final con agentes inteligentes?

  • Crear comportamientos útiles en poco tiempo.
  • Iterar hasta alcanzar calidad jugable.
  • Reaprovechar el proceso en distintos proyectos.

¿Te gustaría probar esta forma de automatizar enemigos y agentes con redes neuronales y evolución en Unity? Cuéntame qué juego crearías y qué comportamientos entrenarías primero.