Definindo as entidades de um SMA Viviane Torres da Silva

Slides:



Advertisements
Apresentações semelhantes
Desenvolvimento de aplicativos Orientados a Objetos: Definição e Características THIAGO IDEALI.
Advertisements

Profa. Dra Maria Luiza de Almeida Campos
Renata S.S. Guizzardi Inteligência Artificial – 2007/02
Linguagens de Programação para SMA Viviane Torres da Silva
Modelos e Sistemas de Reputação
Planejamento Viviane Torres da Silva
Os Sistemas Multi-agente Viviane Torres da Silva
Engenharia de Software
(Unified Modeling Language)
Diagrama de Classes continuação.
UML – MODELAÇÃO DA ESTRUTURA Professor Sandro Carvalho.
Metodologias Equipe do Curso de ES para SMA {lucena, furtado, choren,
Metodologias Equipe do Curso de ES para SMA
Linguagens de Modelagem (cont.) (IV)
Frameworks Conceituais para SMA
Sistemas Multi-Agentes
Viviane Torres da Silva
Frameworks Conceituais
Linguagens de Modelagem para SMA
Viviane Torres da Silva
Os Sistemas Multi-agente Viviane Torres da Silva
UML Diagrama de Classes elementos básicos. Contexto Os diagramas de classes fazem parte do da visão estática da UML. Os elemento desta visão são conceitos.
Agentes Inteligentes Introdução.
Aprendizagem Viviane Torres da Silva
Linguagens de Modelagem para SMA
Modelos Baseados em Agentes
Metodologias Orientadas a Agentes
SMA: ORGANIZAÇÃO.
Sistemas Multiagentes Cognitivos
O processo de coletar os requisitos (escopo do cliente)
Introdução à Modelagem Conceitual 1. Conceitos Básicos
Contratos Modelagem Funcional.
Análise e Projetos de Sistemas UML-Linguagem de Modelagem Unificada Modelo de Dados com UML Diagrama de Classes Professor: Armando Hage.
TÉCNICAS DE PROGRAMAÇÃO II
Diagrama de Classes e Colaboração
Framework Conceitual para SMA Taming Agents and Objects (TAO) Andrew Diniz da Costa
DIAGRAMA DE CLASSE Modelagem de Software
Análise e Projeto de Sistemas UNIVERSIDADE DE CRUZ ALTA Ciência da Computação 2010/1.
Metodologias para construção de SMA
Análise e Projeto de Sistemas
Programação Orientada a Objetos - Java
Prof. Silvestri – todos os direitos reservados SISTEMAS DISTRIBUIDOS Aula 5 Eduardo Silvestri
UML Diagrama de classes.
SISTEMAS DISTRIBUIDOS Aula 4
Metodologias (Parte II) Viviane Torres da Silva
© Ricardo Pereira e Silva
Projeto Orientado aos Objetos Prof. Wolley W. Silva
Banco de Dados Aplicado ao Desenvolvimento de Software
Elementos de um Sistema de Agentes Móveis Agentes e Places Comportamento de Agentes Comunicação Padronização OMG/MASIF.
EXTENDING THE FRAMEWORK TAO WITH NORMS FOR MULTI-AGENT SYSTEMS Emmanuel S. S. Freire – UECE – Mariela I. Cortés – UECE –
Laboratório de Programação
Capítulo 10 – Qualidade de Produtos de Software Escrito por: Renata Araújo Vírginia Chalegre Apresentado por: Cleice.
Generalização e herança Agregação e composição
Análise e Projeto de Sistemas
MAS-ML Seminário da Disciplina de Agentes Cognitivos Prof. Patrícia Tedesco Equipe: Fernando Jaziel Mario Sergio Sidney.
Gestão de projetos de Software GTI-16
Sistemas de Governança (Enforcement Systems) Viviane Torres da Silva
Engenharia de Software e Sistemas
Modelagem Conceitual descreve a informação que o sistema vai gerenciar.
Introdução a Orientação a Objetos
Organização de Sistemas Multiagentes Prof. Fred Freitas CIn - UFPE.
Modelagem Conceitual descreve a informação que o sistema vai gerenciar.
20/04/2017 Orientação a Objetos 1 1.
Projeto de Banco de Dados
Relacionamentos UML e Polimorfismo
O Modelo GOMS Fornece um modelo de Engenharia para a performance humana, capaz de produzir predições a priori ou em um estágio anterior ao desenvolvimento.
Diagrama de Classes Herança Dependências.
Análise e Design de Software Site:
Análise e Projeto de Sistemas Análise & modelagem conceitual Prof. Edjandir Corrêa Costa
Transcrição da apresentação:

Definindo as entidades de um SMA Viviane Torres da Silva

Definição: Frameworks conceituais Motivação: não existe uma definição aceita por todos os pesquisadores sobre os conceitos encontrados em SMA Objetivo: definir os conceitos relacionados aos SMA e descrever os contextos nos quais estes conceitos são utilizados Solução: frameworks conceituais –KAoS (Dardenne et al., 1993) –Yu and Schmid (Yu and Schimid, 1999) –d'Inverno and Luck (d'Inverno and Luck, 2001) –TAO (Silva et al., 2003)

