Está en la página 1de 8

Robotica cognoscitiva y aprendizaje automatico

Antonio Berlanga, Daniel Borrajo, Fernando Fern


andez,
Ram
on Garc
a-Mart
nez (*), Jos
e M. Molina, y Araceli Sanchis

Universidad Carlos III de Madrid, Avda. de la Universidad, 30, 28911 Leganes (Madrid). Spain
email: faberlan,dborrajo,molinag@ia.uc3m.es, ernand@grial.uc3m.es,
rmg@itba.edu.ar, masm@inf.uc3m.es
(*) Escuela de Postgrado, Instituto Tecnologico de Buenos Aires,
Madero 399, (1106) Buenos Aires, Argentina
Keywords: Aprendizaje autom
atico, robotica cognoscitiva, plani cacion
El mundo real para los robots autonomos es dinamico e impredecible. Esto
causa que, para la mayor parte de los dominios, tener una teora del dominio (modelo)
perfecta de como afectan las acciones del robot al entorno es un ideal. El enfoque del grupo
de investigacion ScaLab (Laboratorio de Sistemas Complejos Adaptativos) de la Universidad
Carlos III de Madrid es la integracion de tecnicas de plani cacion de tareas con distintos
metodos de aprendizaje automatico. Las metas de dichos metodos de aprendizaje varan desde
el aprendizaje de modelos del entorno para realizar plani cacion reactiva, hasta la adquisicion
automatica de heursticas que controlen plani cadores deliberativos. Desde la perspectiva de
plani cacion, tampoco creemos que se pueda resolver el problema de la robotica autonoma
utilizando solo reaccion o deliberacion. Por tanto, muchos de nuestros enfoques estan basados
en la integracion de diferentes tipos de plani cadores.

ABSTRACT.

1 Arquitectura general
Existen dos perspectivas mayoritarias entre los diferentes tipos de arquitectura para el control de robots autonomos a lo largo de los ultimos a~nos. Por un lado se encuentran aquellas
propuestas, englobadas en lo que se denomina arquitectura reactiva, que proponen la consecucion de metas complejas por parte del robot basandose unicamente en un conjunto de
reacciones simples. Estas reacciones simples reciben distintos nombres: instintos, modulos,
agentes, agencias, controladores o comportamientos.
La otra propuesta engloba aquellas arquitecturas mas clasicas dentro del campo de la Inteligencia Arti cial, que postulan la necesidad de tecnicas de razonamiento a mas largo plazo
sobre un modelo del mundo. Este tipo de arquitectura, con un modulo de alto nivel que
toma las decisiones a largo plazo, obliga a que el robot tenga una representacion interna del
mundo donde realiza las acciones. El proceso de razonamiento a alto nivel trabaja sobre
resultados intermedios sobre dicha representacion, siendo esta la unica manera posible de
solucionar problemas complejos.
En cualquiera de los dos casos existe una tercera perspectiva que trabaja con el problema de
la integracion de multiples robots para lograr la realizacion de metas complejas. El aspecto
cooperativo, dado un sistema multiagente de robots, aparece en los dos tipos de arquitectura
como un tercer nivel encargado de los aspectos de comunicacion. En la Figura 1 se presenta
una arquitectura que permite integrar en una sola las tres propuestas anteriormente comentadas.
La arquitectura puramente reactiva no necesita de ningun otro nivel y la actuacion nal del
robot se basa en la importancia para cada situacion de la funcion que se puede ejecutar.

Comunicacin

Agentes

Planificacin
Clasica

operadores

Planificacin
Reactiva

habilidades
plan

accin

Controlador
sensores

accin

Entorno

Figura 1: Arquitectura general de control.


