Metodología en ZEUS - Technical University of Valencia · 2002. 10. 14. · 1 Metodología en ZEUS...

15
1 Metodología en ZEUS Curso Doctorado Sistemas Multi-agente ZEUS Zeus es una herramienta de desarrollo de SMA. Presenta una “metodología” basada en el modelo de roles. Dicha metodología comprende un conjunto de métodos y principios para el desarrollo de agentes ZEUS.

Transcript of Metodología en ZEUS - Technical University of Valencia · 2002. 10. 14. · 1 Metodología en ZEUS...

  • 1

    Metodología en ZEUS

    Curso DoctoradoSistemas Multi-agente

    ZEUSZeus es una herramienta de desarrollo de SMA. Presenta una “metodología” basada en el modelo de roles.Dicha metodología comprende un conjunto de métodos y principios para el desarrollo de agentes ZEUS.

  • 2

    ZEUSEtapas en el desarrollo

    Domain Analysis Design Realisation

    Role Modelling

    Implem-entations Runtime

    Support

    Identification of Ontology, Agents, Services & Acquaintances

    Agent Definition, Co-ordination & Organisation

    Visualisation Debugging

    Stage ...

    Activities ...

    Explained in ... Role

    Modelling Guide

    Case Studies

    Problems Solutions

    Application Realisation

    Guide

    Runtime Guide

    ZEUS Agent Generator

    ZEUS Visualiser

    Software Support ...

    ZEUSAnálisis

    Modelar y entender el problemaNo indica la aproximación a emplearRecomienda la modelización de RolesNo se ofrece soporte SW para esta fase

    DiseñoSe determina que agentes hay Se trasladan las responsabilidades de los roles a problemas a nivel de agenteNo se ofrece soporte SW para esta fase

  • 3

    ZEUSRealización

    Crear implementaciones desde el diseño conceptual anteriorZeus provee de una herramienta para generar código Java

    Soporte de ejecuciónSe dispone de un conjunto de herramientas para ayudar a la depuración accesibles desde el agente Visualizador.

    ZEUSModelo de Roles (Kendall)

    Cada rol describe una posición y un conjunto de responsabilidades en un cierto contextoLos roles deben:

    Ser modularesAlta cohesiónNo disponer de responsabilidades extrañas Ser completo (no triviales)Bajo acoplamiento

    La idea es que un agente podrá jugar uno o varios roles. En el diseño los roles se transformarán en agentes.

  • 4

    ZEUSModelo de Roles

    Dominio un grupo de modelos de rolModelo de Rol patrones de arquitectura

    Notación:Parte de la notación del diagrama de clases de UML

    Diagrama de RolesDiagrama de Colaboración

    ZEUSDiagrama de Roles (relaciones estáticas)

    Peer Role

    Sub-role 1

    Containing Role Peer Role

    Sub-role 2

    KEY

    Interaction

    Multiplicity

    Containment

    Parent Role

    Inheritance

  • 5

    ZEUSDiagrama de Colaboración (relaciones dinámicas)

    En este diagrama sólo se expresan interacciones enumeradas según un orden preestablecido

    Cada interacción es especificada posteriormente

    Containing Role Peer Role Peer Role 1

    2

    3

    Sub-role 1 or 2

    ZEUSRole description section

    Son tablas donde se describe cada rol en términosde sus obligaciones sociales y funcionalidades

    ROLE NAME Role Model: the model that contains this role Relationships to other roles: roles that this contains or specialises Description: A written description of this role's characteristics, abilities, responsibilities etc.

    Responsibilities: Collaborators: [1] An outgoing interaction ⇒ Source Role [2, 3] An incoming and outgoing interaction ⇐ ⇒ Source and Destination

    Role

    External Interfaces: An application specific activity Necessary Social Protocols: The abilities necessary to fulfil its responsibilities

  • 6

    ZEUSZEUS Application Role Model Diagram

    Visualiser Task Agent

    Facilitator

    Name Server Name Inquirer Name Registrant

    Ability Inquirer Ability Registrant

    ZEUSEjemplo de Modelo de Rol:

    Shared Information Space Role Model Diagram

    Controller

    Publisher

    View Model

    Subscriber

  • 7

    ZEUSEjemplo de Modelo de Rol:

    Distributed Marketplace Role Model Diagram

    Inquirer

    Seller Buyer

    Trader

    Broker Registrant

    ZEUSEjemplo de Modelo de Rol:

    Institutional Auction Role Model Diagram

    Accountant

    Seller Bidder

    Auctioneer

    Auction Participant Doorman

  • 8

    ZEUSLa selección del dominio y del modelo de rol más apropiado en cada problema es el primer paso en las fases de desarrollo en ZEUS.A partir de aquí se obtienen los agentes que cumplan dichos roles.Se fijan las responsabilidades (sociales y de dominio).Se diseñan las tareas e interacciones.Se pasa a la implementación del sistema.

    ZEUSEjemplo:

    FRUITMARKET. An Agent Trading Application

  • 9

    ZEUSFRUITMARKET

    Mercado sencillo de frutasTres tipos de participantes

    OrchardBot: agricultor, con unos determinadas bienes pero sin capital, intenta vender sus productos con un margen mínimo del 10%

    SupplyBot: intermediario, con capacidad económica y determinados bienes, intenta vender sus productos con un margen mínimo del 5%

    ShopBot: supermercado, con pocos bienes y bastante capital, intenta vender sus productos con un margen mínimo del 5 %

    ZEUSFRUITMARKET

    Mercado abiertoSe fijan unos precios baseLa moneda es el euro (€)

    1. Análisis

    2. Diseño

    3. Realización

  • 10

    ZEUSFRUITMARKET. Análisis

    El dominio es evidentemente el Multi-Agent TradingEste contiene dos modelos de roles:

    Distributed MarketplaceInstitutional Auction

    Para este caso no es necesario un intermediario, parece adecuado pensar que este modelo es el adecuado

    ZEUSFRUITMARKET. Análisis

    Distributed Marketplace

    Inquirer

    Seller Buyer

    Trader

    Broker Registrant

    • Identificación de agentes• Asignación de roles

    Test Esfera de ResponsabilidadTest Punto de Interacción

  • 11

    ZEUSFRUITMARKET. AnálisisA través del modelo de roles podemos obtener las

    responsabilidades de un agente TRADER que tiene asociado dicho rol

    Nota: Se distingue entre responsabilidades sociales (interacciones) y de dominio (tareas)

    ZEUSFRUITMARKET. AnálisisTambién podemos obtener las responsabilidades de un agente BROKER que tiene

    asociado dicho rol

    El caso del Visualizador sigue el modelo de rol estándar de ZEUS, por tanto se adoptará la herramienta de Visualización predefinida

  • 12

    ZEUSFRUITMARKET. Diseño

    Es un proceso de refinamientoDonde se mapea cada responsabilidad y se selecciona la solución más apropiadaSe van construyendo unas estructuras para cada rol definido en la fase anterior.

    ZEUSFRUIT

    MARKET. Diseño

    (TRADER)

  • 13

    ZEUSFRUIT

    MARKET. Diseño

    (TRADER)

    ZEUSFRUIT

    MARKET. Diseño

    (TRADER)

    Cont. Domain Responsibilities

  • 14

    ZEUSFRUITMARKET. Diseño (BROKER)

    ZEUSFRUITMARKET. Diseño

    Modelización del conocimiento

    Consiste en:

    Modelar el conocimiento declarativo a usar por los roles de agente

    Hechos, atributos y posibles valores

  • 15

    ZEUSFRUITMARKET. Realización (implementación)

    ActividadesCreación de la ontologíaCreación de los agentes

    DefiniciónDescripción de tareasOrganización del agenteCoordinación del agente

    Configuración de los agentes de utilidadConfiguración de tareasImplementación

    ZEUSFRUITMARKET. Realización (implementación)

    A partir de este punto se pueden emplear las herramientas que ofrece ZEUS.Por tanto la realización se verá sobre la propia herramienta de desarrollo.