SlideShare una empresa de Scribd logo
1 de 21
Chapter 5
Design Patterns for Multi-agent
Systems:
A Systematic Literature Review
Joanna Juziuk, DannyWeyns, and Tom Holvoet
Introduction
 Design patterns allow reuse of best practices and avoiding
worst.
 Design patterns improve software’s quality properties, like
maintainability and reusability, and speed up the development
time.
 These factors are crucial in practice, especially for project
managers, since improving them reduces costs.
 During the last decade, the multi-agent system (MAS)
community has put significant efforts in documenting design
patterns.
 Despite the substantial body of work, design patterns for MAS
have not received the attention they deserve, neither in the
agent-oriented software community nor among software
practitioners.
 One of the main reasons why mainstream software developers
do not benefit from MAS patterns is that they simply do not
know them.
Pattern anatomy
-The first layer embodies a
recurring problem.
A problem arises in a
situation known as
a context—i.e., the second
layer.
The third layer is the
solution, i.e., a well-known
and proven solution to a
problem in a context
Design Pattern
 Design patterns are meant to be generic, so their application and
implementation may vary.
 The Gang of Four (GoF):
 proposed the first classification of software design patterns.
 This pattern catalog uses a two dimensional classification based on scope
and purpose.
 The catalog contains 23 design patterns that were previously
undocumented.
 Buschman’s classification is another well-known organization of
software design patterns.:
 This catalog promotes functionality and structural principles and uses
also a classification along two dimensions: granularity and purpose.
 Other popular catalogs are:
 Fowler’s pattern catalog,
 J2EE blueprints for large scale enterprise applications
 Schmidt’s catalog that documents design patterns for concurrency
 In conclusion, design patterns are considered particularly useful
assets in engineering complex systems, and various pattern
catalogs have been documented.
Research Questions
 RQ1: How are the patterns documented and what
pattern templates are used?
 RQ2: How are the design patterns interconnected?
 RQ3: For what types of systems have the design
patterns been applied?
 RQ4: How can the design patterns be classified?
Standard Templates
 There is a need for standard templates to document patterns
for MAS.
 Such template should clearly define the semantics of the
different paragraphs.
 We suggest to start from a state of the art pattern template
and include at least the following paragraphs:
 Name, Problem, Solution, Context, Forces, Consequences, and
Related Patterns.
 The first four paragraphs are essential as any design pattern
should document a solution to recurring problem in a given
context.
 Context and forces should be also included as these aspects
are essential for software engineers to select proper design
patterns and it also supports learning of the patterns.
 Documenting consequences is crucial to understand the design
trade-offs implied by patterns.
RQ1: How are the patterns documented
and what pattern templates are used?
 Paragraphs in Pattern Documentation:
 Context/Applicability, Problem/Intent/Purpose,
Examples/Known Uses or Participants/Entities.
 Several of these paragraphs are generally considered as
essential for documenting design patterns, especially
 Problem, Context, and Solution.
 Other paragraphs are rare and rather unusual, for
example,
 Technical Issues, Reasoning capabilities, Temporal context,
and Configuration.
RQ2: How are the design patterns
interconnected?
1. A first cluster contains patterns that are inspired by object-
oriented pattern catalogs, such as the GoF catalog (Proxy,
Mediator), and by the concurrency patterns of (Broker, Active
Object).
2. A second cluster is built around bio-inspired concepts such as
pheromones, ants, and stigmergy. This cluster includes recent
patterns related to self-organization and adaptive behavior.
3. A third cluster groups patterns that are related to the mobile
agents and Aglets patterns.
4. Another cluster groups protocols related to FIPA protocols.
5. Several of these closed clusters contain domain specific
patterns, for example, patterns for military simulations, e-
commerce, intelligent manufacturing, and security.
Pattern space
RQ3: For what types of systems have
the design patterns been applied?
 Overall, there is not a dominant type of system for which MAS
design patterns have been used.
 Figure 5.7 shows that 59% of the patterns are domain-
independent, while 41% of the patterns focus on more specific
uses.
 For industrial applications, the main reported subdomains are
process control and manufacturing (6%) and traffic and
transportation (5%).
 For commercial applications, we identified information
