pegasus.javeriana.edu.copegasus.javeriana.edu.co/~cis1010sd02/documentos/memoria... · web...

143
CIS 1010SD02 Modelo de gestión de formaciones que amplía el modelo de control de cooperación basado en Multi resolución MRCC Diego Francisco Castillo Velásquez Sebastián Plata Duarte

Upload: votuyen

Post on 06-Mar-2018

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

CIS 1010SD02Modelo de gestión de formaciones que amplía el modelo de control de cooperación basado en Multi resolución

MRCC

Diego Francisco Castillo VelásquezSebastián Plata Duarte

PONTIFICIA UNIVERSIDAD JAVERIANAFACULTAD DE INGENIERIA

CARRERA DE INGENIERIA DE SISTEMASBOGOTÁ, D.C.

Page 2: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>2010

Página 2

Page 3: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

CIS 1010SD02Modelo de gestión de formaciones que amplía el modelo de control de cooperación basado en

Multi resolución MRCC

Autores:

Diego Francisco Castillo VelásquezSebastián Plata Duarte

MEMORIA DEL TRABAJO DE GRADO REALIZADO PARA CUMPLIR UNO DE LOS REQUISITOS PARA OPTAR AL TITULO DE INGENIERO DE SISTEMAS

Director

Ingeniero Enrique González Guerrero

Jurados del Trabajo de Grado

Ingeniero Fernando de La Rosa

Ingeniero Eduardo Andrés Gerlein

Página web del Trabajo de Grado

http://pegasus.javeriana.edu.co/~CIS1010SD02/

PONTIFICIA UNIVERSIDAD JAVERIANA

Page 4: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

FACULTAD DE INGENIERIACARRERA DE INGENIERIA DE SISTEMAS

BOGOTÁ, D.C.Diciembre 2010

PONTIFICIA UNIVERSIDAD JAVERIANAFACULTAD DE INGENIERIA

CARRERA DE INGENIERIA DE SISTEMAS

Rector Magnífico

Joaquín Emilio Sánchez García S.J.

Decano Académico Facultad de Ingeniería

Ingeniero Francisco Javier Rebolledo Muñoz

Decano del Medio Universitario Facultad de Ingeniería

Padre Sergio Bernal Restrepo S.J.

Directora de la Carrera de Ingeniería de Sistemas

Ingeniero Luis Carlos Díaz Chaparro

Director Departamento de Ingeniería de Sistemas

Ingeniero César Julio Bustacara Medina

Página 4

Page 5: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Artículo 23 de la Resolución No. 1 de Junio de 1946

“La Universidad no se hace responsable de los conceptos emitidos por sus alumnos en sus proyectos de grado. Sólo velará porque no se publique nada contrario al dogma y la moral católica y porque no contengan ataques o polémicas puramente personales. Antes bien, que se vean en ellos el anhelo de buscar la verdad y la Justicia”

Page 6: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

AGRADECIMIENTOS

Quiero agradecer a Enrique González por permitirnos trabajar en este tema, guiarnos y por todo el apoyo que nos dio durante el año para poder realizar esta investigación, de igual for-ma por dejarnos pertenecer al grupo Bochica y participar en el LARC. Agradecer al gran amigo y compañero, pacho por su apoyo durante el trabajo de grado y la carrera, de igual manera a mis padres porque sin todo su apoyo y amor no sería quien soy hoy, a mis grandes amigos Andrés, Camilo y Santiago. Por último, a Diana por todo su apoyo total e incondicio-nal y cariño en todo momento.

Sebastián Plata Duarte

Este trabajo de grado fue posible de realizar gracias a un grupo de personas que estuvieron conmigo en el proceso de aprendizaje y de crecimiento profesional de mi carrera. Por eso quiero agradecerle a mi familia por acompañarme y apoyarme en todas mis decisiones duran-te este año de trabajo. También quiero agradecerle a mis compañeros de universidad que me han ayudado a cumplir mis metas académicas y a superar los obstáculos que se han presenta-do durante estos años. Por último, quiero agradecerle a mi compañero de tesis por este año de trabajo que ha traído buenos frutos y a Enrique González por brindarme todo el apoyo nece-sario para poder lograr este proyecto acabo.

Diego Francisco Castillo Velásquez

Página 6

Page 7: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

ABSTRACT

This paper shows an investigation about the MRCC(Multi-Resolution Cooperation Control) model that belongs to the groups SIDRE and Takina , Pontificia Universidad Javariana Sci-ence groups. The research topic extends the usable structure and management of the Multi Agent Systems (M.A.S). The entire top model layers where redesign and implemented mak-ing emphasis on the level that is in charge of the system structure.

A huge number of tests where run and the conclusion that was found show that the organiza-tion of the M.A.S enables to obtain the main objective with more efficiency and effective-ness.

Page 8: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

RESUMEN

El presente trabajo presenta una investigación del modelo de MRCC de los grupos de investi-gación SIDRE y Takina, este trabajo se enmarca dentro del tema de sistemas multiagente, el cual extiende el modelo para el manejo de la estructura y su gestión. Se volvieron a diseñar las dos capas superiores del modelo y se implementaron, con énfasis en la capa que se encar-ga de mantener la estructura del sistema.Se realizaron un gran número de pruebas llegando a la conclusión que la organización del sistema multiagente permite tener una mayor eficacia y eficiencia en la obtención del objetivo global.

Página 8

Page 9: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

RESUMEN EJECUTIVO

Esta investigación buscó poder extender el modelo base del MRCC que tiene el grupo de investigación SIDRE para generar la versión extendida del mismo, lo primero que se realizó fue un estudio del marco contextual en el cual en inmerso el modelo base del MRCC, lo cual tiene como base sistemas inteligentes, con un especial énfasis en sistemas multiagentes, ex -presando conceptos como agente, cooperación, multiresolución y por último el modelo gené-rico del MRCC.

Como segundo paso se realizó una investigación sobre los diferentes aspectos que se deben considerar en la organización de entidades, donde se encontraron cinco tópicos en los cuales se sacaron los aportes más importantes. Seguido del análisis de las problemáticas, se realizó un estudio del estado actual de modelo base MRCC, se realizó un contraste con los resultados del análisis de las problemáticas para llegar a los aspectos en que se debían mejorar en el modelo base.

Una vez se tenían los aspectos que debían contener y que se podían integrar al modelo base, se realizó una etapa de diseño para poder las modelar las extensiones del modelo, dando como resultado el modelo extendido que se propone y se implementa en el capítulo cuatro de este trabajo. En la etapa de diseño e implementación se manejó un proceso iterativo con el cliente y de pruebas cada vez acababa cada iteración, cada funcionalidad del modelo fue pro-bada independientemente, después de realizarlo por separado, se fue realizando un proceso incremental en los módulos para poder observar que el comportamiento emergente fuera co-herente con lo esperado. Una vez el modelo quedo implementado se procedió a integrarlo al proyecto de FutbolGeo, el cual estaba inscrito para participar en el Latin American Robotics Competition como el equipo Bochica.

Después de tener el modelo implementado y probado en simulación, se realizó el viaje a San Bernardo, San Pablo, Brasil para participar en el LARC, se participó exitosamente pudiendo observar que el equipo reaccionaba a los eventos externos del ambiente, como lo son los ca -sos de excepción.

Después de la participación en la competición se procedió a realizar una validación estadísti -ca en el caso de estudio específico de futbol para comprobar que la organización y estructura-ción del SMA permite ayudar al cumplimiento del objetivo, esto se validó exitosamente con-siguiendo evaluar dos equipos en las mismas condiciones, pero uno de ellos sin organización y estructuración, dando como resultado que el equipo que contaba con las capas diseñadas e implementadas en este trabajo aumenta la eficacia, mayor número de victorias, y eficiencia, mayor número de acciones realizadas en menos intentos.

Page 10: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

I. INTRODUCCIÓN.........................................................................................13

II. AGENTES, COOPERACION Y MRCC.....................................................15

1. CONTEXTO GENERAL DE AGENTES Y COOPERACIÓN EN SMA.....15a. Definición de agente...............................................................................................15b. Sistemas multiagente...............................................................................................16

2. MODELO GENÉRICO DE CONTROL DE COOPERACIÓN CON MULTIRESOLUCIÓN................................................................................................18

a. Multiresolución.......................................................................................................18b. Jerarquía de objetivos.............................................................................................20c. Cooperación SMA con Multiresolución..................................................................21

3. MODELO BASE.............................................................................................22a. Arquitectura del modelo base MRCC.....................................................................22

4. NIVEL FORMACIÓN.....................................................................................24a. Definición general de formación............................................................................25b. Definición de zona de acción..................................................................................25c. Definición de rol estructurante...............................................................................26d. Reglas estructurantes..............................................................................................26e. Negociación entre zonas.........................................................................................26f. Detección de necesidades............................................................................................27g. Análisis de falencias del modelo base de formaciones...........................................28

III. PROBLEMÁTICAS Y SOLUCIONES PARA EL DESARROLLO DE UN MODELO GESTOR DE FORMACIONES EN UN SMA..............................30

1. CONTEXTO DE FORMACION.....................................................................30a. Objetivos de las formaciones..................................................................................31b. Factores necesarios para la selección de una formación......................................38c. Gestión y distribución del espacio..........................................................................47d. Formas de influenciar el comportamiento de los agentes por las formaciones.....49e. Arquitectura de un gestor de formación.................................................................50

IV. MEJORAS PROPUESTA AL MODELO MRRC......................................52

1. CAPA DE FORMACIONES...........................................................................52a. Formación...............................................................................................................52b. Zona........................................................................................................................54c. Táctica.....................................................................................................................56d. Objetivo...................................................................................................................58e. Rol estructurante.....................................................................................................61

Página 10

Page 11: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

2. CAPA MICRO SOCIAL.................................................................................64a. Planes......................................................................................................................64

3. CAPA SISTEMA.............................................................................................66

V. IMPLEMENTACIÓN DEL MODELO.......................................................68

1. ANÁLISIS..........................................................................................................68

2. DISEÑO.............................................................................................................70

3. IMPLEMENTACIÓN............................................................................................74

4. PRUEBAS...........................................................................................................74

VI. CASO DE ESTUDIO ESPECÍFICO: FÚTBOL ROBÓTICO..................76

1. PROTOCOLO DE PRUEBAS.................................................................................76a. Variables independientes........................................................................................77b. Variables dependientes...........................................................................................80c. Variables intervinientes..........................................................................................81

2. PROTOCOLO DE PRUEBAS.................................................................................82a. Presentación y análisis de resultados.....................................................................82

VII. CONCLUSIONES Y TRABAJO FUTURO.............................................................91

VIII. BIBLIOGRAFÍA.............................................................................................93

Page 12: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Índice de Figuras

Figura 1. Modelo y elementos del paradigma de las 5C..........................................................18

Figura 2 Ejemplo de Multiresolución.......................................................................................20

Figura 3 .Elementos para la representación gráfica del modelo MRCC..................................22

Figura 4 . Arquitectura del modelo base MRCC......................................................................22

Figura 5. Macro algoritmo de detección de necesidades.........................................................27

Figura 6. Concepto de Formación............................................................................................53

Figura 7. Concepto de Zona.....................................................................................................55

Figura 8. Concepto de Táctica..................................................................................................57

Figura 9. Concepto de Instancias.............................................................................................58

Figura 10. Concepto de Objetivo.............................................................................................59

Figura 11. Concepto de Rol estructurante................................................................................63

Figura 12. Diagrama de clases extendido.................................................................................71

Figura 13. Diagrama de agentes...............................................................................................74

Figura 14. Formación base con 3 jugadores Figura 15. Formación base con 3 y 2 zonas jugadores y 3 zonas..................................................................................................................79

Figura 16. Formación base con 4 jugadores Figura 17. Formación base con 4 y 2 zonas jugadores y 3 zonas..................................................................................................................80

Figura 18. Formación base con 5 jugadores Figura 19. Formación base con 5 y 2 zonas jugadores y 3 zonas..................................................................................................................80

Figura 20. Porcentaje de partidos ganados...............................................................................84

Figura 21. Promedio del número de goles realizados por partido............................................85

Página 12

Page 13: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Figura 22. Promedio del número de intentos para realizar acciones cooperativas por partido...................................................................................................................................................86

Figura 23. Promedio del número de acciones cooperativas realizadas con éxito por partido..87

Figura 24. Promedio del número de goles realizados por partido evaluados por zonas y núme-ro de jugadores.........................................................................................................................88

Figura 25. Porcentaje de partidos ganados evaluado por zonas y número de jugadores.........88

Figura 26. Promedio del número de intentos para realizar acciones cooperativas por partido, evaluadas por zonas y número de jugadores............................................................................89

Figura 27. Promedio del número de acciones cooperativas realizadas con exito, evaluadas por zonas y número de jugadores...................................................................................................90

Page 14: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

I. INTRODUCCIÓN

El presente trabajo de grado se enmarca dentro del contexto de los sistemas multiagentes y la

inteligencia artificial, los cuales son temas de investigación de los grupos SIDRE y Takina de

la Pontificia Universidad Javeriana de Bogotá. Desde hace 6 años el grupo de investigación

SIDRE ha venido desarrollando el modelo de Multi-Resolution Cooperative Control MRCC

que pretende solucionar problemas de gran complejidad mediante los conceptos de Multireso-

lución y cooperación en sistemas multiagentes.

A través de este tiempo se han venido extendiendo y depurando el modelo, hasta su último

desarrollo que se hizo mediante el trabajo de grado de Camargo y Bernal [BERN2008]

[BERN2007], este será llamado en el documento como el modelo base. Los trabajos mencio-

nados anteriormente establecieron una arquitectura para este modelo, la cual se compone de 4

capas: Sistema, Formación, Micro-social, Agente. En el final de este trabajo se han imple-

mentado todas las capas. En la capa Formación se ha trabajado en su diseño e implementa-

ción, pero no se ha finalizado. Finalmente, en la capa Sistema no se ha realizado un aporte

considerable, se conocen sus responsabilidades pero no de que formas las debe cumplir. De-

bido a que el modelo base no tiene la capa Sistema y Formaciones desarrollados en su totali-

dad, se presentó la necesidad de trabajar en el análisis y la extensión del modelo.

En el modelo base se presenta la oportunidad de completar la capa Formaciones y proponer la

capa Sistema, mediante un gestor de formaciones que gestione la organización del sistema,

mantenga esta organización a través del tiempo, la pueda cambiar a través del tiempo y per-

mita alcanzar el objetivo global de manera más eficiente[BERN2007].

El desarrollo del modelo extendido MRCC el cual tiene la reformulación de la capa de forma-

ciones y de la capa sistema tuvo un proceso de refinamiento amplio debido a que una vez se

realizó la extensión del modelo base se realizaron pruebas en simulación para el caso de estu-

dio específico de fútbol robótico, con el fin de probar su correctitud. Luego, el modelo tuvo

otra etapa de refinamiento para ajustar los errores de la implementación del modelo. Una vez

el modelo tuvo esta etapa de refinamiento final en simulación, se realizaron pruebas con ro-

bots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los últimos

Página 14

Page 15: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

ajustes para poder competir en el campeonato latinoamericano de fútbol robótico LARC

[LARC2010] desarrollado en el mes de Octubre del 2010 en Sao Paulo Brasil.

El reporte de la investigación realizada en este trabajo de grado se organizará de la siguiente

manera: en el capítulo 2, se definirá el marco conceptual de agentes, cooperación y el modelo

base MRCC, en el cual está enmarcado el trabajo de grado; en el capítulo 3, se muestra la

investigación realizada en las problemáticas y soluciones para el diseño de un gestor de for-

maciones; en el capítulo 4, se define la propuesta de extensión al modelo MRCC y los cam-

bios al modelo base; en el capítulo 5, se define como se realizó el modelo extendido en cuan -

to a diseño y codificación de software; en el capítulo 6, se describe el protocolo experimental

que se usó para validar el modelo y se muestran los resultados obtenidos y finalmente, en el

capítulo 7, se presentan las conclusiones y los trabajos futuros.

Page 16: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

II. AGENTES, COOPERACION Y MRCC

En este capítulo se presenta el contexto en el cual se enmarca la investigación, con el fin de

contextualizar al lector. Una vez este contextualizado el lector con los conceptos claves que

rigen el presente trabajo, se realizará una descripción general del modelo MRCC.

1. CONTEXTO GENERAL DE AGENTES Y COOPERACIÓN EN SMA

En esta sección se presentaran los conceptos fundamentales de agentes y sistemas multiagen-

tes sobre los cuales se desarrolló la investigación.

a. Definición de agente

El concepto de agente no es concepto unificado y tampoco estándar, debido que se puede

analizar desde diferentes perspectivas y/o de acuerdo a la línea de investigación en la que se

quiera estudiar [TOLO1999]. Diferentes autores como [WOOL1998], [RUSS2004],

[TOLO1999] y [MAES1994] definen un concepto de agente basado en diferentes aproxima-

ciones. A continuación se analizarán la aproximación basada en propiedades, en servicios, en

su objetivo principal y en su arquitectura interna.

La aproximación de agente basado en propiedades define a un agente como situado, pro-

activo, autónomo y social [WEIS1996]. Un agente es situado cuando tiene la capacidad de

interactuar con el ambiente en el cual se encuentra inmerso. Un agente es proactivo cuando

su comportamiento está dirigido al cumplimiento de objetivos. Un agente es autónomo a

medida que usa sus percepciones, experiencia e información inicial para tomar sus propias

decisiones y aprender a comportarse de forma correcta. Finalmente, un agente es social a

medida que se comunica y comparte sus habilidades y recursos con otros agentes para cum-

plir un objetivo grupal.

La aproximación de agente orientado a servicios modela a un agente como una entidad

que puede prestar un conjunto de servicios [GONZ2007]. Estos prestan servicios mediante la

manipulación de recursos que se encuentran en su ambiente, de manera que un agente puede

producir, transformar, consumir o intercambiar recursos para suplir un servicio.

Página 16

Page 17: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

La aproximación de agente desde su objetivo principal plantea que de acuerdo a la línea

de investigación que se trabaje se debe priorizar el objetivo principal de cada agente

[TOLO1999]. A partir de esta perspectiva se pueden definir cuatro tipo de agentes: agentes de

interfaz, agentes colaborativos, agentes móviles y agentes de recuperación de información.

Los agentes de interfaz asisten y reducen el trabajo de un usuario cuando tiene interacción

con una aplicación. Los agentes colaborativos extienden una funcionalidad de un sistemas

más allá de uno de sus miembros para satisfacer los requerimientos del usuario. Los agentes

móviles son entidades activas que son capaces de desplazarse por una red e interactuar con

otros equipos para realizar tareas especificadas por un usuario. Por último, los agentes de

recuperación de información obtienen información en representación de un usuario.

La aproximación basada en la arquitectura interna clasifica a los agentes de acuerdo a su

arquitectura interna y su forma de tomar las decisiones [GONZ2007]. A partir de esta

perspectiva se pueden definir tres tipos de agentes: agentes reactivos, agentes deliberativos y

agentes BDI. Un agente reactivo es aquel que toma sus decisiones a partir de las percepcio-

nes que tiene en un instante determinado de tiempo sin tener en cuenta sus percepciones ante-

riores. Los agentes deliberativos son aquellos que toman en cuenta la información histórica