Existe una relacion dada entre las acciones basicas de modo que una accion puede bloquear
a otra e impedir su ejecucion. Por ejemplo, si consideramos un robot movil que tiene dos
acciones posibles: evitar obstaculos y seguir un objeto, cuando la situacion del entorno es
tal que la funcion de evitar tiene que ser ejecutada, esta bloquea automaticamente la accion
de seguir.
La arquitectura de alto nivel distingue, al menos, dos niveles de control. El nivel mas alto
realiza el razonamiento a largo plazo, describiendo un plan para alcanzar la tarea compleja
que se desea realizar a base de ir dividiendola en sub-acciones mas sencillas, y se encarga
de que cada una de estas sub-acciones alcanza el sub-objetivo que se ha dispuesto, es decir,
realiza la monitorizacion de la ejecucion del plan. El nivel mas bajo se encargara de la
realizacion de las tareas mas sencillas, resolviendo los problemas mas inmediatos con los que
se puede encontrar el robot y que no requieren de una plani cacion.
Las distintas arquitecturas de control desarrolladas di eren en el peso espec co dado a cada
uno de los niveles en los casos mas extremos constan de un unico nivel. El alto nivel para
poder razonar necesita de una representacion detallada del entorno en el que se va a mover.
Esta representacion es el mayor problema al que se enfrenta pues, si solo se considera la
existencia del alto nivel, es necesario recurrir a la replani cacion cada vez que el entorno se
ha modi cado y di ere de la representacion interna del robot.

2 Lope. Plani cacion, ejecucion y aprendizaje


En entornos desconocidos, los sistemas autonomos deben ser capaces de descubrir como sus
acciones afectan al entorno a partir de la observacion. En los sistemas clasicos de plani cacion, ya sea deliberativa (de alto nivel) o reactiva (de bajo nivel), esas descripciones se
denominan operadores (o habilidades) y se suelen pre-programar. En muchos casos, no es
posible anticipar como se van a comportar los sistemas autonomos, como es el caso de misiones espaciales. En ese tipo de entornos, es necesario que el sistema se adapte gradualmente
al entorno.
El objetivo del trabajo en Lope1 es el estudio y construccion de sistemas capaces de, partiendo de conocimiento nulo: auto-proponerse metas; establecer planes para alcanzar dichas
1 lope

viene de las siglas en ingles de

Learning by Observation in Planning Environments.

metas; ejecutar los planes; y aprender como afectan las acciones del robot al entorno (operadores) a partir de las desviaciones producidas al ejecutar las acciones de los planes [GarcaMartnez and Borrajo, 1997]. La arquitectura se muestra en la gura 2.
Comunicacin

Agentes
(Ci,A,Cf,P,K,U)
Aprendizaje
operadores

Planificacin
Clasica
Planificacin
Reactiva

habilidades
plan

accin

observaciones

(Si,A,Sf)

utilidades U
Controlador

sensores

accin

Entorno

Figura 2: Arquitectura de Lope.


Al principio, Lope no tiene una descripcion de lo que ocurre cuando el sistema autonomo que
controla (por ejemplo, un robot) ejecuta sus posibles acciones. Por tanto, inicialmente, actua
aleatoriamente (selecciona que accion ejecutar aleatoriamente). Cada vez que ejecuta una
accion, el controlador le pasa al modulo de aprendizaje la siguiente informacion: situacion
anterior a ejecutar la accion (Si ); accion que ejecuto (a); situacion que percibio en sus
sensores despues de la ejecucion de la accion (Si ); y la utilidad de dicha situacion (U ). La
utilidad, que proporciona normalmente el entorno, da una idea de como de cerca esta el
sistema de la meta. Se puede pensar en la utilidad en terminos de refuerzo de los sistemas
de aprendizaje por refuerzo [Watkins, 1989] o de distancia a objetivo.
Con cada una de esas unidades de experiencia, el modulo de aprendizaje construye un operador, que consiste en una tupla con los siguientes componentes:
 Un conjunto de condiciones Ci que se tienen que cumplir en una determinada situacion
para que sea ejecutada una accion. Estas condiciones se generan por generalizacion y
especializacion de las situaciones iniciales percibidas al ejecutar una misma accion.
 La accion a ejecutar, a.
 Un conjunto de condiciones Cf que se cumplen despues de ejecutar la accion en situaciones que cumplan las condiciones Ci. Tambien se obtienen por generalizacion o
especializacion de las situaciones nales observadas.
 El n