management (4%) and electronic commerce (3%).
 We found no patterns applied in the entertainment domain.
 Nevertheless, we observe that the design patterns for MAS
have been used for a diversity of application domains, which
reveals their high potential for software practitioners.
Figure 5.7:
Pattern application domains
RQ4: How Can the Design Patterns Be
Classified?
 The objective of classifying design patterns for MAS is to
provide an intellectual graspable overview of the huge space
of existing patterns.
 The classification offers engineers a general picture of the
pattern space of MAS, and helps those who are not familiar
with the domain to get an easy jump-start to understand the
pattern space.
 Several researchers have proposed classifications of design
patterns for MAS, but these classifications are either bound
to a specific catalog of patterns, or to an development
methodology.
 The classification presented in this paper covers the full
space of patterns for MAS as document at the time of writing.
4 dimensions of patterns for MAS:
 We derived the data for the classification resulted from Catalog
pattern categories and Short pattern description.
 Based on the analysis of the data, we identified four dimensions
of patterns for MAS:
 inspiration
 abstraction
 focus
 granularity
 Figure 5.8 shows a graphical overview of the dimensions,
illustrated with example patterns.
Classification of patterns for MAS with example patterns
Inspiration
 Metaphors and analogies help in understanding complex
systems.
 The inspiration dimension has four categories that provide
intuitive domains from which patterns are derived.
 nature-inspired patterns are gradient fields that is inspired
by the fields in nature, and delegate ant MAS that is inspired by
behavior of social insects.
 society-inspired patterns are emergent society and holonic
society that get their inspiration from the way societies emerge
and structure themselves.
 human-inspired patterns are receptionist and gossip.
 locker and blackboard are example of patterns that get there
inspiration from artifacts in our environment.
Abstraction
 The abstraction dimension classifies patterns either as
conceptual or concrete.
 Both these main categories are further refined in
subcategories that refer to stages in the software life cycle
where the patterns can be used.
 Define actors and pyramid are examples of patterns that
are useful in early phases in the life cycle, while broker and
synchronizer can be applied in detailed design and the
implementation phase.
Focus
 The focus dimension has two categories:
 structural
 behavioral
 Structural patterns are useful to deal with the decomposition
of a system
 Examples of structural patterns are reflective blackboard and joint
venture, the former focusing a particular coordination structure for
an agent system, the latter focusing on the way a community of
agents is organized.
 behavior patterns are useful to deal with interaction aspects.
 Examples of behavioral patterns are market maker, negotiating
agents, and conversation.
 These patterns provide different approaches to support
interactions among agents.
Granularity
 Finally, the granularity dimension refers to the scope of the
patterns, that is:
 the system
 parts of the system
 Hierarchical contracting and emergent society are examples
of patterns that apply to a MAS as a whole.
 Messenger and virtual environment are patterns that apply to
parts of a MAS.
 Intention and InteRRaP are patterns that support the design
of individual agents.
Conclusions
 The objective of this literature study was to summarize existing
design patterns for MAS, to make this knowledge accessible to
practitioners.
 We suggest to start from a state of the art pattern template and
include at least the following paragraphs:
 Name, Problem, Solution, Context, Forces, Consequences, and Related
Patterns.
 The data shows that the patterns have a wide range of
applications.
 Nevertheless, although MAS are suggested to be primary
candidates to design emerging domains such as cloud computing
and smart grids, no applications of patterns for these systems are
reported.
 This classification of patterns allows engineers to better browse the
pattern space and helps those who are new to the field to better
find their way through the myriad of patterns.
Future Recommendations
 Other opportunities for future research are identification and
documentation of anti-patterns for MAS, that is, design
patterns that have proven to be unsuccessful, evaluation
of patterns using standard frameworks for evaluating design
patterns, and development of CASE tools to support
engineers with applying patterns during system development.

Más contenido relacionado

La actualidad más candente

Architecture and design
Architecture and designArchitecture and design
Architecture and designhimanshu_airon
 