para tomar sus decisiones y ejecutar planes. Finalmente, los agentes BDI son aquellos que se

basan en el modelo BDI (Belive, Desire, Intention), en donde a partir de la base de conoci-

miento local (creencias) y los objetivos (deseos) que el agente tiene define la forma en el que

un agente realiza sus acciones para cumplir sus objetivos (intenciones).

De acuerdo al contexto de este trabajo se tomará la definición de agente planteada por Gonzá-

lez [GONZ2007], una entidad autónoma que actúa para cumplir sus objetivos en un ambiente

de trabajo.

b. Sistemas multiagente

Si se analiza un agente de manera aislada, este puede desarrollar una tarea simple para cum-

plir un objetivo simple; sin embargo, si se necesita realizar tareas más complejas un solo

agente no podría realizarla. A partir de esta necesidad, emerge el concepto de sistema multia-

Page 18: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Cooperación

Colaboración Coordinación Resolución de conflictos

Comunicación

Ingeniería de Sistemas SIDRE <CIS1010SD02>

gente, el cual se define según Ferber [FERB1999] como un conjunto organizado de agentes

que interactúan de forma cooperativa para lograr de manera colectiva un objetivo global. Un

sistema multiagente está conformado por los siguientes elementos:

Ambiente: Espacio real o virtual en el que perciben y actúan los agentes.

Objetos: Conjunto de entes activos o pasivos que están situados en el ambiente.

Agentes: Conjunto de entes activos.

Relaciones entre objetos: conjunto de relaciones que vinculan los objetos.

Operaciones: acciones mediante las cuales los agentes pueden producir, consumir,

transformar y manipular objetos.

Operadores: son la aplicación de operaciones y la reacción del mundo en los inten-

tos de modificación que realizan los agentes.

1.1. Cooperación en SMA

González [GONZ2007] define el paradigma de las 5C, el cual es un modelo de cooperación

que se basa del modelo de cooperación de las 3C de Ferber [FERB1999] y le incorpora dos

nuevos conceptos. El paradigma de las 5C plantea que la cooperación se da por la colabora-

ción, coordinación y la resolución de conflictos soportado sobre la comunicación, la cual se

observa en la figura 1:

Figura 1. Modelo y elementos del paradigma de las 5C

Página 18

Page 19: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

La cooperación define las interacciones que tienen un grupo de agentes basándose en

las acciones que cada agente realiza para cumplir con sus objetivos. La cooperación

se basa en la colaboración, la coordinación y la resolución de conflictos para poderse

desarrollar, a su vez se soporta en la comunicación la cual es la base para que la co-

operación pueda existir.

La colaboración se refiere a la forma en que se distribuyen las tareas entre los agen-

tes para lograr un objetivo. Esta se basa en la comunicación para poderse desarrollar.

La coordinación es la forma en la que se articulan las acciones individuales de cada

uno de los agentes.

La resolución de conflictos son los mecanismos que permiten manejar las diferen-

cias que pueden existir entre los agentes por acceso a recursos compartidos limitados.

La comunicación es el envió de mensajes de un emisor a un receptor. Es la base

fundamental del modelo para que pueda existir cooperación en un sistema multiagen-

te.

Por lo tanto, dentro de un sistema multiagente es indispensable un modelo de cooperación

que le permita a un conjunto de agentes cooperativos actuar con una visión de equipo y orga-

nización, con el fin de alcanzar las metas globales y poder manejar la complejidad de un sis-

tema.

2. MODELO GENÉRICO DE CONTROL DE COOPERACIÓN CON

MULTIRESOLUCIÓN

Este capítulo presenta el modelo genérico de control de cooperación con multiresolución y

los conceptos del mismo sobre el cual está el modelo base MRCC y sobre el cual se realizó su

extensión.

a. Multiresolución

El modelo genérico de cooperación se basa en el concepto de Multiresolución, definido por

Meystel [MEYS2002], en el contexto de planificación de trayectorias para robots móviles.

En este contexto el robot desea moverse de un punto inicial a un punto final, pero para poder

Page 20: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

planificar su desplazamiento hasta el punto final, debe pasar por una serie de niveles de reso-

lución.

La tarea comienza en el nivel más grueso de resolución que es la tarea en su totalidad, pero a

medida que se disminuye el nivel de complejidad se descompone esa tarea global en tareas

más simples, que una vez realizadas representan la consecución de la tarea global. Sin embar-

go, cabe aclarar que al ir aumentando progresivamente el nivel de detalle debe encontrarse

con un punto de parada en la descomposición, que en este caso son las primitivas básicas de

movimiento del robot.

En cada nivel se planifica el camino; al pasar a un nivel inferior, el espacio de planificación

de este se restringe pro la solución generada por el nivel superior.

Bernal [BERN2007] define un ejemplo para poder comprender de manera más sencilla el

concepto de Multiresolución: En la figura 2, se puede apreciar la gráfica del ejemplo. Supon-

ga que una persona está ubicada en un apartamento y que su objetivo es ir del punto A al

punto B. Primero es necesario encontrar la ruta a seguir (primer nivel de resolución), pero la

ejecución de esta labor puede ser descompuesta en labores más pequeñas tales como salir de

la habitación, subir las escaleras, entre otras (segundo nivel de resolución); Las cuales a su

vez pueden ser descompuestos en tareas más sencillas como caminar de frente 10 pasos, lue -

go girar 90 grados, y así sucesivamente hasta que se considere suficiente la descomposición

para poder realizar la tarea.

Página 20

Page 21: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Figura 2 Ejemplo de Multiresolución.

b. Jerarquía de objetivos

En el modelo MRCC se establece una jerarquía de objetivos por niveles. Se define tres nive-

les de objetivos:

Objetivos globales: Rigen la conducta de todo el SMA. Básicamente, el objetivo

final para el cual fue diseñado el sistema.

Objetivos compartidos: Rigen la conducta de un grupo de agentes. Dos o más agen-

tes cooperan para alcanzar un objetivo intermedio.

Objetivos específicos: Rigen la conducta de un solo agente. Se trata de los objetivos

individuales de cada agente.

Estos objetivos deben tener tres características: dinámicos, coherentes y completos. Un obje-

tivo es dinámico porque cambia a través del tiempo según los requerimientos del sistema; es

coherente porque debe estar encaminado a cumplir con el objetivo global y es completo

porque es suficiente para lograr el objetivo final. De esta manera, si los objetivos de cada

nivel son coherentes deben estar encaminados al cumplimiento del objetivo global del siste -

ma multiagente.

Page 22: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

c. Cooperación SMA con Multiresolución

En el modelo base se puede unir el concepto de cooperación en un sistema multiagente y el

de multiresolución para describir un modelo de cooperación basado en multiresolución

MRCC. Este está basado en la premisa de que la cooperación puede abordarse por niveles,

donde los niveles altos involucran una abstracción de las metas del sistema como un todo,

mientras que los niveles más bajos involucran las metas del agente en forma individual. De

igual manera, en el concepto de Multiresolución propuesto por Meystel [MEYS1999], las

metas de los agentes individuales están sujetas a las restricciones impuestas por los niveles

superiores, cuyas metas y objetivos están alineados con los del sistema. Los niveles medios

permiten construir esquemas organizacionales intermedios, los cuales respetan las metas glo-

bales, y al mismo tiempo restringen o establecen parámetros a los niveles inferiores. El es-

quema del modelo MRCC establece una jerarquía en el control de la cooperación, lo cual no

implica que los agentes ni los patrones de comunicación deban ser jerárquicos. Partiendo de

la suposición de que los agentes son cooperativos, se intuye que los objetivos de éstos están

encaminados a la consecución del objetivo principal del sistema multiagente; aunque, cada

uno de los agentes deba limitar un poco su autonomía.

De acuerdo con la definición del modelo genérico basado en multi resolución, se define que

está construido por una arquitectura en capas, en donde cada capa tiene un nivel de abstrac-

ción diferente. Esta arquitectura en capas se puede definir mediante los siguientes elementos:

Capa o nivel: Es un subsistema que tiene una capacidad racional y un proceso de

toma de decisiones, que puede influenciar a las otras capas del sistema, con el fin de

lograr el objetivo global del sistema.

Conexiones o influencias: Una influencia o conexión es la forma en la que una capa

tiene influencia sobre otra. Existen dos tipos de conexión: parametrizante y de retroa-

limentación. La conexión parametrizante es una influencia de una capa superior a

otra capa de nivel inferior. Una conexión de retroalimentación es una influencia de

una capa a una capa de nivel superior. La figura 3 presenta la notación anteriormente

mencionada.

Página 22

Page 23: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Figura 3 .Elementos para la representación gráfica del modelo MRCC.

De esta manera, el modelo MRCC base está compuesto por cuatro capas: sistema, formación,

microsocial y agente, que se describirán en la siguiente sección.

3. MODELO BASE

Esta sección presenta el modelo base MRCC, sus ventajas y desventajas, sobre el cual se

realizó la extensión para tener como resultado el modelo extendido del MRCC.

a. Arquitectura del modelo base MRCC

Como lo define Bernal [BERN2007] la arquitectura del modelo MRCC define cuatro capas,

las cuales tienen responsabilidades concretas e influencian entre capas. La figura 4 muestra la

arquitectura del modelo base.

Figura 4 . Arquitectura del modelo base MRCC

Page 24: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

En esta arquitectura la capa sistema es la capa con mayor nivel de abstracción y es la encarga-

da de parametrizar a la capa formación mediante la selección de una formación específica

para el sistema, y a su vez influencia el comportamiento de un agente mediante la asignación

de un rol excepción dado la ocurrencia de un caso especial que se produzca en el ambiente.

Una vez se define una formación para el sistema, la capa formación establece el orden y la

estructura del sistema parametrizando a la capa microsocial las preferencias de las acciones

cooperativas, y a su vez influenciando el comportamiento base de los agentes del sistema

mediante la asignación de un rol estructurante. Cuando se realizan las acciones cooperativas,

se influencia el comportamiento de los agentes involucrados mediante la asignación de un rol

cooperativo. Una vez, los agentes tengan su rol definido ya sea por la capa sistema, forma-

ción o por la capa microsocial realizarán sus acciones individuales.

A continuación, se definirán cada uno de las capas del modelo MRCC de acuerdo a lo plan-

teado por Bernal [BERN2007].

Capa agente

Es la capa que transforma en acciones las decisiones de la capa sistema, formación y micro -

social de acuerdo a los conocimientos, habilidades y capacidades de cada uno de los agentes.

Cada acción cooperativa, cambio de rol estructurante o cambio de rol excepción permiten al

agente asumir dinámicamente diversos roles. Mediante el concepto de rol se puede ligar la

capa agente con las demás capas del sistema debido a que el rol representa la responsabilidad

de alcanzar los objetivos específicos utilizando los recursos y las habilidades propias del

agente.

Capa microsocial

Es el nivel encargado de detectar las oportunidades de cooperación entre un pequeño grupo

de agentes. Esta capa se encarga de regular el cumplimiento de los objetivos del grupo de

agentes que estén involucrados en una microsociedad. Una microsociedad se define como un

subconjunto de agentes del sistema que interactúan para lograr un objetivo común.

Debido a las responsabilidades de esta capa, se encarga de establecer las técnicas de coopera-

ción que se utilizarán para resolver problemas de colaboración, coordinación y resolución de

Página 24

Page 25: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

conflictos. Para ello esta capa define una estructura que modela la interacción entre los agen-

tes llamada Acciones Cooperativas. Las acciones cooperativas especifican tareas de coope-

ración que son realizadas por uno o varios a agentes, en donde se manejan mecanismos de

negociación para definir los roles de los agentes que interactúan en la acción.

Capa formación

El nivel formación es una capa comprendida en el nivel intermedio superior cuya responsabi-

lidades son: modular las acciones cooperativas dentro del espacio de acción de los agentes,

facilitar la consecución del objetivo final de los agentes y promover el mantenimiento de la

estructura organizada dentro del mismo.

La estructura de diseño que modela esta capa es la formación. Una formación es un conjunto

de agentes que unidos conforman un todo.

Capa sistema

Es el nivel encargado de tomar las decisiones de alto grado de abstracción del comportamien-

to cooperativo para poder lograr los objetivos globales del sistema. Esta capa es la que conce-

de los lineamientos generales del comportamiento de cada uno de los agentes del sistema de

acuerdo a las estrategias generales del sistema multiagente. En este nivel se toman las deci -

siones que el SMA necesita para cumplir sus objetivos, sin necesidad de conocer la forma en

la que se van a realizar o los agentes involucrados en realizar esas tareas.

4. NIVEL FORMACIÓN

Anteriormente se mencionaron las responsabilidades del nivel formación, pero ahora se van a

explicar con más detalle los conceptos que conforman este nivel de acuerdo al modelo base

del MRCC Bernal [BERN2007].

a. Definición general de formación

El concepto de formación se analizará desde una perspectiva conceptual y una perspectiva

formal. En el contexto del modelo MRCC una formación desde el punto de vista conceptual

Page 26: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

se define como un conjunto de agentes que unidos conforman el sistema multiagente, con el

objetivo de facilitar la consecución del objetivo final del sistema y promover el mantenimien-

to de la estructura organizada dentro de el mismo.

Formalmente, una zona se define como una tupla F = {ZA, Ob, MN, DN} en donde:

Ob es el conjunto de objetivos a cumplir por los agentes dentro de la formación

ZA representa el conjunto de las zonas de acción en las que está dividido el espacio

de acción.

MN es el mecanismo de negociación entre zonas

DN representa el macro-algoritmo o procedimiento para la detección de las necesida-

des.

b. Definición de zona de acción

Una zona de acción se define como una división del espacio en el que se desarrollan las ac-

ciones de los agentes. Esta división tendrá al menos un objetivo, un conjunto de reglas que

deben satisfacerse y unos roles estructurantes inherentes a la zona.

Una zona formalmente se define como una tupla Zn = {RE, Ob, Ru, Fp, G, Dn} en la que:

Ob es el conjunto objetivos a cumplir por los agentes de la zona.

RE que representa el conjunto de roles estructurantes.

RU es el conjunto de reglas estructurantes que deben satisfacerse.

FP es una medida de distancia o pertenencia del agente a la zona.

DN representa el detector de necesidades.

c. Definición de rol estructurante

Un rol estructurante es una forma de interactuar, actuar y cumplir unas responsabilidades con

la zona, con el fin de encaminar todas las acciones que el agente ejecuta al cumplimiento de

sus responsabilidades. Estas responsabilidades están ligadas a dar y promover el manteni-

miento de orden o estructura dentro del SMA.

Página 26

Page 27: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Un rol estructurante se puede definir formalmente como una tupla RE = {Rs, Mo} en donde:

Rs son las responsabilidades asociadas a la ejecución rol.

Mo es la función de toma de decisiones asociado a la movilidad del rol estructurante.

d. Reglas estructurantes

Las reglas estructurantes están asociadas al manejo de la cardinalidad de los diferentes roles

al interior de la zona de acción; definen cual es la cantidad mínima y máxima de agentes con

los que la zona puede cumplir sus objetivos.

Cada zona tiene su mínimo y máximo número de agentes el cual se debe respetar cada vez

que la zona establece una negociación o realiza una estructuración interna.

e. Negociación entre zonas

La negociación entre las zonas tiene 2 orígenes básicos. El primer caso es cuando un agente

se aleja de su zona y se ubica en otra zona de acción. El segundo caso es cuando se requiere

un agente con habilidades específicas.

Los pasos claves de una negociación son los siguientes:

La negociación del paso de un agente de una zona a otra debe dejar a cada una de las

partes implicadas en un estado consistente.

Para todas las negociaciones se deben tener presentes las reglas estructurantes de la

zona, estas describen la estructura de la zona en términos de la cardinalidad de los

roles estructurantes.

Resolver y generar peticiones de negociación para el intercambio y/o préstamo de

agentes entre zonas.

f. Detección de necesidades

El modelo de necesidades del modelo MRCC se basa en Yen [YEN2004], el cual plantea una

propuesta para el manejo de las necesidades de información, según él “anticiparse a las nece-

Page 28: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

sidades de los compañeros y pro-activamente asistirlos es un comportamiento deseable al

interior de un equipo”. Acoplada esta propuesta al modelo MRCC, las necesidades que sur-

gen por la falta o carencia del cumplimiento de los objetivos de la zona.

Para detectar las necesidades en una zona se planteó el macro algoritmo de detección de nece-

sidades, el cual se representa mediante el siguiente diagrama de flujo de la figura 5:

Figura 5. Macro algoritmo de detección de necesidades.

Este macro algoritmo evalúa si el estado actual satisface o se es superior al umbral con rela -

ción al estado deseado donde no se presenta necesidad, si hay necesidad observa si la puede

satisfacer localmente o es necesario iniciar una negociación con las zonas adyacentes.

g. Análisis de falencias del modelo base de formaciones

El modelo base de formaciones presenta tres falencias que están relacionadas a la detección

de necesidades de la zona, a las acciones que debe realizar una zona una vez lleva a cabo una

Página 28

Page 29: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

negociación y a los criterios que se deben tener en cuenta para realizar un cambio de forma-

ción.

La primera inexactitud es que el modelo de detección de necesidades se basa en el número de

acciones cooperativas realizadas por un agente para analizar si existe una necesidad en una

zona. De manera que si un agente realiza muchas acciones cooperativas en su zona, no va a

existir necesidad; pero, si no realiza un número considerable de acciones cooperativas la zona

entrará en necesidad y se activarán los mecanismos de negociación para suplir esa necesidad.

Este modelo de necesidades es genérico y se aplica para cualquier caso, sin importar el domi -

nio de la aplicación. Es aquí donde radica el problema del modelo, debido que al ser tan gené-

rico obvia la lógica del dominio de la aplicación causando que en algunos casos falle.

Para ejemplificar este hecho se tomará el caso de estudio fútbol robótico, y se planteará la

siguiente situación: existen dos defensas en la zona defensiva, un defensa derecho y un defen-

sa izquierdo. Si el equipo contrario empieza a atacar por la zona derecha, el defensa derecho

empezará a realizar acciones cooperativas para cumplir con su objetivo y a medida que los

atacantes sigan atacando por la misma zona derecha el defensa derecho realizará sus acciones

cooperativas correspondientes, mientras el defensa izquierdo se queda en su posición base sin

realizar ninguna acción cooperativa, porque el equipo contrario no ha atacado por esa zona.

Cuando el detector de necesidades se active, va a analizar que el defensa derecho realizó mu-

chas acciones cooperativas y que hizo bien su trabajo de defensor; mientras el defensa iz -

quierdo no ha realizado acciones cooperativas y según sus criterios el objetivo de la zona no

se está cumpliendo, lo que implica que existe una necesidad. Conclusión que es falsa porque

el equipo contrario atacó siempre por la zona derecha de la cancha y el defensa derecho cum-

plió con el objetivo, pero como el equipo contrario nunca atacó por la zona izquierda, el

agente defensor izquierdo no pudo activar ninguna acción cooperativa.

El segundo problema que existe en el modelo base son las acciones que debe realizar una

zona después de llevar a cabo una negociación. Cuando se detecta una necesidad, la zona

entra en un período de negociación con las zonas adyacentes para la petición o el intercambio

de agentes, y una vez termine la negociación la zona puede recibir nuevos agentes. Es en este

