1 / 19

A Methodology for Role-Based Modeling of Open Multi-Agent Software Systems

A Methodology for Role-Based Modeling of Open Multi-Agent Software Systems. Prof. Haiping Xu Concurrent Software Systems Laboratory Computer and Information Science Department University of Massachusetts Dartmouth North Dartmouth, MA 02747 Email: hxu@umassd.edu

eve-willis
Download Presentation

A Methodology for Role-Based Modeling of Open Multi-Agent Software Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Methodology for Role-Based Modeling of Open Multi-Agent Software Systems Prof. Haiping Xu Concurrent Software Systems Laboratory Computer and Information Science Department University of Massachusetts Dartmouth North Dartmouth, MA 02747 Email: hxu@umassd.edu URL: http://www.cis.umassd.edu/~hxu/ CIS Dept., UMass Dartmouth

  2. Outline • Background and Motivation • An Organizational Approach • Role-Based Multi-Agent System Design • Case Study: Organizing a Conference • Conclusions and Future Work CIS Dept., UMass Dartmouth

  3. Background and Motivation • Multi-agent system (MAS) is a concurrent software system with more than one agent • A traditional MAS consists of a fixed number of software agents • In an open MAS, agents can • join or leave an agent society at will • take or release roles dynamically CIS Dept., UMass Dartmouth

  4. An Example (Simulating a Company) • Employee 1: • TeamLeader_1 • P_1.1 • Employee 2: • P_1.m • P_2.2 • Employee X: ... Manager TeamLeader_1 TeamLeader_2 P_1.1 … P_1.m P_2.1 … P_2.n CIS Dept., UMass Dartmouth

  5. Role-Based Modeling • Role-based modeling is one of the most effective methodologies for agent-based system analysis and design • In most of the existing work • abstract constructs used to conceptualize and understand the system • no realizations in the implemented system • Suitable for closed multi-agent systems • We propose a methodology for role-based modeling of open multi-agent systems CIS Dept., UMass Dartmouth

  6. An Organizational Approach • Separate the concepts of role organization and role space • role organization contains conceptual roles • role space contains role instances • At the third layer, we define an agent society that consists of agent instances • The agent society can be designed independently of the role organization and role space CIS Dept., UMass Dartmouth

  7. A Generic Model of Role-Based Open MAS role_A role_E Role Organization role_B role_C role_D roleInstance_2 roleInstance_k Role Space roleInstance_1 roleInstance_n agent_2 Agent Society agent_1 agent_3 CIS Dept., UMass Dartmouth

  8. Formal Specifications - Role and Role Organization CIS Dept., UMass Dartmouth

  9. Formal Specifications - Role Space and Agent CIS Dept., UMass Dartmouth

  10. Role-Based MAS Design • Design Role classes and their relationships • inheritance relationship • aggregation relationship • association relationship • incompatibility relationship • To ease software engineer’s effort, we propose a design process for MAS development CIS Dept., UMass Dartmouth

  11. A Generic Procedure to Design Open MAS • Design the set of Role classes  and their relationship 1:  X  [IH | AG], where IH and AG represent the relationship types of inheritance and aggregation, respectively. • Design the role organization  according to the class schema RoleOrganization, and define any association relationships and incompatibility relationships between classes, i.e., 2:  X  [AS | IC], where AS and IC represent the relationship types of association and incompatibility, respectively. • Design the role space  according to the class schema RoleSpace. The role space  should support creating, advertising, and searching for role instances. It may use existing middleware, e.g., Sun Jini, for its purpose. • Refine the Agent class with a set of sensors and a set of appropriate reasoning mechanisms. This step may overlap with Step 1-3. • Design agent society  according to the class schema AgentSociety. The agent society  contains a set of agent instances of type Agent, and it corresponds to the role organization  with the same organization/society design purpose. CIS Dept., UMass Dartmouth

  12. Open Role Space and Open Agent Society • Open role space • role instances can be added into or deleted from a role space dynamically • Open agent society • agents can join or leave the system at will • agents can take or release role instances in a role space dynamically CIS Dept., UMass Dartmouth

  13. A-R Mapping • A-R mapping is a process for agents from an agent society  to take or release role instances in a role space . • Both of agent society  and role space  are defined upon the role organization . • Formally, the A-R mapping is defined as follows where f is a partial function mapping from an agent instance to a set of role instances. CIS Dept., UMass Dartmouth

  14. The Process of A-R Mapping • Initialization: The agent society  makes a request to the role space  to instantiate the major LeadingRole class defined in the role organization , and create a role instance for it. • Role assignment: for each agent  in the agent society , do the following: • When agent  receives any sensor data from its environment, it may decide to generate some new goals or subgoals based on the sensor data and agent ’s motivations. • With its reasoning mechanisms, agent  further deduce a set  of needed roles of types defined in the role organization . If none of the roles in set  is of type LeadingRole, go to step 2.d. • If any role in role set  is a leading role of type LeadingRole, agent  takes the corresponding role instance from the role space , if available, updates the hiring number of other roles as needed, and makes requests to the role space  to create role instances for those roles under hiring. • Repeat the following for a period of time : Search the role space  for any role instances that match roles in role set . If there is a match, agent  takes that role instance. If all roles in role set  have been matched with some role instances in the role space , go to Step 3. • If any role in the role set  cannot be matched with a role instance in the role space , agent  may decide to release all role instances or keep its current occupations. • Marking role incompatibility: for each agent , mark its role incompatibility as the following: for any role instances r1, r2.rolesTaken, if .relationship(r1.getClass, r2.getClass) == incompatibility, mark agent  as potential role incompatibility with a self-loop. • Setting up interaction relationships: for each agent , set up the interaction relationship between agent  and other agents from the same agent society  as the following : for any agent instance .agentInstances, where , if r1.rolesTaken, r2.rolesTaken such that .relationship(r1.getClass, r2.getClass) == association, then (, )  dom .interaction. CIS Dept., UMass Dartmouth

  15. Case Study: Organizing a Conference LeadingRole class • Is a subclass of the Role class • Each role organization defines a major leading role • Is responsible for creating other role instances CIS Dept., UMass Dartmouth

  16. An Open MAS for Organizing a Conference Role Role Organization LeadingRole assign papers AuthorRole PCChairRole PCMemberRole notify decision PrimaryPCMemberRole [same paper] r4 r5 r1 r6 r2 r3 Role Space … Agent Society agent_1 agent_2 agent _3 agent_4 agent_5 … assign papers assign papers [same paper] notify decision CIS Dept., UMass Dartmouth

  17. Conclusions • A role-based methodology has been proposed for development of open MAS • The design of roles and agents can be separated, which simplifies agent development • Inheritance relationships between roles support reuse of role design • Relationships between agents can be easily derived from A-R mapping CIS Dept., UMass Dartmouth

  18. Future Work • Refine the association relationship into more specific relationships • Design social norms or rules in role organization and check for consistency • Automate the verification process based on the A-R mapping mechanism. • Develop an Role-based Agent Development Environment (RADE) for rapid agent development. CIS Dept., UMass Dartmouth

  19. Thank you for your attention! The slides for this talk can be downloaded from http://www.cis.umassd.edu/~hxu CIS Dept., UMass Dartmouth

More Related