Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouTomás Salvo Alterado mais de 10 anos atrás
1
Multi-Agent System Modeling Language (MAS-ML) Viviane Torres da Silva Ricardo Choren Carlos J. P. de Lucena Palestrante: Andrew Diniz da Costa
2
© LES/PUC-Rio MAS-ML Estende o meta-modelo de UML com base no framework conceitual TAO Meta-modelo MAS-ML estende o meta-modelo de UML –Novos estereótipos –Novas meta-classes
3
© LES/PUC-Rio Camada de meta-modelo Camada de modelo de domínio Camada de meta-meta-modelo Camada de instância MOF meta-meta-modelo ER meta-meta-modelo UML meta-modelo TAO meta-modelo MAS-ML meta-modelo instanciação MAS-ML modelos unificação
4
© LES/PUC-Rio Meta-modelo MAS-ML DutyRight FeaturesClassifier Structural FeatureBehavioral Feature BeliefGoal Axiom Operation Property ClassAgentClassObjectRoleClass OrganizationClass AgentPlan Meta-classes do meta-model UML Novas meta-classes Novos estereótipos Legenda AgentRoleClass AgentAction 1..** * sender receiver 1 * Element AgentProtocol AgentMessage 1..* * Constraint postcondition precondition 0..1 * ** * EnvironmentClass Active EnvironmentClass Passive EnvironmentClass
5
© LES/PUC-Rio Meta-modelo MAS-ML Class AgentClass ObjectRoleClassOrganizationClass AgentRoleClass EnvironmentClass define play 1 1..*0..* define 1 sub-org play 1..*1 play in 0..* 1..* 1 inhabit 1 0..* inhabit 1 0..* play 1 0..* 1 sub- org 0..*1 play in 0..* Meta-classes do meta-modelo UML Novas meta-classes Legenda
6
© LES/PUC-Rio Meta-modelo MAS-ML Relationship Directed Relationship Classifier Element Association DependencyOwnershipInhabitControlPlayGeneralization 1..* Meta-classes do meta-modelo UML Novas meta-classes Legenda
7
© LES/PUC-Rio MAS-ML MAS-ML modela os aspectos estruturais e dinâmicos descritos no TAO –Aspectos estruturais: entidades, propriedades e relacionamentos –Aspectos dinâmicos: interação entre as entidades e execuções internas Diagramas estáticos: classes, organizações e papéis Diagramas dinâmicos: seqüência e atividades
8
Diagramas Estáticos
9
© LES/PUC-Rio Diagrama de Classe de UML Representa as classes e os relacionamentos entre as classes Second-hand BooksImported Books Item Book Order User Nome_da_classe atributo1 atributo2 metodo1 metodo2 metodo3...
10
© LES/PUC-Rio Diagramas para SMA Como representar agentes, organizações, papéis e ambientes? Como representar relacionamos específicos de SMA, como inhabit, control e play? Novo elemento de diagrama para representar novas entidades e relacionamentos
11
© LES/PUC-Rio Elementos dos diagramasI ObjectRoleClassOrganizationClassAgentRoleClassAgentClassClass AgentRoleClass EnvironmentClass Relacionamento Inhabit Relacionamento Control Entidades
12
© LES/PUC-Rio Elementos dos diagramasII OrganizationClassAgentRoleClass OrganizationClassAgentRoleClass AgentClass Relacionamento Ownership Relacionamento Play
13
© LES/PUC-Rio Agente AgentClass > type : name [= default-value] plan-list > type : name [= default-value] {precondition-list} action {postcondition-list} plan {action-list} goal-name Características estruturais Características comportamentais
14
© LES/PUC-Rio Organização OrganizationClass > type : name [= default-value] plan-list > type : name [= default-value] {precondition-list} action {postcondition-list} plan {action-list} goal-name Características estruturais Características comportamentais
15
© LES/PUC-Rio Papel de Agente AgentRoleClass > type : name [= default-value] > action protocol-name { messsage: {label: value, content: value, sender : value, receiver: value}...} Características estruturais Características comportamentais
16
© LES/PUC-Rio Papel de Objeto ObjectRoleClass [visibility] type : name [= default-value] [visibility] name (parameter-list) : returned-value Características estruturais Características comportamentais
17
© LES/PUC-Rio Ambiente EnvironmentClass Características estruturais Características comportamentais Entidades que habitam o ambiente EnvironmentClass or
18
© LES/PUC-Rio Diagrama de Classes Objetivos: representar os relacionamentos entre classes e outras entidades do SMA e representar os relacionamentos entre agentes, ambientes e organizações. Classes usadas neste diagrama: –agent class, organization class, environment class e outras definidas por UML. Relacionamentos usados neste diagrama: –Aqueles já definidos por UML; –inhabit – usado entre classes e ambientes; –association – usado entre agente e classes, entre organizações e classes, e entre ambientes; –specialization – usado entre agentes, entre organizações e entre ambientes.
19
© LES/PUC-Rio Diagrama de Classes Second-hand BooksImported Books Item Book Virtual Marketplace inhabit specialization association AgentA AgentB Organization A Organization B Object / Environment Agent Organization Legend:
20
© LES/PUC-Rio Diagrama de Organizações Objetivo: modelar as organizações e os relacionamentos entre as organizações e outras entidades do SMA. Cada diagrama de organização modela uma organização Classes usadas neste diagrama: –organization class, agent class, agent role class, object role class, class e environment class. Relacionamentos usados neste diagrama: –ownership – usado entre organizações e papéis que a organização define; –play – usado entre agentes e papéis de agentes, entre sub- organizações e papéis de agentes, e entre classes e papéis de objeto; –inhabit – usado entre ambiente e organizações e entre ambiente e agentes.
21
© LES/PUC-Rio Diagrama de Organizações Object role Agent role Object / Environment Agent Organization Legend: General Store Virtual Marketplace Market of Special GoodsMarket of Used Goods Imported BookstoreSecond-hand Bookstore Book Desire Offer BuyerSeller User Agent Store Agent > inhabit play ownership
22
© LES/PUC-Rio Diagrama de Papéis Objetivo: modelar os papéis e os relacionamentos entre os papéis Classes usadas neste diagrama: –agent role class, object role class e class Relacionamentos usados neste diagrama: –control – usado entre papéis de agente; –dependency – usado entre papéis de objeto, entre papel de agente e papel de objeto e entre papéis de agente; –association – usado entre papéis de objeto, entre papel de agente e papel de objeto, entre papéis de agente e entre qualquer papel e uma classe; –aggregation – usado entre papéis de objeto e entre papéis de agente; –specialization – usado entre papéis de objeto e entre papéis de agente.
23
© LES/PUC-Rio Diagrama de Papéis Market of Special Goods Offer Desire Buyer Buyer of Imported Books Seller of Imported Books Seller Desire of Imported Books Offer of Imported Books Buyer of Second-hand Books Seller of Second-hand Books Desire of Second-hand Books Offer of Second-hand Books Market of Used Goods Object role Agent role Legend: control association Seller Seller of Imported Books specialization
24
Diagramas Dinâmicos
25
© LES/PUC-Rio Diagrama de Seqüência de UML Representa a interação entre os objetos e as execuções dos métodos
26
© LES/PUC-Rio Diagrama de Seqüência de MAS-ML Objetivo: representar as interações entre as instâncias do SMA e representar as ações internas destas instâncias. Representar interações: troca de mensagens entre entidades –Modelar troca de mensagem: Redefinir mensagens Criar novos estereótipos associados à mensagens –Modelar protocolos Representar ações internas (intra-ações): –Modelar planos e ações
27
© LES/PUC-Rio Elementos dos diagramas Novos pathnames e novos ícones org/role/org/env : Organization Class /AgentRole Class /Organization Class /Environment Class obj/role/org/env : Class/ObjectRoleClass/OrganizationClass/EnvironmentClass agent/role/org/env : AgentClass/AgentRoleClass/OrganizationClass/EnvironmentClass env : EnvironmentClass Active entityPassive entity Objeto Agente Organização Ambiente : RoleClass Papel
28
© LES/PUC-Rio Redefinindo mensagens UML: mensagens são chamada de métodos SMA: mensagens não são diretamente mapeadas para uma execução interna do agente message_label (content_description) senderreceiver method_name () senderreceiver
29
© LES/PUC-Rio Estereótipos de mensagens Como representar a criação de entidades de SMA? UML: uso do estereotipo > –Estender para representar a criação de entidades de SMA Como representar a destruição de entidades de SMA? UML: uso do estereotipo > –Estender para representar a destruição de entidades de SMA
30
© LES/PUC-Rio Criando e destruindo entidades Anne/FruitBuyer : UserAgent/Buyer >............ Criando uma organização Anne/FruitBuyer : UserAgent/Buyer >............ FruitStore : Store...... Destruindo uma organização - II Anne/FruitBuyer : UserAgent/Buyer >.................. Destruindo uma organização - I FruitStore/FruitWholesale: Store/Wholesale
31
© LES/PUC-Rio Estereótipos de mensagens Como representar a relação entre papéis e entidades que desempenham papéis? > Entidade se comprometendo com um novo papel > Entidade cancelando papel > Entidade ativando papel > Entidade desativando papel > Entidade mudando de papel
32
© LES/PUC-Rio Criando papel Bob/FruitBuyer : UserAgent/Buyer Bob/ClothesBuyer : UserAgent/Buyer >............ Bob/FruitBuyer : UserAgent/Buyer Apple/DesirerFruit : Item/Desirer >............ Criando um papel de agente Criando um papel de objeto
33
© LES/PUC-Rio Cancelando papel Bob/FruitBuyer : UserAgent/Buyer Bob/ClothesBuyer : UserAgent/Buyer >...... Cancelando papel de agente Bob/ClothesBuyer : UserAgent/Buyer > Bob/FruitBuyer : UserAgent/BuyerApple/DesirerFruit : Item/Desirer Cancelando papel de objeto >...... Cancelando papel de agente
34
© LES/PUC-Rio Desativando e ativando papel Bob/FruitBuyer : UserAgent/Buyer Bob/ClothesBuyer : UserAgent/Buyer >...... Ativar papel...... Bob/FruitBuyer : UserAgent/Buyer Bob/ClothesBuyer : UserAgent/Buyer > Desativar papel...... Bob/ClothesBuyer : UserAgent/Buyer >
35
© LES/PUC-Rio Mudando de papel Bob/FruitBuyer : UserAgent/Buyer Bob/ClothesBuyer : UserAgent/Buyer >...... Bob/FruitBuyer : UserAgent/Buyer Bob/ClothesBuyer : UserAgent/Buyer > Bob/FruitBuyer : UserAgent/Buyer Bob/ClothesBuyer : UserAgent/Buyer > Bob/ClothesBuyer : UserAgent/Buyer >.................. Cancelando papel e criando novo papel Cancelando papel e ativando outro papel Desativando papel e criando outro papel Desativando papel e reativando outro papel
36
© LES/PUC-Rio Modelando protocolos Um protocolo define um conjunto de mensagens que entidades podem enviar e receber enquanto desempenhando papéis Request (ItemDescription) Proposal (ItemDescription) AnswerProposal (RejectItemDescription) AnswerProposal (AcceptItemDescription) Inform (Payment) Inform (Bill) : Buyer : Seller else mensagem papel
37
© LES/PUC-Rio Modelando planos e ações Execução interna dos agentes, organizações e ambientes ativos são definidas pela execução dos planos e ações. : GeneralStore : UserAgent/Seller if (message_label = request) create_seller else inform_buyer_of_seller : UserAgent/Buyer inform (seller_id) > Creating_seller Execution of a Plan Execution of an Action Execution of an Action
38
© LES/PUC-Rio Diagrama de Atividades de UML Objetivo: modelar o fluxo das atividades de um sistema O foco está na seqüência de atividades e não na interação entre os objetos Atividades: execução não atômica composta de ações Ação: execução atômica
39
© LES/PUC-Rio Diagrama de Atividades de MAS-ML Objetivo: representar a modelagem de planos e ações de um agente O foco está na modelagem de um agente e não na interação entre os agentes Atividades -> Planos de agentes Ações -> Ações de agentes
40
© LES/PUC-Rio Extensão Diagrama de Atividades > A3 A4 … … > E1 > E2 > O2 > O1 R3 R1 P2 Plan Action Roles
41
© LES/PUC-Rio Exemplo Selling [proposal accepted] Informing PriceInforming proposal [proposal rejected] Payment > >to have an item sold >Seller Receiving Final Position
42
© LES/PUC-Rio Ambiente Identificado ambiente Modelando a mudança de ambiente
43
© LES/PUC-Rio Referências Silva, V. T.; Lucena, C. J. P. From a Conceptual Framework for Agents and Objects to a Multi-Agent System Modeling Language. Sycara, K., Wooldridge, M.(Edts.), Journal of Autonomous Agents and Multi-Agent Systems, Kluwer Academic Publishers. 2003. Silva, V. T.; Lucena, C. J. P. From a Conceptual Framework for Agents and Objects to a Multi-Agent System Modeling Language. Sycara, K., Wooldridge, M.(Edts.), Doctoral Thesis, 31st March, 2004. Silva, V. T.; Cortés, M.; Lucena, C. J. P. An Object-Oriented Framework for Implementing Agent Societies. Technical Report (MCC32/04), Computer Science Department, PUC-Rio. Rio de Janeiro, Brazil. 2004. SILVA, V.; GARCIA, A.; BRANDAO, A.; CHAVEZ, C.; LUCENA, C.; ALENCAR, P. Taming Agents and Objects in Software Engineering. In: GARCIA, A.; LUCENA, C.; ZAMBONELI, F.; OMICINI, A; CASTRO, J., (Eds.) Software Engineering for Large-Scale Multi-Agent Systems. LNCS 2603, Berlin: Springer, 2003. Costa, Andrew D.; Silva, Viviane T., Lucena, Carlos J. P.; Web site Agent Society Framework, 2007. Costa, Andrew D.; Silva, Viviane T., Lucena, Carlos J. P.;Remodelando e Estendendo o Agent Society Framework, n° MCC17/06, Departamento de Infomática da Pontifícia Universidade Católica do Rio de Janeiro, 2006.
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.