umero de veces P que, dado que se observa una situacion que cumple las condiciones
Ci, ejecutando la accion a, se obtiene una situacion que cumple las condiciones Cf .
 El n
umero de veces K que, dado que se observa una situacion que cumple las condiciones Ci , se ha ejecutado la accion a. P y K sirven para estimar la probabilidad de
exito de los planes.
 La maxima utilidad U obtenida por la ejecucion de la accion en situaciones que
cumplan las condiciones iniciales.
En cuanto el sistema comienza a tener operadores, ya puede utilizarlos para establecer planes
de accion no aleatorios. Para ello, selecciona una meta (situacion con una alta utilidad
esperada) y realiza una busqueda hacia atras para encontrar una secuencia de acciones, tales
que permitan llegar desde la situacion actual observada a una situacion en la que se cumplan
las metas. Si se obtiene un plan con una probabilidad estimada de exito por encima de un

umbral, se comienza a ejecutar (se ejecutan una a una las acciones del plan). El proceso
de ejecucion termina porque se consigue la meta o hay un fallo en la ejecucion (la situacion
observada por la aplicacion de una accion no cumple con las condiciones Cf del operador).
En cualquiera de los dos casos, se vuelve a repetir el proceso de plani cacion y ejecucion.
Como se ha dicho anteriormente, el proceso de aprendizaje se activa con la ejecucion de cada
accion de los planes.
En [Garca-Martnez and Borrajo, 1998] se generaliza la idea a multiples agentes, permitiendo
la comunicacion de los operadores aprendidos por cada uno, de forma que se mejora el
comportamiento del sistema.

3 El Modelo VQQL
Entre las tecnicas de aprendizaje automatico aplicadas a robotica que han demostrado
mejores resultados se encuentra el aprendizaje por refuerzo, que tiene como uno de sus
principales algoritmos a Q-Learning [Watkins, 1989]. El objetivo de estos algoritmos es
aprender una poltica de accion que para cada estado del entorno identi que cual es la mejor
accion a ejecutar para conseguir un objetivo. Uno de los principales inconvenientes de estas
tecnicas se produce cuando se tratan dominios continuos o de gran tama~no. Estos inconvenientes vienen dados por dos vertientes. Por un lado, los dominios de gran tama~no implican
un uso muy ine ciente de la experiencia que se obtiene del entorno. Por otro lado, implican
grandes requisitos de memoria para almacenar las tablas estado-accion.
Las soluciones a este problema se engloban en las denominadas tecnicas de generalizacion [Moore,
1994, Lin, 1993], entre las que se encuentra el modelo VQQL [Fernandez et al., 1999]. Dicho
modelo, que permite adquirir habilidades en dominios continuos o de gran tama~no mediante
la obtencion de una representacion discreta y peque~na de esos dominios, se basa en dos fases
fundamentales:
Comunicacin
Planificacin
Clsica

Agentes
operadores

Planificacin
Reactiva

habilidades

estado discreto

plan

accin

Q-Learning

estado continuo

VQ

Controlador
dominio reducido

sensores

accin

dominio de
gran tamao

GLA
refuerzo

Entorno Continuo y/o de Gran Tamao

Figura 3: Arquitectura de vqql.


1. Obtener una representacion discreta y reducida del entorno de un agente, aplicando
tecnicas de cuanti cacion vectorial, concretamente el Algortimo de Lloyd Generalizado
(GLA) [Lloyd, 1982].
2. Aprender una poltica de accion mediante el algoritmo Q-Learning, utilizando como
dominio la representacion aprendida en la fase anterior.

En la gura 3 se muestra como se integra este modelo en el esquema de plani cacion que
se presenta en este artculo. El modulo GLA es el encargado de obtener la representacion
reducida del entorno, mientras que el modulo VQ realiza las traducciones entre los estados
del mundo real y el reducido. Q-Learning aprovecha esta representacion para generar la
tabla de estados-acciones que implementa una habilidad concreta.

4 Sistemas Clasi cadores aplicados a robotica


