Según Lynne Parker, en el artículo escrito el año 2008 relacionado con la “inteligencia distribuida”, las personas se organizan en puestos específicos para desarrollar actividades relacionadas a puestos de trabajo en una empresa. Cada trabajador se especializa en una parcela concreta formando una sociedad. En el ámbito profesional sucede lo mismo, es posible encontrar especialistas en derecho, medicina, ingeniería, computación, arquitectura, etc. Existen multitud de ejemplos donde aparecen equipos de individuos. Las personas han aprendido que un equipo coordinado es más eficiente a la hora de resolver problemas que un individuo. Marvin Minsky propuso, en su libro escrito el año 1985 titulado “la sociedad de la mente”, la idea de que la inteligencia se consigue como una sociedad de agentes que interactúan entre sí y el resultado es un comportamiento global. Sus ideas estaban fundamentadas bajo el análisis realizado sobre el funcionamiento del cerebro y la inteligencia. La base de su argumentación es que la mente no es una única entidad monolítica, sino que está formada por la sociedad de agentes especializados en tareas específicas. Estos agentes se relacionan produciendo como resultado un comportamiento o un pensamiento inteligente.
Según los investigadores Cao, Fukunaga y Kahng, en el artículo publicado el año 1997 relacionado con la “robótica móvil cooperativa”, los sistemas distribuidos de robots presentan un gran número de ventajas en comparación a la funcionalidad de un solo robot: (1) Algunas tareas son imposibles de realizar por un robot único, dada la complejidad o las limitaciones espaciales del problema, haciendo necesario que dos o más de ellos intervengan para efectuarla. (2) Utilizar más robots permite un aumento de la eficiencia y efectividad del sistema, lo que claramente puede evidenciarse en sistemas de exploración y recolección de la información, donde varios robots son capaces de abarcar un área mayor. (3) La creación de muchos robots simples es más barata y fácil, permitiendo una flexibilidad en cuanto a la atención de tareas que un robot único no es capaz de dar, sin importar que tan equipado este. Así actividades como el movimiento de cargas que puede realizarse igual de rápido por un robot único, puede efectuarse en forma más flexible por un conjunto de robots que ayudan según la magnitud de la carga. (4) El uso de múltiples agentes permite enfrentar fallas de mejor forma, ya que aunque fallen y salgan del sistema algunos robots, el objetivo final es aún posible de lograr. En el caso de un robot único, su falla significa la imposibilidad de continuar y finalizar la tarea.
Cuando se habla de sistemas cooperativos de robots se pueden diferenciar tres familias o niveles: (1) Sistemas multi-sensoriales. El caso de varios sensores cooperantes incluye todas aquellas aplicaciones que involucran a más de un sensor y comparten información. Esta información es útil para modelar de manera más rica el entorno que quieren percibir. Un ejemplo de estos sistemas son las redes de sensores. Es un concepto relativamente nuevo en adquisición y tratamiento de datos de manera coordinada. Estas redes están compuestas por un amplio número de sensores con capacidades comunicativas, que se interconectan formando redes ah-hoc. Disponen de una reducida capacidad de cálculo e incapacidad motora pero sus capacidades cooperativas permiten a estos sistemas ser una buena opción en determinados entornos: Por ejemplo zonas de difícil acceso o con alto riesgo de bloqueos. (2) Sistemas con múltiples actuadores. Los sistemas cooperantes con múltiples actuadores incluyen el control de actuadores dentro de un mismo robot o la manipulación coordinada de objetos. La locomoción con patas requiere que haya una sincronización y planificación de todos los movimientos, para que se produzca de manera suave y efectiva. En el caso de la manipulación coordinada sucede algo parecido, es vital que haya cooperación para evitar colisiones entre los manipuladores, interferencias, etc. Un ejemplo de estos últimos sistemas se puede encontrar en las cadenas de montaje de automóviles responsabilizándose de tareas de soldadura o pintura. (3) Sistema de robots independientes. La tercera familia de sistemas cooperantes está formada por varios robots independientes. Estos robots forman un equipo en caso de no ser excesivamente numeroso o un enjambre, en caso de pertenecer a un equipo muy numeroso. Las aplicaciones habituales de estos equipos son la recolección de objetos, exploración, navegación en formación, etc.
El uso de varios robots para lograr un objetivo común viene motivado por varios factores: El primero de ellos es que en algunos escenarios, el uso de un solo robot puede hacer la tarea muy complicada o incluso imposible de realizar. Imagine que se quiere construir un mapa de la superficie de Marte. Con una única entidad móvil se emplearía mucho tiempo hasta conseguir explorar toda la superficie marciana. Otra ventaja adicional es la mayor tolerancia a fallos. En el ejemplo, si un robot se quedara bloqueado, el resto de compañeros completarían la labor. La mejora del rendimiento es otro factor positivo. A mayor número de robots bien organizados, menor será el tiempo empleado hasta llegar al objetivo. Cuando la tarea a realizar es fácilmente divisible en subtareas es más fácil la asignación de subobjetivos a los miembros del equipo. Las capacidades de percepción de cada robot pueden verse ampliadas al compartir información. De esta manera un robot podría percibir más allá de lo que captan sus sensores. Otra ventaja del uso de sistemas multi-robot coordinados es el paralelismo, es decir, se podrían llevar a cabo diversas acciones de manera simultánea. El costo económico también puede beneficiarse del uso de equipos de robots. La compra de un super-robot encarecerá el costo total más que la suma de los precios individuales de varios robots convencionales.
Según Gregory Dudek, en el artículo escrito el año 1996 sobre “una taxonomía para la robótica multi agente”, presenta una taxonomía para clasificar los diferentes aspectos que forman parte de un sistema robótico de agentes múltiples, en este entendido los ejes más significativos son: (1) Control centralizado versus distribuido. Robin Murphy, en el libro escrito el año 2000 relacionado con una “introducción a la robótica”, describe esta característica como el grado de similitud entre los robots que forman el grupo. Un grupo heterogéneo está formado por al menos dos miembros con hardware o software diferente, mientras que en un grupo homogéneo todos los miembros son idénticos. (2) Mecanismos de coordinación. Un equipo de robots puede cooperar de maneras muy diversas: Desde la más básica en la que cada individuo no tiene conciencia del resto, hasta las más elaboradas basadas en negociaciones de alto nivel y con un elevado grado de comunicación. Los mecanismos de cooperación dinámica son adecuados para favorecer la flexibilidad y adaptabilidad a la hora de afrontar una tarea coordinada. En el artículo escrito el año 2004 titulado “un paradigma para la coordinación dinámica de robots múltiples”, los investigadores Chaimowicz, Kumar y Campos, proponen un mecanismo de asignación dinámico de roles, que permite asociar tareas concretas a robots o grupos de robots sobre la marcha. Este mecanismo es descentralizado y cada individuo toma sus propias decisiones basadas en la información local y global. Se pueden enumerar tres tipos de cambio de rol: (a) Asignación. Se asume un nuevo rol cuando se termina la ejecución de una tarea. (b) Reasignación. El rol activo se aborta y comienza la ejecución de otro nuevo. (c) Intercambio. Dos o más robots se sincronizan e intercambian sus papeles. (3) Comunicación. La comunicación determina las posibilidades de interacción entre los miembros del grupo, siendo el vehículo para que la coordinación se manifieste. Es posible identificar tres tipos de interacción que tienen que ver con el intercambio de información: A través del medio, a través de los propios sensores del robot o explícita empleando comunicaciones. (4) Interferencias y conflictos. Este es un problema típico cuando varios elementos quieren acceder a un recurso compartido. Este medio compartido puede ser desde un canal de comunicaciones hasta una intersección de carreteras. Si dos o más individuos acceden a él en el mismo instante de tiempo se produce una colisión. Por tanto, es necesario que exista algún mecanismo de exclusión mutua para evitar estos problemas cuando sea necesario.
En un barrido de las aplicaciones típicas que se abordan con grupos de robots, se observan las siguientes: (1) Recolección. La recolección consiste en encontrar y recoger una serie de objetos diseminados por el entorno. En situaciones reales estas técnicas se pueden usar para recoger sustancias tóxicas, participar en situaciones de rescate, detectar de minas, etc. (2) Formaciones. Esta especialidad aparece cuando se combina la navegación y los grupos de robots. Consiste en el control de múltiples individuos moviéndose juntos en formación. Los trabajos en el ámbito de las formaciones en vehículos no tripulados despertaron un interés militar en el Ministerio de Defensa de Estados Unidos durante la década de los años 1990. (3) Gestión de almacenamiento. En grandes centros de distribución, almacenes o pequeños negocios con gran volumen de movimiento de productos es habitual dedicar mucho tiempo a la gestión del inventario. Esta gestión involucra tareas de llenado de determinados compartimentos o vaciado cuando los clientes lo solicitan. Un equipo de robots cooperantes puede ser una muy buena solución para este problema, liberando a las personas de esta tarea repetitiva y mejorando la eficiencia de la gestión de los recursos. (4) Manipulación coordinada. Hay muchos trabajos sobre este tema consistente en arrastrar cajas usando varios robots con brazos, o de manera más genérica, manipular objetos entre varios agentes. Un dato interesante de esta especialidad es que la cooperación puede llevarse a cabo sin que cada robot sepa de la existencia del resto. (5) Fútbol robótico. El fútbol robótico es un campo de pruebas interesante que está cobrando mayor interés año a año. Además del reto tecnológico que requiere desarrollar un sistema completo perceptivo, locomotor, estratégico, que incluya auto-localización y cooperación entre sus miembros, tiene el ingrediente extra de ser competitivo. Un equipo de robots se enfrenta a otro equipo con objetivos opuestos a los tuyos. Desde el punto de vista de coordinación es un escenario muy propicio a establecer roles entre los miembros de cada equipo con estrategias de posicionamiento y comportamientos específicos.
Referencias Bibliográficas
Según los investigadores Cao, Fukunaga y Kahng, en el artículo publicado el año 1997 relacionado con la “robótica móvil cooperativa”, los sistemas distribuidos de robots presentan un gran número de ventajas en comparación a la funcionalidad de un solo robot: (1) Algunas tareas son imposibles de realizar por un robot único, dada la complejidad o las limitaciones espaciales del problema, haciendo necesario que dos o más de ellos intervengan para efectuarla. (2) Utilizar más robots permite un aumento de la eficiencia y efectividad del sistema, lo que claramente puede evidenciarse en sistemas de exploración y recolección de la información, donde varios robots son capaces de abarcar un área mayor. (3) La creación de muchos robots simples es más barata y fácil, permitiendo una flexibilidad en cuanto a la atención de tareas que un robot único no es capaz de dar, sin importar que tan equipado este. Así actividades como el movimiento de cargas que puede realizarse igual de rápido por un robot único, puede efectuarse en forma más flexible por un conjunto de robots que ayudan según la magnitud de la carga. (4) El uso de múltiples agentes permite enfrentar fallas de mejor forma, ya que aunque fallen y salgan del sistema algunos robots, el objetivo final es aún posible de lograr. En el caso de un robot único, su falla significa la imposibilidad de continuar y finalizar la tarea.
Cuando se habla de sistemas cooperativos de robots se pueden diferenciar tres familias o niveles: (1) Sistemas multi-sensoriales. El caso de varios sensores cooperantes incluye todas aquellas aplicaciones que involucran a más de un sensor y comparten información. Esta información es útil para modelar de manera más rica el entorno que quieren percibir. Un ejemplo de estos sistemas son las redes de sensores. Es un concepto relativamente nuevo en adquisición y tratamiento de datos de manera coordinada. Estas redes están compuestas por un amplio número de sensores con capacidades comunicativas, que se interconectan formando redes ah-hoc. Disponen de una reducida capacidad de cálculo e incapacidad motora pero sus capacidades cooperativas permiten a estos sistemas ser una buena opción en determinados entornos: Por ejemplo zonas de difícil acceso o con alto riesgo de bloqueos. (2) Sistemas con múltiples actuadores. Los sistemas cooperantes con múltiples actuadores incluyen el control de actuadores dentro de un mismo robot o la manipulación coordinada de objetos. La locomoción con patas requiere que haya una sincronización y planificación de todos los movimientos, para que se produzca de manera suave y efectiva. En el caso de la manipulación coordinada sucede algo parecido, es vital que haya cooperación para evitar colisiones entre los manipuladores, interferencias, etc. Un ejemplo de estos últimos sistemas se puede encontrar en las cadenas de montaje de automóviles responsabilizándose de tareas de soldadura o pintura. (3) Sistema de robots independientes. La tercera familia de sistemas cooperantes está formada por varios robots independientes. Estos robots forman un equipo en caso de no ser excesivamente numeroso o un enjambre, en caso de pertenecer a un equipo muy numeroso. Las aplicaciones habituales de estos equipos son la recolección de objetos, exploración, navegación en formación, etc.
El uso de varios robots para lograr un objetivo común viene motivado por varios factores: El primero de ellos es que en algunos escenarios, el uso de un solo robot puede hacer la tarea muy complicada o incluso imposible de realizar. Imagine que se quiere construir un mapa de la superficie de Marte. Con una única entidad móvil se emplearía mucho tiempo hasta conseguir explorar toda la superficie marciana. Otra ventaja adicional es la mayor tolerancia a fallos. En el ejemplo, si un robot se quedara bloqueado, el resto de compañeros completarían la labor. La mejora del rendimiento es otro factor positivo. A mayor número de robots bien organizados, menor será el tiempo empleado hasta llegar al objetivo. Cuando la tarea a realizar es fácilmente divisible en subtareas es más fácil la asignación de subobjetivos a los miembros del equipo. Las capacidades de percepción de cada robot pueden verse ampliadas al compartir información. De esta manera un robot podría percibir más allá de lo que captan sus sensores. Otra ventaja del uso de sistemas multi-robot coordinados es el paralelismo, es decir, se podrían llevar a cabo diversas acciones de manera simultánea. El costo económico también puede beneficiarse del uso de equipos de robots. La compra de un super-robot encarecerá el costo total más que la suma de los precios individuales de varios robots convencionales.
Según Gregory Dudek, en el artículo escrito el año 1996 sobre “una taxonomía para la robótica multi agente”, presenta una taxonomía para clasificar los diferentes aspectos que forman parte de un sistema robótico de agentes múltiples, en este entendido los ejes más significativos son: (1) Control centralizado versus distribuido. Robin Murphy, en el libro escrito el año 2000 relacionado con una “introducción a la robótica”, describe esta característica como el grado de similitud entre los robots que forman el grupo. Un grupo heterogéneo está formado por al menos dos miembros con hardware o software diferente, mientras que en un grupo homogéneo todos los miembros son idénticos. (2) Mecanismos de coordinación. Un equipo de robots puede cooperar de maneras muy diversas: Desde la más básica en la que cada individuo no tiene conciencia del resto, hasta las más elaboradas basadas en negociaciones de alto nivel y con un elevado grado de comunicación. Los mecanismos de cooperación dinámica son adecuados para favorecer la flexibilidad y adaptabilidad a la hora de afrontar una tarea coordinada. En el artículo escrito el año 2004 titulado “un paradigma para la coordinación dinámica de robots múltiples”, los investigadores Chaimowicz, Kumar y Campos, proponen un mecanismo de asignación dinámico de roles, que permite asociar tareas concretas a robots o grupos de robots sobre la marcha. Este mecanismo es descentralizado y cada individuo toma sus propias decisiones basadas en la información local y global. Se pueden enumerar tres tipos de cambio de rol: (a) Asignación. Se asume un nuevo rol cuando se termina la ejecución de una tarea. (b) Reasignación. El rol activo se aborta y comienza la ejecución de otro nuevo. (c) Intercambio. Dos o más robots se sincronizan e intercambian sus papeles. (3) Comunicación. La comunicación determina las posibilidades de interacción entre los miembros del grupo, siendo el vehículo para que la coordinación se manifieste. Es posible identificar tres tipos de interacción que tienen que ver con el intercambio de información: A través del medio, a través de los propios sensores del robot o explícita empleando comunicaciones. (4) Interferencias y conflictos. Este es un problema típico cuando varios elementos quieren acceder a un recurso compartido. Este medio compartido puede ser desde un canal de comunicaciones hasta una intersección de carreteras. Si dos o más individuos acceden a él en el mismo instante de tiempo se produce una colisión. Por tanto, es necesario que exista algún mecanismo de exclusión mutua para evitar estos problemas cuando sea necesario.
En un barrido de las aplicaciones típicas que se abordan con grupos de robots, se observan las siguientes: (1) Recolección. La recolección consiste en encontrar y recoger una serie de objetos diseminados por el entorno. En situaciones reales estas técnicas se pueden usar para recoger sustancias tóxicas, participar en situaciones de rescate, detectar de minas, etc. (2) Formaciones. Esta especialidad aparece cuando se combina la navegación y los grupos de robots. Consiste en el control de múltiples individuos moviéndose juntos en formación. Los trabajos en el ámbito de las formaciones en vehículos no tripulados despertaron un interés militar en el Ministerio de Defensa de Estados Unidos durante la década de los años 1990. (3) Gestión de almacenamiento. En grandes centros de distribución, almacenes o pequeños negocios con gran volumen de movimiento de productos es habitual dedicar mucho tiempo a la gestión del inventario. Esta gestión involucra tareas de llenado de determinados compartimentos o vaciado cuando los clientes lo solicitan. Un equipo de robots cooperantes puede ser una muy buena solución para este problema, liberando a las personas de esta tarea repetitiva y mejorando la eficiencia de la gestión de los recursos. (4) Manipulación coordinada. Hay muchos trabajos sobre este tema consistente en arrastrar cajas usando varios robots con brazos, o de manera más genérica, manipular objetos entre varios agentes. Un dato interesante de esta especialidad es que la cooperación puede llevarse a cabo sin que cada robot sepa de la existencia del resto. (5) Fútbol robótico. El fútbol robótico es un campo de pruebas interesante que está cobrando mayor interés año a año. Además del reto tecnológico que requiere desarrollar un sistema completo perceptivo, locomotor, estratégico, que incluya auto-localización y cooperación entre sus miembros, tiene el ingrediente extra de ser competitivo. Un equipo de robots se enfrenta a otro equipo con objetivos opuestos a los tuyos. Desde el punto de vista de coordinación es un escenario muy propicio a establecer roles entre los miembros de cada equipo con estrategias de posicionamiento y comportamientos específicos.
Referencias Bibliográficas
- Cao Y., Fukunaga A. y Kahng A. (1997) Cooperative Mobile Robotics: Antecedents and Directions. Autonomous Robots, vol. 4, 1-23.
- Chaimowicz L., Kumar V. and Campos M. (2004) A Paradigm for Dynamic Coordination of Multiple Robots. Autonomous Robots, 17(1).
- Dudek G., Jenkin M.R.M. and Wilkes D. (1996) A taxonomy for multi-agent robotics. Autonomous Robots, 3:375–397.
- Minsky M. (1985) The Society of Mind. Simon and Schuster. EE.UU.
- Murphy R.R. (2000) Introduction to AI Robotics. MIT Press, Cambridge, MA, USA.
- Parker L. (2008) Distributed intelligence: Overview of the field and its application in multi-robot systems. Journal of Physical Agents, 2(1):5–14, 2008.