Definição: Frameworks conceituais Conceito: idéia, representação mental de uma realidade, um objeto ou algo similar Framework: arcabouço, marco Marco: limite em que se enquadra um problema Um framework conceitual para os SMA deve definir as abstrações encontradas em SMA: suas propriedades, seus relacionamentos, suas ações e suas interações

Alguns Frameworks Conceituais para SMA TAO (Silva et al., 2003) d'Inverno y Luck (d'Inverno et al., 2001) Yu y Schmid (eu et al., 1999) KAoS (Dardenne et al., 1993)

TAO

Camada de meta-modelagem Camada de modelagem do domínio Camada de meta-meta-modelagem Camada de instância MOF meta-meta-modelo ER meta-meta-modelo UML meta-modelo TAO meta-modelo UML modelos instanciação MAS modelos Arquitetura MOF de 4 camadas

Arquitectura MOF de 4 capas Agente do Usuário LojaComprador desempenha propriedade Modelo Conceptual Entidade Relação Entidade Relação Camada de meta-modelagem Camada de modelagem del domínio Camada de meta-meta- modelagem Camada de instância MariaC&A propriedade Comprador de Roupa desempenha AgenteOrganizaçãoPapel propriedade Framework Conceitual desempenha

Entidades e Relacionamentos Organização Agente Papel do Agente Papel do Objeto Ambiente Objeto habitar propriedade desempenha propriedade desempenha herança dependência agregação associação herança controle dependência agregação associação herança associação agregação dependência associação herança associação desempenha associação

Entidades Toda entidade tem: –propriedades = estado + comportamento –Relacionamentos Estado: informação sobre si mesma e sobre outras entidades Comportamento: conjunto de ações que pode executar Relacionamentos: define o contexto no qual duas entidades estão relacionadas

Agente Objeto X Agente Agente é uma entidade ativa e objeto é uma entidade passiva. + - autonomia Objeto proactivo reativo + - interação

Ambiente É o habitat de agentes, organizações e objetos –Eles não podem habitar mais de uma ambiente –Mas agentes e organizações podem mudar de ambiente Estado e comportamento são definidos se baseando em suas características (acessível, determinista, estático, etc.) Pode ser uma entidade passiva como um objeto ou uma entidade ativa como um agente

Ambiente Agente passivo: ambiente modelado como uma classe (de objetos) tem: –Atributos e métodos Agentes ativos: ambiente modelado como uma agente tem: –Crenças, objetivos, ações e planos

Organização Organizações agrupam os agentes de um SMA Organização = grupo = comunidade = sociedade Pode definir sub-organizações, axiomas e papéis Sub-organização: –Organização que desempenha papéis em outra organização

Organização Papéis: –São desempenhados por agentes, objetos e sub-organizações dentro de uma organização Axioma: –regra, lei ou princípio estabelecido. –restrições globais da organização às quais os agentes e as sub- organizações devem obedecer. Axioma = regra = lei = norma