Cuando se estudia un problema reactivo, habitualmente el problema se encuentra inmerso en
el area de la robotica. En el entorno de la robotica se entiende por reaccion o comportamiento
reactivo aquella decision que se toma unicamente en funcion de los datos aportados por el
entorno en ese momento [Brooks, 1991]. En este sentido no existe una estrategia compleja
en el control, no hay ningun tipo de plan que se haya preestablecido de antemano. La
aplicacion de los Sistemas Clasi cadores (SC) a este tipo de problemas se entiende como
el aprendizaje de un conjunto de reglas que permiten al robot realizar una determinada
tarea [Booker et al., 1989]. Se puede observar que los clasi cadores en su de nicion clasica
no son totalmente reactivos ya que la decision se produce tras la activacion de multitud de
reglas que se encadenan en los distintos ciclos internos de manera que la salida del SC es
una decision elaborada que no depende unicamente de la entrada en ese momento. Ademas
de esta consideracion teorica la puesta en marcha de sistemas reales mediante clasi cadores
tiene el problema del tiempo de ejecucion de los ciclos internos del SC, ya que mientras
encadena reglas el SC esta ciego al entorno pero al mismo tiempo el sistema sigue actuando
en ese entorno y lo esta modi cando segun la salida anterior del SC.
Se ha dise~nado y probado un Sistema Clasi cador Reactivo [Molina et al., 1998], SCR, que
adapta la estructura de los clasi cadores para permitir este mecanismo; as, la parte de
mensaje de los clasi cadores, tendra un espacio vaco reservado para incluir esta informacion
sobre el entorno. De esta manera, existe en el clasi cador una parte del mensaje que resulta
inecesaria para la ejecucion tradicional mediante ciclos internos, pero que permite la inclusion
de informacion externa entre los ciclos internos, si tiene sentido seguir llamandolos de este
modo, puesto que ahora todos los ciclos son externos ya que necesitan informacion externa
al Sistema Clasi cador. As, cuando los mensajes llegan a la lista de mensajes, esta parte se
completa con el mensaje del entorno correspondiente, en lo que sera un ciclo interno del SC
tradicional. En resumen, se trata de generar la lista de mensajes mediante un mecanismo
de fusion.
Mediante este procedimiento, se permite al SC encadenar clasi cadores, como si de ciclos
internos se tratara, al situar en la lista de mensajes informacion de los clasi cadores que se
han disparado anteriormente. Al mismo tiempo, en cada ciclo, la inyeccion de informacion
exterior permite la activacion de clasi cadores en funcion de la situacion actual del entorno,
es decir, que "reaccionan" al entorno. Por lo tanto el encadenamiento y la reactividad se
llevan a cabo en cada ciclo de decision, pero este funcionamiento obliga a un encadenamiento de reglas permanente. En este sentido el sistema debera aprender una lista encadenada
de reglas, desde la primera hasta la ultima, la cual tendra distintas posibilidades en funcion de los valores del entorno. Evidentemente, no es ese el funcionamiento deseado para
un SC ya que los encadenamientos de reglas tienen una longitud determinada, no pre jada
y variable. En el caso de los SC tradicionales, esta longitud viene predeterminada por el

dise~nador del Sistema Clasi cador al jar el numero de ciclos internos. En el SCR se podra
haber adoptado una alternativa similar a esta, pero parece mucho mas logico dejar que sea
el propio aprendizaje del sistema el que determine cuando debe parar ese encadenamiento.
Para romper el encadenamiento debera ejecutarse una regla que no considerara las reglas
ejecutadas en el ciclo anterior. Para ello, es necesario que se coloque en la lista un mensaje que contenga unicamente informacion del entorno y que por lo tanto, active reglas que
unicamente consideran informacion del entorno (no de reglas que se han disparado anteriormente), rompiendo el ciclo de encadenamiento de las reglas. La arquitectura se muestra en
la gura 4.
Communication
Classic
Planning

Agents
operators

Reactive
Planning

skills
plan

action

Learning

reinforcement

Controller
sensors

action

Environment

Figura 4: Arquitectura del sistema clasi cador.

