¿Pueden aprender los robots? La posibilidad de que puedan tomar decisiones propias sin la intervención de los humanos y aprender de sus acciones es una búsqueda eterna de la robótica, que plantea, por ahora, más preguntas que respuestas.
–Aclaremos que es un laboratorio del Departamento de Computación de la Facultad de Ciencias Exactas de la UBA... no pude ponerlo en la volanta porque era muy largo... –...que es donde se conciben, se piensan, se diseñan, se construyen, crecen, se desarrollan e incorporan diferentes capacidades a robots móviles de distinto tipo, con distintos sensores, con distintos motores, con distintas configuraciones. Esa es toda un área de desarrollo del laboratorio de robótica. Otra área tiene que ver con cómo se dota al robot de todo el software necesario para que pueda llevar adelante distintas tareas.
–Hablemos de la primera de las áreas entonces. –Una línea de investigación que tenemos en el laboratorio tiene que ver con la capacidad de navegación autónoma de los robots móviles. En “navegación” incluimos la exploración del entorno, la construcción de un modelo del mundo (imprescindible para que el robot pueda interactuar con el medio) que se dae a través de mapas y la localización del robot en el propio ambiente.
–¿A qué se refiere cuando habla de entorno? ¿Entorno topológico? –Puede ser un entorno topológico. Por ejemplo, si yo quiero ir de acá a mi casa, no voy a tener un mapa preciso de todas las instancias del entorno que voy a tener que recorrer; lo que voy a hacer, mentalmente, es recordar que existe una parada de colectivos, que yo tengo que ir a esa parada de colectivos, que para ir ahí tengo que salir de la facultad, que luego de tomarme el colectivo tengo que bajarme en determinada parada, etc. Eso es lo que hacemos los humanos. Y también es lo que procuramos que hagan los robots. Y eso es lo interesante. Esa misma metodología se le puede asignar a un robot: existen mapas topológicos, mapas métricos.
–Y existe el GPS. –Sí, claro. Que también se utiliza en robótica, fundamentalmente en entornos abiertos, exteriores, porque en ambientes cerrados no se puede utilizar.
–¿Por qué? –Porque necesita poder “ver” los satélites que envían la información.
–¿Y a dónde apunta todo esto? –Una de las cosas que se busca permanente en la robótica móvil es la autonomía: que los robots puedan hacer cada vez tareas más complejas sin la intervención humana. La capacidad de sensado, de control, de moverse en un entorno desconocido es algo muy interesante y atractivo desde el punto de vista del desarrollo. Por ejemplo, los robots que se mandaron a Marte tuvieron la capacidad de navegar y explorar la superficie marciana sin que un humano lo manejara desde acá. Eso hubiese sido imposible porque el tiempo que tarda en llegar una orden desde la tierra habría hecho que los robots chocaran con las rocas. Ahí hay una aplicación bien concreta. Si uno quiere inspeccionar un lugar que puede estar contaminado por material radiactivo, también es bueno tener un robot que cuente con autonomía para poder tomar decisiones sin intervención humana.
–¿Cómo toma las decisiones? –Lo más interesante es que muchas veces no es el programador el que decide cuál es la acción que va a realizar el robot ante cada situación, sino que el robot puede ir tomando decisiones que va aprendiendo de la propia interacción con el medio. Eso también existe y es toda un área de desarrollo. Es decir que el robot puede aprender.
–Pero el programador, imagino, le pone una función del tipo: “Si hay más que x humedad, salí del lugar”. ¿O el robot puede tomar decisiones por sí mismo? –Sí, puede. De alguna forma, construye una representación del mundo, conoce cuáles son las acciones que puede ejecutar y cuáles las variables que puede incorporar del medio ambiente, y en función de esas dos cosas puede ir mejorando las acciones que puede ir tomando. Básicamente se realiza un esquema de aprendizaje por refuerzo (es el caso del perro de Pavlov), donde uno al robot lo deja que tome acciones y lo premia cuando las tareas que ejecuta son las que se están buscando y se lo castiga cuando las acciones no son las que uno espera. Ese algoritmo se puede ejecutar muchas veces y a medida que se va ejecutando mejoran las decisiones que puede tomar el robot.
–Pero hay un algoritmo que pone usted... –Sí, eso es cierto. También hemos utilizado redes neuronales artificiales para ver si pueden aprender un determinado comportamiento. Si uno quiere que un robot evite obstáculos, puede entrenar determinada red neuronal.
–El asunto de las redes neuronales, ¿no está un poquito en decadencia? Tuvo su boom y ahora parecería ser que... –Como toda nueva área, en sus comienzos parece que va a resolver todos los problemas del universo y luego se lo acota para abordar determinadas cuestiones puntuales. Hoy por hoy, se sabe que las redes neuronales no se pueden aproximar a cualquier función y que, por lo tanto, tienen una aplicación que no es universal (como se creía en sus inicios). Pero sí tiene utilidad para nuestros temas.
–Pareciera ser que las decisiones que toma uno, como ser humano, se basan en un conjunto de estímulos no infinito pero sí muy grande. Por otro lado, pareciera ser que las que toma el robot no contemplan tantas variables. ¿O sí? El sistema por el cual el robot toma decisiones, ¿es parecido al humano? ¿Tiende al humano? –El mundo es muy complejo y uno establece modelos. Cuando uno establece un modelo, lo que hace es acotar las variables.
–Pero el proceso de toma de decisiones, ¿tiende al proceso de toma de decisiones de los humanos? –En realidad, eso hay que verlo en el desarrollo de la historia de la robótica. Si uno tiende a ver cómo fue mejorando la capacidad de autonomía de los robots desde los orígenes hasta hoy en día, de alguna forma puede tener una visión optimista. Los robots van ganando en autonomía y eso es posible porque cuentan con una información del entorno más rica, más capacidad de sensado, más capacidad de procesamiento. Cada vez se parecen más...
–¿Por qué llama a eso “optimista”? –Bueno, porque de alguna forma es lo que estamos buscando: que se acerque al desempeño de un animal vivo en el entorno. Por otra parte, habría que señalar que no está definido cómo toman decisiones los humanos.
–Pero tenemos ciertas intuiciones. Uno podría pensar que el proceso de toma de decisiones en humanos funciona de manera computacional (es decir, que hay determinada cantidad de variables, enorme pero finita, y que en base a esa enorme cantidad de variables se elige) o que funciona de una manera que no puede compararse con la manera computacional de tomar decisiones. Lo que a mí me intriga es si la manera de tomar decisiones de los humanos es una versión complejizada de la manera de tomar decisiones de los robots o si, más bien, es de un tipo completamente diferente. –Uno lo que puede medir, para tratar de ser objetivo, son determinadas capacidades...
–No pido objetividad. Pido una intuición. –Libre albedrío no se le puede atribuir a un robot.
–Pero el libre albedrío nadie sabe lo que es. –Bueno, la capacidad de tener conciencia y de actuar en función de eso. Lo que sí se imita, para que los robots actúen de manera libre, es la aleatoriedad del mundo. Uno necesita que el robot responda a acciones al azar cada tanto para que progrese en su autonomía.
–A ver, este asunto de los robots... Cuénteme qué hace usted.
–Básicamente, en este laboratorio...–Aclaremos que es un laboratorio del Departamento de Computación de la Facultad de Ciencias Exactas de la UBA... no pude ponerlo en la volanta porque era muy largo... –...que es donde se conciben, se piensan, se diseñan, se construyen, crecen, se desarrollan e incorporan diferentes capacidades a robots móviles de distinto tipo, con distintos sensores, con distintos motores, con distintas configuraciones. Esa es toda un área de desarrollo del laboratorio de robótica. Otra área tiene que ver con cómo se dota al robot de todo el software necesario para que pueda llevar adelante distintas tareas.
–Hablemos de la primera de las áreas entonces. –Una línea de investigación que tenemos en el laboratorio tiene que ver con la capacidad de navegación autónoma de los robots móviles. En “navegación” incluimos la exploración del entorno, la construcción de un modelo del mundo (imprescindible para que el robot pueda interactuar con el medio) que se dae a través de mapas y la localización del robot en el propio ambiente.
–¿A qué se refiere cuando habla de entorno? ¿Entorno topológico? –Puede ser un entorno topológico. Por ejemplo, si yo quiero ir de acá a mi casa, no voy a tener un mapa preciso de todas las instancias del entorno que voy a tener que recorrer; lo que voy a hacer, mentalmente, es recordar que existe una parada de colectivos, que yo tengo que ir a esa parada de colectivos, que para ir ahí tengo que salir de la facultad, que luego de tomarme el colectivo tengo que bajarme en determinada parada, etc. Eso es lo que hacemos los humanos. Y también es lo que procuramos que hagan los robots. Y eso es lo interesante. Esa misma metodología se le puede asignar a un robot: existen mapas topológicos, mapas métricos.
–Y existe el GPS. –Sí, claro. Que también se utiliza en robótica, fundamentalmente en entornos abiertos, exteriores, porque en ambientes cerrados no se puede utilizar.
–¿Por qué? –Porque necesita poder “ver” los satélites que envían la información.
–¿Y a dónde apunta todo esto? –Una de las cosas que se busca permanente en la robótica móvil es la autonomía: que los robots puedan hacer cada vez tareas más complejas sin la intervención humana. La capacidad de sensado, de control, de moverse en un entorno desconocido es algo muy interesante y atractivo desde el punto de vista del desarrollo. Por ejemplo, los robots que se mandaron a Marte tuvieron la capacidad de navegar y explorar la superficie marciana sin que un humano lo manejara desde acá. Eso hubiese sido imposible porque el tiempo que tarda en llegar una orden desde la tierra habría hecho que los robots chocaran con las rocas. Ahí hay una aplicación bien concreta. Si uno quiere inspeccionar un lugar que puede estar contaminado por material radiactivo, también es bueno tener un robot que cuente con autonomía para poder tomar decisiones sin intervención humana.
–¿Cómo toma las decisiones? –Lo más interesante es que muchas veces no es el programador el que decide cuál es la acción que va a realizar el robot ante cada situación, sino que el robot puede ir tomando decisiones que va aprendiendo de la propia interacción con el medio. Eso también existe y es toda un área de desarrollo. Es decir que el robot puede aprender.
–Pero el programador, imagino, le pone una función del tipo: “Si hay más que x humedad, salí del lugar”. ¿O el robot puede tomar decisiones por sí mismo? –Sí, puede. De alguna forma, construye una representación del mundo, conoce cuáles son las acciones que puede ejecutar y cuáles las variables que puede incorporar del medio ambiente, y en función de esas dos cosas puede ir mejorando las acciones que puede ir tomando. Básicamente se realiza un esquema de aprendizaje por refuerzo (es el caso del perro de Pavlov), donde uno al robot lo deja que tome acciones y lo premia cuando las tareas que ejecuta son las que se están buscando y se lo castiga cuando las acciones no son las que uno espera. Ese algoritmo se puede ejecutar muchas veces y a medida que se va ejecutando mejoran las decisiones que puede tomar el robot.
–Pero hay un algoritmo que pone usted... –Sí, eso es cierto. También hemos utilizado redes neuronales artificiales para ver si pueden aprender un determinado comportamiento. Si uno quiere que un robot evite obstáculos, puede entrenar determinada red neuronal.
–El asunto de las redes neuronales, ¿no está un poquito en decadencia? Tuvo su boom y ahora parecería ser que... –Como toda nueva área, en sus comienzos parece que va a resolver todos los problemas del universo y luego se lo acota para abordar determinadas cuestiones puntuales. Hoy por hoy, se sabe que las redes neuronales no se pueden aproximar a cualquier función y que, por lo tanto, tienen una aplicación que no es universal (como se creía en sus inicios). Pero sí tiene utilidad para nuestros temas.
–Pareciera ser que las decisiones que toma uno, como ser humano, se basan en un conjunto de estímulos no infinito pero sí muy grande. Por otro lado, pareciera ser que las que toma el robot no contemplan tantas variables. ¿O sí? El sistema por el cual el robot toma decisiones, ¿es parecido al humano? ¿Tiende al humano? –El mundo es muy complejo y uno establece modelos. Cuando uno establece un modelo, lo que hace es acotar las variables.
–Pero el proceso de toma de decisiones, ¿tiende al proceso de toma de decisiones de los humanos? –En realidad, eso hay que verlo en el desarrollo de la historia de la robótica. Si uno tiende a ver cómo fue mejorando la capacidad de autonomía de los robots desde los orígenes hasta hoy en día, de alguna forma puede tener una visión optimista. Los robots van ganando en autonomía y eso es posible porque cuentan con una información del entorno más rica, más capacidad de sensado, más capacidad de procesamiento. Cada vez se parecen más...
–¿Por qué llama a eso “optimista”? –Bueno, porque de alguna forma es lo que estamos buscando: que se acerque al desempeño de un animal vivo en el entorno. Por otra parte, habría que señalar que no está definido cómo toman decisiones los humanos.
–Pero tenemos ciertas intuiciones. Uno podría pensar que el proceso de toma de decisiones en humanos funciona de manera computacional (es decir, que hay determinada cantidad de variables, enorme pero finita, y que en base a esa enorme cantidad de variables se elige) o que funciona de una manera que no puede compararse con la manera computacional de tomar decisiones. Lo que a mí me intriga es si la manera de tomar decisiones de los humanos es una versión complejizada de la manera de tomar decisiones de los robots o si, más bien, es de un tipo completamente diferente. –Uno lo que puede medir, para tratar de ser objetivo, son determinadas capacidades...
–No pido objetividad. Pido una intuición. –Libre albedrío no se le puede atribuir a un robot.
–Pero el libre albedrío nadie sabe lo que es. –Bueno, la capacidad de tener conciencia y de actuar en función de eso. Lo que sí se imita, para que los robots actúen de manera libre, es la aleatoriedad del mundo. Uno necesita que el robot responda a acciones al azar cada tanto para que progrese en su autonomía.
1 comentarios:
La nota es muy buena y me gustó particularmente la veta que toma en el final. Particularmente sobre eso, le recomiendo charlar con Mariano Sigman del laboratorio de neurociencia de la FCEN. Fue docente mio durante el cuatrimestre que acaba de finalizar y creo que puede aportar una visión muy intersante.
Publicar un comentario