Organização O conceito de uma organização estende o conceito de um agente Estado: –crenças, objetivos, ações, planos e axiomas Comportamento: –ações e planos executados pela organização + –ações e planos executados pelos agentes e sub-organizações.

Papéis As duas propriedades mais importantes: –São definidos no contexto de uma organização –Uma instância de papel deve ser exercida por um agente, por um objeto ou por uma sub-organização. Orienta e também restringe o comportamento de instâncias que exercem o papel. ROLROL ROLROL

Papel de um Objeto Descreve um conjunto de características que são vistas por entidades que usam o objeto Orienta o comportamento de objetos porque os objetos agem de acordo com chamadas feitas pelo papel Restringir o acesso ao objeto limitando as informações e o comportamento que outras entidades podem acessar

Papel de um Objeto Pode também adicionar informações (atributos) e comportamento (métodos) ao objeto que exerce o papel. Estado: atributos –mantém as informações Comportamento: métodos –são as operações

Papel de um Objeto Objeto atributo 1 atributo 2 método 1 método 2 Papel de um Objeto atributo 1 método 1 método 3 entidade B entidade A

Papel de um Objeto Um objeto não tem consciência do papel que está exercendo O papel de objeto é que sabe a qual objeto está associado Todas as instâncias de papel de objeto são um membro de uma organização e são exercidas por um objeto

Papel de Agente Orienta o comportamento de um agente descrevendo seus objetivos ao exercer o papel Restringe o comportamento definindo as ações que o agente deve exercer (deveres) e as ações que pode executar (direito) ao exercer o papel Pode adicionar novos objetivos e crenças ao agente Um agente e uma organização desempenham pelo menos um papel

Papel de Agente Estado: –crenças e objetivos. As crenças do papel são passadas para todos que desempenham o papel Os objetivos dos papéis caracterizam os objetivos que um agente deve alcançar enquanto exerce o papel Comportamento: –deveres, direitos e protocolos

Papel do Agente Deveres (ou obrigações) identificam as ações atribuídas ao agente que está exercendo o papel, ou seja, as responsabilidades Direitos (ou qualificações) identificam as ações que o agente pode executar ao exercer o papel, isto é, eles descrevem as permissões associadas às ações Protocolos definem as interações entre papéis por meio da especificação das mensagens

Relacionamentos Inhabit: –especifica que a instância de entidade que reside – o cidadão – é criada e destruída no habitat e, portanto, pode entrar e sair dele, respeitando suas permissões –um cidadão não pode residir em dois habitats ao mesmo tempo –o habitat conhece todos os cidadãos que residem nele, e cada cidadão conhece seu habitat Entre quais entidades este relacionamento está definido? –Ambiente e agente –Ambiente e objeto –Ambiente e (sub-)organizações

Relacionamentos Ownership: –Especifica que uma entidade – o membro – é definida no escopo de outra entidade – o proprietário – e que um membro deve obedecer a um conjunto de restrições globais definidas pelo proprietário –O membro não existe fora do escopo de seu proprietário –Os proprietários conhecem seus membros, e cada membro conhece seu proprietário Entre quais entidades este relacionamento está definido? –Papel de objeto (o membro) e (sub-)organização (o proprietário) –Papel de agente (o membro) e (sub-)organização (o proprietário)

Relacionamentos Ownership: –Uma instância de papel (papel do agente ou papel de objeto) só pode ser exercida por entidades na organização que definiu o papel –A organização define quem exerce os papéis identificados –A organização define qual papel pode ser exercido por uma entidade

Relacionamentos Play: –Especifica que uma entidade está relacionada a um papel –Os agentes e as organizações interagem por meio dos papéis que exercem –Os relacionamentos entre agentes, entre agentes e organizações e entre organizações são indiretamente definidos pelos papéis que estão exercendo –Quando um objeto está exercendo um papel, as entidades interagem com o objeto por meio de seu papel Entre quais entidades este relacionamento está definido? –Papel de agente e o agente –Papel de agente e a suborganização –Papel de objeto e o objeto