5 Co-evolucion de controladores reactivos


Siguiendo con la arquitectura presentanda en la Figura 4, la utilizacion de tecnicas geneticas
presenta la ventaja de su facil aplicacion debido a la sencillez de los algoritmos, pero por otra
parte presentan el problema de sobreadaptacion. Para problemas en los que se busca una
solucion general, caso de la navegacion autonoma, es fundamental encontrar una solucion que
no dependa de los ejemplos de aprendizaje, es la misma situacion del aprendizaje supervisado
en redes neuronales. El entorno real en el que un robot debe moverse es cambiante, por lo
que su sistema de control debe, si es muy espec co, modi carse continuamente. Para evitar
esta revision continua, otra estrategia es la de dotar al sistema de control de navegacion de la
maxima generalidad posible. El problema que se plantea es el de como utilizar una tecnica de
computacion evolutiva que obtiene soluciones muy espec cas para aprender una estrategia
de control de navegacion de un robot autonomo que requiere de una solucion generalizada.
Es claro que los metodos de computacion evolutiva requieren modi car su procedimiento. Una extension importante y prometedora es la de introducir una dinamica coevolutiva, [Paredis, 1995]. La dinamica depredador-presa o huesped-parasito ha sido introducida
en la computacion evolutiva para mejorar el rendimiento de las diferentes tecnicas, especialmente cuando se trata de abordar problemas de generalizacion, [Hillis, 1992]. Tiene la
ventaja de que la tecnica genetica utilizada requerira menor cantidad de informacion del
dominio del problema pero el inconveniente de necesitar dos sistemas enfrentados que aprendan simultaneamente, as como de algun mecanismo para evitar los puntos oscilantes que
estanquen el aprendizaje, [Rosin and Belew, 1997]. Teoricamente, el metodo de aprendizaje

realiza una extraccion de informacion del entorno, los ejemplos de aprendizaje, esa capacidad
de extraccion depende de la \inteligencia" del sistema que aprende.
En terminos del problema de navegacion los dos sistemas que van a evolucionar son por
un lado el controlador de movimientos del robot y por otro el entorno fsico en el que va
a desenvolverse. Como controlador se ha utilizado una red neuronal con 5 entradas que se
corresponden con cinco sensores del robot, tres de proximidad frente a objetos del entorno,
un sensor de distancia a una fuente de luz y el ultimo sensor mide el angulo de deriva del
sensor distancia a la fuente de luz. La red neuronal tiene dos salidas que se corresponden
con la velocidad instantanea que se le comunican a cada una de las dos ruedas del robot.
Encontrar los pesos de la red es el objetivo del metodo. Los pesos adecuados resuelven el
problema de navegacion, haciendo posible que el robot se mueva por un espacio cerrado
evitando chocar con los objetos, dirigiendose hacia un punto luminoso. Los entornos son
disposiciones diferentes de objetos y posiciones diferentes de partida del robot en un espacio
cerrado por el que puede moverse.
El esquema general de funcionamiento del proceso evolutivo es el siguiente [Molina et al.,
1997]:
1. Generar aleatoriamente una poblacion de controladores.
2. Para cada controlador asociar una poblacion de entornos generados la primera vez
aleatoriamente.
3. Calcular el valor de adecuacion de los controladores.
4. Calcular el valor de adecuacion de los entornos.
5. Aplicar los operadores geneticos sobre los controladores para obtener una nueva poblacion
de controladores.
6. Aplicar los operadores geneticos sobre los entornos de la poblacion asociada de un
controlador para obtener una nueva poblacion. El proceso se repite para todos los
controladores.
7. Volver al punto 3.
El proceso debera evitar dos problemas: la evolucion asimetrica de la capacidad de uno
los sistemas y la oscilacion en el proceso de aprendizaje. El primer problema se produce
cuando uno de los sistemas ha conseguido una gran capacidad, el otro sistema es incapaz
de aprender de el y es invariablemente superado. Sera necesario disponer de un mecanismo
de "involucion" que permita empeorar el sistema que ha obtenido una gran ventaja. Este
mecanismo puede producir el segundo problema, un sistema mejora signi cativamente frente
a su contrario, por lo que en las sucesivas etapas involucionara, pero puede que el sistema
contrario encuentre la forma de mejorar y le supere con lo que debera involucionar y as
inde nidamente. La solucion a estos problemas consiste en disponer de otro mecanismo
adicional que suaviza los saltos evolutivos.

