Design Patterns for Self-organising Systems
- ISSN: 03029743
- ISBN: 9783540752530
- DOI: 10.1007/978-3-540-75254-7_13
Abstract
Natural systems are regarded as rich sources of inspiration for engineering artificial systems, particularly when adopting the multiagent system (MAS) paradigm. To promote a systematic reuse of mechanisms featured in self-organising systems, we analyse a selection of design patterns devised from the self-organisation literature. Starting from our reference MAS metamodel, we propose a pattern scheme that reflects the peculiarities of self-organising systems. Then, we provide a complete characterisation of each pattern, with particular attention to the problem description, the solution with respect to our metamodel, the natural systems which have inspired the pattern and known applications.
Design Patterns for Self-organising Systems
Luca Gardelli, Mirko Viroli, and Andrea Omicini
Alma Mater Studiorum–Universita` di Bologna
Via Venezia 52 - 47023 Cesena, Italy
{luca.gardelli,mirko.viroli,andrea.omicini}@unibo.it
Abstract. Natural systems are regarded as rich sources of inspiration
for engineering artificial systems, particularly when adopting the multia-
gent system (MAS) paradigm. To promote a systematic reuse of mecha-
nisms featured in self-organising systems, we analyse a selection of design
patterns devised from the self-organisation literature. Starting from our
reference MAS metamodel, we propose a pattern scheme that reflects
the peculiarities of self-organising systems. Then, we provide a complete
characterisation of each pattern, with particular attention to the prob-
lem description, the solution with respect to our metamodel, the natural
systems which have inspired the pattern and known applications.
1 Introduction
Self-organisation is a very compelling approach to the engineering of complex
systems because of the many interesting properties, including adaptivity and
robustness. Although, forward engineering of self-organising systems, i.e. finding
the individual behaviour to meet the desired global dynamics, rapidly becomes
unfeasible as the complexity of the system increases. Hence, it is becoming com-
mon practice to exploit existing models of natural systems, particularly social
insects: these models provide a characterisation of global dynamics with respect
to individual actions and environmental parameters. To ease this process, we
promote the use and development – since few works exist about this topic [1,2]
– of design patterns for self-organising systems to establish a mapping between
artificial systems problems and natural systems solutions. First introduced in
1977 by Alexander in architecture [3], the concept of design pattern later gained
wide consensus in computer science with the object-oriented paradigm [4]. A
design pattern provides a reusable solution to a recurrent problem in a specific
domain: it is worth noting that a pattern does not describe an actual design,
rather it encodes an abstract model of the solution using specific entities of the
paradigm in use. Multiagent system (MAS) researchers synthesised patterns for
the agent paradigm, providing solutions related to resource access, mobility and
basic social skills [5,6,7]. The use of design patterns offers several advantages,
such as, reducing design-time by exploiting off-the-shelf solutions, and promot-
ing collaboration by providing a shared language. Specifically, in the case of
self-organising systems, patterns play a key role in driving the designer choices
among the chaotic behaviours displayed by complex systems.
H.-D. Burkhard et al. (Eds.): CEEMAS 2007, LNAI 4696, pp. 123–132, 2007.
c
© Springer-Verlag Berlin Heidelberg 2007
To promote the acceptance of new patterns, as well as to reduce ambiguity, it
is necessary to frame a pattern with respect to a shared scheme, ensuring a good
degree of coherence of the whole pattern catalogue. For example, patterns for the
object-oriented paradigm are described according to the scheme provided in [4]:
although, as pointed out in [8,7], since the agent paradigm cannot be effectively
characterised using only object-oriented abstractions, patterns for MAS should
be described using specific schemata. In particular, a candidate scheme should
reflect the peculiarities of the target MAS metamodel: to this purpose, several
pattern classification and schemata have been proposed [8,9]. However, pattern
schemata for MAS, like the one in [8], do not adequately capture the peculiari-
ties of self-organising systems, namely, which are the forces responsible for the
feedback loop, and which notion of locality/topology is needed. Furthermore, to
our knowledge, no specific pattern scheme has been proposed to deal with the
previous aspects, and the few existing works rely on existing MAS schemata.
The contribution of this article is twofold: we extend current pattern schemata
to better represent self-organising MAS, and characterise some patterns with re-
spect to our MAS metamodel. The remainder of the article is structured as
follows: Section 2 describes our MAS metamodel based on agents and environ-
mental resources, i.e. artifacts. Section 3 describes the reference pattern scheme,
then Section 4 analyses each pattern, namely, Collective Sort, Evaporation, Ag-
gregation and Diffusion. Section 5 concludes by providing final remarks and
listing future research directions.
2 Our Reference MAS Metamodel
When modelling natural systems and developing artificial ones, the MAS para-
digm is the best choice since it provides the suitable abstractions for modelling
and relating the entities. Although being recognised as unique, the MAS para-
digm is captured from different perspectives in different metamodels emphasising
specific features. We adopt the agents & artifacts metamodel (A&A), where a
MAS is modelled in terms of two fundamental abstractions: agents and artifacts
[10]. Agents are autonomous pro-active entities encapsulating control, driven by
their internal goal/task. When developing a MAS, sometimes entities do not re-
quire neither autonomy nor pro-activity to be correctly characterised. Artifacts
are passive, reactive entities providing services and functionalities to be exploited
by agents through a usage interface. It is worth noting that artifacts typically
realise those behaviours that cannot or do not require to be characterised as goal
oriented [10]. Artifacts mediate agents interactions and support coordination in
social activities and embody the portion of the environment that can be designed
and controlled to support MAS activities [11,12].
Based on this metamodel, we recognise a recurrent solution when designing
self-organising MAS: the solution depicted in Figure 1 is an architectural pat-
tern. In a typical self-organisation scenario, agents perturb the environment, and
while the environment evolves to compensate the perturbation, agents percep-
tion is affected, creating a feedback loop able to sustain the self-organisation
Sign up today - FREE
Mendeley saves you time finding and organizing research. Learn more
- All your research in one place
- Add and import papers easily
- Access it anywhere, anytime


