370 likes | 475 Views
MACC – Mestrado Acadêmico em Ciência da Computação UECE – Universidade Estadual do Ceará GESSI – Grupo de Engenharia de Software e Sistemas Inteligentes. EXTENDING THE FRAMEWORK TAO WITH NORMS FOR MULTI-AGENT SYSTEMS. Emmanuel S. S. Freire – UECE – savio.essf@gmail.com
E N D
MACC – Mestrado Acadêmico em Ciência da Computação UECE – Universidade Estadual do Ceará GESSI – Grupo de Engenharia de Software e Sistemas Inteligentes EXTENDING THE FRAMEWORK TAO WITH NORMS FOR MULTI-AGENT SYSTEMS Emmanuel S. S. Freire – UECE – savio.essf@gmail.com Mariela I. Cortés – UECE – mariela@larces.uece.br Enyo J. T. Gonçalves – UFC – enyo@ufc.br Yrleyjânder S. Lopes – UECE– yrleyjander@gmail.com WESAAC– Workshop-Escola de Sistemas de Agentes, seus Ambientes e Aplicações 2012 – Florianópolis
Agenda • Introdução • Objetivo • TAO • Normas para Sistemas Multi-Agente • Trabalhos Relacionados • Estendendo TAO • Estudo de Caso: Mercado Virtual (Virtual Marketplace) • Conclusões e Trabalhos Futuros • Referências Bibliográficas
Introdução • Projeto de Sistemas Complexos • Necessidade de entendimento dos conceitos relacionados. • Elaboração de solução coerente. • Agentes e Sistemas Multiagentes • Um agente é uma entidade capaz de perceber seu ambiente por meio de sensores e de agir sobre esse ambiente por intermédio de atuadores. • No caso de vários agentes cooperando ou disputando entre si, inseridos em um mesmo ambiente e trocando informações, chamamos esse sistema de multiagentes (SMAs).
Introdução • Normas para SMAs • Regulam o comportamento dos agentes por meio da descrição de ações que: • Podem ser executadas (permissões), • Devem ser executadas (obrigações). • Não devem ser executadas (proibições).
Objetivo • Pesquisa por frameworks conceituais e modelos organizacionais capazes de representar os elementos típicos de um SMA juntamente com normas. • Extensão do framework TAO para a inclusão dos conceitos relacionados com normas. • Modelagem de um estudo de caso utilizando os elementos e relacionamentos incluídos na extensão proposta.
TAO • O framework TAO (TamingAgentsandObjects) tem como principal função oferecer uma ontologia que englobe os fundamentos da Engenharia de Software baseada em agentes e objetos. • Oferece suporte ao desenvolvimento de sistemas multi-agentes (SMAs) de larga escala. • A partir da ontologia definida no TAO, foi definida a linguagem MAS-ML que é capaz de oferecer suporte ao desenvolvimento de sistemas multi-agentes (SMAs) de larga escala.
TAO • Relacionamentos e Entidades definidas no TAO Figura 1 - Os relacionamentos e as entidades do TAO .
Normas para Sistemas Multi-agente • As normas são utilizadas para restringir o comportamento de agentes, organizações e suborganizações durante um período de tempo, e definir as sanções aplicadas quando violadas ou cumpridas. • Uma norma é composta pelos seguintes elementos: • Conceitos Deônticos, • Entidades Envolvidas, • Ações, • Restrições de Ativação, • Sanções, e • Contexto.
Trabalhos Relacionados • Framework Conceitual d’Inverno e Luck • Apresenta uma hierarquia composta por quatro camadas compreendendo entidades, objetos, agentes e agentes autônomos. • Pontos Fracos • A entidade ambiente possui apenas características estruturais, não apresentando operações; • O framework conceitual não define nenhum aspecto dinâmico associado às entidades propostas; • Não provê elementos para definir corretamente normas.
Trabalhos Relacionados • Framework Conceitual Yu e Schmid • Baseado em papéis e orientado a agentes. • Definem as propriedades e relacionamentos dos papéis. • Pontos Fracos • Apesar de os agentes serem definidos como uma entidade que exerce papéis, o framework não define as propriedades de agentes e os relacionamentos entre agentes e papéis. • Não define as propriedades de organização e seu relacionamento com papéis. • Não define ambientes. • Não permite a descrição dos elementos que compõem as normas e só restringem o comportamento dos agentes através de papéis.
Trabalhos Relacionados • KAoS • Define suas abstrações como extensões de objetos. • As abstrações definidas são entidade, relacionamentos e agentes. • Pontos Fracos • Não considera ambientes, organizações nem papéis. • Não está bem clara a diferença entre entidade e agente. • Não define aspectos dinâmicos relacionados com suas abstrações. • Só permite a descrição de políticas para restringir o acesso as propriedades das suas abstrações.
Trabalhos Relacionados • Moise + • É um modelo organizacional baseado no modelo Moise. • Apresenta uma visão baseada em organização que possui planos, papéis e restrições. • Pontos Fracos • Não permite a especificação de ambientes. • Não permite a definição das propriedades de agentes. • Não permite a especificação de normas para agentes e ambientes. • Não permite a definição de sanções.
Trabalhos Relacionados • OperA • É um modelo organizacional que permite a especificação de MAS por meio da distinção entre as características de um modelo organizacional e o comportamento dos agentes nesse modelo. • OperA permite a definição de normas de obrigação, permissão e proibição para agentes, grupos de agentes e papéis de agentes no contexto de uma organização. • Pontos Fracos • Não permite a especificação das características estruturais de agentes e ambientes. • Não permite a definição de recompensas, somente punições. • Não restringi o comportamento de agentes no contexto de um ambiente.
Estendendo TAO • A extensão do TAO é baseada na inclusão dos elementos que compõem as normas. • Portanto, foi definido a entidade Norm juntamente com os relacionamentos Context, Restrict, SanctionReward e SanctionPunishment.
Estendendo TAO Figura 2 – TAO estendido.
Estendendo TAO • Norm • A norma é um elemento que restringi o comportamento de agentes, papéis de agente, organizações e sub-organizações. Uma norma restringi o comportamento dessas entidades durante um período de tempo e aplica sanções quando violadas ou cumpridas. • Uma norma possui um estado e propriedades comportamentais. • O estado de uma norma armazena o recurso que pode ser uma entidade ou uma propriedade de uma entidade. • O comportamento se baseia nos conceitos deônticos e nas restrições de ativação.
Estendendo TAO _______________________Norm________________________ Norm_Class Norm_Class_Name Restriction_Type Deontic_Concept_Name Resource <Element_Class_Name.property > Activation_Constraint setOf{Constraint_Type Constraint _Type_Name : (<Element_Class_Name_First> and/or <Element_Class_Name_Second>) or <date> or <Element_Class_Name.property : Operator = (Element_ Class_Name.property) or value)>}Relationships setOf {Relationship_Name} End Norm_Class______________________________________
Estendendo TAO • Relacionamentos • Context • Define o contexto de aplicação da norma. Um contexto pode ser um ambiente, uma organização ou uma sub-organização. • Restrict • Define qual entidade terá o seu comportamento restringido pela norma. As entidades que podem ser restringidas são: agente, ambiente, organização, sub-organização e papel de agente. • SanctionReward • Define a recompensa que a entidade que cumpriu a norma receberá. • SanctionPunishment • Define a punição que a entidade que violou a norma receberá.
Estendendo TAO _________________Relationship________________ Relationship Relationship_Name CONTEXT : context, norm | RESTRICT : element, norm | SANCTION_REWARD : reward, norm | SANCTION_PUNISHMENT : punishment, norm End Relationship______________________________
Estendendo TAO • Alterações no Papel de Agente _________________Agent_Role_________________ Agent_Role_ClassAgent_Role_Class_Name Goals setOf{Goal_Name} Beliefs setOf{Belief_Name} Actions setOf{Action_Name} Protocols setOf{Interaction_Class_Name}U setOf{Rule_Name} Commitments setOf{Action_Name} Relationships setOf{Relationship_Name} End Agent_Role_Class_________________________
Estendendo TAO • Alterações na Organização ____________________Organization____________________ Organization_ClassOrganization_Class_Name Norms setOf{Norm_Name} Actions setOf{Action_Name} Relationships setOf{Relationship_Name} end Organization_Class_______________________________
Estendendo TAO • Alterações no Ambiente ___________________Environment_____________________ Environment_ClassEnvironment_Class_Name Norms setOf{Norm_Name} BehaviorsetOf{Properties} Relationships setOf{Relationship_Name} Events generated: setOf{Event_Name}, perceived: setOf{Event_Name} end Environment_Class________________________________
Estudo de Caso: Mercado Virtual (VirtualMarketplace) • Mercados virtuais são mercados localizados na Web em que os usuários compram e vendem itens. • Cada um é composto por um mercado principal em que os usuários podem negociar qualquer tipo de item. Além disso, o mercado principal define dois tipos: • Mercados de produtos especiais: negociam itens caros e de alta qualidade, e • Mercados de produtos usados: negociam itens de baixa qualidade e preço baixo. • Os usuários podem: • Comprar itens no mercado principal, em mercados de produtos especiais e em mercados de produtos usados, e • Vender seus itens nos mercados de produtos usados.
Estudo de Caso: Mercado Virtual (VirtualMarketplace) • No mercado principal e nos mercados de produtos especiais, os usuários compram os itens disponíveis no mercado. • O mercado principal avalia os lucros, portanto, os mercados de produtos especiais e usados devem enviar as informações relativas às vendas para o mercado principal. • No mercado principal e nos mercados de produtos especiais, os usuários procuram um vendedor e enviam uma descrição do item desejado. • O vendedor, criado pelo mercado para negociar com o comprador, é responsável por verificar se há um item com as mesmas características no ambiente (o mercado virtual).
Estudo de Caso: Mercado Virtual (VirtualMarketplace) • O ambiente armazena todos os itens que serão vendidos nesses mercados. • Se o item for encontrado, o vendedor negociará com o comprador. • Nos mercados de produtos usados, os vendedores e os compradores são os usuários. • Os usuários que desejam vender itens devem anunciá-los. • Os usuários que desejam comprar devem procurar anúncios no mercado. • Se o comprador encontrar o item desejado, ele começará uma negociação com o vendedor.
Estudo de Caso: Mercado Virtual (VirtualMarketplace) Entidades do Mercado Virtual (VirtualMarketplace) • Ambiente: Virtual Marketplace • Organização principal: General Store • Papéis de Agente: Buyer, Manager e Seller. • Papéis de Objeto: Desire e Offer. • Suborganizações: • Imported Bookstore, que exerce o papel Market of Special Goods • Second-hand Bookstore, que exerce o papel Market of Used Goods. • Agentes: • User agent, que pode exercer o papel Buyer, • Store agent, que pode exercer os papéis Manager e Seller. • Objetos: • Item e suas especializações: Book, SecondHandBook e ImportedBook.
Estudo de Caso: Mercado Virtual (VirtualMarketplace) Normas para o Mercado Virtual • N1 estabelece que os vendedores (entidade envolvida) da organização GeneralStore (contexto) têm permissão (conceitodeôntico) para atualizar (ação) o estoque de itens (recurso). _________________________N1_________________________ Norm_Class N1 Restriction_Type Permission Resource Good.updateQuantity Relationships setOf{Context_VirtualMarketPlace_N1, Restrict_Seller_N1} End Norm_Class______________________________________
Estudo de Caso: Mercado Virtual (VirtualMarketplace) Normas para o Mercado Virtual (Continuação) • N2 define que os compradores (entidadeenvolvida) da organização GeneralStore (contexto) são obrigados (conceitodeôntico) a pagar pelos itens (ação) depois que eles comprarem esses itens (restriçãodeativação). A norma N2 aplica uma punição (sanção) que é a norma N3. • N3 define que o dado comprador (entidade envolvida) é proibido (conceito deôntico) de comprar itens (ação).
Estudo de Caso: Mercado Virtual (VirtualMarketplace) Normas para o Mercado Virtual (Continuação) __________________________________N2_________________________________ Norm_Class N2 Restriction_Type Obligation Resource Buyer.payGood Activation_Constraint {after : Buyer.buyGood} Relationships setOf{Context_GeneralStore_N2, Restrict_ Buyer _N2, Sanction_N3_N2} End Norm_Class_______________________________________________________ _______________________________N3____________________________________ Norm_Class N3 Restriction_Type Prohibition Resource Buyer.buyGood Relationships setOf{Context_GeneralStore_N3, Restrict_ Buyer _N3} End Norm_Class_______________________________________________________
Conclusão e Trabalhos Futuros • Considerando o limitado suporte fornecido por TAO para a representação de normas juntamente com as entidades típicas que fazem parte de um SMA, este artigo apresenta a extensão do TAO de forma a possibilitar a representação dos conceitos relacionados a normas, juntamente com conceitos deônticos, entidades envolvidas, ações, restrições de ativação, sanções e contexto. • A extensão realizada envolve a definição de uma nova abstração, Norm, e quatro relacionamentos: (i) Context, (ii) Restrict, (iii) SanctionReward, (iv) SanctionPunishment. • Adicionalmente, as entidades AgentRole, Environment e Organization foram alteradas devido à extensão.
Conclusão e Trabalhos Futuros • Como trabalhos futuros, serão abordados os seguintes itens: • A formalização dos templates propostos; • A integração das arquiteturas internas definidas em Russel e Norvig (2004) com os elementos normativos; • A nova extensão do TAO considerando as arquiteturas.
Referências Bibliográficas • Dieste, O., Juristo, N., Moreno, A., Pazos, J. (2001). Conceptual Modeling in Software Engineering and Knowledge Engineering: Concepts, Techniques and Trends. In: Chang, S.K. (eds.): Handbook of Software Engineering and Knowledge Engineering Fundamentals. World Scientific Publishing Co., Vol.1. • Silva, V.; Garcia, A.; Brandao, A.; Chavez, C.; Lucena, C.; Alencar, P. (2003). 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, ISBN 978-3-540-08772-4. • Silva, V.; Choren R.; Lucena, C. (2008). MAS-ML: A Multi-Agent System Modelling Language, In International Journal of Agent-Oriented Software Engineering, Interscience Publishers, vol.2, no.4. • Gonçalves, E. J. T., Farias, K., Cortés, M. I., Feijó, A. R., Oliveira, F. R. and Silva, V. T. (2011). MAS-ML TOOL - A Modeling Environment for Multi-agent Systems, In: The International Conference on Enterprise Information Systems (ICEIS 2011), Beijing, China.
Referências Bibliográficas • Figueiredo, K.; Silva, V. T. (2010). NormML: A Modeling Language to Model Norms. In: 1st Workshop on Autonomous Software Systems. Salvador, Brazil. • López y López, F. (2003). Social Power and Norms: Impact on agent behavior. PhD thesis, Univ. of Southampton, Faculty of Engineering and Applied Science, Department of Electronics and Computer Science. • Omicini, A. (2001). SODA: Societies and Infrastructure in the Analysis and Design of Agent-based Systems. In: Ciancarini, P., Wooldridge, M. (eds.), Agent-Oriented Software Engineering, Springer-Verlag,: 185-194. • Silva, V. T.; Braga, C.; Figueiredo K. (2010). A Modeling Language to Model Norms. The International Joint Conference on Autonomous Agents and Multi-Agent Systems (AAMAS'2010), 9th. Proceedings of the International Conference on Autonomous Agents and Multi-Agent Systems, Toronto, Canadá. • Figueiredo, K. (2011). Modeling and Validation Norms in Multi-Agents Systems”. Master Thesis. Niterói: UFF, Instituto de Computação.
Referências Bibliográficas • Meyer, J. J.; Wieringa, R. J. (1993).Deontic Logic in Computer Science: Normative System Specification, Deontic logic in computer science: normative system specification, John Wiley and Sons Ltd. Chichester, UK. • D‟Inverno, M.; Luck, M. (2001). Understanding Agent Systems. New York: Springer. • Yu, L.; Schmid, B. (2001). 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. • Dardenne, A.; Lamsweerde, A.; Fickas, S. (1993). Goal-directed Requirements Acquisition. Science of Computer Programming. v.20, p.3-50. • Hannoun, M. (2002). MOISE: un modèle organisationnel pour les systèmes multi-agents. Tese (Thèse(Doctorat)) – École Nacionale Supérieure des Mines de Saint-Etienne.
Referências Bibliográficas • Hübner, J. F., Sichman, J. S. and Olivier, B. (2002). A model for the structural, functional and deontic specification of organizations in multiagent systems. In: SBIA '02 Proceedings of the 16th Brazilian Symposium on Artificial Intelligence: Advances in Artificial Intelligence, Springer-Verlag London, UK. • Dignum, V. ( 2004). A model for organizational interaction: based on agents, founded in logic. PhD dissertation, Universiteit Utrecht, SIKS dissertation series 2004-1. • Silva, V. T. (2004). Uma linguagem de modelagem para sistemas multi-agentes baseada em um framework conceitual para agentes e objetos, Doctoral Thesis. Rio de Janeiro: PUC, Departamento de Informática. • Russell, S. and Norvig, P. (2003). Artificial Intelligence: A Modern Approach, 2nd Ed., Upper Saddle River, NJ: Prentice Hall, ISBN 0-13-790395-2.
MACC – Mestrado Acadêmico em Ciência da Computação UECE – Universidade Estadual do Ceará GESSI – Grupo de Engenharia de Software e Sistemas Inteligentes EXTENDING THE FRAMEWORK TAO WITH NORMS FOR MULTI-AGENT SYSTEMS Emmanuel S. S. Freire – UECE – savio.essf@gmail.com Mariela I. Cortés – UECE – mariela@larces.uece.br Enyo J. T. Gonçalves – UFC – enyo@ufc.br Yrleyjânder S. Lopes – UECE– yrleyjander@gmail.com WESAAC– Workshop-Escola de Sistemas de Agentes, seus Ambientes e Aplicações 2012 – Florianópolis
https://sites.google.com/site/uecegessi/ • Obrigado!