6 Conclusiones
En este artculo se han presentado varios enfoques de aprendizaje automatico aplicado a la
plani cacion y ejecucion de sistemas roboticos. Se ha pretendido realizar una exposicion
comun sirviendo de nexo de union una misma arquitectura de plani cacion, ejecucion y
aprendizaje.

Referencias
[Booker et al., 1989] L. Booker, D.E. Goldberg, and J.H. Holland. Classi er systems and genetic
algorithms. Arti cial Intelligence, pages 235{282, 1989.
[Brooks, 1991] Richard A. Brooks. Intelligence without representation. Arti cial Intelligence,
47:139{159, 1991.
[Fernandez et al., 1999] Fernando Fernandez, Daniel Borrajo, and Vicente Matellan. Vqql: A model to generalize in reinforcement learning. In Susanne Biundo and Maria Fox, editors, Preprints
of the Fifth European Conference on Planning, ECP'99, pages 385{386, September 1999.
[Garca-Martnez and Borrajo, 1997] Ramon Garca-Martnez and Daniel Borrajo. Planning,
learning, and executing in autonomous systems. In Sam Steel, editor, Recent Advances in AI
Planning. 4th European Conference on Planning, ECP'97, number LNAI 1348 in Lecture Notes
in Arti cial Intelligence, pages 208{220, Toulouse, France, September 1997. Springer-Verlag.
[Garca-Martnez and Borrajo, 1998] Ramon Garca-Martnez and Daniel Borrajo. Learning in
unknown environments by knowledge sharing. In John Demiris and Andreas Birk, editors,
Proceedings of the Seventh European Workshop on Learning Robots, EWLR'98, pages 22{32,
Edinburgh, Scotland, July 1998. University of Edinburgh Press.
[Hillis, 1992] D. Hillis. Co-evolving parasites improves simulated evolution as an optimization
procedure. Arti cial Life, 2, 1992.
[Lin, 1993] Long-Ji Lin. Scaling-up reinforcement learning for robot control. In Proceedings of the
Tenth International Conference on Machine Learning, pages 182{189, Amherst, MA, June 1993.
Morgan Kaufman.
[Lloyd, 1982] S. P. Lloyd. Least squares quantization in pcm. In IEEE Transactions on Information
Theory, number 28 in IT, pages 127{135, March 1982.
[Molina et al., 1997] Jose M. Molina, Araceli Sanchis, Antonio Berlanga, and Pedro Isasi-Vi~nuela.
Evolving connection weight between sensors and actuators in robots. In IEEE International
Symposium on Industrial Electronics, Portugal, 1997.
[Molina et al., 1998] Jose Manuel Molina, Carlos Sevilla, Pedro Isasi, and Araceli Sanchis. A
reactive approach to classi er systems. In Proc. of IEEE International Conference on Systems,
Man and Cybernetics, San Diego, EEUU, 1998.
[Moore, 1994] Andrew W. Moore. The party-game algorithm for variable resolution reinforcement
learning in multidimensional state-spaces. In J.D. Cowan, G. Tesauro, and J. Alspector, editors,
Advances in Neural Information Processing Systems, pages 711{718, San Mateo, CA, 1994.
Morgan Kaufmann.
[Paredis, 1995] J. Paredis. Coevolutionary computation. Arti cial Life, 2:355{375, 1995.
[Rosin and Belew, 1997] C.D. Rosin and R.K. Belew. New methods for competitive coevolution.
Evolutionay Computation, 5(1):1{29, 1997.
[Watkins, 1989] C. J. C. H. Watkins. Learning from Delayed Rewards. PhD thesis, King's College,
Cambridge, UK, 1989.

También podría gustarte