Relacionamentos Herança/Generalização: –Define que a sub-entidade que especializa a super-entidade herda as propriedades e os relacionamentos definidos na super-entidade –As propriedades herdadas também podem ser redefinidas pela sub- entidade –A sub-entidade também pode definir novas propriedades e novos relacionamentos Entre quais entidades este relacionamento está definido? –Todas as entidades que sejam do mesmo tipo

Relacionamentos Control: –Define que a entidade controlada deve fazer tudo que a entidade do controlador pedir –A entidade controlador conhece as entidades controladas, e cada entidade controlada conhece as entidades que a controlam –As entidades controladas e do controlador serão os agentes ou as organizações que estão exercendo os papéis Entre quais entidades este relacionamento está definido? –Entre papéis de agente

Relacionamentos Dependency: –Define que uma entidade – o cliente – pode ser definida para depender de outra – o fornecedor – para realizar seu trabalho –Especifica que uma alteração na especificação do fornecedor pode afetar o cliente, mas não necessariamente o contrário –O cliente sempre conhece seus fornecedores, mas o contrário pode não ser verdadeiro Entre quais entidades este relacionamento está definido? –Entre papéis de agente –Entre papéis de objeto –Entre papéis de agente (cliente) e papéis de objetos

Relacionamentos Association: –Especifica um relacionamento semântico que pode ocorrer entre instâncias –Se uma entidade estiver associada à outra entidade, ela saberá da existência da outra entidade e, então, poderão interagir Entre quais entidades este relacionamento está definido? –Entre papéis de objeto –Entre papéis de agente –Entre papéis de objetos e papéis de agentes –Entre ambientes –Entre agentes –Entre objetos –Entre organizações e objetos –Entre papéis de agente e objeto

Relacionamentos agregação: –Define a entidade que é o agregador e a entidade que é a parte. –Se uma entidade estiver agregada a outra, dizemos que ela é o agregador de partes. –O agregador pode usar a funcionalidade disponível em suas partes para realizar seu trabalho. Entre quais entidades este relacionamento está definido? –Entre papéis de objeto –Entre papéis de agente

Sistema Multi-Agentes ambiente Sistema Multi-Agentes agente Organização principal objeto

Sistema Multi-Agentes ambiente Sistema Multi-Agentes agente objeto Papel de agente Papel de objeto Organização principal

Sistema Multi-Agentes ambiente agente objeto Sub-organização Organização principal

Sistema Multi-Agentes ambiente agente objeto Sub-organização Papel de agente Papel de objeto Organização principal

Comportamento das entidades Análise do comportamento independente do domínio da aplicação Criação das entidades Destruição das entidades Interação entre as entidades –Agentes e sub-organizações interagindo com organizações –Agentes e sub-organizações interagindo com ambientes

Criação de entidades Criação de papel de agente –A criação ocorre quando um agente ou sub-organização se compromete com o papel. –Condição: existência de um agente ou uma sub-organização para exercer o papel –Criador: organização

Criação de entidades Criação do agente –Um papel deve ser imediatamente criado e associado ao agente –Condição: existência de uma organização –Criador: outro agente, uma organização ou um ambiente

Criação de entidades Criação de organização –Se a organização sendo criada é uma sub-organização, uma instância de papel deve ser criada e associada à sub-organização –Condição: existência do ambiente –Criador de organização principal: ambiente –Criador de sub-organizações: agente, (sub-)organização ou ambiente

Criação de entidades Criação de papel de objeto –Criado quando uma entidade (o criador) deseja acessar um objeto em uma organização que restringe a visão do objeto. –Deve ser associado a um objeto –Condição: existência do objeto –Criador: agentes e organizações

Criação de entidades Criação de objetos –Condição: existência do ambiente –Criador: agentes, organizações, objetos e ambientes –Não depende do papel

Criação de entidades Criação de ambiente –O ambiente deve ser criado antes de outras entidades porque elas residem no ambiente. –Condição: -- –Criador: máquina virtual do sistema, outro ambiente, agentes ou organizações que residem em outro ambiente.

