CASIMIRO: AN ENGINEERING APPROACH TO SOCIABLE ROBOTS
Oscar Deniz Suarez
Universidad de Las Palmas de Gran Canaria
A relatively new area for robotics research is the design of robots that can engage with humans in socially interactive situations. These robots have expressive power (i.e. they all have an expressive face, voice, etc.) as well as abilities to locate, pay attention to, and address people. In humans, these abilities fall within the ambit of what has been called “social intelligence”. For this class of robots, the dominant design approach has been that of following models taken from human sciences like developmental psychology, ethology and even neurophysiology.
We show that the reproduction of social intelligence, as opposed to other types of human abilities, may lead to fragile performance, in the sense of having very different performances between training/testing and future (unseen) conditions. This limitation stems from the fact that the abilities of the social spectrum, which appear earlier in life, are mainly unconscious to us. This is in contrast with other human tasks that we carry out using conscious effort, and for which we can easily conceive algorithms. Thus, a coherent explanation is also given for the truism that says that anything that is easy for us is hard for robots and vice versa.
For some types of robots like manipulators one can extract a set of equations (or algorithms, representations,…) that are known to be valid for solving the task. Once that these equations are stored in the control computer the manipulator will always move to desired points. Sociable robots, however, will require a much more inductive development effort. That is, the designer tests implementations in a set of cases and hopes that the performance will be equally good for unseen (future) cases. Inductive processes crucially depend on a priori knowledge: if there is little available one can have good performance in test cases but poor performance in unseen cases (overfitting).
In Machine Learning, complexity penalization is often used as a principled means to avoid overfitting. Thus, we propose to develop sociable robots starting from simple algorithms and representations.
Implementations should evolve mainly through extensive testing in the robot niche (the particular environment and restrictions imposed on the robot tasks, physical body, etc.). Such approach places more emphasis in the engineering decisions taken throughout the robot development process, which depend very much on the niche.
This work describes the ideas and techniques involved in the design and development of CASIMIRO, a robot with a set of basic interaction abilities. The robot has been built following the mentioned approach. In particular, the main difficulties lay in parsimoniously exploiting the characteristics of the robot niche in order to obtain better performances.
- PhD Document (7.5 MB)
- Short version in Spanish (5.9 MB)
- EURON Robot of the Week
- In ABC newspaper (in Spanish)
- In La Provincia newspaper (in Spanish)
- Video of the robot (14MB)
CASIMIRO: UNA APROXIMACIÓN INGENIERIL A LOS ROBOTS SOCIABLES
Oscar Deniz Suarez
Universidad de Las Palmas de Gran Canaria
Un campo en boga de la robótica, que podríamos llamar robótica social, persigue construir robots que tengan capacidades de interactuar con personas. Dichos robots tienen capacidad expresiva (la mayoría tiene una cara expresiva, voz, etc.), así como habilidades para localizar, poner atención, y dirigirse a las personas. En los humanos, estas habilidades caen en el ámbito de la llamada inteligencia social. Para este tipo de robots, el enfoque de diseño predominante ha sido seguir modelos tomados de disciplinas como psicología del desarrollo, etología e incluso neurofisiología.
En este trabajo se muestra que la reproducción de inteligencia social, a diferencia de otros tipos de habilidades humanas, lleva a un comportamiento frágil del robot construido, en el sentido de tener comportamientos muy diferentes entre las condiciones de prueba y las de trabajo real (no vistas). Esta limitación se debe al hecho de que en el ser humano las habilidades sociales, que aparecen primero en la vida, son fundamentalmente inconscientes. Esto contrasta con otras habilidades que realizamos con esfuerzo consciente, y para las cuales podemos con relativa facilidad concebir algoritmos. De esta forma, relacionamos la cantidad de conocimiento consciente que tenemos de la forma de la solución de una habilidad con la robustez que podemos lograr. Por otro lado, esto constituye también una explicación coherente para el conocido hecho en Inteligencia Artificial que dice que las tareas que son fáciles para nosotros resultan difíciles para los robots y viceversa.
Para algunos tipos de robots como los manipuladores uno puede extraer un conjunto de ecuaciones (o algoritmos, representaciones,…) que se saben son válidas para resolver la tarea. Una vez estas ecuaciones han sido almacenadas en el computador de control el manipulador siempre se moverá a los puntos deseados. Los robots sociables, sin embargo, requieren un esfuerzo de desarrollo más inductivo. Esto es, el diseñador prueba las implementaciones en un conjunto concreto de casos, y espera que el rendimiento sea igualmente bueno para casos futuros (no vistos). En procesos inductivos es crucial el conocimiento a priori que se tenga: si hay poco disponible uno puede obtener buen rendimiento en casos de prueba pero pobre rendimiento en casos no vistos (overfitting).
En Aprendizaje Máquina, la penalización de complejidad se usa a menudo como un medio válido para evitar el overfitting. Así, proponemos desarrollar los robots sociables partiendo de algoritmos y representaciones simples. Las implementaciones solo deberían hacerse más complejas a través de numerosas pruebas en el nicho del robot (el entorno particular del robot, y las restricciones impuestas sobre las tareas a realizar, el cuerpo físico del robot, etc.). Tal aproximación da mucha importancia a las decisiones ingenieriles que se toman durante todo el proceso de desarrollo, las cuales dependen mucho del nicho.
Este trabajo describe las ideas y técnicas empleadas en el desarrollo de CASIMIRO, un robot con un conjunto de habilidades de interacción básicas. El robot ha sido construido siguiendo el enfoque mencionado. En particular, el principal esfuerzo ha estado en explotar de forma parsimoniosa las características del nicho del robot con el fin de obtener mejores rendimientos.