Ubisoft aplica inteligencia artificial a su código



Compartir en:

Facebooktwittergoogle_plus

El creador de juegos de video, Ubisoft, ha anunciado su “Commit Assistant”, un sistema de IA que puede hallar errores casi antes de que el programador los haga. ¿Es éste el futuro de la programación?

Hacer programas que generen código automático para un sinfín de labores siempre ha sido el gran sueño de los programadores. Imaginen dar la idea de algo que queremos que la computadora haga y que ésta, a través de un software muy complejo y sofisticado, salga con el programa resuelto. Sin embargo, aunque esto aún no es posible de hacer, hay interesantes esfuerzos para minimizar los errores de los programadores y así hacerles la vida más sencilla.

Y para ello la Inteligencia Artificial (IA) podría ser la solución. Pero en lugar de pensar en reemplazar a los programadores, lo que puede hacerse ya hoy en día es asistirlos de forma automática usando IA. Y la idea entonces es que un asistente automático esté observando el código que está siendo escrito por el programador para que, de una vez, decida si tiene fallas.

Ubisoft tiene ahora algo que han bautizado como “Commit Assistant”, que parece ser -para variar- una red neuronal que puede ser entrenada usando su propia biblioteca de software y así aprender de los errores (bugs) que ha encontrado y corregir los problemas de inmediato.

En el video no se indica cómo es que el software trabaja. Se menciona el aprendizaje reforzado pero qué acciones y recompensas se tienen está lejos de estar claro. Vamos, que la idea parece buena y que quizás comercialmente sea una buena promoción, pero de ahí a que se tenga un sistema que haga lo que el video promete tampoco parece demasiado claro. El considerar que ciertas partes del código son como “firmas” con bugs asociados parece muy simplista y además, tampoco se indica qué clase de bugs son los que se detectan. Por ejemplo, podría ser que el programador use una variable que no declaró. Eso el compilador lo notará, pero bien el asistente podría avisarle al programador e incluso, insertar automáticamente la variable que no declaró, pero ese tipo de errores no es de los que hablamos.

El sistema ha sido desarrollado como parte del programa La Forge de Ubisoft, en donde se involucra a investigadores universitarios para que colaboren. En este caso, la universidad asociada es la de Concordia, cuya base está en Montreal. Pero más allá de eso no hay detalles.

Hay que señalar que lenguajes como Prolog, por ejemplo, son lo que se denominan en muchos sentidos “probadores de teoremas” y esto tiene que ver con una lógica que se resume en el algoritmo de Robinson para unificar términos y ver si las proposiciones (los predicados de un programa en Prolog, es decir, sus instrucciones), cumplen con esta lógica o no. Este esquema parece ser más interesante que la propuesta de la red neuronal por el tipo de problema que se está atacando. Sin embargo, hay que reconocer que mientras no se tenga más información del sistema, todo esto es una especulación educada y nada más.

CON INFORMACIÓN DE UNOCERO

Facebooktwittergoogle_plus
Publicado por Bryan Cuenca
Fecha de publicacion:marzo 12, 2018 11:20 am

Deja tu comentario

Tu dirección de correo electrónico no será publicada.

*

Mas

Siguenos en Redes Sociales

Facebooktwittergoogle_plusrssyoutube

Periodico la republica

octubre 2018
D L M X J V S
« Sep    
 123456
78910111213
14151617181920
21222324252627
28293031  

Anúnciate

Anúnciate con nosotros, escríbenos a: [email protected]