Destruição de entidades Destruição de papel do agente –Um papel exercido por um agente ou sub-organização é destruído quando este o cancela –Condição: -- –Destruidor: agente ou organização. O destruidor é quem está exercendo o papel –Conseqüência: se um agente (ou sub-organização) possui todos os seus papéis destruídos, isso significa que o agente (ou sub-organização) também será destruído

Destruição de entidades Destruição de agente –Condição: todos os papéis do agente devem ter sido destruídos. –Destruidor: si mesmo, outro agente, organização ou ambiente.

Destruição de entidades Destruição de organização –Condição (1): todos os papéis exercidos por agentes, objetos e sub- organizações devem ser destruídos –Condição (2): todos os papéis exercidos pela organização também devem ser destruídos –Destruidor: si mesmas, por ambientes, outras organizações ou agentes que residam em outras organizações. –Processo recursivo: todas as suas sub-organizações devem ser destruídas ou devem deixar a organização.

Destruição de entidades Destruição de papel de objeto –Condição: -- –Destruidor: agente ou organização

Destruição de entidades Destruição de objeto –Condição: todos os papéis do objeto devem ter sido destruídos –Destruidor: objetos, agentes, organizações e ambientes

Destruição de entidades Destruição de ambiente –Condição: todas as entidades foram destruídas –Destruidor: si mesmo, por outro ambiente, por um agente ou por uma organização que reside em outro ambiente.

Estados de um papel de agente Criado Ativo Destruído Inativo compromisso criado compromisso criado compromisso cancelado execução suspensa execução reiniciada

Interação entre as entidades Relacionamentos ownership e play Agente ou sub-organização entrando em organização –Agente ou sub-organização se comprometendo com um papel ou ativando o papel Agente ou sub-organização saindo de organização –Agente ou sub-organização cancelando um papel ou desativando o papel

Agente (ou sub-organização) se comprometendo com papel (em uma nova organização) 1. Agente procurar por uma organização no ambiente Decide qual organização com base nos seus objetivos e nos objetivos da organização 2. Agente pergunta a organização os papéis disponíveis 3. Organização informa o conjunto de papéis disponíveis de acordo com sua função de utilizada ou suas políticas 4. Agente avalia qual papel deseja desempenhar e informa a organização Verificação com base nos seus objetivos 5. Organização pode permitir ou negar 6. Se a org. permitir, o agente se compromete a desempenhar o papel O agente concorda em respeitar os deveres e os direitos do papel e concorda em tentar atingir a meta do papel

(em uma organização onde já desempenha outros papéis) Similar ao anterior, porém agente não precisa procurar a organização no ambiente 1. Agente pergunta a organização os papéis disponíveis 2. Organização informa o conjunto de papéis disponíveis 4. Agente avalia qual papel deseja desempenhar e informa a organização 5. Organização pode permitir ou negar 6. Se a org. permitir, o agente se compromete a desempenhar o papel Agente (ou sub-organização) se comprometendo com papel

Agente (ou sub-organização) ativando um papel 1. Agente pergunta a organização se pode ativar papel 2. Organização informa se pode ou não organização pode definir axiomas para restringir a ativação de papéis Note que para a ativação de uma papel não importa se o agente está ou não desempenhando outro papel na mesma organização

Agente (ou sub-organização) cancelando ou desativando um papel 1. Agente (ou sub-organização) checa se pode parar de desempenhar um papel (cancelar ou desativar) –Organização pode impedir Observação: –Se um agente cancelar seu único papel então ele deve ser destruído ou deve se comprometer com outro papel.

Interação entre as entidades Relacionamento inhabit Agente (ou sub-organização) se movendo de um ambiente para outro –Para sair de um ambiente: agente ou sub-organização cancelam ou desativam todos os seus papéis nas organizações do ambiente –Para entrar em ambiente: agente ou sub-organização criam ou ativam pelo menos um papel em uma organização do ambiente

