Inteligencia artificial para videojuegos

La Inteligencia Artificial (IA) es uno de los sueños más grandes la Humanidad: ¡conseguir crear máquinas inteligentes, que nos ayuden a resolver nuestros problemas y realizar nuestras tareas! En 2017 las revistas Time y Science le dedicaron monográficos al tema, el cual sigue acaparando el interés de la sociedad, especialmente con el auge del aprendizaje máquina.

En el Grado en Desarrollo de Videojuegos de la Facultad de Informática de la UCM se imparte una asignatura con este nombre, en el que se estudian y aplican las principales técnicas para conseguir tener IA en videojuegos de diversos géneros y características.

Evaluación

La forma de evaluar esta asignatura es valorando una serie de factores: la participación individual (10%), la realización de prácticas en grupo (30%) y la realización de un proyecto teórico-práctico final, a título individual (60%).

La participación suele consistir en responder preguntas dicha en clase (suele ser 1 por lección) a través de un formulario de Google Form. Por agilidad, no es necesario identificarse y es posible añadir comentarios… que sería interesante hacer públicos, o fomentar una mayor proactividad pidiendo que se compartan opiniones e información en el foro del campus virtual, en redes sociales o creando páginas o videos para Narratech.

Las prácticas en grupo consisten en realizar un prototipo de IA para un determinado proyecto base en Unity, sobre cuyas contribuciones individuales el profesor realiza un seguimiento en GitHub. En lugar de hacer una «entrega» lo interesante es ir evaluando el trabajo (código, pero sobre todo funcionalidad) en el propio laboratorio, y que el profesor tenga acceso a donde se almacenan los materiales finales. Sería ideal poder corregirlas semiautomáticamente (con test funcionales, pruebas leídas de fichero… o al menos que el ejecutable sea autoexplicativo y aporte métricas de todo lo que ocurre, junto con ese guion que usa el profesor para la corrección y sus resultados esperados). Esto ayudaría a juzgarlas con el máximo rigor y eficacia, aunque al ser «jugables», tener una parte de diseño de videojuegos, no es un trabajo tan objetivo. De hecho sería interesante personalizarlas, no sólo de año en año, sino proponer restricciones o temáticas variantes según número de grupo, aparte de ciertos grados de libertad en la programación. Porque tras recibir las calificaciones, es posible hacer estas prácticas públicas.

El proyecto final debe ir más allá de un «aglutinar» las prácticas y adentrarse en cuestiones más complejas de las que ya se hayan tratado en estas. Conviene publicar o comentar con el profesor las ideas antes, para no repetirlas.

Referencias