3.3 Decentralized Coordination
4.1.3 Communication
From a chemical point of view, infochemicals are chemical compounds, which can range from highly volatile to non-volatile. Most compounds are of relatively low molecular weight and many are derivatives of fatty acids or terpenes. Slight genetic, dietary, and environmental differences make it improbable that any two organisms produce the same blend of volatile organic compounds. This probably accounts for the fact that many animals are able to identify their young or members of their own group in large assemblages of other individuals [RL68].
4.1.3.1 Production and Release
The production of an infochemical by living organisms is regulated through hormones and signal transduction pathways. In contrast to hormones, which are produced in the endocrine glands, infochemicals are produced and discharged from exocrine glands. They are either secreted onto a surface area (e. g. for trial marking) or in most cases released into the surrounding air forming a cloud of vapor about the releasing organism [BW63]. In a few cases, infochemicals are also released into aqueous systems.
4.1.3.2 Transmission
In general, the distance through which an infochemical may transmit information is a function of the volatility of the compound, its stability in air, its rate of diffusion, olfactory efficiency of the receiver, and wind currents [RL68]. Bossert and Wilson [BW63] have derived a mathematical model, which predicts the diffusion behavior of a volatile chemical in still air on the basis of these parameters. The concentration of a chemical at various distances from a point of release may be calculated as a function of time by the following equation:
U(d, t) = W
2Dπd· erf c( d
(4Dt)0,5) (4.1)
where
• U is the concentration of the chemical measured in molecules/cm3
• W is the emission rate of vapor from the source in molecules/sec • D is the diffusion coefficient of the chemical in air in cm2/sec
• d is the distance from the emission source in cm • t is the time from the beginning of emission in seconds • erf c is the complementary error function
Diffusion coefficients for most airborne pheromones are between 10−1 and 10−2 cm2/sec, while the same compounds have diffusion coefficients in the range of 10−5
cm2/sec in water [LR71]. Thus, long-distance communication of a mile or more must
be mediated by the use of stable compounds with high vapor pressures. 4.1.3.3 Perception
Infochemical perception is usually considered to be an olfactory process, although in some cases it may be gustatory, for example with infochemicals, which are trans- mitted in aqueous media or which are non-volatile [RL68]. The perception of an infochemical then triggers an immediate behavioral response (releaser effect) or a delayed physiological response (primer effect), as described in Subsection4.1.2. How- ever, a behavioral response requires the concentration of an infochemical to be high enough. This concentration, in molecules/cm3, is called the behavioral threshold
concentration K [BW63]. 4.1.4 Advantages
As already mentioned at the beginning of this chapter, living organisms interact by relying on different mechanisms of communication, more specifically visual, tac- tile, auditory, or chemical stimuli. Although chemical stimuli on their journey to a receiver have to pass through a highly variable environment affected by wind, tem- perature, moisture, and physical obstructions such as plants, animals, and rocks, the widespread use of chemical stimuli to interact with conspecifics as well as het- erospecifics, i. e. members of different species, is indicative of the many advantages of this way of information conveyance (cf. [Dot86]):
1. It is obvious that infochemicals can be used in situations where visual or auditory signals are absent or difficult to discern, e. g. at night, in dark burrows, or near loud sound sources.
4.1 Principles 95
2. Infochemicals can be easily distributed in both space and time, making them uniquely suited to provide information about ’territoriality’ or space occu- pancy. Thus, the distribution, concentration, and qualitative aspects of e. g. scent marks presumably provide conspecifics with key information about the resident(s) of an area, such as their stamina, physical condition, physical size, reproductive state(s), mobility, energy level(s), motivational tendencies, group constituency, and group size. The temporal aspects of infochemicals allow for the sending of ’time-coded’ messages, such as the period of time since a given area has been visited or occupied, or specific information about the reproduc- tive state.
3. Relative to other sorts of sensory stimuli, infochemicals can remain in the en- vironment for rather long periods of time without jeopardizing the immediate safety of the signaling individual. If an animal released a continuous noise or visual signal in a manner analogous to leaving a long-lasting infochemical, not only would an inordinate amount of energy be expended, but predators would have a field day (literally) in locating it. This long-lasting property of infochemicals allows a dominant male, for example, to make his odor more or less continuously present in the social environment.
4. The sender and receiver need not be in close proximity for the communication to take place. This permits a resident to communicate to an intruder or ri- val that a given space is occupied, or that he or she is reproductively active, even though they are outside the range of hearing or sight. Such communi- cation minimizes the physical harm, expenditure of energy, and exposure to predation, which can result from direct physical encounters or inappropriately directed mating advances.
These advantages are also represented by the comparison of the characteristics of different modes of communication (see Table4.1, according to [Lew84]).
Feature of mode Type of signal
Visual Tactile Auditory Chemical
Range Medium Short Long Long
Rate of change of signal Fast Fast Fast Slow
Ability to circumvent obstacles Poor Poor Good Good
Locatability High High Medium Variable
Energetic cost Low Low High Low
4.2 Coordination Model
In order to employ the aforementioned beneficial properties of infochemical-based coordination for the efficient decentralized coordination of agents in self-organizing emergent MASs, in this section we formally capture the general biological princi- ples behind infochemical-based coordination in an decentralized coordination model. Such a coordination model represents a design artifact and will help to simplify the design of efficient self-organizing emergent MAS solutions. Please note that the purpose of biologically-inspired solutions in general is not to copy the exact natu- ral functionality, but rather to utilize the principles of the biological paradigms (cf. e. g. [OZ05]), which is why we make some abstractions in the specification of the infochemical-based coordination model compared to the biological pendant.
As described in Section 3.2, a coordination model for MASs provides a formal framework in which the interaction of the agents can be expressed. It is composed of the coordination elements (coordinables), the coordination media, and the co- ordination laws. The coordination elements obviously are the agents themselves, whereas the coordination media provides abstraction for enabling and controlling the interactions among the agents. The coordination laws define how the events are handled by the coordination media when agents interact.
4.2.1 Coordination Elements
In the infochemical-based coordination model, an agent reflects a living organism, able to interact indirectly by means of (digital) infochemicals.
Definition 4.1 (Infochemical)
An infochemical ι is defined as a quintuplet
ι= (γ, γthresh, δ, , ψ)
where
• γ ∈ < is the concentration of ι
• γthresh ∈ < is the threshold concentration of ι
• δ ∈ < is the diffusion coefficient of ι • is the emitter of ι
• ψ are individual information encapsulated by ι
For the definition of a digital infochemical, we explicitly decided not to reuse the symbols used in the natural context (see Subsection 4.1.3.2), in order to prevent unnecessary confusion due to different measuring units or calculations. Thus, γ reflects the dynamically changing concentration of diffusing biological infochemicals,
4.2 Coordination Model 97
referred to a U in the natural context (see Subsection 4.1.3.2). γthresh reflects
the behavioral threshold concentration of living organisms (K) regarding specific infochemical types. Admittedly, according to the object-oriented paradigm, this attribute thus should be ideally modeled as an attribute of an agent itself. However, whereas in biology the diffusion of infochemicals proceeds up to the last molecule, this has no practical effect in the computational world, in particular not from an object-oriented perspective. Thus, if the current concentration of an infochemical falls below this threshold, i. e. γ < γthresh, it will not be propagated any further
but removed immediately. δ reflects the chemical diffusion coefficient (D) and thus allows for a very fine-tuned propagation radius and evaporation time specific to each infochemical. reflects the biological fact of an infochemical to reveal information on the emitter. ψ reflects the biological role of an infochemical as a dynamic information carrier and depends on the used coordination mechanism respectively the application domain the solution has been designed for.
A set of infochemicals is denoted as I = {ι1, . . . , ιn}. We furthermore adopt the
terminology of infochemicals (see Subsection4.1.1), i. e. a pheromone is denoted as ϕ ∈ P with P ⊂ I, an allomone is denoted as α ∈ A with A ⊂ I, a kairomone is denoted as κ ∈ K with K ⊂ I, and a synomone is denoted as ς ∈ S with S ⊂ I. In contrast to the subcategories of allelochemicals, we do not explicitly model each subcategory of pheromones, i. e. (+,-), (-,+), (+,+) pheromones, but assume these subcategories to be included in P. An agent, which is able to emit and perceive infochemicals, is defined as an infochemical-processing agent, extending the basic definition of an agent (see Definition2.2).
Definition 4.2 (Infochemical-processing agent)
An infochemical-processing agent Aginf is defined as an extension of an agent Ag
such that
Aginf = (Sit, Datinf, Actinf, fAginf, θ, emr)
where
• Sit is the set of situations Aginf can be in
• Datinf is the extension of Dat with infochemicals
• Actinf is the extension of Act with the actions
– emit that emits an infochemical to the current locations of Aginf
– perceive that perceives all infochemicals stored at the current location of Aginf
• fAginf is the extension of fAg for processing infochemicals
• emr is the emission rate (W in the natural context), by which Aginf regularly
emits infochemicals
The explicit extension of an agent Ag by a type allows for the precise coordination of homogeneous and heterogeneous types of agents within the same coordination media and mechanism. The types may be hierarchically composed to higher types, reflecting the taxonomic ranks in biology, as well as being linked to other types, reflecting interspecific relationships in biology.
4.2.2 Coordination Media
In contrast to biology, in this formal coordination model we assume space to be finite as well as discrete and time to be infinite as well as discrete (t ∈ N). Instead of ’point in time’, we will furthermore use the more specific term iteration, indicating a discrete succession of points of time or events that can be numbered starting from 0 respectively 1. Thus, an iteration represents a synchronized point in time. This does not limit the applicability of the coordination model, because a succession of iterations can easily be constructed from a conventional time measure, e. g. by transforming time information to milliseconds since the start of the system.
The coordination media (space) in infochemical-based coordination is represented by an infochemical environment, which enhances the execution infrastructure of the agents, providing them with an active environment where they may share informa- tion.
Definition 4.3 (Infochemical Environment) An infochemical environment Envinf is defined as
Envinf = (L, C)
where
• L = {l1, . . . , ln} is a set of discrete locations
• C ⊆ {(li, lj)|li, lj ∈ L ∧ i 6= j} is a set of directed connections
By this definition, Envinf introduces a spatial structure to the MAS in which the
agents may emit and perceive digital infochemicals at discrete locations. From the viewpoint of a location, a directed connection can be inbound or outbound.
Definition 4.4 (Inbound connection)
Let li, lj ∈ L and (lj, li) ∈ C. Then (lj, li) is called inbound connection of li.
Definition 4.5 (Outbound connection)
4.2 Coordination Model 99
Consequently, the set {(lj, li)|(lj, li) is inbound connection of li} is called inbound
connections of li, whereas the set {(li, lj)|(li, lj) is outbound connection of li} is called
outbound connections of li. Furthermore, lj ∈ L is called inbound neighbor of li ∈ L,
if ∃(lj, li) ∈ C : ((lj, li) is inbound connection of li). lj ∈ L is called outbound neigh-
bor of li ∈ L, if ∃(li, lj) ∈ C : ((li, lj) is outbound connection of li).
In order to store infochemicals at locations, while maintaining the information on the direction the infochemical was propagated from, an infochemical buffer is associated with each connection. An infochemical buffer is a data structure, able to store infochemicals of different types.
4.2.3 Coordination Laws
The action emit(ι) ∈ ActinfAg performed by an agent Ag emits an infochemical ι at the current location of the agent into the infochemical environment Envinf. The
propagation of ι in Envinf, in more detail between two locations in L, occurs based
on a propagation function (see Definition4.6). Definition 4.6 (Propagation function)
prop: I, L, L → I
The propagation function is only defined abstractly in the coordination model and has to be instantiated by a concrete coordination mechanism. The instantiation thereby has to consider ι’s current concentration γι, its threshold concentration
γthresh, its diffusion coefficient δι, as well as optionally an propagation factor pf and
a propagation rate pr defined for the type of ι. Thereby, pf ∈ [0; 1] specifies the fraction of ι that is propagated equally among all the neighbors of a location. pr specifies the rate (counted in iterations) by which ι is propagated. The factor by which the concentration changes due to a propagation between two locations depends on the used coordination mechanism. However, ι has only a chance of being stored at a neighboring location, if its concentration is still above its threshold concentration, i. e. γι ≥ γιthresh.
Assuming that the concentration of ι is still above its threshold concentration, an aggregation function (see Definition 4.7) defines the storing of ι at a location in L in consideration of already present infochemicals. Again, the instantiation of this abstract aggregation function depends on a concrete coordination mechanism as well.
Definition 4.7 (Aggregation function)
aggr: I, I, L → I
An evaporation function (see Definition 4.8) defines the evaporation of ι stored at an location in L. Its instantiation similarly depends on a concrete coordination mechanism and has to consider γι, γthresh, δι, as well as optionally an evaporation
factor ef and an evaporation rate er defined for the type of ι. ef ∈ [0; 1] specifies the fraction of ι that remains after an evaporation. er specifies the rate (counted in iterations) by which ι is evaporated.
Definition 4.8 (Evaporation function) evap: I, L → I
Any concrete instantiations of the above three functions will depend on the appli- cation domain at hand as well as the solution to realize. This allows for functions that may model the biological transmission of infochemicals (see Equation 4.1) as well as any other propagation, aggregation, and evaporation behavior. The action perceive ∈ ActinfAg performed by an agent Aginf provides the agent with a view of
all infochemicals stored at the current location of Ag. However, the infochemicals remain stored at the location and are not influenced by this action. In particular, an agent Aginf is not able to remove any infochemicals from Envinf.
4.3 Design Pattern
For a more systematical engineering of efficient self-organizing emergent MASs based on the principles of infochemical coordination (see Section4.1) and the adopted co- ordination model (see Section 4.2) it is important to capture both in a way that is more intuitively to software engineers and easily transferable for autonomous solu- tions to their problems. In software engineering, this is mostly done by structured design patterns that can be instantiated and used by the engineers according to the specific needs of their problems. Patterns in general were first introduced by Alexander [Ale77] for architectural design in 1977. The concept of design patterns in computer science has become popular in 1994 with the object-oriented paradigm [GHJV94]. In its most general sense, a design pattern is a ”recurring solution to a standard problem” [SJF96]. The use of design patterns offers several advantages such as reducing design-time by exploiting off-the-shelf solutions, promoting collab- oration by providing a shared ontology, and lowering the number of errors in the development, to name a few.
Design patterns have also found their way into the engineering of MASs. Early contributions in this area were mostly concerned with the life-cycle of agents, pro- viding solutions related to resource access, mobility, and basic social skills, see e. g. [AL98, KKPS98,DWK01], but primarily did not focus on the engineering of self- organizing emergent MASs. However, after defining a first taxonomy for various self-* properties in self-organizing emergent systems [DH07a], De Wolf and Holvoet [DH07b,DH06] started to describe design patterns also for decentralized coordina- tion mechanisms such as market-based coordination (see Subsection3.3.1), tag-based coordination (see Subsection3.3.3), token-based coordination (see Subsection3.3.4), pheromone-based coordination (see Subsection 3.3.6), or field-based coordination (see Subsection 3.3.7). On a higher level of granularity, Gardelli et al. [GVO07]
4.3 Design Pattern 101
have described basic patterns common to various biological systems, such as repli- cation, collective sort, evaporation, aggregation, and diffusion. On a similar level of abstraction, Babaoglu et al. [BCD+06] have described further patterns of biologi- cal coordination, including plain diffusion, replication, stigmergy, chemotaxis, and reaction-diffusion. A proper combination of some of these patterns may produce more complex patterns for self-organizing emergent systems, e. g. in the case of stig- mergy the basic patterns are evaporation, aggregation, and diffusion (propagation). In [GNO+08] a so-called organic design pattern3 is presented for self-* systems that
consist of a set of independent agents interacting with each other and where recon- figuration/adaptation can be expressed as a reallocation of roles.
An important issue that has to be taken into consideration for the capturing of the principles of infochemical coordination in a design pattern is, however, that only a very few people are software engineers and biologists together, aware of the complex meanings of the different infochemical types that may be used for an effec- tive and efficient coordination. Thus, to promote the usage of the design pattern, again meaningful abstractions have to be made that allow on the one hand of course biologically-inspired instantiations of this pattern, but on the other hand also in- stantiations apart from biological background knowledge using neutral terms.
Although there exist different formats and structures for describing design pat- terns (see e. g. [GHJV94, Lin03, CSC04]), it is generally agreed that the following sections are mandatory [MD97]: A pattern name, providing a clear, distinguishable identifier for the pattern. A context section, describing a situation when the pattern would apply. A problem section, giving a precise statement of the problem to be solved, in this case several problem characteristics. A forces section, describing items that influence the decision for the pattern, indicating trade-offs that might be made. A solution section, describing how the problem is being solved, balancing the forces. For a more detailed description, we additionally add three optional sections: A ratio- nale section, explaining why the solution is appropriate for the problem along with its achieved (self-*) properties. An examples/known uses section, presenting a non- exhaustive list of examples/references that illustrate the application of the pattern. A related patterns section, mentioning other decentralized coordination mechanisms that may be also of interest for the solution of the problem. Because this format is well known in software engineering, e. g. [GHJV94] uses a similar format, the usage of the pattern is promoted.
4.3.1 Context
The problem to be solved demands an autonomous solution that requires the de- centralized coordination of multiple homogeneous and/or heterogeneous, more or less autonomous elements in order to achieve a common and globally coherent goal. The elements are situated in a physical or logical environment, which can be ex- tended with an appropriate infrastructure, whereas the environment structure may
3Although labeled as pattern, the organic design pattern is rather a conceptual model, as a struc-
represent a part of or even the entire problem to be solved. Some kind of spatial movement of the elements may be required or information about the spatial location of the elements has to be exchanged. The only possible way to coordinate are local estimates of global information. The desired solution has to be robust, flexible, and