DESIGN AND DEVELOPMENT OF BUSINESS RULES MANAGEMENT SYSTEM (BRMS) USING ATLAN...
DESIGN AND DEVELOPMENT OF BUSINESS RULES MANAGEMENT SYSTEM (BRMS) USING ATLAN...DESIGN AND DEVELOPMENT OF BUSINESS RULES MANAGEMENT SYSTEM (BRMS) USING ATLAN...
DESIGN AND DEVELOPMENT OF BUSINESS RULES MANAGEMENT SYSTEM (BRMS) USING ATLAN...ijcsit
 
Tropos project toward RE
Tropos project toward RETropos project toward RE
Tropos project toward RESehrish Asif
 
Lectura 2.2 the roleofontologiesinemergnetmiddleware
Lectura 2.2   the roleofontologiesinemergnetmiddlewareLectura 2.2   the roleofontologiesinemergnetmiddleware
Lectura 2.2 the roleofontologiesinemergnetmiddlewareMatias Menendez
 
CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV pkaviya
 
Architectural styles 2
Architectural styles   2Architectural styles   2
Architectural styles 2Dr Reeja S R
 
Availability Assessment of Software Systems Architecture Using Formal Models
Availability Assessment of Software Systems Architecture Using Formal ModelsAvailability Assessment of Software Systems Architecture Using Formal Models
Availability Assessment of Software Systems Architecture Using Formal ModelsEditor IJCATR
 
Systems variability modeling a textual model mixing class and feature concepts
Systems variability modeling a textual model mixing class and feature conceptsSystems variability modeling a textual model mixing class and feature concepts
Systems variability modeling a textual model mixing class and feature conceptsijcsit
 
Socio organizational issues ppt
Socio organizational issues pptSocio organizational issues ppt
Socio organizational issues ppttamizh arthanari
 
Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...
Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...
Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...CSCJournals
 

La actualidad más candente (15)

Architecture and design
Architecture and designArchitecture and design
Architecture and design
 
DESIGN AND DEVELOPMENT OF BUSINESS RULES MANAGEMENT SYSTEM (BRMS) USING ATLAN...
DESIGN AND DEVELOPMENT OF BUSINESS RULES MANAGEMENT SYSTEM (BRMS) USING ATLAN...DESIGN AND DEVELOPMENT OF BUSINESS RULES MANAGEMENT SYSTEM (BRMS) USING ATLAN...
DESIGN AND DEVELOPMENT OF BUSINESS RULES MANAGEMENT SYSTEM (BRMS) USING ATLAN...
 
Tropos project toward RE
Tropos project toward RETropos project toward RE
Tropos project toward RE
 
Ooa 1 Post
Ooa 1 PostOoa 1 Post
Ooa 1 Post
 
Lectura 2.2 the roleofontologiesinemergnetmiddleware
Lectura 2.2   the roleofontologiesinemergnetmiddlewareLectura 2.2   the roleofontologiesinemergnetmiddleware
Lectura 2.2 the roleofontologiesinemergnetmiddleware
 
CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV
 
Architectural styles 2
Architectural styles   2Architectural styles   2
Architectural styles 2
 
Availability Assessment of Software Systems Architecture Using Formal Models
Availability Assessment of Software Systems Architecture Using Formal ModelsAvailability Assessment of Software Systems Architecture Using Formal Models
Availability Assessment of Software Systems Architecture Using Formal Models
 
Unit iii ppt
Unit iii pptUnit iii ppt
Unit iii ppt
 
Building a responsibility model using modal logic
Building a responsibility model using modal logicBuilding a responsibility model using modal logic
Building a responsibility model using modal logic
 
Systems variability modeling a textual model mixing class and feature concepts
Systems variability modeling a textual model mixing class and feature conceptsSystems variability modeling a textual model mixing class and feature concepts
Systems variability modeling a textual model mixing class and feature concepts
 
Socio organizational issues ppt
Socio organizational issues pptSocio organizational issues ppt
Socio organizational issues ppt
 
Ch09
Ch09Ch09
Ch09
 
Lecture 5 se
Lecture 5 seLecture 5 se
Lecture 5 se
 
Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...
Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...
Using Model-Driven Engineering for Decision Support Systems Modelling, Implem...
 

Destacado

Multiagent System Communication
Multiagent System Communication Multiagent System Communication
Multiagent System Communication Ahsan Rahim
 
