URBI. Universal Real-time Behavior Interface

Era cuestión de tiempo que Microsoft Robotics Studio tuviera un competidor. El mes pasado Gostai liberó la versión 1.0 RC2 de URBI. La Release Candidate 1 se liberó justo el mismo mes (Diciembre de 2006) que Microsoft liberó su versión 1.0 de MSRS. URBI está disponible bajo licencia GPL. (MSRS también está disponible gratuitamente con una licencia de uso no comercial).

URBI es un producto que se encuadra en la misma línea que MSRS. La idea clave de este tipo de productos es ofrecer un marco genérico para la programación de aplicaciones robóticas. Y esto es algo nuevo. Estabamos acostumbrados a simuladores software, bibliotecas de programación para robots concretos o familias de robots, etc. La gran ventaja de un producto como este es que puedes centrarte en tu aplicación robótica sin preocuparte demasiado de la concurrencia, la entrada/salida asíncrona y el procesamiento distribuido. Además, un controlador para un robot escrito usando estas nuevas herramientas se puede portar fácilmente de una plataforma a otra (mientras tengamos sensores y actuadores análogos).

URBI se basa en un lenguaje script que ofrece características nuevas como paralelismo, programación dirigida por eventos y gestión de objetos remotos. Se pueden usar multitud de lenguajes con URBI ya que la funcionalidad está incluida en una biblioteca que se puede integrar en C++, Java, Matlab, Python, etc.

Continue reading “URBI. Universal Real-time Behavior Interface”

Análisis I-Cybie

Análisis del robot I-Cybie

I-Cybie es una mascota robótica fabricada por Silverlit Electronics y comercializada en todo el mundo por diferentes distribuidores. Viene en tres colores: azul, dorado y con carcasa transparente. Esta mascota robot se parece bastante a Aibo de Sony en aspectos de tamaño, peso, uso y características. Este perro robótico está hecho de 1400 piezas y 90 piés de cable. Tiene un ordenador de abordo y responde a su entorno con estados de ánimo caninos. Por ejemplo, se pone triste si le ignoras… El robot está equipado con reconocimiento de voz, desarrollo de comportamientos, sensores de sonido, detección de obstáculos, cambio de dirección dinámico, sensores de orientación, sensores de presión, etc. La comunicación con I-Cybie es posible usando un mando de infrarrojos (IR), comandos con palmadas y comandos de voz.

I-Cybie es capaz de explorar el medio sin problemas. Puede detectar obstáculos y evitarlos de forma exitosa. Incluso si le haces caer, es capaz de recuperarse de forma ágil. Sus sensores detectan su posición, así que sabe cuando y como moverse para levantarse de nuevo.

El robot tiene cuatro estados emocionales básicos: feliz, nervioso, triste y cansado. Dependiendo del estado de ánimo el perro muestra diferentes comportamientos y decide si obedecerte o no… El estado emocional del perro se basa en ti interacción con la mascota y en su entorno. Por ejemplo, una habitación silenciosa y oscura le hace sentirse triste.

I-Cybie también puede hacer algunos trucos para tu entretenimiento y sorpresa. Por ejemplo, puede darte la pata, bailar o rascarse la oreja. También se le puede entrenar para que reconozca tu voz, de modo que le puedas pedir de viva voz que haga un truco.

También está disponible un cargador de pared. Si lo tienes, I-Cybie es capaz de buscarlo de forma autónoma cuando se siente cansado (batería baja) y recargarse en la base él solo.

Es posible programar este robot. Sin embargo, se necesita modificar el hardware para poder programar el I-Cybie en lenguaje C. En concreto hay que realizar una actualización denominada Super I-Cybie. También se dispone de un SDK para desarrollo. Los detalles sobre esto están en los siguientes enlaces:

http://www.aibohack.com/icybie/index.html
http://www.deep-shadows.com/hax/i-cybie.htm

La siguiente foto muestra a un I-Cybie dorado compartiendo mesa con algunos amigos Aibo, así puedes comparar tamaños y destrezas a la hora de jugar a las cartas.

Los manuales y las guías en español están disponibles en los siguientes enlaces:

Manual de Intrucciones (Español): http://www.i-cybie.com/downloads/Instruction/spanishib.pdf
Guía Rápida (Español): http://www.i-cybie.com/downloads/QuickCard/spanishqs.pdf

Robots y Libre Albedrío

En cualquier instante la mente tiene que tomar decisiones y multitud de acciones inconscientes se llevan a cabo. Nuestra mente consciente contínuamente confabula creando la ilusión de que es ella la que manda. Pero, ¿quién está realmente al mando?

¿Puede la ciencia decirnos que es exactamente la naturaleza humana? ¿Podemos reproducirlo en máquinas artificiales? Típicamente, la conciencia y el libre albedrío han evadido el entorno científico. Sin embargo, en las últimas décadas, filósofos y científicos han comenzado a trabajar juntos en la búsqueda de una explicación científica de la mente. En el comentario del libro de Dennett “La Libertad Evoluciona” [1], escrito por Simon Blackburn [2], se expone por qué los científicos necesitan a los filósofos en este área. Los experimentos de Libet muestran que:

[…] la actividad neuronal que inicia una acción empieza alrededor de un tercio de segundo antes de la decisión consciente del agente de actuar. […]

Normalmente, los neurocientíficos han interpretafo esto como la ilusión de estar al mando. Dennett defiende que esta es una postura errónea. En su lugar Dennett especifica que un agente consciente debe ser visto como un continuo, donde no hay un momento concreto de decisión. La concepción intervencionista deducida a partir de los experimentos de Libet normalmente lleva a los científicos a pensar que la evolución y la cultura crean una prisión para la mente, donde todo está predeterminado a priori. Dennet argumenta lo contrario, él cree que la evolución y la cultura son los diferenciadores clave que hacen a los humanos capaces de moldear sus respuestas e imaginar el futuro. En relación con el enlace entre pensamiento y acción:

“Tenemos el poder de vetar nuestros instintos y después vetar nuestros vetos”, dice Dennett, “Tenemos el poder de la imaginación, de ver e imaginar futuros”.

Continue reading “Robots y Libre Albedrío”

Un Robot en Cada Casa

En el número de Enero de 2007 de Scientific American aparece en portada un artículo escrito por Bill Gates titulado “Un Robot en Cada Casa” [1]. ¿Estás alcanzando una masa crítica el mercado de los robots domésticos? La utilización de la robótica en fabricación es una realidad. Sin embargo, las aplicaciones prácticas de la robótica en el mercado residencial es otra historia. En su artículo, Bill Gates habla acerca de los retos en este dominio, y remarca la necesidad de un marco estándar (aunque no lo menciona inicialmente, obviamente está haciendo referencia al recientemente liberado Microsoft Robotics Studio).

La visión de Gate sobre robótica está basada en una evolución de los PCs. Desde los ordenadores personales en cada casa, a los robots personales en todas las casas. Es como dotar a los PCs actuales con las características típicas de los robots de ciencia ficción. Pero, ¿es probable que esto pase a corto plazo? ¿Es Microsoft lo suficientemente poderoso para dirigir tal cambio en el mercado? ¿Disponemos actualmente de la tecnología necesaria? Yo no contestaría todavía a estas preguntas, pero sí diría que todavía no ha llegado el momento de los robots tipo NS-5.

Bill Gates parece consciente del gran reto que supone hacer realidad los robots de ciencia ficción. Sin embargo, explica que el actual coste de la tecnología está facilitando enormemente la producción comercial de los primeros robots domésticos. Fue en 2004 cuando Bill Gates pidió a Tandy Trower (el actual director de Microsoft Robotics) un informe estratégico sobre robótica. Su conclusión fue que existe una necesidad en el campo de la robótica del software adecuado. Nos podríamos preguntar si ya existen buenas plataformas de desarrollo para robótica. La visión de Microsoft es que no existe tal tecnología de desarrollo, y esa es la razón por la que decidieron lanzar la plataforma Microsoft Robotics Studio [2]. El artículo también describe brevemente los componentes clave de Microsoft Robotics Studio: el CCR (Concurrency and Coordination Runtime) y el DSS (Decentralized Software Services).

Creo que Bill no está equivocado en su conclusión y su previsión sobre el sector de la robótica. Asunto diferente es su objetivo de hacer de Microsoft la compañía que lo promueva. No obstante, creo que la iniciativa tomada en robótica por Microsoft es inteligente, uno tiene que estar en el inicio de un sector para asegurarse una buena posición en el mismo. ¿Será exitosa la fórmula Microsoft + Robótica? Todavía no lo sabemos.

[1] “A Robot in Every Home”. Scientific American. January 2006 Issue (en inglés).

[2] “Microsoft Robotics Studio 1.0 Liberado”. Conscious-Robots.com.

Robots Polimórficos

La robótica polimórfica, auto-adaptativa, auto-organizativa y en general auto-* está generalmente relacionada con el campo de la conciencia artificial. Básicamente, se requiere algún grado de auto-conciencia para que un robot se auto-repare o auto-cure. La conferencia SASO 2007 cubre esta disciplina (First IEEE International Conference on Self-Adaptive and Self-Organizing Systems. Boston, Mass., USA, July 9-11, 2007) [1].

Los temas tratados son: auto-organizacióm, auto-adaptatividad, auto-gestión, auto-monitorización, auto-configuración, auto-reparación, etc. No hay duda de que la integración de este tipo de técnicas con modelos cognitivos require un modelo de tipo consciencia artificial.

Hay algunos ejemplos de robots polimórficos en la página del Polymorphic Robotics Lab de la Universidad de Southern California [2].

Proyecto CRONOS

La página del PROYECTO CRONOS trata acerca del proyecto financiado de Owen Holland and Tom Troscianko para construir un robot consciente (GR/S47946/01). Este proyecto de tres años de duración se está desarrollando en la Universidad de Essex y la Universidad de Bristol y finaliza en Abril de 2007.

Los componentes principales de este proyecto son un robot hardware llamado CRONOS, una copia virtual de este robot conocida como SIMNOS, un sistema visual basado en el cerebro humano, el simulador neuronal SpikeStream y métodos sistemáticos para identificar y describir los estados conscientes del sistema.

Página del Proyecto CRONOS (en Inglés)

Auto-Consciencia en Robots

¿Con qué sueñan los robots? Este es el título de un artículo publicado esta semana en Science escrito por Christoph Adami. El autor argumenta que los robots que crean y actualizan modelos internos de su propia estructura son capaces de adaptarse mejor al mundo. De hecho, el robot desarrollado por  J. C. Bongard, H. Lipson, y V. Zykov es capaz de auto-detectar sus propios daños y generar nuevas formas de andar adaptadas a su nueva (mermada) situación. Esta capacidad puede mejorar el uso de robots en entornos peligrosos. Normalmente los animales adaptan su forma de andar a cualquier herida que puedan sufrir. Sin embargo, esto no es algo normal en los robots. El equipo de Bongard ha desarrollado un robot de 4 patas capaz de sentir sus propios movimientos y estructura. El robot calcula nuevos patrones de movimientos después de sufrir un daño es su estructura motriz.