Page 30: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

momento, cuando surge el problema de la reestructuración de la zona porque en el modelo

base no se define de manera clara como se debe reestructurar una zona de manera eficiente de

tal manera que no se necesite realizar un cambio de formación completamente.

El tercer problema son los criterios que se deben tener en cuenta para la selección de una

formación. En el modelo base no se definen los criterios que debería considerar el nivel siste -

ma para realizar un cambio de formación de manera inteligente.

Página 30

Page 31: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

III. PROBLEMÁTICAS Y SOLUCIONES PARA EL DESARROLLO DE UN MODELO GESTOR DE FORMACIONES EN UN SMA

En el capítulo anterior se contextualiza al lector mediante la descripción del marco conceptual

en el cual se realizó este trabajo y se define el estado del modelo base del MRCC y las opor -

tunidades de mejora que se identificaron para refinar el modelo.

Dadas las oportunidades de mejora que presenta el modelo, en este capítulo se presenta los

resultados de la investigación que se realizó, mediante la descripción de las problemáticas

que contemplan diferentes autores para realizar un modelo gestor de formación y sus respecti-

vas soluciones.

1. CONTEXTO DE FORMACION

Cuando se quiere tener en un SMA una organización de los agentes que lo componen, es

necesario pensar cuándo, cómo y por qué se va a cambiar la organización actual por una nue-

va. La organización o formación de un SMA influye en su rendimiento, por tanto el cambio

que se realice debe poder ayudar a que el sistema esté más cerca de alcanzar su objetivo glo-

bal. Por ejemplo RoboCup y RoboRescue son aplicaciones en donde la forma en que se orga-

nicen los robots va afectar el rendimiento del sistema y va a ser un factor importante que

influya en la consecución del objetivo principal.

Para poder abordar las problemáticas y las posibles soluciones de un modelo que gestione

formaciones en un SMA, se debe definir el concepto genérico de formación. Una formación

se puede entender como una estructura organizada, que mantiene un orden específico en un

sistema a lo largo de un tiempo y que se ejecuta para cumplir un objetivo específico.

A continuación se presenta las características y los conceptos que giran alrededor de una for-

mación, desde diferentes autores. Para ello se presenta los objetivos de una formación, los

factores que se deben tener en cuenta para elegir una formación, La distribución del espacio

que una formación emplea para ejecutarse, la manera en la que una formación influencia el

Page 32: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

comportamiento de los agentes y finalmente cual es la arquitectura que debería tener un ges-

tor de formaciones.

a. Objetivos de las formaciones

La formación tiene unas finalidades que le permiten al sistema multiagente alcanzar la meta

global de manera más eficiente. Estas finalidades son: mantener el orden y la estructura del

SMA, favorecer las acciones cooperativas, gestionar el conflicto entre el mantenimiento de la

estructura y el favorecimiento de las acciones cooperativas del SMA e interferir en el desem-

peño de un SMA antagonista.

Mantener el orden y estructura

El primer objetivo de una formación es mantener su orden y su estructura a medida del tiem-

po. Este objetivo busca que el sistema mantenga un nivel de desempeño y le permita alcanzar

sus objetivos globales de manera más eficiente. Para poder cumplir esta primera finalidad se

puede definir mecanismos de dispersión y compactación y un modelo de estructuración por

zonas.

Mecanismos de dispersión y compactación

[LAU2009] propone un modelo en donde se define un rol principal para uno de los agentes y

un rol de apoyo para los otros agentes, con el fin de que el agente con rol principal ejecute las

acciones más importantes de la tarea a ejecutar y los de apoyo permanezcan alrededor del

principal; promoviendo las acciones cooperativas, el sistema se mantenga compacto y los

agentes del rol de apoyo estén en la región de acción del rol principal.

Otra aproximación en el cual se busca mantener el equipo ordenado se presenta en

[SVAT2001], en donde se plantea el uso de un campo de fuerza vectorial, el cual va guiando

grupos específicos de agentes a espacios del ambiente dependiendo del lugar, la funcionali-

dad que se necesite y de cómo necesiten organizar al grupo. En esta aproximación no se asig -

na un orden explícito a los agentes, sino que se ubican en el ambiente en campos de atracción

o repulsión. Estos campos influyen en los movimientos de los agentes y hacen que los agen-

tes sigan o esquiven puntos específicos. Mediante estos campos el sistema puede mantener

Página 32

Page 33: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

el orden, ya sea para que ocupen espacios a lo largo o a lo ancho del ambiente donde se en-

cuentren. El orden que se le da al SMA es dinámico, y se puede usar para mantener el sistema

compacto o disperso, dependiendo de sus necesidades y en diferentes instantes de tiempo.

Estructuración por Zonas

Según [BERN2007] una zona es una división del espacio total de acción, que se compone de:

un conjunto de objetivos específicos, un conjunto de reglas a cumplir, unos roles que deben

asumir los agentes en esa zona, una medida de pertenencia que tiene el agente a la zona y un

detector de necesidades que busca la satisfacción de los objetivos específicos de la zona. El

conjunto de zonas cubren el espacio total de acción del SMA, y según el problema que se

modele, las zonas pueden solaparse.

Mediante los objetivos específicos y las reglas de la zona se pretende mantener el orden que

la formación estableció, en el espacio específico en donde la zona esté ejerciendo control.

Ningún otro autor consultado en la realización de este documento tiene un concepto de zona

definido como el de modelo base, debido a que los otros autores usan el concepto de zona

como la ubicación espacial en la que se encuentra uno o varios agentes, desligándolo de los

objetivos específicos y las necesidades del SMA. De esta aproximación se concluye que al

mantener el SMA compacto o disperso, puede llegar a ofrecer un mejor rendimiento del

SMA, hasta tal punto que pueda favorecer las condiciones de las acciones cooperativas.

Los mecanismos de compactación y dispersión se pueden combinar con el fin de mantener la

estructura de la zona, cumplir las reglas establecidas y promover el cumplimiento de los obje-

tivos específicos.

Favorecer las acciones cooperativas

La definición de formación hace relevancia al hecho de que una formación facilita la conse-

cución del objetivo final, entonces una formación puede colaborar en ello potenciando las

acciones cooperativas del SMA.

Page 34: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Para ello, si se fusionan las definiciones de [REIS2001] y [LAU2009], se puede definir una

acción cooperativa como un plan a corto plazo o un conjunto de acciones que realizan un

grupo de agentes, con el fin de mantener el equilibrio que existe entre la deliberación social y

la deliberación reactiva en un SMA. La deliberación reactiva le permite al agente reaccionar

rápidamente ante los eventos del ambiente, mientras que la social es requerida para la toma

de decisiones y la coordinación de los agentes, permitiendo que ellos actúen como un equipo

coherente en equilibrio su autonomía.

Una acción cooperativa se define antes de una simulación para brindarle flexibilidad a las

formaciones y a las estrategias del SMA, y se manifiesta durante la simulación con mecanis -

mos de comunicación y razonamiento reactivo, a partir de la información percibida por cada

agente. Además, una acción cooperativa le brinda a un SMA la capacidad de asignar roles

dinámicamente, generar acciones cooperativas complejas, mantener un nivel de desempeño,

ser flexible para adaptarse a ambientes dinámicos, mantener estados del mundo consistentes y

completos entre los agentes del sistema.

Acciones cooperativas simples

En [LAU2009] para desarrollar una acción cooperativa simple se utilizan dos roles, el rol

“principal” el cual se encarga de cumplir una función específica y el rol de “apoyo”, el cual

se encarga de apoyar al rol principal, brindándole la oportunidad de realizar acciones coope-

rativas, de tal forma que el rol principal y el de apoyo puedan realizar acciones en conjunto,

con todo lo que esto implica. Para [LAU2009], lo más importante es que el SMA coopere

para obtener un mejor desempeño y pueda cumplir sus metas, debido a que las acciones de

conjunto serán mejores que las individuales y por naturaleza un agente es social.

Nobuyuki [NOBU2006] presenta que sus que sus agentes siempre buscan estar ordenados

alrededor del recurso, de tal forma que estén dispuestos a realizar las acciones cooperativas,

se observa como mantienen ordenados los agentes cerca de posiciones ideales para que pue-

dan realizar la acción cooperativa esperada, debido a que las favorecieron con la posición

asignada, favoreciendo las precondiciones para que estas sucedan, es muy similar a lo que

presenta el autor [LAU2009].

Página 34

Page 35: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Horak [HORA2005] plantea la forma en la que los agentes cambian su comportamiento por

la formación. Para ello, cuando un agente posee el recurso, los demás agentes se forman en

estructura de V, con el fin de favorecer las precondiciones de las acciones cooperativas del

agente que cuenta con el recurso limitado.

Acciones cooperativas complejas

En [LAU2009], no solo el rol de soporte busca estar atento para apoyar y cooperar con el rol

principal, sino que él puede cambiar de rol de manera dinámica dadas las condiciones apro-

piadas. De esta manera el que tiene el recurso es el rol principal y los demás tienen roles de

apoyo, pero cuando en una acción cooperativa sencilla el recurso cambia de agente, ahora el

agente con el recurso tendrá el rol principal, y el otro cambiará a ser el rol de apoyo. Este

cambio dinámico de roles puede producir que inmediatamente después de realizar una acción

cooperativa se den las condiciones necesarias para que suceda otra acción cooperativa. Este

hecho produce que se den acciones cooperativas complejas de forma emergente, la cuales

están compuestas de varias acciones cooperativas simples. Para [LAU2009] lo más importan-

te es que la formación favorezca las condiciones de las acciones cooperativas simples, para

que se puedan dar acciones cooperativas complejas.

Por otra parte, si mediante una formación se facilita el desarrollo de acciones cooperativas

sencillas, se podría apoyar la elaboración de estrategias o planes a largo plazo. Arias

[ARIA2008] lo llama estrategia y Yang [YANG2010] lo llama plan de acciones. Pero los dos

lo definen como un plan a largo plazo que está compuesto por acciones que deben realizar un

grupo de agentes y que fue diseñado para cumplir una meta particular. Una estrategia se com-

pone de una definición, unas condiciones, una ejecución y una terminación.

- Definición: Descripción general de la estrategia.

- Condiciones: Son aquellas condiciones que se deben cumplir para poder ejecutar la

estrategia. Esta etapa especifica el estado y la posición de cada uno de los agentes de

la estrategia.

Page 36: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

- Ejecución: Son los comportamientos y las acciones que deben ejecutar un grupo de

agentes específicos para llevar a cabo la estrategia. En esta etapa se especifica la acti-

vidad a desarrollar y la ubicación de cada agente involucrado en la estrategia.

- Terminación: Etapa de verificación en la cual se verifica el estado de algunas caracte-

rísticas del juego para determinar si la estrategia puede seguir su ejecución a medida

que se está realizando.

Teniendo en cuenta las dos aproximaciones que plantean [ARIA2008] y [LAU2009] se puede

ver que ambos tienen como premisa favorecer las acciones cooperativas, solo que uno prefie-

re planear jugadas complejas y el otro da la posibilidad de que sucedan emergentemente. El

problema de planear acciones cooperativas complejas a largo plazo en ambientes dinámicos

es que existe la posibilidad de que no se alcancen a realizar y la planeación de los mismo se

vea perdida; por otro lado, si se deja que las acciones complejas se den de forma emergente,

se tiene que tener en cuenta que se debe favorecer las condiciones de las misma para que

puedan seguir ocurriendo.

Un SMA podría combinar ambas aproximaciones para tener mecanismos más complejos de

cooperación en todo el sistema, pero sería necesario que se defina un parámetro que permita

establecer en qué ocasión sería mejor utilizar un plan a largo plazo o dejar que la misma natu-

raleza del sistema se encargue de generar cooperación emergente.

Gestionar el conflicto entre el mantenimiento de la estructura y el favorecimiento de las

acciones cooperativas

Una problemática que se puede presentar en un SMA es que por potenciar y favorecer las

acciones cooperativas se puede perder la estructura que la formación estableció. Lo ideal en

un sistema es que las dos finalidades se puedan explotar al máximo sin que estas entren en

conflicto, pero en algunos casos esta situación se podría presentar. En un SMA pueden existir

acciones cooperativas que no alteren la estructura de la formación, por ende este tipo de ac-

ciones son las que el sistema debe utilizar más; pero en el caso de que existan acciones que

alteren la formación, pero puedan traer beneficios a los objetivos del sistema se debe evaluar

que tiene mayor prioridad en el sistema, si la estructura o los objetivos.

Página 36

Page 37: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Para poder resolver este conflicto se plantean dos aproximaciones diferentes, en la primera se

asume que el indicado para resolver este conflicto es el diseñador del SMA, debido a que es

él quien tiene el conocimiento de la problemática y el contexto, y es quien debe priorizar

entre el mantenimiento de la estructura o el desarrollo de acciones cooperativas

[BERN2007].La otra aproximación que se puede presentar es que el sistema tenga un meca-

nismo de resolución de conflictos como una función de priorización en la cual dadas unas

condiciones específicas y el objetivo a alcanzar él tome la decisión de cuál de las dos finali -

dades prevalece sobre la otra.

Ningún otro autor utilizado en la realización de este documento tiene en cuenta el manejo de

este conflicto, entre los objetivos de una formación como [BERN2007].

Interferir en el desempeño del sistema antagonista

Si en el ambiente donde está ubicado el SMA se encuentra un sistema antagonista, la forma-

ción se convierte en un mecanismo que interfiere con el desempeño del sistema antagonista y

por lo tanto aumenta la factibilidad de cumplir con sus metas globales. Para llevar a cabo esta

finalidad se debe tener en cuenta un análisis de los agentes a nivel individual y global.

Nivel agente

Habibi [HABI2002] menciona un análisis en el cual se reúnen todos los datos estadísticos del

desempeño del SMA antagonista, luego se utilizan para poder calcular cuales son las trayec -

torias más usadas por cada uno de los agentes. Este análisis se realiza para intentar anticipar

los movimientos de los agentes enemigos; con el fin de obstruir el cumplimiento de sus metas

globales o específicas y dado el caso recuperar los recursos compartidos existentes.

En este caso el objetivo de las formaciones es interferir con el desarrollo normal de la estrate -

gia de la competencia, reflejando que si el oponente no puede cumplir su objetivo, el sistema

estará más cerca de cumplir el objetivo propio. Sin embargo, no se garantiza que se vaya a

cumplir el objetivo del SMA, solo aumenta su posibilidad de alcanzarlo, asumiendo que los

objetivos de los sistemas antagonistas son opuestos.

Page 38: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Nivel sistema

Múltiples propuestas [ALME2009], [AYAN2009], [FARI2010] y [FATH2006B] coinciden

en la construcción de un sistema que detecte las formaciones del SMA antagonista para que el

SMA tenga más criterios de decisión en la elección de formaciones, de tal forma que pueda

contrarrestar la formación y las estrategias del SMA antagonista reduzca la probabilidad que

este cumpla su meta y aumente el desempeño del SMA para lograr su objetivo global.

En la aproximación de Habibi [HABI2002], se presenta un objetivo para las formaciones

similar al anteriormente mencionado, el cual es la de mermar el rendimiento del sistema anta-

gonista. En el caso anterior se concentran en cada agente por separado, mientras en este se

analiza el sistema rival como un todo, infiriendo la formación rival y escogiendo una forma-

ción la cual pueda contrarrestar la formación del oponente. Si se tiene en cuenta ambas apro -

ximaciones se puede apreciar que en una se centran específicamente en interrumpir el desa-

rrollo de cada agente, pero no tienen en cuenta la interacción que ese agente pueda tener con

el resto del sistema al cual pertenece. Por otro lado, se observa que se tiene en cuenta la posi-

ble interacción entre los agentes debido a la formación que el SMA antagonista planteó, pero

no se centra en detener el progreso de agentes en específicos. A partir de estos dos puntos de

vista se puede realizar una aproximación mixta, la cual sería centrarse en interferir el desem-

peño del agente de mejor rendimiento del oponente, y mediante una formación planteada

contrarreste el desempeño general del SMA antagonista.

Conclusiones de los objetivos

Después de definir las cuatro finalidades de una formación, se puede concluir que para que un

SMA cumpla su objetivo de manera más eficiente se necesita mantener la estructura dentro

del sistema y se necesita favorecer sus acciones cooperativas. Sin embargo, se debe tener en

cuenta cuál de las dos es la más importante para el contexto; pero si las dos tienen igual im -

portancia, se deberían definir mecanismos de resolución de conflictos que permitan priorizar

a cada una de ellas dependiendo de las situaciones que se puedan presentar en el SMA.

Un factor adicional e implícito de las formaciones dentro del SMA es interferir o interponerse

con el desarrollo del sistema antagonista. Dependiendo el caso de estudio, es necesario anali -

Página 38

Page 39: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

zar si el impacto del sistema antagonista es lo suficientemente negativo, para que el SMA

tenga que considerar este hecho como un criterio y/o una finalidad.

b. Factores necesarios para la selección de una formación

Una de las preguntas que surgen cuando se va a cambiar de formación en un SMA, es ¿qué

factores se deben tener en cuenta para seleccionar la formación adecuada dependiendo de una

situación? Debido a que no se puede elegir una formación de manera aleatoria, deberían exis-

tir unos criterios que permitan escoger la formación para que el sistema esté más cerca de

alcanzar su objetivo global.

De acuerdo con la necesidad anteriormente mencionada se pueden definir los siguientes crite-

rios para la selección de formaciones: características del SMA, influencia del ambiente y la

flexibilidad que tiene una formación base.

Características del SMA

Una primera aproximación es considerar al SMA en sí, las características que tienen sus com-

ponentes, en este caso los agentes, y su estado en un momento particular. Para ello se puede

realizar una autoevaluación a partir de las características propias del sistema o de las caracte -

rísticas de cada uno de los agentes que lo componen.

Desempeño individual de los agentes

Un factor que se podría tener en cuenta para la selección de formaciones sería el desempeño

del SMA por medio de la recolección estadística de datos. Estos datos estadísticos pueden

comprender el desempeño individual de cada agente.

El desempeño individual anteriormente fue utilizado en [HABI2002], quien tiene como caso

de estudio la liga de simulación de RoboCup. En este modelo se considera el rendimiento

individual de los agentes para observar si la posición donde están ejecutando sus funciones

está siendo productiva para alcanzar la meta global. Los datos que son recolectados son la

posición del recurso y su variación, el número de disparos hacia la meta oponente, el número

Page 40: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

de pases, el número de intercepciones del balón, el número de goles hechos por cada jugador

entre otros datos recolectados.

Desempeño del sistema en relación a la meta

Atkinson propone [ATKI2008] dice que para poder tener en cuenta el cambio de formaciones

dinámicamente durante un período de tiempo es necesario evaluar la condición de ejecución.

La condición de juego es una medida de favorabilidad que tiene un SMA para alcanzar su

objetivo. Esta medida tiene en cuenta las métricas de desempeño de los agentes, del SMA en

general y de algunas características del ambiente en donde habite el SMA. Esta medida nece-

sita un intervalo de tiempo para poder ser calculada, debido a que necesita una secuencia de

eventos e interacciones dentro del SMA. Cuando la condición de juego es favorable, las op-

ciones de cumplir el objetivo son mejores que las de no poderlo lograr. Cuando es desfavora-

