Professional Documents
Culture Documents
Medio de Gestión de Servicios (MGS) [5], [7-9] con conceptos importantes: comunicación, cooperación y
capacidades de ejecución en tiempo real. coordinación. La comunicación se da en los SMA a través de
actos de habla (acto de comunicación entre dos o más agentes
II. SISTEMAS MULTIAGENTES en un momento dado), en el marco de una actividad colectiva
(de la comunidad de agentes) específica, para alcanzar un
A. Agente
objetivo global o individual. A ese grupo de actos de habla del
Los agentes son sistemas informáticos situados en un SMA que ocurre en la realización de una actividad dada, se le
entorno o ambiente, capaces de realizar acciones autónomas llama conversación y se han llegado a desarrollar lenguajes
dentro de ese entorno para alcanzar sus objetivos. Surgen específicos de descripción, entre los más conocidos
dentro del campo de la inteligencia artificial y, a partir de los Knowledge Interchange Format (KIF) [10] y Agent
trabajos desarrollados en el área de la inteligencia artificial Communication Language (ACL) [11]. La coordinación de
distribuida (DAI) se genera el paradigma de Sistemas acciones puede describirse como el conjunto de actividades
MultiAgentes (SMA) [5]. En la Fig. 1 se observa el esquema suplementarias necesarias a realizar en una comunidad de
básico de interacción de un agente. agentes para poder actuar colectivamente. La cooperación es
un proceso por el cual un grupo de agentes generan deberes,
mutuamente dependientes, para realizar actividades conjuntas.
En este caso, cada agente resuelve localmente aquello que es
posible, y recurre a otros agentes para el resto de las tareas.
Así, el objetivo de la coordinación y la cooperación, es
lograr una integración y un ajuste armonioso de los esfuerzos
de trabajo individual, en beneficio de una meta común. Hoy en
día existen una importante cantidad de implementaciones,
incluyendo propuestas en el área de supervisión, y propuestas
FIG. 1 Interacción de un agente de herramientas computacionales basadas en SMA para
soportar las actividades que van desde la formulación de
B. Inteligencia Artificial Distribuida y Sistemas MultiAgentes arquitecturas hasta la especificación de los sistemas listos para
La Inteligencia Artificial Distribuida (Distributed Artificial su implantación.
Intelligence) se concibe como la integración de dos campos de
conocimiento: la inteligencia artificial y los sistemas
C. Sistemas MultiAgentes para la Supervisión
distribuidos. A partir de esto, es entendida como el campo del
conocimiento que intenta construir entidades autónomas e Alcanzar los objetivos de supervisión en sistemas
inteligentes que se comunican por medio de mecanismos complejos y altamente automatizados es una tarea ardua que
basados en el envío y recepción de mensajes y cooperan para requiere de la incorporación de mecanismos que incorporen:
desarrollar un objetivo [5]. Se ha basado en tres áreas: los capacidades de aprendizaje, de acuerdo a la experiencia
Sistemas MultiAgentes (SMA), área en el cual se estudia el adquirida, capacidades adaptativas, según los cambios que
comportamiento de agentes inteligentes que resuelven surjan naturalmente de la dinámica propia de los procesos
problemas de forma cooperativa, la Inteligencia Artificial en internos y externos, autonomía en el proceso de la toma de
Paralelo (PAI = Parallel Artificial Intelligence), donde se decisiones y posibilidades de acceso al conocimiento e
busca el desarrollo de lenguajes y algoritmos paralelos para información distribuida. Los agentes inteligentes se presentan
sistemas concurrentes; y la Resolución Distribuida de como una alternativa para dotar a los sistemas de supervisión
Problemas (DPS = Distributed Problems Solving), en donde se de propiedades estructuralmente inteligentes y emergentes.
busca la división óptima de un problema para asignar las Las aplicaciones de agentes en la supervisión de procesos
partes a un conjunto de entidades independientes para que se diseñan a partir de los sistemas reactivos ya existentes, y a
hallen la solución. partir de allí se modelan los agentes para permitir la
Los SMA tienen como unidad funcional el agente y tienen comunicación entre dichos sistemas y la extracción de
que ver con el comportamiento de una colección de agentes información para ir creando su propio conocimiento. Con el
autónomos, tratando de resolver un problema dado, por lo cual fin de diseñar sistemas de supervisión concebidos desde sus
comparten conocimiento acerca del problema y sus inicios como sistemas inteligentes se han propuesto esquemas
soluciones. Un SMA está formado por un grupo de agentes para el desarrollo e implantación de SMA para la supervisión
que interactúan entre sí, utilizando protocolos y lenguajes de de procesos industriales, dotados de las capacidades propias de
comunicación de alto nivel, para resolver problemas que están los SMA, que permitan la operación segura y óptima en base a
más allá de las capacidades o del conocimiento de cada uno. los objetivos del control [5]. La Fig. 2 muestra la arquitectura
Algunas de las características de los SMA son: cada agente básica del SMA de supervisión propuesto para un entorno
tiene capacidad para solucionar parcialmente el problema, no multirobots.
hay un sistema global que los controla, los datos no están
centralizados, la computación es asíncrona [5]. Para la
integración de un conjunto de agentes se necesita de tres
6TO CONGRESO IBEROAMERICANO DE ESTUDIANTES DE INGENIERÍA ELÉCTRICA (VI CIBELEC 2015)
entonces, los encoders de la rueda izquierda y derecha encuentre inicialmente sobre la trayectoria o en un punto de
muestran un incremento de pulsos, ! del encoder de la rueda referencia cercano a ella. Para lograr el seguimiento de la
derecha y " de la rueda izquierda, se puede calcular el trayectoria se propone una estrategia de control basada en un
incremento de la distancia recorrida por la rueda izquierda ∆!" regulador PI (Proporcional-Integral). Para realizar el diseño
y ∆!! derecha como se indica en la ecuación (8). del controlador se usa las ecuaciones (1), (2), (3), si la
velocidad lineal es mantenida como constante, se desea
controlar la dirección del robot, es decir, hacia donde gira. Por
lo tanto, la ecuación (3) es de mayor importancia. Si se usa un
controlador PID se introduce un polo y un cero al sistema, que
hace que aumente su orden. Con un controlador PI se puede
reducir el error en estado estacionario del sistema
realimentado.
Dónde es la distancia entre los dos puntos de contacto de El firmware que lleva el NXT permite acceder a su
las ruedas con el piso. La nueva orientación relativa del protocolo de comunicación escribiendo o leyendo información
robot móvil puede ser calculada con la ecuación (11). directamente mediante el envío de telegramas. Se ha creado
= %& + ∆ (11) una biblioteca en lenguaje C para el control del SMABOT.
Según las especificaciones del protocolo bluetooth para el
De este modo, la posición( , ) relativa del punto central NXT, existe un retardo en el rango de (10,30) milisegundos.
del robot a la que se quería llegar queda expresada como las De esta manera, en el lazo de adquisición de datos se debe
ecuaciones (12) y (13). tomar en cuenta tal retardo, puesto que éste representa un
= %& + ∆ cos (12) límite inferior para el tiempo de interrogación; si se intenta
= %& + ∆ sin (13) interrogar a mayor velocidad se obtiene datos erróneos o
existe perdida de información. Para mejorar el retardo que es
Dónde: y es la posición relativa del punto central del causado por el cambio de modo de comunicación se ha
robot en un instante i. añadido la posibilidad de enviar comandos directos sin
necesidad de respuesta, es decir, no se asegura que lo que se
E. Algoritmo de Control envíe al NXT sea procesado. Con esto se evita el cambio de
El objetivo de aplicar una ley de control al robot móvil es modo de transmisión y el retardo de hasta 30 ms se puede
hacer el seguimiento exacto o asintótico de una trayectoria evitar. Para poder enviar los telegramas o mensajes, el robot
preestablecida sobre el plano XY. Este seguimiento lo debe debe estar conectado con la computadora mediante la
realizar con un punto guía fijo, definido y localizado en la tecnología inalámbrica Bluetooth [17]. Primero se realiza el
plataforma del robot móvil. Hay que diseñar un control que emparejamiento bluetooth del robot SMABOT con el
permita llevar las variables de estado ( , , ) al valor computador, haciendo uso de la biblioteca Bluez-utils, usando
deseado ( , , ), bajo la condición de que el robot se los comandos que provee dicha biblioteca.
6TO CONGRESO IBEROAMERICANO DE ESTUDIANTES DE INGENIERÍA ELÉCTRICA (VI CIBELEC 2015)
D. Prueba local con el control en el Microprocesador NXT En la Fig. 13 el robot finalizó la trayectoria 1, el punto de
del Robot SMABOT color “rojo” dentro del círculo indica la posición actual del
robot.
FIG, 12 Control Local Trayectoria 1. Detección de obstáculo La Fig. 15 muestra el escenario de ejecución de la prueba y
los resultados que va mostrando la interfaz.
B. Prueba Distribuida del Supervisor basado en SMA eventos. Se desarrolló una interfaz en Qt que permite
visualizar la trayectoria seguida por el robot y permite la
activación de consignas de alarma en caso de detección de
situaciones inesperadas (fallas y obstáculos).
REFERENCIAS BIBLIOGRÁFICAS
[1] LEGO. Lego Mindstormsn NXT Hardware Developer Kit.
http://www.lego.com/es-ar/mindstorms/downloads/nxt/nxt-hdk/.
[2] Business Wire. Lego mindstormsnxt 2.0.
[3] J. Aguilar, I. Bessembel, M. Cerrada, F. Hidrobo, and F. Narciso. Una
Metodología para el Modelado de Sistemas de Ingeniería Orientado a
Agentes. Revista Iberoamericana de Inteligencia Artificial, Volumen 12,
Número 38, PP: 39–60, 2008.
[4] J. Aguilar, F. Hidrobo, and M. Cerrada. A Methodology to Specify
Multiagent Systems. Lecture Notes in Artificial Intelligence, 4496:92–
101, 2007.
[5] J. Aguilar, A. Ríos, F. Hidrobo, M. Cerrada. Sistemas MultiAgentes y sus
Aplicaciones en Automatización Industrial. Universidad de los Andes,
2013.
[6] Paola S. Rivero P. EDISMA: Entorno de Desarrollo Integrado para la
creación de Sistemas MultiAgentes. Tesis de Maestría. Universidad de
Los Andes, Postgrado en Computación, 2013.
[7] J. Aguilar, M Cerrada, A. Ríos, and F. Hidrobo. Diseño y Construcción de
una Plataforma para el Desarrollo e Implantación de Sistemas
FIG. 16 Esquema de la Prueba Distribuida del Supervisor SMA Multiagentes. Reporte Técnico, Universidad de Los Andes, CDCHT,
2010.
[8] V. Bravo, J. Aguilar, F. Rivas, y M. Cerrada. Diseño de un Medio de
Finalmente, una vez comprobado el funcionamiento de la Gestión de Servicios para Sistemas Multiagentes. In XXX Conferencia
interfaz y su integración con los agentes del SMA, se usan tres Latinoamericana de Informática, PP 431–439, Arequipa, Perú, Octubre
computadores como se muestra en la Fig. 16. 2004.
[9] H. Morillo. Reporte de instalación y pruebas del Medio de Gestión de
Cada computador es un nodo de la plataforma que presta Servicios. Informe Técnico, Universidad de Los Andes, Venezuela, Junio
servicio de procesamiento al SMA y en cada uno de ellos 2012.
debería estar en ejecución una instancia del MGS, siguiendo [10] KSL Stanford University. Knowledge Interchange Format (KIF).
[11] The Foundation for Intelligent Physical Agents (FIPA). Agent
las indicaciones de configuración y ejecución del MGS. La Communication Language Specifications.
prueba se distribuye de la siguiente manera: [12] B. D. Andrea-Novel, G. Campion, G. Bastin. Structural Properties and
Classication of Kinematics and Dynamic Models of Wheeled Mobile
Robots. IEEE Transactions on Robotics and Automation, 1991.
• Equipo A: Agente Robot. [13] A. Banó. Análisis y Diseño del Control de Posición de un Robot Móvil
• Equipo B: Agente Supervisor. con Tracción Diferencial. Universidad Rovira I Virgili. Tarragona, 2003.
• Equipo C: Agente Control. [14] LEGO. Lego Mindstorms NXT Ultrasonic Sensor I2C Communication
protocol. http://www.lego.com/es-ar/mindstorms/downloads/nxt/.
[15] G. Bastin C. Canudas de Wit, B. Siciliano. Theory of Robot Control.
En este caso se obtienen los mismos resultados que para Springer Verlag, 1996.
prueba local, logrando una integración satisfactoria. Con lo [16] The LEGO Group. Lego Mindstorms NXT Direct Commands. 2006.
cual el SS basado en SMA cumple con los requisitos [17] Lawrence Harte, Introduction to Bluetooth, Althos, 2 Edition. 2009.
establecidos. [18] Qt 5. Ejemplos Qt y Tutoriales — qtdoc 5.3.
[19] John Hansen. Bricx Command Center.
[20] John Hansen. NXC Guide
VI. CONCLUSIONES
Se implantó un supervisor basado en SMA que permite el
control supervisorio distribuido para una comunidad de
agentes robóticos, donde cada robot es considerado como un
agente. Para la especificación del supervisor se utiliza la
metodología MASINA con la cual se logró modelar el robot
móvil como un agente. De igual forma, se logró modelar los
agentes para las tareas de supervisión: Agente Supervisor y
Agente Control. El Supervisor se implantó utilizando el
entorno de desarrollo EDISMA, el cual generó un código base
de la estructura de los agentes del SMA y algunos aspectos de
comunicación y coordinación. Se realizaron las pruebas
ejecutando el SS sobre la plataforma del MGS, el cual provee
una biblioteca con facilidades de programación y de alta
abstracción para el intercambio de mensajes entre agentes en
de tiempo real, y el manejo de operaciones basadas en