Topic 1 lecture 2
Topic 1 lecture 2Topic 1 lecture 2
Topic 1 lecture 2farshad33
 
Topic 1 lecture 3-application imapct of mas&t
Topic 1 lecture 3-application imapct of mas&tTopic 1 lecture 3-application imapct of mas&t
Topic 1 lecture 3-application imapct of mas&tfarshad33
 
|.doc|
|.doc||.doc|
|.doc|butest
 
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...farshad33
 
Chapter 6 agent communications--agent communications
Chapter 6 agent communications--agent communicationsChapter 6 agent communications--agent communications
Chapter 6 agent communications--agent communicationsfarshad33
 
Topic 1 lecture 1
Topic 1 lecture 1Topic 1 lecture 1
Topic 1 lecture 1farshad33
 
Multiagent systems (and their use in industry)
Multiagent systems (and their use in industry)Multiagent systems (and their use in industry)
Multiagent systems (and their use in industry)Marc-Philippe Huget
 
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...farshad33
 
Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...farshad33
 
Multi-agent systems
Multi-agent systemsMulti-agent systems
Multi-agent systemsR A Akerkar
 
Introduction to Agents and Multi-agent Systems (lecture slides)
Introduction to Agents and Multi-agent Systems (lecture slides)Introduction to Agents and Multi-agent Systems (lecture slides)
Introduction to Agents and Multi-agent Systems (lecture slides)Dagmar Monett
 
Introduction to agents and multi-agent systems
Introduction to agents and multi-agent systemsIntroduction to agents and multi-agent systems
Introduction to agents and multi-agent systemsAntonio Moreno
 

Destacado (15)

Multiagent System Communication
Multiagent System Communication Multiagent System Communication
Multiagent System Communication
 
Topic 1 lecture 2
Topic 1 lecture 2Topic 1 lecture 2
Topic 1 lecture 2
 
Topic 1 lecture 3-application imapct of mas&t
Topic 1 lecture 3-application imapct of mas&tTopic 1 lecture 3-application imapct of mas&t
Topic 1 lecture 3-application imapct of mas&t
 
|.doc|
|.doc||.doc|
|.doc|
 
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
Chapter 8 agent-oriented software engineering ch8-prometheus research methodo...
 
Auctions
AuctionsAuctions
Auctions
 
Chapter 6 agent communications--agent communications
Chapter 6 agent communications--agent communicationsChapter 6 agent communications--agent communications
Chapter 6 agent communications--agent communications
 
Topic 1 lecture 1
Topic 1 lecture 1Topic 1 lecture 1
Topic 1 lecture 1
 
Multiagent systems (and their use in industry)
Multiagent systems (and their use in industry)Multiagent systems (and their use in industry)
Multiagent systems (and their use in industry)
 
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
Chapter 7 agent-oriented software engineering ch7-agent methodology-agent met...
 
Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
Topic 4 -software architecture viewpoint-multi-agent systems-a software archi...
 
Multi-agent systems
Multi-agent systemsMulti-agent systems
Multi-agent systems
 
Introduction to Agents and Multi-agent Systems (lecture slides)
Introduction to Agents and Multi-agent Systems (lecture slides)Introduction to Agents and Multi-agent Systems (lecture slides)
Introduction to Agents and Multi-agent Systems (lecture slides)
 
Agent architectures
Agent architecturesAgent architectures
Agent architectures
 
Introduction to agents and multi-agent systems
Introduction to agents and multi-agent systemsIntroduction to agents and multi-agent systems
Introduction to agents and multi-agent systems
 

Similar a Chapter 5 design patterns for mas

An Empirical Study Of Requirements Model Understanding
An Empirical Study Of Requirements Model UnderstandingAn Empirical Study Of Requirements Model Understanding
An Empirical Study Of Requirements Model UnderstandingKate Campbell
 
An Empirical Study Of Requirements Model Understanding Use Case Vs. Tropos M...
An Empirical Study Of Requirements Model Understanding  Use Case Vs. Tropos M...An Empirical Study Of Requirements Model Understanding  Use Case Vs. Tropos M...
An Empirical Study Of Requirements Model Understanding Use Case Vs. Tropos M...Raquel Pellicier
 
