Dynamically Providing Contextual Information for Agents in Open MAS Carolina Howard Felicíssimo Advisor: Prof. Carlos José Pereira de Lucena Co-Advisor: Prof. Jean-Pierre Briot Agenda • Introduction • Motivation • Case Study • The DynaCIPOM Approach • Readings August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 2/27 Introduction • Multi-Agent Systems (MAS) – A powerful technology that has emerged as a promising approach to develop information systems that are composed of several goal-oriented problem-solving entities (agents) • Open MAS – A MAS where agents are able to join and leave it freely – Key heterogeneity (different implementations – agents must be threaten as black-boxes), conflicting individual goals and limited trust. Moreover, no centralized control is feasible August 8, 2006 characteristics are: agent Carolina Howard Felicíssimo © LES/PUC-Rio 3/27 Motivation Network Link Open MAS August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio Open MAS 4/27 Motivation Contexts: implicit information used to characterize situations of participants Contextual Information Network Link Open MAS Open MAS Context Information: Environment, Organization, Roles and Interaction Protocols* Dynamically Provide Refined Protocol Information - a Reason & Effect approach * Protocol: a set of contextual directives for acting * Directive: information for providing direction or indication August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 5/27 Case Study The Supply Chain Management Game for the 2006 Trading Agent Competition (TAC SCM-06) A Competitive Benchmarking for The Trading Agent Community • 8 supplier agents / (6) manufacturer agents / 16 different PC configurations. • Each PC model is built from 4 component types: CPU, motherboards, memories, and hard disks. 10 different components (Pintel CPUs 2 and 5 GHz; IMD CPUs 2 and 5 GHz; Pintel and IMD motherboards; Memories 1 and 2 Gb; Hard Disks 300 and 500 Gb). • • Basic Requirements for the Manufacturer Agents: – Need to know how to place RFQs and Orders for different Suppliers – Need to know how to read Offers from different Suppliers Desired Requirement for the Manufacturer Agents: – © TAC SCM-06 August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio Choose offers considering internal stimulus and external stimulus (e.g., current economic and politic laws) 6/27 Case Study Open Agent Platform Open Agent Platform supplies dealWith Basus Supplier supplies Watergate Supplier dealWith Pintel Motherboard supplies Hard Disk 300 Gb Open Agent Platform Open Agent Platform dealWith Macrostar Supplier supplies Mintor Supplier dealWith Open Agent Main Platform manufactures PC1 Agent Manufacturer Open Agent Platform dealWith MEC Supplier Pintel CPU 2.0 supplies Memory 1 Gb Open Agent Platform Pintel Supplier August 8, 2006 supplies Open Agent Platform dealWith dealWith supplies Queenmax Supplier Carolina Howard Felicíssimo © LES/PUC-Rio 7/27 Case Study Open Agent Platform Open Agent Platform supplies dealWith Basus Supplier supplies Watergate Supplier dealWith IMD Motherboard supplies Hard Disk 500 Gb Open Agent Platform Open Agent Platform dealWith Macrostar Supplier supplies Mintor Supplier dealWith Open Agent Main Platform manufactures PC16 Agent Manufacturer Open Agent Platform dealWith MEC Supplier IMD CPU 5.0 supplies Memory 2 Gb Open Agent Platform IMD Supplier August 8, 2006 supplies Open Agent Platform dealWith dealWith supplies Queenmax Supplier Carolina Howard Felicíssimo © LES/PUC-Rio 8/27 Case Study AMacrostarSupplier AManufacturer ABasusSupplier sendRFQs(IMDMotherboard,50) sendRFQs(IMDMotherboard,50) calculatePrice (IMDMotherboard,50) Base Price: 80 calculatePrice (IMDMotherboard,50) Base Price: 80 Profit: +X% Profit: +A% Reputation: -Y% Reputation: -B% Offer Price: 4000 Offer Price:3990 sendOffer(4000) sendOffer(3990) analyseOffers() criterion(cheaperPrice) sendOrder(IMDMotherboard,50) August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 9/27 Case Study Contextual Information Open Agent Platform Open Agent Platform supplies dealWith Basus Supplier IMD Motherboard supplies dealWith Missouri Hiroshima Open Agent Platform Open Agent Platform dealWith Macrostar Supplier Colorado dealWith supplies Watergate Supplier Hard Disk 500 Gb supplies Mintor Supplier Shanghai Open Agent Main Platform manufactures PC16 Agent Manufacturer California Beijing Open Agent Platform dealWith MEC Supplier IMD CPU 5.0 California supplies IMD Supplier August 8, 2006 Osaka Open Agent Platform Open Agent Platform dealWith dealWith supplies Memory 2 Gb supplies Queenmax Supplier Carolina Howard Felicíssimo © LES/PUC-Rio 10/27 Case Study ― Environment Directives for Payments: 1. In USA, all negotiations are paid in American dollars (USD), its national currency. Negotiations outside USA have to have their values converted from USD to the national currency of the country where the seller is. 2. In Japan, all negotiations are paid in Yen, its national currency. Negotiations outside Japan have to have their values converted from Yen to the national currency of the country where the seller is. 3. In China, all negotiations are paid in Chinese yuan (CNY), its national currency. Negotiations outside China have to have their values converted from CNY to the national currency of the country where the seller is. ― Environment Directives for Calculating Prices: 1. In Missouri, a state corporate income tax rate of 6.25 is imposed on all sales. 2. In Colorado, a state corporate income tax rate of 4.63 is imposed on all sales. 3. In Missouri, a three day sales tax holiday occurs, every year, from August 4 to 6. Orders of computers and computers' components, with the maximum cost of $3,050, are eligible for tax free during the holiday. Example that can be implemented as a Meta-Rule! August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 11/27 Case Study ― Interaction Directives for Providing Discounts: 1. Basus and IMD offer 15% discount if their products are bought in bundles. 2. Macrostar and Pintel offer 10% discount if their products are bought in bundles. ― Role Directives for Providing Discounts: 1. MEC suppliers can give up to 5% discount. 2. Queenmax suppliers can give up to 8% discount on orders paid in cash. 3. Queenmax suppliers apply duty free discounts for tourists. ― Organization Directives for Providing Warranty: 1. Mintor give a two year limited warranty if a plus tax of 5% is accepted. 2. Watergate give one year limited warranty. ― Organization Directive for Payments of Ship Costs: 1. Mintor pay ship costs when warranty verification detects defective products. ― Organization Directive for Payments: 1. Every placed order for Queenmax have a down payment of 10%. August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 12/27 Case Study ― Economic Directives for Operating in the Market: 1. Organizations can’t form trusts and monopolies (concentrations of wealth in the hands of a few). 2. Organizations can’t make price fixing agreements. 3. Organizations can’t form cartels. 4. (Meta-Rule) Pintel organizations increase 5% of their prices when IMD organizations are in crisis or goes bankrupt. ― Politic Directives for Operating in the Market: 1. Due to political crisis, American organizations don’t deal anymore with Japanese organizations. (Meta-Rule) Mintor organizations increase 10% of their prices when Watergate organizations are not operating in the American market. August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 13/27 DynaCIPOM An Approach for Dynamic Contextual Information Provision in Open MAS Case Study • A priori knowledge needed (pre-implemented methods) for the “calculating price” protocol: calculatePrice(String product, int quantity):int – requestBasePrice(String product):int – getBasePrice(String product):int – requestBasePrice(String product, String mainOrganization):int – answerBasePrice():int – calculateCostPrice(int basePrice, int quantity): int – calculatePriceWithProfit(int currentPrice, int profitPercentage): int – applyDiscount(int currentPrice, int percentageOfDiscount, String discountIdentifier) ////(”quantity” or “bundle” or “clientHistory”) – applyTax(currentPrice):int – requestIncomeSaleTax():int – requestCurrencyForPayment():String – convertPriceValue(int mainOrgLocalCurrency, int orgLocalCurrency):int – answerPrice(int currentPrice, String currency) August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 15/27 Case Study August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 16/27 Case Study • Macrostart “calculating price” protocol calculatePrice(String product, int quantity):int – requestBasePrice(String product):int – getBasePrice(String product):int – calculateCostPrice(int basePrice, int quantity): int – calculatePriceWithProfit(int currentPrice, 20): int – applyDiscount(int currentPrice, int percentageOfDiscount, ”quantity”) – applyDiscount(int currentPrice, int percentageOfDiscount, ” bundle”) – applyTax(currentPrice):int – requestIncomeSaleTax():int – answerPrice(int currentPrice, String currency) August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 17/27 Case Study August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 18/27 Case Study • BasusChina “calculating price” protocol calculatePrice(String product, int quantity):int – requestBasePrice(String product):int – requestBasePrice(String product, String mainOrganization):int – calculateCostPrice(int basePrice, int quantity): int – calculatePriceWithProfit(int currentPrice, 18): int – applyDiscount(int currentPrice, int percentageOfDiscount, “clientHistory”) – applyDiscount(int currentPrice, int percentageOfDiscount, “bundle”) – applyTax(currentPrice):int – requestIncomeSaleTax():int – requestCurrencyForPayment():String – convertPriceValue(int mainOrgLocalCurrency, int orgLocalCurrency):int – answerPrice(int currentPrice, String currency) August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 19/27 DynaCIPOM • An Approach for Dynamic Contextual Information Provision in Open MAS • It is based on: – A Top-Down Contextual Modeling of Protocols – Environment Protocols – Organization Protocols – Role Protocols – Interaction Protocols – A Meta-Ontology to Explicitly Represent Contexts – A Rule Support to Compose and Retrieve Contextual Protocols August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 20/27 DynaCIPOM Rule1- [ruleForOrgWithMOrgLaws: hasNorm(?Org,?MOrgLaws) <- hasNorm(?MOrg,?MOrgLaws), hasMainOrganization(?Org,?MOrg)] Rule2- [ruleForOrgWithEnvLaws hasNorm(?Org,?OrgEnvLaws) <- hasNorm(?OrgEnv,?OrgEnvLaws), isIn(?Org,?OrgEnv) Rule3- [ruleForOrgWithOEnvOfOrgEnvLaws hasNorm(?Org,?OEnvOfOrgEnvLaws) <- hasNorm(?OEnvOfOrgEnv,?OEnvOfOrgEnvLaws), belongsTo(?OrgEnv,?OEnvOfOrgEnv) isIn(?Org,?OrgEnv)] Rule4- [ruleForOrgWithMOrgEnvLaws: hasNorm(?Org,?MOrgEnvLaws) <- hasNorm(?MOrgEnv,?MOrgEnvLaws), isIn(?MOrg,?MOrgEnv) hasMainOrganization(?Org,?MOrg)] Rule5- [ruleForOrgWithOEnvOfMOrgEnvLaws: hasNorm(?Org,?OEnvOfMOrgEnvLaws) <- hasNorm(?OEnvOfMOrgEnv,?OEnvOfMOrgEnvLaws), belongsTo(?MOrgEnv,?OEnvOfMOrgEnv) isIn(?MOrg,?MOrgEnv) hasMainOrganization(?Org,?MOrg)] 349 customized compositions of contextual norms can be achieved with only 19 rules (Environment: 1=1 C1 = 1; Organization: =1 C = 31; Role: =1 C = 63; Interaction: 2* =1 C = 254). Formula: =1 C = 2 - 1 August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 21/27 DynaCIPOM Behavior DynaCIPOM – Current Implemented Architecture DynaCIPOM JADE Agent Architecture August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 22/27 DynaCIPOM – Current Implemented Architecture JADE Platform Architecture Network Host (noteles) Network Host (CATOJUNIOR) Network Link USA hasProtocols: 1- USAProtForPayment 2- USAProtForCalculatingPrice Colorado hasProtocols: DynaCIPOM Answer 1- USAProtForCalculatingPrice 2- ColoradoProtocolForGivingWarranty 3- ColoradoProtForCalculatingPrice August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 23/27 DynaCIPOM – Further Work • Implement the Meta-Rule Solution • Try JADEX to Support Protocol-Based for Agent Decision-Making in Open MAS DynaCIPOM answers will be added to agent beliefs – Start enhancing a JADEX implemented example with DynaCIPOM – Implement the TAC-SCM, 2006 example in JADEX with DynaCIPOM DynaCIPOM Answer: Contextual Information Network Link Open MAS August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio Open MAS 24/27 Readings • About DynaCIPOM: – • • Dynamically Providing Contextual Protocol Information for Agents in Open MultiAgent Systems. For the JAAMAS Journal. To appear. About the DynaCROM Approach: – Regulating Open Multi-Agent Systems with DynaCROM. FELICÍSSIMO, Carolina; LUCENA, Carlos; BRIOT, Jean-Pierre; NOYA, Ricardo. In: Second Workshop on Software Engineering for Agent-oriented Systems (SEAS, 2006), 2006, Florianopolis. – Toward a Normative Ontology for Implementing Contextual Regulations in Open MAS. FELICÍSSIMO, Carolina; LUCENA, Carlos; BRIOT, Jean Pierre; BREITMAN, Karin; CASANOVA, Marco; CHOREN, Ricardo. Biblioteca de Informatica da PUC-Rio, 2006 (Monografias em Ciência da Computação no. 31/06). – An Approach for Contextual Regulations in Open MAS. FELICÍSSIMO, Carolina; LUCENA, Carlos; BRIOT, Jean-Pierre; CHOREN, Ricardo . In: Eight International Bi-Conference Workshop on AGENT-ORIENTED INFORMATION SYSTEMS at AAMAS-2006 (AOIS-06), 2006, Japan, 2006. About a Case Study for the DynaCROM Approach: – Supporting Regulatory Dynamics in Open MAS. FELICÍSSIMO, Carolina; CHOREN, Ricardo; BRIOT, Jean-Pierre; LUCENA, Carlos. In: AAMAS06 Workshop on Coordination, Organization, Institutions and Norms in agent systems (COIN-06), 2006, Japan, 2006. August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 25/27 Readings • • • About the DynaCROM Ontology: – Normative Ontologies to Define Regulations Over Roles in Open Multi-Agent Systems. FELICÍSSIMO, Carolina; LUCENA, Carlos; CARVALHO, Gustavo; PAES, Rodrigo. In: AAAI Fall Symposium Roles, an Interdisciplinary Perspective: Ontologies, Programming Languages, and Multiagent Systems. 2005, Virginia, Arlington. AAAI Press, 2005. v. 1. p. 68-72. – An Approach to Regulate Open Multi-Agent Systems Based On A Generic Normative Ontology. FELICÍSSIMO, Carolina; LUCENA, Carlos. In: First Workshop on Software Engineering for Agent-oriented Systems (SEAS 2005), 2005, Uberlândia. About the DynaCROM Rules: – Inferring Contextual Laws with Rules for Regulations in Open Multi-Agent Systems. FELICÍSSIMO, Carolina; LUCENA, Carlos; BRIOT, Jean Pierre; BREITMAN, Karin; CASANOVA, Marco; CHOREN, Ricardo. Biblioteca de Informatica da PUC-Rio, 2006 (Monografias em Ciência da Computação no. 32/06). – Automating Regulations in Open Multi-Agent Systems. FELICÍSSIMO, Carolina; LUCENA, Carlos; BRIOT, Jean-Pierre; BREITMAN, Karin; NOYA, Ricardo. Rio de Janeiro: Assessoria de Biblioteca, Documentação e Informação. PUC-Rio Departamento de Informática, 2006 (Monografias em Ciência da Computação no. 11/06). About the DynaCROM First Ideas: – Sweetening Regulated Open Multi-Agent Systems with Support for Agents to Reason about Laws. FELICÍSSIMO, Carolina; LUCENA, Carlos; SARDINHA, José. Rio de Janeiro: Assessoria de Biblioteca, Documentação e Informação PUC-Rio Departamento de Informática, 2005 (Monografias em Ciência da Computação n 32/05). August 8, 2006 Carolina Howard Felicíssimo © LES/PUC-Rio 26/27 Questions ?