ble, muestra que las condiciones del juego se prestan más para no alcanzar el objetivo; cer-

cano al cero se muestra que las condiciones están balanceadas.

Otra aproximación, la propone Arias [ARIA2008], la cual dice que en el cambio de una for-

mación o para la elección de una estrategia se deben tener en cuenta dos variables, la actitud

del SMA y la evolución del SMA. La actitud del SMA hace referencia a la formación que

esté usando actualmente y al objetivo ligado a esa formación, mientras que la evolución del

SMA es una medida que muestra la tendencia para cumplir o fracasar en el cumplimiento del

objetivo a partir de la actitud del sistema.

En [HABI2002] se va a tener en cuenta el rendimiento de todo el sistema, en el caso de estu -

dio específico de fútbol, se reúnen datos tales como número de goles, número de tiro de es -

quina, numero de fuera de lugar, posición promedio de todo el equipo, con el fin de analizar

el comportamiento del sistema su factibilidad de alcanzar su meta.

Heterogeneidad de los agentes

Un factor que se debe tener en cuenta a la hora de seleccionar la formación de un SMA es la

heterogeneidad que existe entre los agentes porque esta característica puede influir en el ren-

dimiento del sistema debido a la distribución espacial o a la distribución de responsabilidades

Página 40

Page 41: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

que se puede hacer entre los agentes. La heterogeneidad de los agentes se puede analizar en

tres ámbitos diferentes: características y habilidades de los agentes, situación de los agentes y

la asignación de responsabilidades.

Características y habilidades de los agentes

En [HABI2002], el primer factor que se tiene en cuenta es la diversidad de los agentes que

componen el sistema. Para el caso específico de fútbol robótico, los agentes tienen atributos

distintos que influyen en el desempeño de las tareas que les asignan. En esta aproximación se

tienen en cuenta once atributos diferentes para los agentes, con el fin de que el agente “técni-

co” pueda escoger entre sus jugadores cuales son los más adecuados para cada rol y en qué

posición dentro del campo de juego deben ubicarse. Basado en estos atributos se calculan o se

encuentran las habilidades que caracterizan a cada uno de los agentes, tales como driblar,

pasar el balón o interceptar el balón. A partir de estas habilidades se decide cuáles son las

posiciones donde debería estar cada agente, para finalmente establecer una nueva formación.