Model versioning in context of living
Model versioning in context of livingModel versioning in context of living
Model versioning in context of livingijseajournal
 
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESA COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESijfcstjournal
 
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESA COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESADEIJ Journal
 
Generation of Automatic Code using Design Patterns
Generation of Automatic Code using Design PatternsGeneration of Automatic Code using Design Patterns
Generation of Automatic Code using Design PatternsIRJET Journal
 
Patterns of Interaction Description Including Aspects of Constraints
Patterns of Interaction Description Including Aspects of ConstraintsPatterns of Interaction Description Including Aspects of Constraints
Patterns of Interaction Description Including Aspects of ConstraintsJuan Manuel Gonzalez Calleros
 
Mit3033 software architecture
Mit3033  software architectureMit3033  software architecture
Mit3033 software architecturesmumbahelp
 
01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdfAftaZani1
 
Sentiment analysis in SemEval: a review of sentiment identification approaches
Sentiment analysis in SemEval: a review of sentiment identification approachesSentiment analysis in SemEval: a review of sentiment identification approaches
Sentiment analysis in SemEval: a review of sentiment identification approachesIJECEIAES
 
Lecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.docLecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.docesrabilgic2
 

Similar a Chapter 5 design patterns for mas (20)

An Empirical Study Of Requirements Model Understanding
An Empirical Study Of Requirements Model UnderstandingAn Empirical Study Of Requirements Model Understanding
An Empirical Study Of Requirements Model Understanding
 
An Empirical Study Of Requirements Model Understanding Use Case Vs. Tropos M...
An Empirical Study Of Requirements Model Understanding  Use Case Vs. Tropos M...An Empirical Study Of Requirements Model Understanding  Use Case Vs. Tropos M...
An Empirical Study Of Requirements Model Understanding Use Case Vs. Tropos M...
 
STUDY OF AGENT ASSISTED METHODOLOGIES FOR DEVELOPMENT OF A SYSTEM
STUDY OF AGENT ASSISTED METHODOLOGIES FOR DEVELOPMENT OF A SYSTEMSTUDY OF AGENT ASSISTED METHODOLOGIES FOR DEVELOPMENT OF A SYSTEM
STUDY OF AGENT ASSISTED METHODOLOGIES FOR DEVELOPMENT OF A SYSTEM
 
DEVELOPMENT OF A MULTIAGENT BASED METHODOLOGY FOR COMPLEX SYSTEMS
DEVELOPMENT OF A MULTIAGENT BASED METHODOLOGY FOR COMPLEX SYSTEMSDEVELOPMENT OF A MULTIAGENT BASED METHODOLOGY FOR COMPLEX SYSTEMS
DEVELOPMENT OF A MULTIAGENT BASED METHODOLOGY FOR COMPLEX SYSTEMS
 
Patterns Overview
Patterns OverviewPatterns Overview
Patterns Overview
 
Model versioning in context of living
Model versioning in context of livingModel versioning in context of living
Model versioning in context of living
 
Design Pattern
Design PatternDesign Pattern
Design Pattern
 
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESA COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
 
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLESA COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
A COMPARATIVE ANALYSIS ON SOFTWARE ARCHITECTURE STYLES
 
Object oriented analysis and design unit- iii
Object oriented analysis and design unit- iiiObject oriented analysis and design unit- iii
Object oriented analysis and design unit- iii
 
Generation of Automatic Code using Design Patterns
Generation of Automatic Code using Design PatternsGeneration of Automatic Code using Design Patterns
Generation of Automatic Code using Design Patterns
 
M azhar
M azharM azhar
M azhar
 
Technical report jada
Technical report jadaTechnical report jada
Technical report jada
 
Patterns of Interaction Description Including Aspects of Constraints
Patterns of Interaction Description Including Aspects of ConstraintsPatterns of Interaction Description Including Aspects of Constraints
Patterns of Interaction Description Including Aspects of Constraints
 
Mit3033 software architecture
Mit3033  software architectureMit3033  software architecture
Mit3033 software architecture
 
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
 
01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf01. Birta L. G., Arbez G. - Modelling and Simulation_  (2007).pdf
01. Birta L. G., Arbez G. - Modelling and Simulation_ (2007).pdf
 
