Aprendizaje por refuerzo
Las computadoras están descubriendo cómo hacer cosas que ningún programador podría enseñarles.
Dentro de una sencilla simulación por computadora, un grupo de vehículos autónomos está realizando una maniobra que parece una locura en una autopista virtual de cuatro carriles. Una mitad está tratando de moverse desde los carriles de la derecha, al mismo tiempo que la otra está tratando de pasarse desde la izquierda. Parece el tipo de cosas raras que podría desconcertar a un vehículo autonómo, pero lo manejan con precisión. Estoy viendo la simulación de manejo en la conferencia de Inteligencia Artificial (IA) más grande del año, realizada en Barcelona en diciembre pasado. Lo que es más maravilloso es que el software que controla el comportamiento de los autos no fue programado en el sentido convencional. Aprendió cómo cambiar de carril con elegancia y seguridad simplemente practicando. Durante el entrenamiento, el software de control realizó la maniobra una y otra vez, alterando sus comandos un poco en cada intento. La mayoría de las veces, el traspaso se daba de forma muy lenta y los autos se molestaban entre sí. Pero cuando se lograba de forma fluida, el sistema aprendía a favorecer el comportamiento que lo llevaba a conseguirlo. Este acercamiento, conocido como aprendizaje por refuerzo, está detrás de la manera en que Alphago, una computadora desarrollada por una subsidiaria de Alphabet llamada Deepmind, conquistó el complejísimo jue-
go Go y derrotó a uno de los mejores jugadores humanos en el mundo en un partido de alto perfil el año pasado. Ahora, el aprendizaje por refuerzo podría, pronto, inyectarle más inteligencia a mucho más que juegos. Además de mejorar a los vehículos autónomos, la tecnología puede lograr que un robot agarre objetos que nunca vio antes y puede descubrir la configuración óptima para los equipos de un Data Center. El aprendizaje por refuerzo copia de la naturaleza un principio muy simple que el psicólogo Edward Thorndike documentó hace más de 100 años. Thorndike puso gatos dentro de cajas de las que podían escapar solo presionando una palanca. Luego de caminar mucho en círculos e incontables maullidos, los animales finalmente se paraban sobre la palanca de casualidad. Tras aprender a asociar este comportamiento con el resultado deseado, escapaban con mayor velocidad cada vez. Algunos de los primeros investigadores de inteligencia artificial creyeron que este proceso podría ser reproducido de forma útil en las máquinas. En 1951, Marvin Minsky, un estudiante de Harvard que se convertiría en uno de los padres fundadores de IA como profesor del MIT, construyó una máquina que usó una forma simple de aprendizaje por refuerzo para aprender a imitar una rata que aprendía a navegar un laberinto. La Computadora de Refuerzo de Analogía Neuronal Fortuita (SNARC, por sus siglas en inglés) de Minsky consistía en docenas de tubos, motores y agarres que simulaban el comportamiento de 40 neuronas y sinapsis. Cuando una rata simulada lograba salir del laberinto virtual, la fortaleza de algunas conexiones sinápticas aumentaba, reforzando así el comportamiento subyacente. Hubo pocos éxitos durante las décadas siguientes. En 1992, Gerald Tesauro, investigador de IBM, mostró un programa que usaba la técnica para jugar al backgammon. Se volvió lo suficientemente habilidoso como para rivalizar a algunos de los mejores jugadores humanos, un hito en los logros de la IA. Pero el aprendizaje por refuerzo probó ser difícil de escalar a problemas más complejos. “La gente creía que era una idea cool que en realidad no funcionaba”, explica David Silver, investigador de Deepmind en el Reino Unido y un partidario del aprendizaje por refuerzo. Sin embargo, esa visión cambió dramáticamente en marzo de 2016. Ahí fue cuando Alphago, un programa entrenado usando aprendizaje por refuerzo, destruyó a uno de los mejores jugadores de Go de todos los tiempos, el surcoreano Lee Sedol. Eso fue asombroso, porque es virtualmente imposible construir un buen programa para jugar al Go con programación convencional. El juego no solo es tremendamente complejo, sino que incluso a los jugadores de Go consagrados les cuesta determinar por qué ciertos movimientos son buenos o malos, así que los principios del juego son difíciles de reducir a un código. La mayoría de los investigadores de IA creían que se necesitaría una década para que una computadora pudiera jugar tan bien como un experto humano.
Pelear por una posición
Silver, un británico amable que se fascinó con la inteligencia artificial mientras estudiaba en la Universidad de Cambridge, explica por qué el aprendizaje por refuerzo se volvió tan formidable de forma reciente. Dice que la clave es combinarlo con aprendizaje profundo, una técnica que involucra usar una red neuronal simulada muy grande para reconocer patrones en los datos. El aprendizaje por refuerzo funciona porque los investigadores descubrieron cómo lograr que una computadora calcule el valor que se le debería asignar a, por ejemplo, cada giro correcto o incorrecto que una rata podría hacer para salir del laberinto. Cada valor es almacenado en una tabla y la
computadora actualiza todos estos valores a medida que aprende. Para tareas grandes y complicadas, esto se vuelve impracticable a nivel informático. Sin embargo, en los últimos años, el aprendizaje profundo probó ser muy eficiente para reconocer patrones. De hecho, fue en los juegos donde Deepmind se ganó su nombre. En 2013, publicó detalles de un programa capaz de aprender a jugar varios videojuegos de Atari a un nivel superhumano, lo que llevó a que Google adquiriera la empresa por más de US$ 500 millones en 2014. Estas y otras características, a su vez, inspiraron a otros investigadores y compañías a volcarse al aprendizaje por refuerzo. Un número de fabricantes de robots industriales están probando este acercamiento como una forma de entrenar a sus máquinas a realizar tareas nuevas sin necesidad de programarlas manualmente. Y los investigadores de Google, también una subsidiaria de Alphabet, trabajaron con Deepmind para usar aprendizaje de refuerzo profundo para lograr que sus Data Center sean más eficientes, energéticamente hablando. Es difícil descubrir cómo todos los elementos en un Data Center van a afectar el uso de energía, pero un algoritmo de aprendizaje por refuerzo puede aprender con simulaciones para luego sugerir, por ejemplo, cómo y cuándo operar los sistemas de enfriamiento. Pero el ambiente donde probablemente se note más el comportamiento tan humano del software es en los vehículos autónomos. Los autos sin conductor de hoy suelen titubear en situaciones complejas que involucran interactuar con conductores humanos, como rotondas o frenadas en cuatro carriles. Si no queremos que tomen riesgos innecesarios o provoquen congestionamientos por dudar, necesitarán adquirir habilidades de manejo con más matices, como las que tiene cualquier conductor. El software para moverse en la autopista fue mostrado en Barcelona por Mobileye, una automotriz israelita que hace sistemas de seguridad vehicular usados por docenas de automotrices, incluyendo Tes- la Motors. Luego de proyectar el video, Shai Shalev-shwartz, VP de Tecnología de Mobileye, muestra algunos de los desafíos a los que se van a enfrentar los vehículos autónomos: una rotonda atascada en Jerusalén; una intersección frenética en París; y una escena caótica e infernal de una calle de la India. “Si un vehículo autónomo sigue la ley con precisión, entonces durante la hora pico quizá haya que esperar una hora para cambiar de carril”, dice Shalev-shwartz. Mobileye planea probar el software en una flota de autos en colaboración con BMW e Intel a fines de este año. Tanto Google como Uber aseguran que también están probando el aprendizaje por refuerzo para sus vehículos autónomos. Esta variedad de aprendizaje está siendo aplicado en un número cada vez mayor de áreas, explica Emma Brunskill, profesora asistente de la Universidad de Stanford que se especializa en este enfoque. Y argumenta que es muy adecuada para los vehículos autónomos porque permite “buenas secuencias de decisio- nes”. El progreso avanzaría más lentamente si los programadores tuvieran que codificar de antemano todas esas decisiones en los autos. Pero también hay desafíos para superar. Andrew Ng, científico jefe de la empresa china Baidu, alerta que el enfoque requiere una enorme cantidad de datos y que mucho de sus éxitos se dieron cuando una computadora pudo practicar a través de simulaciones. De hecho, los investigadores todavía están tratando de descubrir cómo hacer funcionar el aprendizaje por refuerzo en situaciones complejas en las que hay más de un objetivo. Mobileye tuvo que retocar su protocolo para que un vehículo autónomo que puede evitar accidentes no sea capaz de causarle uno a otros. Cuando se mira la prueba de traspaso de carril, parece como si la compañía hubiera tenido éxito, por lo menos hasta ahora. Pero, a fines de este año, quizá en una autopista cercana, el aprendizaje por refuerzo tendrá sus pruebas más dramáticas e importantes a la fecha.