Linux Droids Blog

Experiencias y Proyectors robóticos de Sphinx

Biblioteca Robótica: “Robot Programming : A Practical Guide to Behavior-Based Robotics” de Joe Jones 18 marzo, 2012

Filed under: Libros — Sphinx @ 19:52
Tags: , ,

Este libro, escrito por Joe Jones, miembro del MIT, es perfecto para aprender paso a paso, y desde conceptos muy básicos sobre la programación de robots basada en comportamientos (traducido literalmente de los terminos en ingles de behavior based programming).

Este concepto, “programación de robots basada en comportamientos”, es aparentemente simple, pero requiere ser explicado con detalle y buenos ejemplos para ser comprendido con facilidad. Y eso es lo que hace Joe Jones, a mi modo de ver, a la perfección, en este libro. Las explicaciones son muy sencillas y claras, y desde el capítulo 1 va introduciendo los conceptos en un orden perfecto para que pueda ser entendido rápidamente y se pueda avanzar hacia conceptos un poco más complejos.
Joseph Jones es uno de los colaboradores en la creación de Roomba, el famoso robot aspiradora que habita ya muchos hogares. Todos los temas que se pueden leer en el libro aseguraría que fueron utilizados de un modo u otro en la programación de ese magnifico robot.

La programación orientada a comportamientos de los robots es, como Joe describe en sus primeros capítulos, un método sencillo que no tiene nada que ver con complicados algoritmos que requieren grandes potencias del calculo (P.ej. PIDs). Se trata de identificar y determinar tareas simples que el robot debe llevar a cabo, y completarlas mediante el uso de ciertos dispositivos de entrada (sensores) para realizar una acción con sus dispositivos actuadores.

La definición de estas tareas simples es básica, puesto que estos son los comportamientos a los que se refiere el título. Estas están latentes en el comportamiento del robot en todo momento. El momento en que estas tareas entran en funcionamiento dependen de las entradas que se definan requeridas para cada tarea(comportamiento). Si para completar la tarea se define en ella el uso de ciertos actuadores del robot, entonces el sistema debe permitir el uso de estos actuadores por parte de la tarea. Pero es posible que más de una tarea compita por el uso de un mismo actuador. En ese caso, en la programación orientada a comportamientos se define en el sistema un elemento llamado arbitro que es quien decide qué tarea de entre todas ellas entra en cada momento a hacer uso del actuador o recurso del robot. Es

Este es el modo en que se generan comportamientos más complejos a partir de un conjunto de comportamientos simples. De este modo, el comportamiento global del robot, el resultado final, podría verse como más complejo, y quizá manifieste ciertos rasgos de inteligencia desde el punto de vista de los seres humanos.

Además de ello,  introduce otros conceptos importantes en este tipo de programación de robots como por ejemplo:

Sensor quialification ( o lo fiable que puede ser un sensor para nuestro sistema, es decir,  forma en que un comportamiento “no ideal” o erratico de un sensor puede afectar al comportamiento total del sistema )

Graceful degradation ( o degradación del sistema de manera “elegante”  cuando los sensores y/o actuadores no se comportan como debieran )

– Tipos distintos de árbitros que pueden programarse en un robot cuando utilizamos la programación orientada a comportamientos.

Por supuesto,  el libro es de gran ayuda en la definición de los comportamientos y como programarlos, aunque se mueve a nivel conceptual. La implementación es valida para cualquier sistema controlador en principio. Y en todo caso los ejemplos de código vienen dados en C.

Dentro del libro vienen ejemplos muy clarificadores y de gran ayuda para entenderlo todo. Además podréis encontrar dentro la dirección de una página web, donde mediante un applicativo Java, se puede simular el comportamiento de un robot, seleccionando los tipos de comportamientos predefinidos, y eligiendo el tipo de árbitro que queramos. Y después ver de que forma ese robot virtual se comporta.

Desde mi punto de vista, una joya de libro y un conjunto de magnificas de ideas las que se explican en él. Y aunque algunos de los que me leéis no dominéis el ingles, os aseguro que merece la pena intentar leerlo y comprenderlo.

Disfrutad!

Anuncios
 

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s