Sentiment analysis in SemEval: a review of sentiment identification approaches
Sentiment analysis in SemEval: a review of sentiment identification approachesSentiment analysis in SemEval: a review of sentiment identification approaches
Sentiment analysis in SemEval: a review of sentiment identification approaches
 
Lecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.docLecture-_-5-_SDA_software design and architecture.doc
Lecture-_-5-_SDA_software design and architecture.doc
 
Modest Formalization of Software Design Patterns
Modest Formalization of Software Design PatternsModest Formalization of Software Design Patterns
Modest Formalization of Software Design Patterns
 

Último

Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhikauryashika82
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingTeacherCyreneCayanan
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 

Último (20)

Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 

Chapter 5 design patterns for mas

  • 1. Chapter 5 Design Patterns for Multi-agent Systems: A Systematic Literature Review Joanna Juziuk, DannyWeyns, and Tom Holvoet
  • 2. Introduction  Design patterns allow reuse of best practices and avoiding worst.  Design patterns improve software’s quality properties, like maintainability and reusability, and speed up the development time.  These factors are crucial in practice, especially for project managers, since improving them reduces costs.  During the last decade, the multi-agent system (MAS) community has put significant efforts in documenting design patterns.  Despite the substantial body of work, design patterns for MAS have not received the attention they deserve, neither in the agent-oriented software community nor among software practitioners.  One of the main reasons why mainstream software developers do not benefit from MAS patterns is that they simply do not know them.
  • 3. Pattern anatomy -The first layer embodies a recurring problem. A problem arises in a situation known as a context—i.e., the second layer. The third layer is the solution, i.e., a well-known and proven solution to a problem in a context
  • 4. Design Pattern  Design patterns are meant to be generic, so their application and implementation may vary.  The Gang of Four (GoF):  proposed the first classification of software design patterns.  This pattern catalog uses a two dimensional classification based on scope and purpose.  The catalog contains 23 design patterns that were previously undocumented.  Buschman’s classification is another well-known organization of software design patterns.:  This catalog promotes functionality and structural principles and uses also a classification along two dimensions: granularity and purpose.  Other popular catalogs are:  Fowler’s pattern catalog,  J2EE blueprints for large scale enterprise applications  Schmidt’s catalog that documents design patterns for concurrency  In conclusion, design patterns are considered particularly useful assets in engineering complex systems, and various pattern catalogs have been documented.
  • 5. Research Questions  RQ1: How are the patterns documented and what pattern templates are used?  RQ2: How are the design patterns interconnected?  RQ3: For what types of systems have the design patterns been applied?  RQ4: How can the design patterns be classified?
  • 6. Standard Templates  There is a need for standard templates to document patterns for MAS.  Such template should clearly define the semantics of the different paragraphs.  We suggest to start from a state of the art pattern template and include at least the following paragraphs:  Name, Problem, Solution, Context, Forces, Consequences, and Related Patterns.  The first four paragraphs are essential as any design pattern should document a solution to recurring problem in a given context.  Context and forces should be also included as these aspects are essential for software engineers to select proper design patterns and it also supports learning of the patterns.  Documenting consequences is crucial to understand the design trade-offs implied by patterns.
  • 7. RQ1: How are the patterns documented and what pattern templates are used?  Paragraphs in Pattern Documentation:  Context/Applicability, Problem/Intent/Purpose, Examples/Known Uses or Participants/Entities.  Several of these paragraphs are generally considered as essential for documenting design patterns, especially  Problem, Context, and Solution.  Other paragraphs are rare and rather unusual, for example,  Technical Issues, Reasoning capabilities, Temporal context, and Configuration.
  • 8.
  • 9. RQ2: How are the design patterns interconnected? 1. A first cluster contains patterns that are inspired by object- oriented pattern catalogs, such as the GoF catalog (Proxy, Mediator), and by the concurrency patterns of (Broker, Active Object). 2. A second cluster is built around bio-inspired concepts such as pheromones, ants, and stigmergy. This cluster includes recent patterns related to self-organization and adaptive behavior. 3. A third cluster groups patterns that are related to the mobile agents and Aglets patterns. 4. Another cluster groups protocols related to FIPA protocols. 5. Several of these closed clusters contain domain specific patterns, for example, patterns for military simulations, e- commerce, intelligent manufacturing, and security.
  • 11. RQ3: For what types of systems have the design patterns been applied?  Overall, there is not a dominant type of system for which MAS design patterns have been used.  Figure 5.7 shows that 59% of the patterns are domain- independent, while 41% of the patterns focus on more specific uses.  For industrial applications, the main reported subdomains are process control and manufacturing (6%) and traffic and transportation (5%).  For commercial applications, we identified information management (4%) and electronic commerce (3%).  We found no patterns applied in the entertainment domain.  Nevertheless, we observe that the design patterns for MAS have been used for a diversity of application domains, which reveals their high potential for software practitioners.
  • 13. RQ4: How Can the Design Patterns Be Classified?  The objective of classifying design patterns for MAS is to provide an intellectual graspable overview of the huge space of existing patterns.  The classification offers engineers a general picture of the pattern space of MAS, and helps those who are not familiar with the domain to get an easy jump-start to understand the pattern space.  Several researchers have proposed classifications of design patterns for MAS, but these classifications are either bound to a specific catalog of patterns, or to an development methodology.  The classification presented in this paper covers the full space of patterns for MAS as document at the time of writing.
  • 14. 4 dimensions of patterns for MAS:  We derived the data for the classification resulted from Catalog pattern categories and Short pattern description.  Based on the analysis of the data, we identified four dimensions of patterns for MAS:  inspiration  abstraction  focus  granularity  Figure 5.8 shows a graphical overview of the dimensions, illustrated with example patterns.
  • 15. Classification of patterns for MAS with example patterns
  • 16. Inspiration  Metaphors and analogies help in understanding complex systems.  The inspiration dimension has four categories that provide intuitive domains from which patterns are derived.  nature-inspired patterns are gradient fields that is inspired by the fields in nature, and delegate ant MAS that is inspired by behavior of social insects.  society-inspired patterns are emergent society and holonic society that get their inspiration from the way societies emerge and structure themselves.  human-inspired patterns are receptionist and gossip.  locker and blackboard are example of patterns that get there inspiration from artifacts in our environment.
  • 17. Abstraction  The abstraction dimension classifies patterns either as conceptual or concrete.  Both these main categories are further refined in subcategories that refer to stages in the software life cycle where the patterns can be used.  Define actors and pyramid are examples of patterns that are useful in early phases in the life cycle, while broker and synchronizer can be applied in detailed design and the implementation phase.
  • 18. Focus  The focus dimension has two categories:  structural  behavioral  Structural patterns are useful to deal with the decomposition of a system  Examples of structural patterns are reflective blackboard and joint venture, the former focusing a particular coordination structure for an agent system, the latter focusing on the way a community of agents is organized.  behavior patterns are useful to deal with interaction aspects.  Examples of behavioral patterns are market maker, negotiating agents, and conversation.  These patterns provide different approaches to support interactions among agents.
  • 19. Granularity  Finally, the granularity dimension refers to the scope of the patterns, that is:  the system  parts of the system  Hierarchical contracting and emergent society are examples of patterns that apply to a MAS as a whole.  Messenger and virtual environment are patterns that apply to parts of a MAS.  Intention and InteRRaP are patterns that support the design of individual agents.
  • 20. Conclusions  The objective of this literature study was to summarize existing design patterns for MAS, to make this knowledge accessible to practitioners.  We suggest to start from a state of the art pattern template and include at least the following paragraphs:  Name, Problem, Solution, Context, Forces, Consequences, and Related Patterns.  The data shows that the patterns have a wide range of applications.  Nevertheless, although MAS are suggested to be primary candidates to design emerging domains such as cloud computing and smart grids, no applications of patterns for these systems are reported.  This classification of patterns allows engineers to better browse the pattern space and helps those who are new to the field to better find their way through the myriad of patterns.
  • 21. Future Recommendations  Other opportunities for future research are identification and documentation of anti-patterns for MAS, that is, design patterns that have proven to be unsuccessful, evaluation of patterns using standard frameworks for evaluating design patterns, and development of CASE tools to support engineers with applying patterns during system development.