Agente (ou sub-organização) se movendo de um ambiente para outro 1. Descobrir outro ambiente para o qual quer se mover 2. Pedir permissão para sair do ambiente onde está 3. Pedir permissão para entrar no outro ambiente 4. Cancelar / desativar todos os papéis 5. Ativar / criar pelo menos um papel Observação: Mobilidade de sub-organizações –Agentes e outras sub-organizações que desempenham papéis dentro da sub-organização que quer se mover devem parar de desempenhar tais papéis

Agente (ou sub-organização) se movendo de um ambiente para outro Saindo de um ambiente Entrando em um ambiente Movendo de um ambiente para outro Saindo de uma organização Entrando em uma organização

Framework Conceitual de d'Inverno y Luck

Framework Conceitual de d'Inverno e Luck Propõem uma hierarquia em quatro camadas –O ambiente consiste de entidades das quais algumas são objetos –Do conjunto de objetos, algumas são agentes, e dos agentes alguns são agentes autônomos. Entidades

Entidade e Ambiente Entidade e ambiente: –Coleção de atributos

Objeto Entidade com conjunto de capacidades Capacidade: –conjunto de ações que podem ser desempenhadas pelo objeto Ação: –muda o estado do ambiente (sub-conjunto de capacidades)

Objeto Seleção de ações: –baseada no estado do ambiente e no estado objeto Estado: –estado do ambiente + ações Operação: –indica qual é alteração do estado do objeto dado a execução de uma ação –Podem mudar: estado do ambiente e a próxima ação –Não mudam: atributos, capacidades e função de seleção das ações

Agente Objeto com metas Metas: (conjunto de atributos) –estado a ser atingido no ambiente

Agente Percepção possível: –o que o agente pode enxergar do ambiente Percepção atual: –o que o agente realmente enxerga do ambiente Ações de percepção: –que possibilitam a percepção do ambiente

Agente Seleção de ações: –baseada no estado do ambiente, nas percepções atuais e nas metas Estado: –estado do objeto + ações do agente + percepções atuais + percepções possíveis

Agente Operação: –indica qual é alteração no estado do agente dado a execução de uma ação –Podem mudar: percepções possíveis, percepções atuais e a próxima ação –Não mudam: atributos, capacidades, metas, ações de percepção e função de seleção das ações e percepções

Agente Autônomo Agente com motivação Motivação: –Possibilidade de gera suas próprias metas Também define percepções, ações e estado

Descrição das entidades Agentes satisfazem metas Agentes autônomos, adicionalmente, criam metas Server-agents –Agentes que não são autônomos Neutral-objects: –Objetos que não são agentes

SMA e Sociedade de agentes Sistema Multi-Agentes: –É composto por dois ou mais agentes –Tem pelo menos um agente autônomo (que tem a(s) meta(s)) –Existe pelo menos um relacionamento entre dois agentes onde um satisfaz a meta do outro Sociedade de agentes: conjunto de entidades e conjunto de relacionamentos em um SMA

Relacionamentos Agentes adotam as metas de outros agentes Relacionamentos são definidos com base na adoção de metas. Engagement: quando um server-agent adota a meta de outro agente –server-agents são obrigados a adotarem uma meta de um agente autônomo Cooperação: quando um agente autônomo adota a meta de outro agente –um agente autônomo não é obrigado a adotar a meta de outro

Referências Kaos: Dardenne, A.; Lamsweerde, A.; Fickas, S. (1993) "Goal-directed Requirements Acquisition." Science of Computer Programming. v.20, p d'Inverno, M.; Luck, M. (2001) "Understanding Agent Systems". New York: Springer, Luck, M.; d'Inverno, M. A conceptual framework for agent definition and development. The Computer Journal, 44(1):1--20, Yu, L.; Schmid, B. A Conceptual Framework for Agent-Oriented and Role- Based Work on Modeling. In: WAGNER, G.; YU, E. (Eds.). Proceedings of the 1st International Workshop on Agent-Oriented Information Systems, TAO: 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, Springer-Verlag, LNCS 2603, pp. 1-26, 2003.