En [VISS2001 aprovechan la heterogeneidad de los agentes para poder crear y asignar roles

especializados o sub-roles a los agentes. En el caso de estudio de fútbol robótico, se identifi -

can diferentes tipos de delanteros, defensores, mediocampistas y arqueros. Gracias a estos

roles especializados o sub-roles se puede cambiar el comportamiento de un agente para que

sea apto al ejercer el rol. Complementando la anterior propuesta en [HABI2002] se puede

tomar la forma en que aprovechan la heterogeneidad de los agentes para poder tomar la deci -

sión de cuál es la posición más apropiada para cada rol.

Otro factor que se podría tener en cuenta es el que propone [LAU2009], el cual define que

cada agente tiene un parámetro de atracción, es una medida que indica que tan interesado está

un agente de un recurso compartido que este en la zona total de acción. De esta manera, de-

pendiendo del parámetro de atracción de cada agente se pueden construir diferentes tipos de

formaciones.

En [HABI2003] presenta como basados en la heterogeneidad de los agentes, sus capacidades

se les asignan tareas diferentes, en el caso de RoboRescue se puede observar que existen va-

Page 42: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

rios tipos de agentes con diferentes responsabilidades, basado en estas características se les

asignan las tareas más apropiadas.

Situación de los agentes

Otro aspecto que se debe considerar en la heterogeneidad de los agentes es la situación en la

que cada uno se encuentra. Esta situación hace referencia al estado del mundo que el agente

percibe en un instante de tiempo específico. Asumiendo que cada agente percibe un rango

limitado del mundo, se puede considerar que cada uno tiene una situación diferente. Al tener

una situación diferente, el agente percibe ciertas características del mundo, que lo hacen hete-

rogéneo a los demás agentes y que lo ayudan a desarrollar diferentes acciones.

En [KALY2007] y [BULK2006] llaman a esta situación “el estado del agente”. En esta apro-

ximación cada agente toma características del mundo tales como la distancia y el ángulo al

recurso, lugares objetivos y agentes antagonistas. A partir de estos datos recolectados del

campo, los agentes toman decisiones para realizar sus acciones. El autor [ZHAN2007] permi-

te ver como entienden la heterogeneidad por la situación del agente y basado en esta situación

como darle nuevas responsabilidades para que ejecute una tarea, basándose en la teoría que

los agentes son heterogéneos de por si por tener una situación diferente del mundo, es decir

por estar ubicados en una región diferente en el espacio.

Asignación de responsabilidades

Una tercera aproximación de heterogeneidad que se puede apreciar en los agentes es la res-

ponsabilidad que se le asigna. Esta responsabilidad determina las acciones que cada agente

debe hacer. Dado que en un SMA existen diferentes tipos de responsabilidades, cada agente

es heterogéneo dependiendo del tipo de responsabilidad que se le asigne. La asignación de

responsabilidades se puede analizar desde dos ámbitos: estático y dinámico.

Estático: Ligado a las habilidades

En [HABI2002] utilizan las habilidades de los agentes para asignarles roles. Asumiendo que

cada rol tiene que cumplir unas tareas específicas, cada rol es asignado basándose en las habi-

lidades requeridas para cumplirlo.

Página 42

Page 43: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Estas tareas se mantendrán a lo largo del tiempo mientras se mantenga el rol asignado, debido

a que si un agente cumple con las características o habilidades necesarias para desempeñar

otro rol, el agente podrá asumirlo.

Dinámico: Determinado por el contexto o situación

La aproximación usada en [KALY2007] para asignar responsabilidades al agente depende de

la situación en la que éste se encuentre. Esta situación hace referencia a la cercanía que tiene

un agente a un recurso existente en el ambiente y los demás objetos que se encuentren en la

zona de acción del agente. Entonces, cuando un recurso se encuentre en su zona de acción, al

agente se le asignarán diferentes tipos de responsabilidades. A partir de estas condiciones, se

puede concluir que las responsabilidades son asignadas de manera dinámica al agente, éstas

se pueden cambiar a medida que cambia el tiempo y su situación.

El trabajo Gerkey [GERK2004] propone un modelo en el cual a partir de la utilidad que un

agente genere al realizar una acción específica en un determinado contexto se puede asignar

el mejor rol que el agente pueda desempeñar. La utilidad es una medida de beneficio al siste-

ma en la realización de una actividad específica por parte de un agente. La utilidad se basa en

las condiciones del ambiente, los factores a evaluar en el SMA y el contexto o situación en el

que se encuentre inmerso el agente. Esta utilidad se calcula al agente para asignarle el mejor

rol que pueda ejercer en un momento especifico, maximizando el beneficio general del siste-

ma y promoviendo una optimización en la asignación de roles.

El SMA tiene que tener algún criterio de autoevaluación para poder medir como su actividad

satisface el cumplimiento del objetivo general, y para este criterio lo más adecuado sería

combinar variables que permitan medir el desempeño de cada agente y el desempeño general

del sistema. De manera que con esta aproximación mixta, el sistema tiene más criterios de

decisión para cambiar una formación y puede llegar a establecer un análisis más preciso acer-

ca del desempeño del mismo.

Page 44: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Influencia del ambiente

Otra criterio para tener en cuenta en la selección de formación diferente a la autoevaluación u

observación del sistema mismo, es la evaluación de cómo el ambiente afecta el rendimiento

del sistema. Este impacto puede ser positivo o negativo, y dependiendo de la forma cómo lo

afecte, necesitará cambiar su formación para adaptarse a los efectos. Dentro del ambiente, se

deben considerar las características propias del mundo y posibles sistemas antagonistas que

se encuentren dentro del ambiente.

Características variables del ambiente

Una aproximación de este donde se tiene en cuenta las variables del ambiente se puede obser -

var en [FATH2006] y [CAO2009], donde se tienen en cuenta los factores del ambiente que

influyen al sistema. Uno de estos factores es el tiempo, el cual crea una urgencia de modificar

el comportamiento del sistema, debido a que por falta de tiempo el sistema puede lograr el

objetivo o fracasar. El tiempo es un factor que se puede encontrar en diferentes tipos de con-

textos, pero no es el único factor que se puede tener en cuenta, porque dependiendo el contex-

to del SMA pueden existir otras características del mundo que lo influencia de manera consi-

derable al SMA. Por ejemplo en el contexto de fútbol robótico se puede tomar el clima del

campo, el apoyo de las personas de la tribuna etc. En el contexto de presas y cazadores se

puede tomar el clima, las condiciones del terreno, la naturaleza existente y el número de re -

cursos existentes en el terreno. En el contexto de rescates se puede considerar, las condicio-

nes climáticas, la densidad poblacional afectada de la zona, la estructura de la ciudad entre

otros. Por lo tanto, dependiendo el contexto el diseñador del sistema debe considerar el im-

pacto que generan las diferentes características del ambiente al SMA.

Sistemas antagonistas

Dependiendo del modelo, puede darse el caso que en el ambiente exista un sistema antagonis-

ta, el cual lucha por el recurso limitado y/o agotable, lo que produciría una competencia entre

los sistemas. Por lo tanto, es necesario no sólo tener en cuenta el rendimiento o la heteroge-

neidad del sistema sino la competencia con otro sistema para poder tener un criterio de deci -

Página 44

Page 45: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

sión más amplio en la selección de la formación del SMA. En cuanto a los sistemas antago -

nistas se puede analizar: la formación del SMA antagonista y el desempeño del SMA antago-

nista.

Formación del SMA antagonista

Según Ayanegui [AYAN2009] se puede analizar la formación del SMA antagonista para

obtener mejores resultados. Ayanegui presenta una aproximación en donde se analiza la posi-

ción de todos los agentes en el espacio y se intenta clasificar esa organización dentro de una

formación predefinida. Esta clasificación se hace mediante la identificación de zonas base. La

zona base es una región donde generalmente está un agente. Si se puede descubrir cuál es la

región base de cada agente se podría identificar el rol del agente. Una vez identificado el rol

del agente se podría identificar la formación del SMA antagonista y sus tendencias, para po-

derlo enfrentar de mejor manera. El problema de esta aproximación es que si el mundo es

dinámico, descifrar el rol del agente se convierte en un problema muy complejo.

Desempeño del SMA antagonista

En [FATH2006A] se hace un análisis aplicado al caso de estudio de fútbol robótico, en donde

se considera el sistema antagonista. Del SMA antagonista se monitorea diferentes datos esta-

dísticos como la posesión del balón, los pases que realizan, los disparos al arco, entre otros.

Serán utilizados para analizar las características y habilidades del competidor, del tal forma

que se pueda tomar una decisión que permita que el sistema esté más cerca de alcanzar la

meta. [FATH2008] propone una aproximación en la que se analiza al SMA antagonista desde

dos perspectivas: el desempeño individual de cada agente y el desempeño global del sistema

o como lo llama el autor “comportamiento multiagente”. Para el comportamiento individual,

tienen en cuenta las habilidades del agente, la frecuencia con la que las ejecuta y su efectivi-

dad al ejecutarlas. Mientras que en la visión del comportamiento multiagente, tienen en cuen-

ta el comportamiento colectivo del sistema, como es la manera de actuar del todo, y la inte-

racción entre los agentes.

Page 46: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Según Almeida [ALME2009] el análisis del sistema oponente genera más información sobre

cómo se debe enfrentar. Para ello, Almeida presenta una aproximación de log, registros o

historiales de comportamiento, en donde se guardan variables que cuantifiquen el comporta-

miento de los agentes, las posiciones de los agentes en el entorno y los comportamientos del

sistema antagonista. Una vez recolectada esta información, se puede hacer un análisis detalla-

do del sistema antagonista y se puede llegar a conocer de manera más específica el comporta-

miento del SMA antagonista.

Las características del ambiente son un factor importante y decisivo que siempre se debe

tomar en cuenta para el diseño de un SMA. Mientras que un sistema antagonista es un criterio

que no necesariamente se tiene en todas las aplicaciones basadas en SMA. Por lo tanto, si en

el contexto no existe un SMA antagonista, el análisis se puede omitir, pero si lo tiene, una

buena aproximación es monitorear las características y habilidades de los agentes individual-

mente, y cuantificar el comportamiento y el desempeño del SMA antagonista en general; con

el fin de tener más criterios en el cambio de la formación.

Flexibilidad para una formación base

Para incluir el concepto de flexibilidad en una formación se debe tener en cuenta los objetivos

específicos del sistema y que una formación está compuesta por un conjunto de zonas. La

flexibilidad se debe utilizar para cumplir esos objetivos de cada zona de manera que no se

necesite cambiar completamente de formación del SMA, sino, que la formación tenga un

mecanismo de adaptación para que pueda seguir cumpliendo sus objetivos.

Bernal [BERN2007] propone un modelo de flexibilidad en el cual cada zona tiene una cardi-

nalidad. Define el número mínimo de agentes que necesita una zona para que pueda cumplir

sus objetivos. A partir de esta cardinalidad, se define la tolerancia de la zona, la cual se define

el número de agentes que pueden incluirse o excluirse a esa zona, asumiendo que cuando un

agente cambia de zona, ese agente se le agrega a la zona destino pero se le sustrae a la zona

origen. En este modelo se realizan los cambios a partir de las necesidades que tenga la zona.

[CERT2008] y [REIS2001] plantean que a una formación se le puede brindar flexibilidad

para buscar un aumento de la utilidad global del sistema. Asumiendo que cada una de las

Página 46

Page 47: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

zonas tiene un número de agentes fijos, el sistema puede realizar intercambios de agentes

entre las zonas calculando una función de utilidad, que determina si el cambio genera más

utilidad al sistema. Este intercambio provoca que una zona origen le envié un agente a otra

zona destino, pero la zona origen a su vez recibe un agente de la otra zona destino. Una vez se

realice el intercambio se modificará el rol y área de acción de los agentes involucrados, y de

esta manera cada zona conserva su número de agentes base.

Otro enfoque lo da [YOSH2003], que propone otra aproximación de flexibilidad, la cual se

basa en la urgencia de la situación. La urgencia de la situación se basa en el número de agen-

tes en cada zona, factores estratégicos del dominio de la aplicación y distancia entre agentes y

recursos compartidos, para determinar si es necesario pasar un agente de una zona a otra y

cuál es el beneficio que trae este cambio. Cuando el agente detecta la urgencia y decide miti-

garla desobedece las reglas de su rol y la estructura de la formación para mitigar aquella ur-

gencia, provocando que el agente cambie de zona y de rol, influenciando un cambio en la

organización espacial y estructural del sistema.

Teniendo en cuenta el contexto de SMA se puede elegir cualquiera de las dos propuestas

anteriormente mencionadas, y el diseñador del SMA debe analizar cuál es más conveniente

para modelar el sistema.

Conclusiones de los factores para la selección de formaciones

Las diferentes aproximaciones que brindaron los autores anteriores dejan ver que los dos

factores claves que hay que tener en cuenta para la selección de una formación son la hetero -

geneidad del sistema y el desempeño de sistema respecto a la meta. La heterogeneidad es un

factor clave porque permite que la ubicación de los agentes y la asignación de las responsabi-

lidades sean más precisa y mejore el rendimiento de los agentes. Sin embargo, el desempeño

del sistema respecto a la meta es igualmente importante, ya que la finalidad del sistema es

poder alcanzar sus objetivos globales, pero si no se están logrando, el sistema debe elegir la

mejor formación que le permita cumplir con sus objetivos.

Page 48: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Por otro lado, debería ser responsabilidad del diseñador evaluar el impacto del ambiente so-

bre el rendimiento del sistema, teniendo en cuenta las condiciones del ambiente y la existen-

cia de sistemas antagonistas en él, debido a que si el impacto sobre el rendimiento del SMA

no es significativo no sería necesario entrar a considerarlo como factor para la toma de deci -

siones sobre la estructura del SMA.

c. Gestión y distribución del espacio

Los espacios en el ambiente donde se mueve un agente son un factor fundamental para esta-

blecer una formación, asumen [LAU2009], [AYAN2009], [ARIA2008] y [REIS2001]. Para

manejar el espacio de acción del sistema se debe responder tres preguntas: ¿Cómo se debe

representar el espacio?, ¿Cómo se debe gestionar esa representación del espacio? ¿Cómo

influye el espacio a los agentes?

Representación del espacio

Una característica importante de las formaciones es definir la distribución de los agentes en el

espacio. Para ubicar a un agente espacialmente se tienen tres aproximaciones: puntos de refe-

rencia, regiones de trabajo y modelos flexibles.

Lau, Riley, Akiyama y Reis [LAU2009], [RILE2006], [AKIY2008] y [REIS2001] consideran

el uso de puntos de referencia para la ubicación base (por defecto) de un agente y para la

movilización de los agentes en el ambiente. La ubicación base se define como aquel punto

específico en el cual un agente se tiene que ubicar cuando no está ejecutando ninguna acción.

Por otro lado, cuando un agente se moviliza por el ambiente necesita un punto de referencia

para saber la dirección de desplazamiento. Este punto puede hacer referencia a la ubicación

de un recurso, de un objeto en el campo, de un agente o de un punto del ambiente.

Para la representación del espacio se pueden establecer regiones de trabajo en donde el agente

puede ubicarse y realizar sus acciones ya sean individuales y cooperativas. [ATKI2008],

[AYAN2009], [RILE2006] y [NAKA2006] proponen dividir el ambiente en regiones geomé-

tricas parametrizables tales como rectángulos, círculos o polígonos.

Página 48

Page 49: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Bernal [BERN2007] plantea un esquema en donde cada agente tiene un punto base de locali-

zación en el espacio. Este punto base tiene 2 características especiales, puede tener una locali -

zación estática o dinámica, y tiene asociada una función de elasticidad que define la fuerza de

atracción existente entre la ubicación actual del agente y la ubicación del punto base; de ma -

nera que si el agente está cerca al punto base la fuerza ejercida es pequeña, pero mientras más

se aleje el agente del punto base la fuerza será mayor, forzando a que el agente retorne a su

punto base. A partir de este modelo flexible se puede definir la región de trabajo en la cual un

agente pueda mantener su organización dentro de la formación y pueda realizar sus acciones

individuales y cooperativas.

Gestión de la distribución del espacio

La gestión del espacio se puede dar de manera estática y dinámica.

Una gestión estática en un SMA es cuando se tiene predefinida la forma de representar el

espacio. En este caso, se podrían hacer diferentes pruebas para determinar cuál es la represen-

tación del espacio que genera mejores resultados, y a partir de este análisis definir esas carac -

terísticas del sistema. Una gestión dinámica en un SMA es cuando a medida que el agente

ejecute una acción o haya un cambio de rol, el sistema asigne cual es la mejor representación

espacial para beneficiar las acciones del agente.

Influencia de la representación del espacio en los agentes

La distribución del espacio influye en las acciones individuales y cooperativas que desarrolla

un agente. Por ejemplo, si se asumen puntos de referencia, los agentes solo realizarán sus

correspondientes acciones si las condiciones se cumplen en ese determinado punto, mientras

que, si se asumen regiones de trabajo el agente tendrá una tolerancia más alta para que esas

condiciones se cumplan y pueda ejecutar su acción.

Una formación puede influenciar el comportamiento individual y cooperativo del agente con-

trolando su zona de acción. Para ello se pueden definir una gestión estática de la representa -

ción del espacio y mezclar el modelo de regiones de trabajo propuesto por [ARIA2008] y el

Page 50: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

modelo flexible definido por [BERN2007]. Estableciendo que para las acciones simples y

cooperativas se usan las regiones de trabajo, y para las acciones pertenecientes al rol del

agente se use el modelo flexible.

d. Formas de influenciar el comportamiento de los agentes por las formaciones

Una vez se ha estudiado las finalidades de una formación y los criterios que debería tener en

cuenta, se debe analizar como una formación pueden influenciar el comportamiento de un

agente. Para ello la formación puede definir el rol de un agente.

Rol

Un rol se puede definir como un conjunto de características y responsabilidades que se gene-

ran a partir de una especialización del comportamiento y una especialización espacial del

agente. Mediante un rol se pueden agrupar características como los objetivos parciales y la

representación espacial. Estos dos tipos de características inducen respectivamente a la espe-

cialización comportamental y especialización espacial.

Visser [VISS2001] plantea una aproximación de especialización comportamental en la que

dependiendo de las características y habilidades del agente, se pueda seleccionar un grupo de

agentes capacitados para ejercer los diferentes tipos de acciones y responsabilidades que tiene

una formación; con el fin de aprovechar de una mejor manera las características de los agen-

tes. Por otro parte, [ARIA2008] propone que mediante las estrategias o planes a largo plazo

se puedan asignar las especializaciones a los agentes. De manera que el agente mantiene su

rol para la formación establecida, pero cuando se realice una estrategia, el agente pueda cam-

biar de especialización, generando un cambio en su rol; con el fin de cumplir tareas más espe -

cíficas que satisfagan las condiciones de las estrategias.

La especialización espacial también la presentan en [VISS2001], dependiendo de la ubicación

de un agente en el ambiente se le asignan unas responsabilidades específicas. Esta ubicación

dentro del ambiente hace que el agente adquiera una especialización que le permita definir el

rol a ejercer.

Página 50

Page 51: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Mediante la definición de un rol se pueden encapsular un conjunto de características y res-

ponsabilidades que debe cumplir un agente en un SMA. Estos roles le facilitan a las forma-

ciones el mantenimiento de la estructura y el favorecimiento de acciones cooperativas. Ade-

más de que permiten la construcción de diferentes formaciones y acciones cooperativas.

e. Arquitectura de un gestor de formación

Para poder diseñar el gestor de formaciones, es  importante tener claro que existen dos tipos

de arquitecturas: arquitectura centralizada o distribuida. Cada una de estas arquitecturas tiene

sus ventajas y desventajas.

En una arquitectura centralizada se le asigna a un agente la responsabilidad de tomar las deci-

siones del cambio de la formación. En este modelo, este agente se encarga de la recolección

de los datos asociados a los factores a analizar y mediante su criterio de decisión determina si

es necesario el cambio de la formación. Esta aproximación puede ver en [HABI2002],

[FATH2006A], [CERT2008], [ARIA2008] y [REIS2001].

En oposición a la centralización [BERN2007] propone un mecanismo distribuido para esta-

blecer el cambio de formaciones mediante el criterio de flexibilidad. Las zonas cuando no

satisfacen sus necesidades, pueden negociar con otras zonas la transferencia de agentes para

satisfacer esas necesidades. De manera que existe una toma de decisiones distribuida para la

modificación de la formación. Ningún otro autor utilizado en la realización de este documen-

to tiene un concepto de arquitectura distribuida como el definido por [BERN2007], debido a

que los otros autores usan una arquitectura centralizada para diseñar un gestor de formacio-

nes.

Cada una de estas aproximaciones tiene sus ventajas y sus desventajas, por ejemplo una ar-

quitectura centralizada tiene una sobrecarga debido al análisis de datos que tiene que realizar,

es poco confiable debido a que un solo agente se encarga de esta tarea, pero es más sencillo

en la selección de formaciones. Mientras que en una arquitectura distribuida, la toma de deci-

siones es más confiable y tolerante a fallos, pero la toma de decisiones se vuelve más comple -

ja.

Page 52: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

En este capítulo se han analizado los objetivos de una formación y se han determinado los

factores que se deben tener en cuenta para elegir una formación. Es responsabilidad del dise-

ñador de un SMA analizar cada una de las problemáticas anteriormente mencionadas para

que pueda diseñar un SMA de manera adecuada y pueda definir el contexto en el que se en-

cuentra, con el fin de asegurar que los resultados generados con el modelo sean lo más próxi -

mo al contexto de la problemática.

Página 52

Page 53: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

IV. MEJORAS PROPUESTA AL MODELO MRRC

En el capítulo anterior se mostraron los resultados de la investigación realizada para el diseño

de un gestor de formaciones en un SMA, describiendo los problemas y las soluciones que

diferentes autores han analizado. Una vez definido el contexto conceptual, se procederá a

presentar la propuesta del modelo extendido MRCC, haciendo énfasis en la capa formaciones

y mostrando los cambios que se generaron en las capas. El modelo MRCC continuará siendo

de cuatro capas debido a que no se vio la necesidad de que existiría una nueva capa para que

se encargue de las problemáticas mencionadas anteriormente debido a que estas responsabili -

dades pueden ser asignadas a las capas ya existentes.

Para cada una de las cinco problemáticas estudiadas de los diferentes autores se obtuvieron

varias conclusiones, para cada una de ellas se hizo una síntesis que reúne las características

más sobresalientes que se le pueden aplicar al modelo base del MRCC explicado anterior-

mente para ampliarlo y refinarlo. Debido a que el estudio que se realizó en los ejes problemá-

ticos se va a redefinir algunos conceptos del modelo en tres de las cuatros capas, haciendo

énfasis en la capa formaciones, donde se cambió la estructuración de la misma.

1. CAPA DE FORMACIONES

Después de analizar el modelo de formaciones base se propone realizar unos ajustes a las

definiciones de formación, zona, rol estructurante, rol excepción y objetivo. Y se agregará el

concepto de táctica, que está relacionado con el concepto de zona.

a. Formación

En el modelo base MRCC se define a la formación como “un mecanismo que debería facilitar

la consecución del objetivo final del SMA pero también debería promover el mantenimiento

de cierta estructura organizada dentro del mismo” [BERN2007]. Esta definición de formación

no cambiará pero algunos de los elementos que la componen serán redefinidos para poder

Page 54: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

solucionar los problemas que se presentan en el MRCC analizados en los ejes problemáticos

mencionados en el anterior capítulo.

La nueva definición de Formación se plantea en la siguiente tupla y se puede apreciar en la

figura 6:

Formación = {Ob, Zn, Mn}

Ob = Objetivo Global.

Zn = Zonas de Acción.

Mn = Mecanismo de Negociación.

Figura 6. Concepto de Formación

Donde Ob representa el objetivo global del SMA, el cual es gestionado por la capa superior,

como se vio previamente en la descripción del MRCC base, por tanto la capa de formaciones

podrá ser parametrizada por la capa sistema en todos los aspectos nuevos.

El mecanismo de negociación MN, al igual que en la versión base del MRCC seguirá siendo

el mecanismo por el cual las zonas pueden negociar para poder suplir sus necesidades. Este

será genérico y se podrá utilizar cualquier mecanismo de negociación que se quiera usar, que

dependiendo el caso de estudio puede beneficiar más al SMA.

El último elemento considerado dentro las formaciones son las Zonas Zn, definidas en el

MRCC base como “una división del espacio en el que se desarrollan las acciones de los agen-

Página 54

Page 55: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

tes” y las cuales tienen como habilidades la detección de necesidades y la negociación con las

otras zonas.

Mientras se analizó el concepto de formaciones, uno de los componentes que ya no va formar

parte de la definición de formación es el detector de necesidades, el cual era demasiado gené -

rico y poco especializado para poder abarcar la detección de todas las necesidades de una

formación en los diferentes dominios de las distintas aplicaciones en las que se puede utilizar

el MRCC. Lo anterior se determinó con varios contraejemplos encontrados en un caso especí-

fico, esto se tratará más adelante en la sección donde se desarrollará el tema del Detector de

Necesidades. De manera que el concepto de detector de necesidades se reubicó en el concepto

de objetivo, el cual va inmerso en el concepto de zona.

b. Zona

Como se definió anteriormente la zona es el espacio donde los agentes actúan y las cuales se

encarga de la administración de los mismos [BERN2007], se redefinió la Zona de Acción en

la siguiente tupla y se puede apreciar en la figura 7:

Zn = {TA, OB, RE, RG}

TA = Táctica de la zona.

OB= Objetivos de la Zona.

RE= Reglas Estructurantes.

RG = Representación Geométrica.

Page 56: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Donde Ob son los n objetivos que tiene asociado la zona específica. Estos son los objetivos

que se descomponen del objetivo global del sistema y que la zona debe cumplir, cada objeti-

vo puede estar en un nivel de satisfacción. Dentro del estado satisfacción se consideran tres

estados más, los cuales se presentarán más adelante en la descripción del Detector de Necesi-

dades.

La Táctica TA de la Zona es un nuevo concepto. Esta tiene asociado los roles estructurantes

necesarios para que la zona pueda ejecutar su trabajo de manera adecuada y tiene inmerso en

ella las diferentes ubicaciones espaciales de los roles estructurantes para tener diferentes al-

ternativas.

Las reglas estructurantes RE van a tener el mismo concepto del modelo base, donde especifi-

can la cardinalidad mínima de la zona con respecto al número de agentes en ella y el umbral

de agentes máximo y mínimo que podría necesitar la zona. Este puede ser parametrizable por

el nivel sistema de tal forma que la zona pueda admitir más o menos agentes, este concepto se

mantiene del modelo base del MRCC.

RG es el elemento de la zona encargado de modelar la representación geométrica espacial de

la zona en el ambiente. La capa Sistema debe tener la capacidad de parametrizar la forma y

las dimensiones de la representación geométrica de las zonas. Como se mencionó anterior-

Página 56

Figura 7. Concepto de Zona

Page 57: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

mente la forma que seleccione la capa Sistema para cada zona depende totalmente de la pro-

blemática que se esté representando, por tanto las formas disponibles para parametrizar de-

penden totalmente del diseñador, al igual que lo proponen [ATKI2008], [AYAN2009] y

[RILE2006].

Por tanto, se agrega un elemento en la tupla zona, el cual sería el encargado de modelar la

representación geométrica espacial de la zona en el ambiente el cual sería la RG o representa -

ción Geométrica.

c. Táctica

El primer aporte que se realiza al modelo base es el de proponer un elemento adicional a la

definición de zona, llamado “Táctica”. Es definido por la Real Academia Española como

“Método o sistema para ejecutar o conseguir algo”1. Este elemento tiene asociado los roles

estructurantes necesarios para ejecutar la táctica deseada sobre la zona. Teniendo en cuenta

que cada rol estructurante ya tiene como propiedad la ubicación espacial base del agente.

La táctica permitirá a la zona poder organizar a un agente en el espacio de acción de la zona o

asignarle un rol estructurante a un agente después de que una negociación entre zonas ha

finalizado. Esta asignación se puede dar mediante la definición de posiciones especificas

dentro de las zonas para los roles estructurantes, dadas por el diseñador del sistema, o, me-

diante una función, la cual reciba como parámetros la cantidad de agentes y retorne los roles

estructurantes que se deben ejercer en esa zona específica.

Una manera especial, utilizada por los diferentes autores [LAU2009], [SVAT2001] para

mantener el orden dependiendo de la situación es agrupar o dispersar a los agentes en deter-

minado momentos. Este concepto ya se podría manejar fácilmente en el modelo base del

MRCC por medio del manejo del modelo flexible que tiene asignado cada agente. Para esto

sería necesario que la zona pudiera tomar la decisión de cuando realizar cualquiera de estos

dos mecanismos. Debido a que los mecanismos de reorganización están ligados al Modelo

1 Real Academia de la lengua española, Palabra consultada: Táctica. versión online. www.rae.es

Page 58: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

del Mundo, y el modelo del mundo es genérico para el MRCC, el diseñador debe escoger e

implementar la forma de reorganizar la zona según el conocimiento del caso de estudio espe-

cífico.

Una táctica estaría definida por la siguiente tupla y se puede ver en la figura 8:

TA: {FO, INS}

FO = función de la táctica que permitirá reorganizar la ubicación de los agentes ac-

tuales mediante compactación o dispersión.

INS= Tiene las diferentes instancias de la táctica, el conjunto de los roles estructuran-

tes con su respectiva parametrización dependiendo el número de agentes

El elemento INS va a contener los roles estructurantes que componen a la táctica para la car-

dinalidad en la zona según, las reglas estructurantes de la misma. De igual manera, va a tener

la parametrización de los roles estructurantes para cada uno de los diferentes casos de núme-

ros de agentes.

INS estaría formado por la siguiente tupla y se puede observar en la figura 9:

INS:{RES, PAR}

RES= Roles estructurantes asociados.

PAR= Parametrizacion de los roles estructurantes asociados.

Página 58

Figura 8. Concepto de Táctica

Page 59: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Por otro lado, FO sería una función que se activa cuando uno de los objetivos de la zona de-

tecte una necesidad ligada a la satisfacción de algunos de sus objetivos. Es decir que este se

encuentre insatisfecho en cualquier nivel, donde permitirá reubicar a los agentes actuales en

otra posición, de tal forma que la zona trate de solucionar su problema con los recursos con

los que cuenta, por medio de la compactación o dispersión de los agentes. Esta solución de

dispersión o compactación debe ser dada por el diseñador del sistema debido a que depende

del modelo del mundo y por tanto no puede ser genérico para cualquier caso de estudio.

d. Objetivo

El concepto evaluación de la satisfacción de un objetivo va a cambiar, debido a que para ana-

lizar si un objetivo se está cumpliendo, es necesario asumir el contexto del caso específico de

estudio, y por ende puede tener diferentes formas de medición.

En el modelo base del MRCC se considera al objetivo como lo que debe seguir la zona, y que

cada objetivo está asociado a los roles estructurantes, los cuales por medio de las acciones

cooperativas aportan al cumplimiento del mismo. Es decir, que si un agente no realiza accio-

nes cooperativas no estaría realizando su trabajo adecuadamente y esto causaría que la zona

entrará en necesidad, pero esto no se cumple para todos los casos. Por ejemplo en el contexto

de Robo Cup, un defensa puede parecer que no esté defendiendo debido a que su equipo está

atacando constantemente y nunca está siendo atacado. En el modelo base mostraría necesidad

Figura 9. Concepto de Instancias

Page 60: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

en el objetivo de no dejar que hagan goles, debido a que las acciones cooperativas asociadas

con este objetivo no se están realizando. Pero realmente si el equipo está atacando, no existe

necesidad en defensa, por esto mismo, se desacopla los roles estructurantes de los objetivos y

de la misma manera las acciones cooperativas de los objetivos.

Se muestra que dependiendo el objetivo y el caso de estudio la forma de detectar necesidad

cambia y que no basta con solo medir el aporte de cada agente a la zona por medio de las

acciones cooperativas. Por tanto, se le asocia a cada objetivo un detector de necesidades de

forma que este sea específico para cada caso de estudio y para cada objetivo, por tanto una

zona tendrá una forma de detectar una necesidad por cada objetivo asociado a la misma.

La definición de Objetivo estaría dada por la siguiente tupla y se puede observar en la figura

10:

OB= {DN, Ob}

DN= el detector de necesidad asociado al objetivo.

Ob= Objetivo asociado a la tupla.

Figura 10. Concepto de Objetivo

Como se mencionó , el detector de necesidades fue ubicado a nivel de la tupla de objetivo

debido a que cada objetivo tiene una forma diferente de detectar su nivel de satisfacción,

dado el caso específico de estudio, por tanto el detector de necesidades se asoció a cada uno

de los objetivos. El nivel de satisfacción se encuentra entre cero y uno, donde cero es satisfe-

cho y uno es insatisfecho. El detector de necesidades de cada objetivo se encargará de moni-

torear si el objetivo al cual pertenece está siendo satisfecho, si no es así, tendrá que detectar

Página 60

Page 61: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

que tipo de necesidad es, necesidad baja, necesidad alta progresiva y súbita, cada uno de estos

los define el diseñador con un umbral entre cero y uno. Para cada uno de estos tipos de nece-

sidad, el diseñador del sistema deberá decidir entre tres tipos de soluciones: la reorganización

de la zona, el intercambio de agentes o la petición de un agente a otra zona del sistema. Estos

tres tipos de necesidades se detectarán por medio de umbrales, cuando la necesidad del objeti-

vo pasa el primer umbral pero no el segundo es clasificado como necesidad baja, si pasa am-

bos umbrales aumentando progresivamente se dirá que es una necesidad alta progresiva y si

pasa ambos umbrales con un crecimiento muy rápido se dirá que la necesidad es súbita.

Si el nivel de satisfacción actual no pasa la necesidad denominada súbita, se utiliza una fun-

ción de Q-Learning [WATK1989] para que la zona tenga en cuenta los niveles de satisfac-

ción anterior, para poder tomar decisiones con una mayor precisión que con un solo nivel de

satisfacción actual.

Por otro lado, si el nivel de satisfacción pasa el umbral de la necesidad llamado súbita, no se

tendrá en cuenta el valor anterior y se procederá a ejecutar la solución asociada a esta. Se

realiza por que existen casos donde la necesidad es demasiado alta y no se puede esperar a

ver como se ha comportado el mundo. Por tanto la solución es tomar una acción correctiva y

reactiva a la situación.

Una vez asociado a cada uno de los umbrales un tipo de solución y el umbral el cual es asig -

nado por el diseñador del sistema, este nivel de satisfacción tiene un valor entre cero y uno,

de tal manera, que el objetivo pueda conocer su estado y de esta forma comunicárselo a la

zona cuando esta lo requiera y poder tomar una acción respecto a la solución asignada a cada

uno de umbrales.

Este nivel de satisfacción de los objetivos se pueden usar guiados en la aproximación de

[ATKI2008] y [HABI2002], donde la capa sistema debe tomar una decisión y asigne una

nueva formación base, basado en la misma satisfacción de objetivos específicos de cada zona,

solo que cada zona tiene la responsabilidad de retroalimentar a la capa sistema con esta infor-

mación.

Page 62: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Esta retroalimentación ya está planteada en el modelo base, pero no se identifica para que

pueda ser usada la evaluación enviada a la capa superior. La capa sistema con toda esta infor-

mación tendría que utilizarla para que por medio de un mecanismo de toma de decisiones

pueda seleccionar una nueva formación base la cual también va a ser flexible.

e. Rol estructurante

El rol estructurante es un concepto que se hereda del base MRCC, se define como el rol que

“busca dar y promover el mantenimiento de orden o estructura dentro del SMA”

[BERN2007], este rol se redefinió en su estructura interna agregando unos conceptos, pero se

heredaron la responsabilidad y funcionalidad que se definió en el modelo base.

Para poder presentar la asignación de los roles estructurantes a los agentes, se debe tener en

cuenta la heterogeneidad en los agentes. La heterogeneidad se puede presentar en los agentes

de dos formas. La primera es que todos los agentes ya son de por si diferentes; debido su

situación, la percepción que cada uno de ellos tiene del mundo no es igual, para cada situa-

ción que se presente existirá un agente que se encuentre en una mejor escenario para resolver

una necesidad, esta aproximación está presente en [KALY2007]. La segunda aproximación es

tener en cuenta las habilidades que posee cada agente, de la misma manera como lo presenta

[HABI2002]. Basado en estas habilidades, se pueden definir los roles, inspirado en

[VISS2001], [HABI2003] y [HABI2002]. Los roles tienen unos requerimientos mínimos

para ser asignados a un agente. Los requerimientos se pueden cuantificar a partir de la exper-

ticia del diseñador del sistema, o por una información inicial que se tenga del agente y se

retroalimente a medida que realice acciones cooperativas. Por lo tanto, si se asume esta apro-

ximación, se debería cambiar la definición de rol estructurante, agregándole cuales son las

habilidades mínimas requeridas para que un agente pueda tener asignado un rol.

Por otra parte, podemos utilizar la nueva definición de rol estructurante para mejorar el meca-

nismo de flexibilidad en las formaciones con el que ya cuenta el modelo base. Si tenemos en

cuenta que, gracias a la heterogeneidad existirán agentes más aptos para realizar ciertas tareas

que otros, sería mejor que en la negociación que ya se establece gracias al detector de necesi -

dades, la zona no solo pida un agente más para su zona, sino que pida un agente con las ca -

Página 62

Page 63: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

racterísticas mínimas deseadas para que se le pueda asignar un rol especifico, en

[HABI2002].

De acuerdo con los autores [VISS2001], [ARIA2008] y [HABI2002], se le puede agregar al

modelo los roles especializados, para los cuales se necesitan habilidades especiales para cum-

plir ciertas tareas específicas en lugares especiales del espacio. Esta sub-especialización del

rol estructurante que no se contempla en el MRCC, se podría ver como las habilidades que

requiere un agente para realizar tareas específicas, y puede ser asignada por la zona a la que

corresponda el agente para ayudar a satisfacer los objetivos específicos de la misma. Se puede

tomar con respecto al tema de la heterogeneidad de los agentes, utilizando la nueva definición

de rol estructurante, permitiéndole al diseñador poder crear roles estructurantes más especiali -

zados para que realicen tareas específicas dentro del contexto del problema. Si el agente tiene

las habilidades para cumplir varios roles, éste podría asumir diferentes roles a lo largo del

tiempo, y permite que la negociación entre zonas se dé cómo se planteó anteriormente. Cabe

indicar que al diseñar los roles estructurantes de la aplicación, hay que tener mucho cuidado

con las habilidades mínimas requeridas para cada uno, debido que si son muy exigentes las

zonas serán menos flexibles.

Un rol estructurante estaría redefinido por la siguiente tupla y se puede apreciar en la figura

11:

RE = {MO, SR, RoEx}

Mo = Es la función de toma de decisiones asociado a la movilidad del rol estructu-

rante.

SR = define las habilidades mínimas que requiere un agente para poder cumplir o

desarrollar en una manera correcta el rol.

Page 64: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

RoEx= Roles de excepción asociados.

Figura 11. Concepto de Rol estructurante

Mo es una función de movilidad que le permite al agente establecer un modelo de movilidad

espacial, con el cual se va poder desplazar a través del ambiente y va a poder tener la referen -

cia de un punto base en el cual se tenga que ubicar por defecto.

SR hace referencia a las habilidades mínimas requeridas que debe tener un agente para poder

desempeñar el rol estructurante. Este concepto asume la heterogeneidad de los agentes, con el

fin de asignar de una mejor manera los roles estructurantes a los agentes del sistema.

Por medio de la observación de los diferentes casos de estudio, se pudo observar que los roles

de excepción están asociados al rol estructurante, debido a que depende de las responsabilida-

des asociadas al agente responde de forma diferente a los eventos de excepción, los cuales

suceden a nivel sistema, y son propagados a todas las entidades del mismo, el concepto de rol

excepción se heredó de igual manera del modelo base del MRCC. Por ejemplo, en el caso de

fútbol el rol excepción es diferente para un arquero que para un delantero cuando se inicia un

partido, debido a este y más ejemplos fue necesario añadirle al rol estructurante un conjunto

de roles excepción asociados a los eventos especiales.

Estos roles de excepción se comportan similar al rol estructurante, su estructura es similar y

la única diferencia es que no tiene una colección de otros roles. La prioridad de los roles para

el agente son: con mayor prioridad el rol excepción, seguido por el rol cooperativo y final -

mente el rol estructurante, no hay negociación para la asignación de roles, es asignado el de

mayor prioridad.

Página 64

Page 65: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

2. CAPA MICRO SOCIAL

En esta sección se presentara el único cambio propuesto para la capa micro social, basado en

el concepto de planes pre estructurado, dándole lugar a las acciones cooperativas complejas,

las cuales son la coordinación de acciones cooperativas, inspirado en diferentes autores que

plantean una aproximación similar.

a. Planes

Después del análisis realizado a los autores [REIS2001] y [LAU2009], existe la necesidad de

modificar la definición de acciones cooperativas para darle espacio a la inserción del concep-

to de plan. Un plan es un conjunto de acciones cooperativas, que tienen que ser activadas en

un orden específico para cumplirlo y que cumplen un objetivo específico. Una acción coope-

rativa se define como un conjunto de habilidades que se deben activar correctamente para que

esta se ejecute; las acciones cooperativas pueden ser mono agente o multiagente. Un conjunto

de habilidades son las acciones básicas que puede realizar el agente.

Debido al concepto de plan que se definió anteriormente, se debería introducir la tupla del

plan al contexto del MRCC. Un Plan [ARIA2008] [YANG2010] es un conjunto de acciones

cooperativas, que tienen que ser ejecutadas en un orden específico para llevar un objetivo a

cabo. Un Plan se define como la tupla formada por {ACs, PEs, CIE, RE} las cuales represen-

tan:

ACs: Conjunto de acciones cooperativas que componen el plan.

PEs: Conjunto de preferencias estructurantes que se deben asignar a los agentes para

que continúen la ejecución del plan, donde las preferencias estructurantes indican

que acciones cooperativas puede hacer el agente.

CIE: Son las condiciones iníciales de cada etapa para que se dé la ejecución del plan.

RE: los roles estructurantes asociados a los agentes que pueden ejecutar el plan.

Page 66: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Gracias a que existiría un constante monitoreo de la ejecución de un plan, se requiere agre-

garle al modelo un monitor de planes, que se encargue de supervisar la ejecución de un plan y

administrar las preferencias de los agentes involucrados en el plan. Este monitoreo se presen-

ta desde que empieza la ejecución del plan, en cada una de las etapas de éste (para determinar

si se debe seguir ejecutando el plan), hasta su finalización ya sea exitoso o no. De igual mane-

ra, una vez comience la ejecución se tiene que guardar las preferencias de los agentes, y se

deben modificar para priorizar la realización del plan. Una vez éste finalice, el monitor debe

devolver a su estado original las preferencias estructurantes de los agentes involucrados en el

plan.

Para hacer un monitoreo apropiado de los planes, se debe asumir que cada vez que termine

una acción cooperativa, se debe monitorear si es posible continuar con el plan. Se concluye

que debe existir una función que evalué el modelo del mundo para ver si es apropiado realizar

el plan.

De acuerdo al anterior análisis, existirían 3 funciones de matching en el sistema: función de

matching para los roles, función de matching para las acciones cooperativas y función de

matching para los planes. Las cuales permitirán decidir se puede realizar el plan con unos

roles determinados, o si se puede realizar la acción cooperativa con unos roles determinados.

Estas funciones ayudarían a supervisar el estado de los planes. Por otro lado, el cambio de

preferencias hecho por el monitor de planes no puede ser tan grande, porque, sino el detector

de oportunidades perdería su naturaleza oportunista, evitando que para cualquier caso elija la

mejor acción a ejecutar.

En el modelo base no existe en ninguna capa la funcionalidad de supervisar el ciclo de vida

de los planes, debido a que esta definición no se usaba anteriormente. En este momento se

puede definir que ese monitor estaría ubicado en la capa Micro-social. Sin embargo, no es la

única opción, es necesario analizar si se debe crear una nueva capa, la cual se encargue de

gestionar los planes y su estado a través del tiempo.

Página 66

Page 67: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

3. CAPA SISTEMA

En la capa sistema, se realizó un análisis sobre cómo debería ser la arquitectura de la misma,

debido a que es la que toma las decisiones en el cambio de formaciones, actualmente el mo-

delo MRCC se basa solo en el nivel de satisfacción de los objetivos para tomar una decisión a

la hora de modificar la formación. Esta decisión se toma en la capa de Formación, y mediante

el criterio de flexibilidad y la negociación entre zonas, se realizan cambios sobre una forma-

ción base.

El modelo no cuenta con un gestor de formaciones, sino con una formación flexible que cam-

bia debido a la negociación entre zonas como se mencionó anteriormente. La primera aproxi-

mación es agregarle al MRCC un gestor de formaciones centralizado encargado de la captura

y el procesamiento de los datos necesarios para la toma de decisiones de la formación del

sistema, la mayoría de los autores plantean un gestor de esta forma como [HABI2002],

[FATH2006A], [CERT2008], [ARIA2008] y [REIS2001].Este gestor centralizado debe ubi-

carse en la capa sistema y será el encargado de influenciar a la capa de Formaciones, para que

parametrice y modifique las zonas de acuerdo con los cambios elegidos por el gestor.

Otra solución es diseñar un gestor de formaciones distribuido. Para ello, se pueden crear va-

rios gestores de formaciones. Cada uno de ellos monitorearía diferentes aspectos tales como

condiciones del ambiente, desempeño del SMA, desempeño del SMA antagonista etc. Me-

diante mecanismos de resolución de conflictos, se decidirían cual es el factor más influyente

para la selección de una formación que pueda cumplir el objetivo global del sistema. Inicial-

mente, se plantea dejar en el modelo un gestor distribuido debido a que los factores que pue-

den intervenir para la toma de decisiones son demasiados. Será decisión del diseñador ver

cuantos gestores se deben tener y la prioridad de cada uno de ellos; debido a que el número

de factores a tener en cuenta y su prioridad está ligado al caso de estudio.

Como se mencionó el gestor de formaciones base puede tener en cuenta diferentes aspectos

del ambiente, por tanto tendrá que evaluar los efectos que generan el ambiente y los sistemas

antagonistas inmersos en él. La capa sistema tendrá que tomar el modelo del mundo captado

Page 68: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

por él, y por medio de mecanismos de toma de decisiones decidirá cuál es la formación base

más adecuada para contrarrestar estos efectos. Este modelo es similar en autores como

[ALME2009], [HABI2002], [CAO2009] y [AYAN2009].

Cada formación base contará con las zonas que la componen y cada zona con los elementos

que se definen en el modelo base del MRCC y el nuevo elemento de tácticas quedará como

responsabilidad de la capa sistema, la forma de modelar y utilizar los datos de los sistemas

antagonistas.

Otro factor que se debe tener en cuenta para todo tipo de SMA, es el rendimiento del mismo

como se mencionó en la capa formaciones se puede realizar mediante la satisfacción de obje -

tivos. La capa sistema lo conocerá debido a que es responsabilidad de la zona retroalimentar

al nivel superior con la información de los objetivos asignados a cada una de ellas. Con esta

información el sistema podrá tomar decisiones acerca de cuál sería la mejor formación base

para asignar. El gestor de formaciones ubicado en la capa sistema se tiene que activar en un

intervalo de tiempo mayor que el detector de necesidades; éste a su vez se debe activar en un

intervalo de tiempo mayor que el detector de oportunidades de la capa micro social.

Página 68

Page 69: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

V. IMPLEMENTACIÓN DEL MODELO

En la sección anterior, se describieron los cambios que se realizaron en el modelo, enfocán-

dose en la capa formación y mostrando los cambios que realizaron en los demás capas del

sistema.

En este capítulo, se mostrará el proceso que guío la implementación del modelo del MRCC

extendido con los cambios propuestos en el capítulo anterior. El proceso utilizado contó con

cuatro grandes etapas: análisis, diseño, implementación y pruebas. En cada una de estas eta -

pas, se mostrarán los factores más relevantes que se tuvieron en cuenta para su ejecución.

El proceso de desarrollo fue guiado por una metodología iterativa con el cliente, en este caso,

el director de trabajo de grado, teniendo de esta forma retro alimentación al final de cada una

de las etapas.

En el proceso de desarrollo que se tuvo en implementación, se desarrolló un trabajo de prue-

bas unitarias sobre cada una de las funcionalidades del modelo priorizadas e implementadas.

1. Análisis

En la etapa de análisis se realizó la elaboración del modelo teórico basado en todos los análi -

sis del modelo anterior, las desventajas y ventajas que este tenía y los cambios que se debían

producir sobre el MRCC base. Estos cambios fueron indicados en el capítulo anterior, del

modelo extendido en los cuales surgen cambios para tres de los cuatros niveles. De este análi-

sis surgió el modelo donde se pueden agrupar en las diferentes capas del mismo las nuevas

funcionalidades o los requerimientos del nuevo modelo por las capas donde estos se encuen-

tran, por lo tanto los tres tipos de requerimientos funcionales se pueden clasificar de la capa

Formaciones, Sistema y Micro Social.

Basado en esta clasificación dada a los requerimientos del modelo, se realizó una priorización

del mismo, con la especificación de los requerimientos funcionales del modelo como base,

Page 70: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

debido a que el alcance del trabajo es un gestor de formaciones, se priorizaron los tres tipos

de requerimientos, dándole mayor prioridad a los pertenecientes al grupo de la capa de forma-

ciones y de la capa sistema, la cual como se presento es la encargada de parametrizar a la de

formaciones.

Capa de Formaciones(Prioridad Alta):

o La zona debe poder cambiar la táctica de la zona.

o La zona debe poder reorganizar después de una negociación.

o La zona debe poder reestructurar después de una negociación.

o La zona debe poder iniciar una negociación.

o La zona debe poder contestar la invitación a una negociación.

o La zona debe poder recibir un nuevo agente.

o La zona debe poder enviar un agente a otra zona.

o La zona debe poder tener varios mecanismos de detección de necesidades.

o La zona debe poder detectar cuando un objetivo se encuentra en un nivel de

satisfacción bajo.

o La zona debe poder asignar un rol estructurante a uno de los agentes pertene-

cientes a ella.

o La zona debe poder avisar a un agente cuando debe cambiar su rol.

o La zona debe poder determinar cuál es el rol estructurante que necesita en la

negociación.

Capa Sistema(Prioridad Media)

o Debe poder crear una zona.

o Debe poder cambiar la táctica de una zona en ejecución.

o Debe poder asignar una táctica nueva a una zona.

o Debe poder eliminar una zona.

o Debe poder modificar los atributos de una zona.

o Debe poder notificar a los agentes del sistema cuando ocurre un caso espe-

cial.

Página 70

Page 71: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

o Debe poder cambiar de formación en ejecución, asignando nuevas zonas con

nuevas tácticas.

Debido al alcance de la investigación, se tuvieron en cuenta para el desarrollo de la imple-

mentación los requerimientos con mayor priorización. Estos requerimientos fueron asignados

con respecto a la relación que estos tenían con el concepto del gestor de formaciones. Por lo

tanto, los cambios que se realizaran en el modelo llegaran hasta el requerimiento de prioridad

alta y media mencionados anteriormente.

2. Diseño

El diseño del modelo se realizó basado en los requerimientos funcionales que están presentes

en el modelo y en el framework de desarrollo de sistemas multiagentes de la Pontificia Uni-

versidad Javeriana BESA [GONZ2007]. Debido a que el MRCC base se encuentra construido

utilizando otro proyecto de la misma institución, que presta como principal servicio que los

agentes BESA puedan tener mecanismo de raciocinio basado en el estado de mundo y llevado

por la idea de los roles que puede tomar estos en el transcurso del tiempo. Basado en los re-

querimientos funcionales que se ven en el modelo, se rediseñó la capa de formaciones con los

nuevos elementos propuestos en base a las facilidades y servicios que prestan los frameworks

sobre los cuales está construido el MRCC.

El nuevo diseño dio lugar al diagrama de clase que representa los estados de los nuevos ele -

mentos en el modelo en la capa de formaciones y se puede observar en la figura 12.

Page 72: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

class Formaciones

ZoneManagerState

- adjacentZones: String- agents: ArrayList<String>- K: double- M: double- maximunAgents: int- minimunAgents: int- negociationLimit: double- waitingResponse: boolean

NeedDetector

+ needDetectionFunction(ZoneManagerAgent) : double

Obj ectiv e

- actualValue: double- deadlyHighLimit: double- deadlyHighLimitSolution: Solution- forgetfulness: double- highProgressiveLimit: double- highProgressiveLimitSolution: Solution- learning: double- lowLimit: double- lowLimitSolution: Solution- objectiveName: String

+ isNeedDetected(ZoneManagerAgent) : String

ActionZone

- finEjeX: double- finEjeY: double- iniEjeX: double- iniEjeY: double

Tactic

- StructuralRoles: HashMap<Int,ArrayList<StructuralRoleMRCC> >

+ reorganization(ArrayList<StructuralRoleMRCC>, WorldModelBESA) : void

StructuralRoleMRCC

- CooperativeActions: ArrayList<CooperativeAction>- exceptionRoles: HashMap<Character, RationalRoleBESA>- originalPositionX: double- originalPositionY: double

CoachState

+ cambairZona() : void+ cambiarTatica() : void+ casoExcepcion() : void+ CrearTactica() : void+ crearZona() : void

11

11

1

1

1

1

1 1..*

Figura 12. Diagrama de clases extendido

En este diagrama podemos observar cómo se encuentran relacionadas la capa formaciones,

por medio de la clase ZoneManagerState y la clase CoachState. La primera representa a las

zonas, y la segunda al entrenador en la capa sistema, la cual va a ser la encargada de la ges-

tión de las zonas, como su creación, modificación y eliminación, todo el control del ciclo de

vida de las zonas.

El entrenador es capaz de modificar la táctica de cada zona en ejecución o hasta de intercám -

bialas con una zona pre diseñada dependiendo las variables del ambiente.

Se puede observar en el diagrama como la relación entre las clases representa de manera

exacta la relación entre los elementos en el modelo extendido, teniendo una asignación co-

rrecta de responsabilidades a cada una de ellas.

Página 72

Page 73: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

En la etapa de diseño se tuvieron en cuentan algunos de los principios de diseño mencionados

por Robert Martin en [MART2000], el principio en el cual basamos el diseño e implementa-

ción de la capa de formaciones y los cambios en el estado del agente cooperativo fue el LSP o

el principio de sustitución de Liskov. El cual plantea que se debe diseñar con clases bases y

derivadas, donde las clases derivadas son las que heredan de la clase base. Los usuarios cono-

cen solo a la clase base, y por esto mismo pueden recibir clases derivadas y que estas se com -

porten de la forma que necesita el usuario y que el funcionamiento del modelo siga adecuada-

mente.

Este principio se ve presente principalmente en el manejo de los roles de los agentes, debido a

que los tres tipos de roles, cooperativo, estructurante y excepción heredan de rol racional.

Todos los atributos en las diferentes clases que intervienen con los roles no tienen un atributo

de la clase derivada que necesitan sino de la clase base, teniendo así que si se realiza un cam-

bio en algunos de los métodos donde se utilizaba una clase derivada específica y se cambia

por otra, no van haber problemas en el modelo gracias al principio de diseño utilizado, permi-

tiendo así la extensibilidad del modelo.

No solo se utilizaron principios de diseño, sino también patrones de diseño que facilitaron a

los diseñadores que vayan a utilizar el modelo poder reutilizar clases. Esto se ve presente por

ejemplo en la clase Objective, donde se utiliza el patrón de diseño detallado Strategy presen-

tado en el catálogo de [GAMM1998]. Permitirá al diseñador poder intercambiar entre los

diferentes Objective que necesiten los NeedDetector, sin que se presenten problemas de com-

pilación o ejecución. Por lo que estos cuentan con una clase base y aceptarán a cualquier

clase derivada que la implemente sin intervenir en su correcto funcionamiento. También per-

mitirá que los Objective cambien en tiempo de ejecución su NeedDetector, de tal forma que

un objetivo, pueda tener por lapsos de tiempo, formas específicas de detectar las necesidades

si así lo requiere el caso de estudio. Brindándole así a la necesidad la posibilidad de poderse

adaptar al ambiente o las condiciones en las que se encuentra.

Debido a que se utilizó BESA para el desarrollo de MRCC como se mencionó anteriormente

se debió también modelar los comportamientos de los agentes involucrados y las guardas de

Page 74: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

los mismos. Estos elementos son los que permiten que el agente BESA pueda recibir eventos

y actuar en reacción de los mismo. Los comportamientos permiten que un agente pueda ac-

tuar paralelamente a eventos que recibe, de tal forma que pueda procesar y actuar en reacción

a dos eventos al mismo tiempo. Para nuestro modelo surgió la necesidad de que el agente

cooperativo proveniente de la capa micro social tuviera un nuevo comportamiento el cual le

permitiera cambiar el rol estructurante que tuviera asociado.

Para el nuevo agente administrador de zona se le modelaron dos nuevos comportamientos,

uno de ellos que se encargará de la detección de necesidades de la zona y el otro que se encar-

gará de la negociación con las otras zonas para poder satisfacer las necesidades por medio de

los tres tipos de soluciones explicados en el capítulo anterior.

El diagrama que se usa para modelar los comportamientos y las guardas está inspirado en los

diagramas usados en AOPOA [GONZ2006B], la cual es una metodología de programación

orientada a agentes con enfoque organizacional, con un método de iterativo, para el diseño de

sistemas multiagentes para desarrollo en BESA. Ver la figura 13.

Se debe aclarar que el agente cooperativo cuenta con más guardas las cuales no se mostraran

en figura 13, debido a que las hereda del agente racional el cual corresponde del proyecto

Rational mencionado anteriormente, este diagrama tiene los mismos nombre en los agentes,

guardas y eventos que se encuentran en el software, reflejando así su comportamiento.

Página 74

Page 75: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Figura 13. Diagrama de agentes

3. Implementación

La implementación del modelo se dio en el lenguaje Java SE debido a que este fue el lenguaje

con el cual se construyó el framework de Agentes BESA, el modelo es totalmente indepen-

diente de la forma en que se vaya a usar; es decir, que no importara si se va a usar en simula-

ción computacional o para robots, como por ejemplo para representar a un equipo de fútbol

robótico. Se consiguió satisfactoriamente debido a que se utilizó el mismo modelo para simu-

lación computacional en dos dimensiones y para el equipo Robótico Bochica.

Una vez terminada la implementación del modelo, se volvió una vez más a la etapa de análi-

sis y diseño para corregir algunos detalles que eran necesarios en la implementación para que

éste funcionara adecuadamente como se especificó en el análisis, con la finalidad de que la

implementación del modelo fuera el reflejo del modelo teórico del MRCC.

Page 76: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

4. Pruebas

El protocolo de pruebas una vez implementado el modelo se basó en pruebas unitarias de

cada uno de los comportamientos y guardas nuevas del modelo. Para cada una de las guardas

se realizó una prueba unitaria donde se verificará que los eventos si estaban siendo recibidos

y que el agente respondiera de la manera esperada al evento. Una vez probada cada guarda

individualmente se empezaron a probar caminos de guardas de forma que se comportaran de

la forma esperada donde se empezaron a incrementar en cada prueba el tamaño de los cami-

nos hasta llegar a la totalidad del mismo.

Una vez se tuvieron probados todos los caminos de las guardas, se procedió a realizar pruebas

en un simulador computacional de dos dimensiones volviendo a probar cada uno de los cami-

nos de las guardas hasta que funcionaran de la manera esperada. Después de tener todas las

pruebas realizadas en el simulador de dos dimensiones, se prosiguió a realizar las mismas

pruebas, pero esta vez en los robots físicos, probando los roles estructurantes y las cadenas de

las guardas.

Página 76

Page 77: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

VI. CASO DE ESTUDIO ESPECÍFICO: FÚTBOL ROBÓTICO

Para verificar y demostrar que las formaciones ayudan al desempeño de un sistema Multia -

gente mediante la estructuración y ayudar a las precondiciones de las acciones cooperativas,

sé decidió implementar una aplicación de un caso de estudio para poder verificar esta afirma -

ción. Como se mencionó en el capítulo de implementación, el caso de estudio tuvo dos etapas

donde fue probada su funcionalidad, en el simulador computacional de dos dimensiones y en

el mundo físico mediante un equipo de fútbol robótico en competencia.

1. Protocolo de pruebas

La experiencia del equipo de fútbol robótico, la cual se llevó acabo en el Latín American

Robotics Competition [LARC2010], donde participó el equipo de fútbol robótico de Pontifi-

cia Universidad Javeriana Bochica fue un proyecto de Colciencias liderado por el Ing. Gonzá-

lez donde se trabajó con profesionales en ingeniería de diferentes especializaciones como

ingenieros electrónicos, mecánicos y de sistemas. Esta experiencia nos permitió vivir el am-

biente de trabajo de un grupo de investigación donde se buscaba sacar adelante un proyecto

real donde se cuenta con fechas límites para poder cumplir los objetivos del mismo.

En la competición de fútbol robótico se cuenta con un juez, el cual es el encargado de enviar

un mensaje a los equipos indicándoles los eventos que ocurren en el transcurso del partido.

Por medio de estos, se pudo observar que los robots pasaban de un rol estructurante o de un

rol cooperativo a un rol excepción tal y como lo indica el modelo debido a la prioridad de los

roles, de igual manera que cuando se acababa el evento de excepción, los robots volvían al rol

estructurante correspondiente sin perder o desconfigurar la estructura del equipo. De igual

manera, se pudo observar que los robots entraban en acciones cooperativas mono agentes y al

finalizar la acción cooperativa, ya sea por finalización exitosa o por falla, los robots volvían

a tener el rol estructurante que les pertenecía sin perder o comprometer el orden y la forma-

ción del equipo.

Page 78: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Para validar estadísticamente que con la capa de formaciones se proporciona un orden y favo-

rece a las acciones cooperativas, se realizaron pruebas donde se puede apreciar los beneficios

que proporciona la estructuración en un sistema Multiagente. Para poder realizar la validación

estadística se estableció un protocolo de pruebas donde se definieron los tres tipos de varia-

bles: independientes, dependientes e intervinientes. Las variables independientes son las

variables que se pueden manipular y que afectarán a las variables dependientes; las depen-

dientes son las variables que son afectadas por las variaciones de las variables independien-

tes, y las intervinientes son las variables que inciden y puede afectar las variables dependien-

tes, suelen ser un enlace entre las variables dependientes e independientes.

a. Variables independientes

Las variables independientes variarán para poder observar el desempeño del sistema multia-

gente con la nueva capa de formaciones fueron:

La inclusión o exclusión de la capa de formaciones.

En cada uno de los partidos un equipo tendrá activa la capa de formaciones y en el

otro equipo no la tendrá activa.

El número de agentes en cada equipo que se encuentra en la tabla 1.

El número de agentes en ambos equipos variará en las pruebas, pero siempre tenien-

do en cuenta que ambos tengan la misma cantidad para que no se presente una situa-

ción donde un equipo se encuentre en desventaja numérica.

Los valores que se eligieron para el número de agentes fueron:

Categoría Valor

Bajo 3 agentes

Medio 4 agentes

Alto 5 agentes

Tabla 1. Niveles del número de agentes por simulación

Los valores que se eligieron se definieron a partir de una serie de pruebas en las cua-

les se probó el comportamiento del equipo con 2, 3, 4, 5, 6 y 7 agentes. Con 2 agentes

Página 78

Page 79: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

se realizaban pocas acciones cooperativas. Con 6 y 7 agentes en el equipo se observa-

ba que los comportamientos emergentes que se generaban producían muy pocas

acciones cooperativas y la probabilidad de que un equipo metiera gol era muy baja.

Mientras que, con 3, 4 y 5 agentes el sistema se comportaba de manera adecuada

generando los datos necesarios para realizar los análisis correspondientes.

El número de zonas de acción en el equipo el cual se encuentra en la tabla 2.

Debido a que las zonas en la capa de formaciones inciden en la dinámica del juego y

de igual manera la negociación y la búsqueda de satisfacción de los objetivos, se

variará el número de zonas en el equipo que cuenta con la capa de formaciones.

Numero Zonas Nombre Zona Mínimo número de agentes Máximo número de agentes

2Zona Defensiva 1 4

Zona Ofensiva 1 4

3Zona Arquero 1 1

Zona Defensiva 1 4

Zona Ofensiva 1 4

Tabla 2. Características de las zonas para las pruebas

Se eligieron 2 zonas debido a que con el número de agentes seleccionados para hacer

las simulaciones se daba la posibilidad de que existiera más de un agente por zona,

permitiendo que se pudieran efectuar negociaciones entre las zonas. Cuando se to-

maron 2 zonas se excluyó la Zona arquero debido a que esta zona tiene como reglas

estructurantes mínimo 1 agente en la zona, máximo 1 agente en la zona, por ende no

se podían establecer negociaciones entre las zonas.

Se eligieron 3 zonas para generar más orden y estructura dentro del equipo y de esta

manera se podía analizar más el impacto del orden en el resultado final del partido y

en el número de acciones cooperativas realizadas.

La configuración de inicio o posición inicial de los agentes.

Page 80: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

La posición inicial incide en el desarrollo del partido debido a que la distancia del

punto base de un agente al recurso limitado ayudarán a facilitar su obtención y a fa-

vorecer las acciones cooperativas. La configuración inicial será aleatoria en el equipo

que tiene activa la capa formación.

Para realizar las pruebas se generaron posiciones aleatorias para generar una táctica

diferente por zona en cada caso base. Para lograr estas tácticas se generaba una tácti-

ca base por cada zona, en donde se define una posición base de cada agente dentro de

su zona, como se puede observar en las figuras 14, 15, 16, 17, 18 y 19. Luego se ge-

neraba una posición aleatoria del punto base de cada agente en la zona de acuerdo al

punto base definido en la táctica base para generar una táctica aleatoria. De esta ma-

nera se generó una táctica base por zona y 4 tácticas aleatorias por zona para realizar

cada caso de la simulación.

Figura 14. Formación base con 3 jugadores Figura 15. Formación base con 3

y 2 zonas jugadores y 3 zonas

Página 80

Page 81: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Figura 16. Formación base con 4 jugadores Figura 17. Formación base con 4

y 2 zonas jugadores y 3 zonas

Figura 18. Formación base con 5 jugadores Figura 19. Formación base con 5

y 2 zonas jugadores y 3 zonas

b. Variables dependientes

Las variables dependientes que se estudiarán sus variaciones dependiendo las variables de-

pendientes nombradas anteriormente serán:

Total de partidos ganados

Page 82: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Permitirá conocer cuántos partidos gano el equipo con la capa de formaciones y

cuantos partidos ganó el equipo sin la capa de formaciones.

Total de goles anotados

Permitirá conocer la capacidad que tendrá el equipo que cuenta con la capa de forma-

ciones para anotar goles en contraste del equipo que no la tiene activa.

Numero de intentos de acciones cooperativas

Esta variable mide cuantas veces los agentes empezaron a realizar una acción coope-

rativa que tenían disponible, pero no indica su culminación.

Número de acciones cooperativas realizadas.

Permitirá conocer cómo afecta la capa de formaciones a las precondiciones de las

acciones cooperativas y así poder contrastar cuál de los dos equipos realizó más ac-

ciones cooperativas.

Estas variables fueron escogidas por que permiten observar los resultados obtenidos por el

sistema cuando utilizan la capa de formaciones y cómo esta afecta a las ya mencionadas.

c. Variables intervinientes

Las variables intervinientes que se tendrán en cuenta para el protocolo de pruebas las cuales

se mantendrán constantes en el transcurso de las mismas de tal forma que las mediciones sean

las mismas para todas las variables dependientes son:

Número de acciones cooperativas disponible para los agentes.

Debido a que las acciones cooperativas que puedan realizar los agentes influyen en

las capacidades para desenvolverse en el juego, ambos equipos contarán con las mis-

mas acciones cooperativas disponibles, las cuales son: Movimiento en bloque, movi-

miento en triangulo, pase, disparo.

Visión de los agentes sobre la cancha de juego.

Página 82

Page 83: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Debido a que el rango de visión de los agentes influye en la forma en que perciben el

mundo, y de esta forma cómo reaccionar sobre los eventos que ocurren en este, los

agentes de ambos equipos contarán con el mismo cono de visión de tal forma que

ambos se encuentren en igualdad de condiciones.

La duración de los partidos.

La duración del partido puede influir sobre el resultado de éste, por lo tanto, cada

partido de simulación tendrá una duración constante.

2. Protocolo de pruebas

Como se mencionó anteriormente se determinaron 3 variables independientes para realizar las

pruebas, que generaron 30 escenarios diferentes para realizar la simulación. Se realizaron 30

horas de simulación aproximadamente en donde se realizó 30 ejecuciones de cada escenario,

para finalmente tomas las 20 ejecuciones más significativas de cada escenario para realizar el

análisis de los resultados.

a. Presentación y análisis de resultados

Una vez realizadas las simulaciones con los criterios mencionados anteriormente se obtuvie-

ron los datos que se pueden observar en la tabla 4, y sus respectivas convenciones se pueden

ver en la tabla 3.

Convención Significado

Ag Agentes

Zn Zonas

NP Numero Partidos

G1 Goles equipo 1

G2 Goles equipo 2

PG1 Partidos ganados equipo 1

PG2 Partidos ganados equipo 2

IAC1 Intento acciones cooperativas 1

IAC2 Intento acciones cooperativas 2

AC1 Acciones cooperativas 1

Page 84: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

AC2 Acciones cooperativas 2

Tabla 3. Convenciones de la tabla de resultados

Ag Zn NP G1 G2 PG1 PG2 IAC1 IAC2 AC1 AC2

Total 3 2 100 91 193 12 84 7267 20942 211 12

Promedio 0,91 1,93 0,12 0,84 72,67 209,42 2,11 0,12

Total 3 3 100 79 0 93 0 7147 9116 210 0

Promedio 0,79 0 0,93 0 71,47 91,16 2,1 0

Total 4 2 100 9 6 38 29 5903 8579 110 84

Promedio 0,09 0,06 0,38 0,29 59,03 85,79 1,1 0,84

Total 4 3 100 16 23 56 20 6494 9804 123 96

Promedio 0,16 0,23 0,56 0,2 64,94 98,04 1,23 0,96

Total 5 2 100 6 10 38 46 5133 9657 72 62

Promedio 0,06 0,1 0,38 0,46 51,33 96,57 0,72 0,62

Total 5 3 100 7 9 15 29 3656 7166 63 68

Promedio 0,07 0,09 0,15 0,29 36,56 71,66 0,63 0,68

Total 2 Zonas 300 106 88 18303 393Promedio 2 Zonas 0,353333 0,293333 61,01 1,31

Total 3 Zonas 300 102 164 17297 396Promedio 3 Zonas 0,34 0,546667 57,65666667 1,32

TOTAL 600 208 241 252 208 35600 65264 789 322PROMEDIO TOTAL 0,346667 0,4016667 0,42 0,346667 59,3333 108,77333 1,315 0,536667

Tabla 4. Resultados generales de la simulación

A continuación, se mostraran ocho graficas. Las cuatro primeras graficas muestran los resul -

tados de las variables dependientes que se definieron en la sección anterior. Las otras cuatro

graficas muestran el resultado de las mismas variables dependientes vistas desde el punto de

vista del número de zonas y el número de agentes por el equipo.

Página 84

Page 85: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

42

34,66

23,33

Partidos ganados

Equipo con formacionesEquipo sin formacionesEmpate

Figura 20. Porcentaje de partidos ganados.

La figura 20 de porcentaje partidos ganados muestra que el equipo con formaciones ganó un

42% de los partidos jugados, mientras el equipo sin la capa de formaciones activa ganó el

34% de los partidos, y finalmente, hubo un 23% en empates.

La figura 20 muestra como la inclusión de formaciones al modelo MRCC para el caso especí-

fico de futbol robótico mejora el desempeño del sistema, permitiendo que el sistema logre su

objetivo global de manera más efectiva. La capa de formaciones permite modelar una estruc-

turada organizada, que le brinda a cada agente unas responsabilidades base por medio del rol

estructurante y la satisfacción de objetivos mediante el detector de necesidades. De manera

que, existe una distribución de las responsabilidades en el sistema, se puede evaluar el grado

de cumplimiento de cada uno de los objetivos del sistema y se pueden tomar a tiempo las

decisiones necesarias para satisfacer cada objetivo.

Por otro lado, se notó que el equipo que no tenía la capa de formaciones activa, actuaba reac-

tivamente de acuerdo a sus percepciones del ambiente, lo que lo lleva a realizar las acciones

que lo encaminen a unas metas parciales, pero no a realizar las metas del sistema. En conclu -

sión, esta gráfica demuestra que el objetivo de una formación se cumple de manera exitosa y

que la inclusión de esta capa a un sistema multiagente trae beneficios.

Page 86: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Equipo con fo

rmacio

nes

Equipo sin fo

rmacio

nes0.310.330.350.370.390.41

0,3466

0,40166

Goles

Figura 21. Promedio del número de goles realizados por partido.

La figura 21 de promedio de goles realizados muestra que el equipo sin formaciones realiza

aproximadamente un gol cada dos partidos, mientras que el equipo con formaciones realiza

un gol cada tres partidos aproximadamente.

Esta gráfica muestra que el comportamiento reactivo de los agentes que no están bajo la in-

fluencia de una capa de formaciones los lleva a realizar más goles, mientras, que un compor-

tamiento más estructurado y organizado disminuye la realización de goles.

En las simulaciones se pudo observar que los agentes que estaban bajo la influencia de la

capa de formaciones una vez realizaban una acción regresaban a su posición base para cum-

plir sus responsabilidades del rol estructurante, en caso de que no tuvieran oportunidades de

realizar alguna acción cooperativa. De esta manera, el agente evaluaba la ganancia de realizar

las posibles acciones cooperativas (matching), y si este valor no era lo suficientemente alto

seguía cumpliendo sus responsabilidades de rol estructurante. Mientras que, los agentes sin

rol estructurante se quedaban quietos cuando no había acciones cooperativas que realizar.

Página 86

Page 87: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Equipo con formaciones Equipo sin formaciones0

20406080

100120

59,333

108,7733

Intentos de acciones cooperativas

Figura 22. Promedio del número de intentos para realizar acciones cooperativas por

partido.

La figura 22 de promedio del numero de intentos para realizar acciones cooperativas muestra

que el equipo sin la influencia de la capa de formaciones tiene 109 oportunidades aproxima-

damente de realizar acciones cooperativas por partido, mientras que, el equipo que esta con la

capa de formaciones activa tiene 59 oportunidades de poder realizar una acción cooperativa

de manera exitosa por partido. Los datos de la figura 22 muestran que el comportamiento

reactivo de los agentes que no tiene la influencia de las formaciones, los lleva a intentar reali-

zar más acciones cooperativas que los agentes con roles estructurantes, porque, todos los

agentes del sistema van a intentar realizar las acciones cooperativas. Mientras que, como

existe una estructura organizada en un sistema con formaciones, sólo los agentes que deben

realizar ciertas acciones cooperativas lo van a intentar, mientras que los otros agentes estarán

cumpliendo las responsabilidades asociadas al rol estructurante

Page 88: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

Equipo con formaciones Equipo sin formaciones0

0.20.40.60.8

11.21.4

1.315

0,5366

Acciones cooperativas

Figura 23. Promedio del número de acciones cooperativas realizadas con éxito por par-

tido.

La figura 23 de promedio de acciones cooperativas realizadas, muestra que el equipo con

formaciones realiza exitosamente 1,3 acciones cooperativas por partido, mientras que el qui-

po sin formaciones realiza 0,5 acciones cooperativas exitosamente por partido.

Esta figura muestra que el objetivo de las formaciones se cumple, debido a que se favorecen

las precondiciones de las acciones cooperativas de manera que se realizan exitosamente más

acciones cooperativas que si no se tuviera la capa de formaciones activa. La estructura y las

responsabilidades que le asigna una formación a un agente le permiten tener más eficacia en

la realización de las acciones cooperativas porque como se vio en la figura 22, a pesar de que

se tienen menos intentos para realizar una acción cooperativa, se tiene más probabilidad de

que se realice con éxito, aumentando el número de acciones cooperativas realizadas.

Como se pudo ver en las cuatro anteriores graficas los objetivos de las formaciones se cum -

plieron de manera exitosa con un pequeño protocolo de pruebas usando el caso específico de

futbol robótico. Como se vio en las graficas se cumplió el objetivo del sistema porque se

ganaron más partidos, y además, se favorecieron las precondiciones de las acciones coopera -

tivas porque el sistema ejecutaba con éxito mayor número de acciones cooperativas, provo-

cando que el sistema fuera más eficaz en la forma de cumplir su objetivo global.

Página 88

Page 89: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

General 3 vs 3 4 vs 4 5 vs50

0.10.20.30.40.50.60.70.80.9

1

0.353300000000001

0.91

0.09 0.06

0.34

0.79

0.160.07

Goles

2 Zonas3 Zonas

Figura 24. Promedio del número de goles realizados por partido evaluados por zonas y

número de jugadores.

La figura 24 muestra el promedio del número de goles por partido que se realizaron de acuer-

do al número de zonas y al número de jugadores que tenía el equipo. Con 2 zonas el prome -

dio general de goles es de 1 gol cada 3 partidos, y con 3 zonas el resultado es muy parecido

aunque inferior. Cuando el equipo es de 3 jugadores y de 2 zonas hace aproximadamente 1

gol cada partido y con 3 jugadores y 3 zonas hace aproximadamente 0,8 goles cada partido.

Con 4 jugadores y 2 zonas se realiza un gol cada 11 partidos y con 3 zonas se hace 1 gol cada

6 partidos. Con 5 jugadores y 2 o 3 zonas se hace un gol cada 17 partidos aproximadamente.

Page 90: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

General 3 vs 3 4 vs 4 5 vs50

102030405060708090

100

29.33

12

38 38

54.66

93

56

15

Partidos ganados

2 Zonas3 Zonas

Figura 25. Porcentaje de partidos ganados evaluado por zonas y número de jugadores.

En la gráfica 25 de porcentaje de partidos ganados evaluado por zonas y número de jugadores

se puede apreciar que en general con 3 zonas se ganan el 54% de los partidos jugados, mien-

tras que, con 2 zonas se ganó el 29% de los partidos jugados. Cuando se manejaron 2 zonas

en el sistema con 3 jugadores se ganó un 12% de los partidos, con 4 jugadores se ganó un

38% de los partidos y con 5 jugadores se ganó un 38% de los partidos. Mientras que, cuando

se manejaron 3 zonas en la capa de formaciones con 3 jugadores se ganó un 93%, con 4 juga -

dores se ganó el 56% y con 5 jugadores se ganó el 15% de los partidos jugados.

General 3 vs 3 4 vs 4 5 vs50

1020304050607080

61.0172.67

59.0351.33

57.6566

71.4764.94

36.56

Intentos de acciones cooperativas

2 Zonas3 Zonas

Figura 26. Promedio del número de intentos para realizar acciones cooperativas por

partido, evaluadas por zonas y número de jugadores.

Página 90

Page 91: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

En la figura 26 de promedio del número de intentos para realizar acciones cooperativas se

puede observar que con 2 zonas se obtuvieron más intentos para realizar acciones cooperati-

vas que con 3 zonas. Con 2 zonas existieron en promedio 61 intentos de realizar una acción

cooperativa por partido, mientras que con 3 zonas hubieron aproximadamente 57 intentos de

realizar acciones cooperativas por partido. En el caso de 3 jugadores y 5 jugadores las 2 zonas

generan más intentos de acciones cooperativas, mientras que en el caso de 4 jugadores, las 3

zonas generan más intentos de realizar acciones cooperativas que las 2 zonas.

General 3 vs 3 4 vs 4 5 vs50

0.5

1

1.5

2

2.5

1.31

2.11

1.1 0.720000000000001

1.32

2.1

1.230.63000000

0000001

Acciones cooperativas

2 Zonas3 Zonas

Figura 27. Promedio del número de acciones cooperativas realizadas con exito, evalua-

das por zonas y número de jugadores.

En la figura 27 del promedio del número de acciones cooperativas realizadas se puede ver

que una mínima diferencia en general. Las 3 zonas generan más acciones cooperativas exito-

sas con un número de 1,32 acciones cooperativas acabadas exitosamente, mientras que, para

las 2 zonas se generan un 1,31 acciones cooperativas por partido. También se puede observar

que para 3 jugadores y 5 jugadores las 2 zonas generan más acciones cooperativas exitosas

que las 3 zonas, mientras que, para el caso de 4 jugadores las 3 zonas generan más acciones

cooperativas acabadas con éxito que las 2 zonas,

Las 4 últimas graficas muestran que cuando el equipo maneja 3 zonas es más estructurado y

organizado que cuando tiene 2 zonas, lo que le permite realizar más acciones cooperativas de

Page 92: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

manera exitosa y ganar más partidos. Sin embargo, entre mas organizado este el sistema se

corre el riesgo de tener menos posibilidades para intentar realizar acciones cooperativas y de

meter goles.

Página 92

Page 93: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

VII. Conclusiones y trabajo futuro

El diseño de un gestor de formaciones es un problema abordado por muchos autores y lo han

atacado desde diferentes perspectivas generando aproximaciones interesantes. Este trabajo de

grado consultó diferentes fuentes para poder diseñar un gestor de formaciones que se acople

al modelo MRCC y que pueda obtener todos los conceptos investigados de los diferentes

autores. A partir de la investigación realizada se extiende el modelo base del MRCC, refinan-

do la capa formación y proponiendo un modelo gestor de formaciones que permita gestionar

las formaciones de manera inteligente de acuerdo a diferentes criterios. También, se especifi -

ca la manipulación que debe tener la capa sistema sobre la capa de formaciones, permitiendo

que en el futuro se agregue un mecanismo de mayor inteligencia para la elección de forma-

ciones.

El trabajo realizado abordó la base del modelo permitiendo que el modelo base se vuelva más

robusto y más aplicable a diferentes tipos de dominios, permitiendo obtener mejores resulta-

dos en las diferentes aplicaciones en las que se use el modelo. Se estableció un avance impor-

tante en el modelo como lo es la nueva forma de detectar las necesidades, brindándole mayor

flexibilidad al mismo y permitiendo que este se adapte mejor a los diferentes casos de estudio

específicos en los cuales se vaya a usar. A partir de éste cambio, se pudo concluir que el mo-

delo MRCC puede ser genérico hasta cierto grado de abstracción, debido a que si se vuelve

demasiado genérico se pierden las restricciones y las características que hacen parte del domi-

nio de la aplicación.

El modelo desarrollado refleja una metodología de investigación rigurosa, la cual permitió el

cumplimiento de cada uno de los objetivos específicos, teniendo al fin de cada etapa un entre-

gable bien definido. También, el producto refleja un proceso de ingeniería de software exten-

so debido al refinamiento constante del modelo, y a las diferentes pruebas que se realizaron,

haciendo que el modelo se refinara tanto en simulación como con los robots. Éstas pruebas

reflejan que el modelo cumple los objetivos de una formación flexible he intercambiable. De

igual manera, en las pruebas se pudo observar que por medio de la organización y estructura-

Page 94: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

ción del sistema se obtiene un mejor rendimiento, mayor número de acciones cooperativas

realizadas exitosamente en un menor número de intentos, mayor número de victorias que el

mismo sistema sin la capa de formaciones activa.

Para la realización de proyectos en el futuro se recomienda usar otro tipo de simulador para

hacer las pruebas, debido a que el simulador actual no posee unas restricciones físicas que

son fundamentales para la buena ejecución de una simulación. El simulador que se recomien-

da debe manejar una vista global del campo de juego para cada agente, la posibilidad de si-

mular si un robot tiene kicker y dribbler, un mejor manejo de los fenómenos físicos del am-

biente y la integración del juez del juego.

El modelo extendido que se propone en este trabajo se puede implementar e integrar al mode-

lo base para completar y refinar la capa formación y la capa sistema, dando las bases para

poder agregar diferentes métodos para la detección de necesidades, permitiendo que el mode-

lo sea genérico e independiente de la aplicación o caso de estudio. También, se debería ejecu-

tar el mismo protocolo experimental definido para las simulaciones con los robots reales.

Una oportunidad de mejora que se observó del modelo extendido es la implementación de los

cambios propuesto en la capa micro social. Estos cambios no eran parte del alcance del traba-

jo, pero fue una mejora que surgió en el estado del arte, y que puede generar beneficios al

modelo.

Página 94

Page 95: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

VIII. Bibliografía

[ACOST2007] M. Acostamadiedo y R. Cáliz. “Roles Racionales en Robótica Cooperativa (R3C)”, Trabajo de Grado Ingeniería de Sistemas, Pontificia Universidad Javeriana. 2007

[AKIY2008] H. Akiyama and I. Noda. Multi-agent Positioning Mechanism in the Dynamic Environment. Springer-Verlag Berlin Heidelberg 2008.

[ALME2009] R. Almeida, L. Reis y A. Jorge. Analysis and Forecast of Team Formation in the Simulated Robotic Soccer Domain. Springer-Verlag Berlin, Heidelberg 2009.

[ARIA2008] M. Arias y J. Ramirez. Team Agent Behavior Architecture in Robot Soccer. IEEE Latin American Robotic Symposium LARS '08. Octubre. 2008.

[ATKI2008] J. Atkinson y D. Rojas. Generating Dynamic Formation Strategies Based on Human Experience and Game Conditions. Springer-Verlag Berlin, Heidelberg 2008.

[AYAN2009] H. Ayanegui. Recognizing Team Formations in Multiagent Systems: Applica-tions in Robotic Soccer. Springer-Verlag Berlin, Heidelberg 2009.

[BERN2007] C. Bernal, y F. Camargo. ArCoo-Arquitectura para robótica cooperativa. Bo-gota, 2007.

[BERN2008] C. Bernal, F. Camargo y E. Gonzalez. Formations Level on the MRCC Model. Bogota, 2008.

[BULK2006] B. Bulka, M. Gaston y M. desJardins. Local strategy learning in networked multi-agent team formation. Springer Science+Business Media Baltimore, USA 2006.

[CAO2009] Min Wu, Wei-Hua Cao, Jun Peng, Jin-Hua She, and Xin Chen. Balanced Reac-tive-Deliberative Architecture for Multi-Agent System for Simulation League of RoboCup. ICROS, KIEE and Springer 2009.

[CERT2008] J. Certo, N. Lau, L. P. Reis. A generic strategic layer for collaborative net-works. IFIP International Federation for Information Processing, Volume 243. Boston: Springer. pp. 273–282. 2008.

[FARI2010] B. M. Faria, L. P. Reis, N. Lau y G. Castillo. Machine Learning Algorithms applied to the Classification of Robotic Soccer Formations and Opponent Teams. 2010 IEEE Conference on Cybernetics and Intelligent Systems. 2010.

Page 96: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

[FATH2006A] R. Fathzadeh, V. Mokhtari, M. Mousakhani y A Mohammad Shahri. Coach-ing with Expert System Towards RoboCup Soccer Coach Simulation. Springer-Verlag Berlin, Heidelberg 2006.

[FATH2006B] R. Fathzadeh, V. Mokhtari, M. Mousakhani y F. Mahmoudi. Mining Oppo-nent Behavior: A Champion of RoboCup Coach Competition. Robotics Symposium, 2006. LARS '06. IEEE 3rd Latin American. 2006.

[FATH2008] R. Fathzadeh, V. Mokhtari, y M. Kangavari. Opponent Provocation and Gerkey Behavior Classification: A Machine Learning Approach. Springer-Verlag Berlin, Heidelberg 2008.

[FERB1999] J, Ferber. Multiagent Systems: An Introduction to Distributed Artificial Intelli-gence. Addison-Wesley, 1999.

[GAMM1998] Gamma, Helm, Johnson, Vlissides,” Design Patterns ‐ Elements of Reusable Object‐Oriented Software”, Addison‐Wesley 1998.

[GERK2004] B. P. y M. J. Mataric. On Role Allocation in RoboCup. Springer-Verlag Berlin, Heidelberg 2004.

[GONZ2006A]E. Gonzalez. CCS: Commit based Cooperation Strategy for MultiRobot Sys-tems, ISRA 2006; pp 193-199.

[GONZ2006B] Enrique González, Julián Rodríguez, Miguel Torres, “The AOPOA Methodo-logy”, 26 de marzo.

[GONZ2007] E, González y C. Bustacara. Desarrollo de Aplicaciones basadas en sistemas multiagente. Editorial Pontificia Universidad Javeriana, 2007.

[HABI2002] J. Habibi, E. Chiniforooshan, A. HeydarNoori, M. Mirzazadeh, M.A. Safari y H.R. Younesy. Coaching a Soccer Simulation Team in RoboCup Environment. Springer-Ver-lag Berlin, Heidelberg 2002.

[HABI2003] J. Habibi, M. Ahmadi, A. Nouri, M. Sayyadian, y M. Nevisi. Implementing Heterogeneous Agents in Dynamic Environments, a Case Study in RoboCupRescue. Springer-Verlag Berlin Heidelberg 2003.

[HORA2005] B. Horak, M. Obitko, J. Smid, and V. Snasel. Strategy and Communication in Robotic Soccer Game. Springer-Verlag Berlin Heidelberg 2005.

[KALY2007] S. Kalyanakrishnan, Y. Liu, and P. Stone. Half Field Offense in RoboCup Soc-cer: A Multiagent Reinforcement Learning Case Study. Springer-Verlag Berlin Heidelberg 2007.

Página 96

Page 97: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

[LAU2009] N. Lau, L. Seabra, N. Filipe y G. Corrente. Roles, Positionings and Set Plays to Coordinate a RoboCup MSL Team. Springer-Verlag Berlin, Heidelberg 2009.

[LARC2010] Latin American Robotics Competition, Disponible online en http://www.larc10.fei.edu.br/

[MAES1994] P. Maes. Modeling adaptive autonomous agents, Artificial Life Journal, 1(1-2), 1994:135-162.

[MART2000] R. Martin, “Design Principles and Design Patterns”, Disponible online en http://www.objectmentor.com/resources/publishedArticles.html

[NAKA2006] T. Nakashima, M. Takatani, M. Udo, H. Ishibuchi y M. Nii. Performance Eval-uation of an Evolutionary Method for RoboCup Soccer Strategies. Springer-Verlag Berlin, Heidelberg 2006.

[NOBU2006] Nobuyuki T. and Sachiyo A. Teamwork Formation for Keepaway in Robotics Soccer (Reinforcement Learning Approach). Springer-Verlag Berlin Heidelberg 2006.

[REIS2001] L. P. Reis, N. Lau y E. C. Oliveira. Situation Based Strategic Positioning for Coordinating a Team of Homogeneous Agents. Springer Verlag. pp. 175-197. 2001.

[RILE2006] P. F. Riley y M. M. Veloso. “Coach planning with opponent models for distrib-uted execution”. Auton Agent Multi-Agent Sys. (Apr. 2006), 293–325. DOI 10.1007/s10458-006-7449-z

[RUSS2004] N. Russell. Inteligencia Artificial: un enfoque moderno. Prentice Hall, 2004.

[SVAT2001] V. Svato. Behavioural Formation Management in Robotic Soccer. Springer-Verlag Berlin, Heidelberg 2001.

[TOLO1999] G. Tolosa and F. Bordignon, F. Review: Technology of agents of software, Ci. Inf., Brasilia, 28 (3), 1999:302-309.

[VISS2001] U. Visser, C. Drucker, S. Hubner, E. Schmidt, H. Weland. Recognizing Forma-tions in Opponent Teams. Springer-Verlag Berlin, Heidelberg 2001.

[WATK1989] C.J.C.H. Watkins, . Learning from Delayed Rewards. PhD thesis, Cambridge University, Cambridge, England.

[WEIS1999] G. Weiss .Multiagent Systems: A Modern Approach to Distributed Artificial Intelligence. MIT Press, Cambridge, MA, USA, 1999.

[WOOL1998] M. Wooldridge, and N. Jennings. Agents Technology: Foundations, Applica-tions and markets. Springer – UNICOM, Berlín 1998.

Page 98: pegasus.javeriana.edu.copegasus.javeriana.edu.co/~CIS1010SD02/documentos/Memoria... · Web viewrobots reales para ajustar aún más el modelo, hasta que finalmente se realizaron los

Ingeniería de Sistemas SIDRE <CIS1010SD02>

[YANG2010] F. Yang, Q. Wang y W. Zhendong. Cooperative Combat System Action Plan-ning Method based on Multi-agent System. Second International Workshop on Education Technology and Computer Science. 2010.

[YEN2004] J. Yen, X. Fan, R. Volz, Information Needs in Agent Teamwork, 2004.

[YOSH2003] K. Yoshimura, N. Barnes, R. R¨onnquist y L. Sonenberg. Towards Real-Time Strategic Teamwork: A RoboCup Case Study. Springer-Verlag Berlin, Heidelberg 2003.

[ZHAN2007] Y. Zhang. Modeling Role-Based Agent Team. Springer-Verlag Berlin Heidel-berg 2007.

Página 98