Formal specification of an immune based agent architecture

18
Formal Specification of an Immune Based Agent Architecture Vincent Hilaire a , Fabrice Lauri a , Pablo Gruer a , Abderrafia Koukam a , Sebastian Rodriguez a,b a Systems and Transportations laboratory, UTBM, 90010 Belfort Cedex FRANCE b Centro de Invesitgaci´ on de Teconolog´ ıas Avanzadas de Tucum´ an, ARGENTINA Abstract The natural immune system is a subject of great research interests because it provides powerful and flexible information processing capability as a decentra- lized intelligent system. The immune system constitutes an excellent model of adaptive cooperation at the local level and of emergent behaviour at the global level. These concepts can be applied in the Multi-Agent Systems field where au- tonomous agents interact in order to solve a common goal. There exists several theories to explain immunological phenomena and software models to simulate various components in the immune system. This paper presents a formal spe- cification of the idiotypic network theory viewed as an agent architecture. The specification gives a precise and non ambiguous description of this architecture which is validated through the automatic generation of traces and interesting properties are proven. This specification constitutes a starting point for un- derstanding, reuse and implementations of this architecture. The approach is illustrated with the robot soccer simulation example. 1. Introduction The natural immune system is a subject of great research interests because it provides powerful and flexible information processing capability as a decentra- lized intelligent system. The immune system constitutes an excellent model of adaptive cooperation at the local level and of emergent behaviour at the global level. These concepts can be applied in the Multi-Agent Systems field where au- tonomous agents interact in order to solve a common goal. There exists several theories to explain immunological phenomena and software models to simulate various components in the immune system [1]. These Artificial Immune Systems (AIS from hereon) are typically defined in an informal way and applied in an ad-hoc fashion. As stated in [2, 3, 4] the AIS do- main needs foundational works in order to clearly define models and frameworks that allow understanding and exploitation. The need is even more critical in the case of idiotypic networks chosen in this paper as it is a controversial subject even for the biologists [5]. Consequently, system designers have been unable to Preprint submitted to Elsevier 28 septembre 2009

Transcript of Formal specification of an immune based agent architecture

Formal Specification of an Immune Based AgentArchitecture

Vincent Hilairea, Fabrice Lauria, Pablo Gruera, Abderrafia Koukama,Sebastian Rodrigueza,b

aSystems and Transportations laboratory, UTBM, 90010 Belfort Cedex FRANCEbCentro de Invesitgacion de Teconologıas Avanzadas de Tucuman, ARGENTINA

Abstract

The natural immune system is a subject of great research interests because itprovides powerful and flexible information processing capability as a decentra-lized intelligent system. The immune system constitutes an excellent model ofadaptive cooperation at the local level and of emergent behaviour at the globallevel. These concepts can be applied in the Multi-Agent Systems field where au-tonomous agents interact in order to solve a common goal. There exists severaltheories to explain immunological phenomena and software models to simulatevarious components in the immune system. This paper presents a formal spe-cification of the idiotypic network theory viewed as an agent architecture. Thespecification gives a precise and non ambiguous description of this architecturewhich is validated through the automatic generation of traces and interestingproperties are proven. This specification constitutes a starting point for un-derstanding, reuse and implementations of this architecture. The approach isillustrated with the robot soccer simulation example.

1. Introduction

The natural immune system is a subject of great research interests because itprovides powerful and flexible information processing capability as a decentra-lized intelligent system. The immune system constitutes an excellent model ofadaptive cooperation at the local level and of emergent behaviour at the globallevel. These concepts can be applied in the Multi-Agent Systems field where au-tonomous agents interact in order to solve a common goal. There exists severaltheories to explain immunological phenomena and software models to simulatevarious components in the immune system [1].These Artificial Immune Systems (AIS from hereon) are typically defined in aninformal way and applied in an ad-hoc fashion. As stated in [2, 3, 4] the AIS do-main needs foundational works in order to clearly define models and frameworksthat allow understanding and exploitation. The need is even more critical in thecase of idiotypic networks chosen in this paper as it is a controversial subjecteven for the biologists [5]. Consequently, system designers have been unable to

Preprint submitted to Elsevier 28 septembre 2009

fully exploit the existing models commonalities and specialise or reuse them forspecific problems.The contribution of this paper is to propose a formal specification approach ofan idiotypic network based architecture based upon the composition of Object-Z and statecharts. This specification allows a precise and non ambiguous des-cription of the architecture. Moreover, using software tools that enable modelchecking and theorem proving one can gain understanding on the architecturebehaviour. Such a specification allows to fully exploit the idiotypic network mo-dels and facilitate its reuse. The use of the presented architecture is illustratedon a robot soccer example.The basic components of the immune system are macrophages, antibodies andlymphocytes. Lymphocytes are the cells maturing in the bone marrow and pro-duces antibodies from its surface. The antibody recognises and binds to specifictype of antigens (foreign substances invading a human). The key portion of an-tigen that is recognised by the antibody is called epitope, which is the antigendeterminant. Paratope is the portion of antibody that corresponds to a specifictype of antigens. Once an antibody combines an antigen via their epitope theelimination process can begin. Recent studies in immunology have clarified thateach type of antibody also has its own antigenic determinant, called an idiotope.This means that an antibody is recognised as an antigen by another antibody[6]. Based on this fact, Jerne proposed the concept of the immune network, oridiotypic network [7], which states that antibodies and lymphocytes are not iso-lated, but they are communicating with each other. The idiotope of an antibodyis recognised by another antibody as an antigen. This network, called idiotypicnetwork, is formed on the basis of idiotope recognition with the stimulation andsuppression chains among antibodies. The approach presented in this paper isbased on this interpretation of the immune system.This paper is organised as follows : section 2 presents the principles of ImmuneSystem and AIS. Specifically the background concerning an architecture inspiredby idiotypic networks is presented. Section 3 presents our formal specificationnotation and the specification of the architecture its analysis and an example.Section 4 presents some related works. Eventually, section 5 concludes.

2. AIS background

2.1. Biological inspirationFrom a computing viewpoint, the human immune system can be considered

as a parallel, distributed system that has the capacity to control a complex sys-tem over time [6]. The human immune system is composed of several layers ofdefence among them : physical (e.g skin), innate and adaptive. We are specifi-cally interested in the adaptive part of the human immune system. The adaptivesystem improves its response to a specific pathogen with each exposure. There-fore, the adaptive system has three key functionnalities : recognition, adaptationand memory. The adaptive immune system can be divided into two major sec-tions : humoral immune system and cellular immune system. The former acts

2

idiotope

epitope

Ab1:Antibody

Ag1:Antigen

Ag2:Antigen

Ag3:Antigen

paratope

Fig. 1: Antibody and antigen recognition and binding mechanism

against antigens by means of proteins called immunoglobulins or antibodiesbuilt by a specific sort of cells : B-cells. The latter, among other duties, destroysvirus-infected cells. Figure 1 illustrates the antigen recognition mechanism. Anantibody Ab manufactured by a B-cell recognises and binds to an antigen Agif Ag matches Ab’s structure. The region of antibodies which matches antigensis called the paratope. The counterpart region on antigens is called epitope. Infigure 1 antibody Ab1 recognise only antigen similar to antigen Ag1.The immune system continuously generates new sort of antibodies by cloningand muting existing ones. The goal is to produce antibodies that will matchantigens. It is the second functionality of the immune system : adaptation. Ifnew antigens appear the immune system may be capable of producing matchingantibodies.When an antibody match an antigen Agi it proliferates in order to bind to thisantigen. This selection mechanism augments the concentration of effective an-tibodies. Even if all Agi antigens are destroyed, the immune system is able tokeep some antibodies that could destroy them for some time. This is the thirdfunctionality of the immune system : memory. If an Agi antigen reappears, mat-ching antibodies may already exist.Among the numerous theories which try to explain the human immune system,Nobel Laureate N. K. Jerne proposed a model for immune system regulationbased on communications between antibodies [7]. These communications takethe form of stimulation and inhibition. This theory is known as Jerne’s IdiotypicNetwork. The network is defined by stimulation/inhibition links between anti-bodies. The region by which antibodies stimulate or inhibit other antibodies iscalled idiotope. These idiotopes play the roles of antigens for other antibodies.This regulation mechanism enables the immune system to maintain an effectiveset of cells and self-organize in order to deal with antigens.

2.2. Immune System Based Agent ArchitectureThe Jerne’s idiotypic network has already been used as agent architecture,

for example [8]. This agent architecture is an interpretation of the Jerne’s theory.We use the concepts developed in this reference as a basis for the approach pre-sented in this paper. First, antibodies are represented by agents. This analogy

3

Paratope Agent specification Idiotopeprecondition underwhich this B-agent isstimulated

attributes, codes, data,behaviour and internidiotypic network

references to stimula-ting B-agents and thedegree of the stimuli(affinity)

Tab. 1: Antibody description

Antibody i

paratope behaviour

paratope behaviour

paratope behaviour

paratope behaviour

paratope behaviour

paratope behaviour

paratope behaviour

Antibody 1

Antibody j

Antibody N

m1i

mji

mNiAntigen 1

miM

mik

mi1 Antibody 1

Antibody k

Antibody M

Fig. 2: Idiotypic network

is depicted in figure 1. An antibody is divided into three parts. The first part isthe precondition. It states under which circumstances the antibody is stimula-ted. That is to say in which context this antibody may execute it’s associatedbehaviour. This part is an analogy with the real antibody paratope which triesto match antigens epitope to recognise them. It can be seen as a perception partof the agent.The second part specifies the behaviour of the antibody. It is the behaviourwhich is executed when the antibody is selected. The behaviour of the real an-tibody is to eliminate the antigen.The third part is composed of references to other antibodies with degrees ofstimulation (affinities). It is the idiotope part of the antibody by which it is re-cognised and allows interactions (stimulation/inhibition) with other antibodies.The Jerne’s Idiotypic network is defined by the different antibodies and theiraffinities. The affinities are either stimulation or inhibition between two antibo-dies. An example of idiotypic network is presented in figure 2. The i-th antibodystimulates M antibodies and inhibits N antibodies. mji and mik denote affini-ties between antibody j and i, and between antibody i and k, respectively. mi

is an affinity between an antigen and antibody i. The antibody population isrepresented by the concept of concentration. In [6] authors propose equationsto compute the concentration of the i-th antibody, denoted by ai , using thestimulation/inhibition links :

dAi(t)dt

= (α1N

N∑j=1

mjiaj (t)− α1M

M∑k=1

mikak (t) + βmi − ki)ai(t)

ai(t) =1

1 + exp(0.5−Ai(t))In the first equation, the first and second term of the right hand side denote

4

the stimulation and suppression from other antibodies. mji and mik are positivevalues between 0 and 1. The third term, mi , is 1 when antibody i is stimulateddirectly by an antigen, otherwise 0. The forth term, ki , denotes the dissipationfactor representing the antibody’s natural death. The second equation is thefunction that is used to squash the parameter Ai(t + 1), calculated by the firstequation, between 0 and 1. An antibody is selected based on the probabilityproportional to the current concentrations (roulette-wheel selection strategy).The adaptation mechanism starts from the situation where the idiotopes of theantibodies are undefined, and then obtains the idiotopes using reinforcementsignals so the idiotypic network structure can be rearranged at run-time bychanging affinity values.It means that the affinity values are all initialised with 0. The adaptation consistsin computing the affinity values using the analysis of reinforcement for executedantibodies behaviours. This process constructs the idiotypic network.The following equation describes how affinity m12 between antibody 1 and an-tibody 2 is computed.

m12 =TAb1

p + TAb2r

TAb2Ab1

– TAb1p is the number of times penalty reinforcement signals were received

when Ab1 was selected.– TAb2

r is the number of times reward reinforcement signals were receivedwhen Ab2 was selected.

– TAb2Ab1 is the number of times both, Ab1 and Ab2, have reacted to specific

antigens.This approach means that immune network learns from results of its own beha-viour.

3. Specification

3.1. OZS notationMany specification formalisms can be used to specify entire system but few,

if any, are particularly suited to model all aspects of such systems. For large orcomplex systems, like MAS, the specification may use more than one formalismor extend one formalism.Our choice is to use Object-Z to specify the transformational aspects and sta-techarts to specify the reactive aspects. Object-Z extends Z [9] with object-oriented specification support. The basic construct is the class which encapsu-lates state schema and operation schemas which may affect its variables.Statecharts extend finite state automata with constructs for specifying paral-lelism, nested states and broadcast communication for events. Both languagehave constructs which enable refinement of specification. Moreover, statechartshave an operational semantic which allows the execution of a specification.Authors of [10] introduce a multi-formalisms notation that consists in inte-grating statecharts in Object-Z classes. The class describes the attributes andoperations of the objects. This description is based upon set theory and first

5

order predicates logic. The statechart describes both the possible states of theobject and the events which may change these states. A statechart included inan Object-Z class can use attributes and operations of the class. The sharingmechanism used is based on name identity. Moreover, we introduce basic types[Event ,Action,Attribute]. Event is the set of events which trigger transitions instatecharts. Action is the set of statecharts actions and Object-Z classes opera-tions. Attribute is the set of objects attributes.The TwoWheelsRobot class illustrates the integration of the two formalisms. Itspecifies a part of a robot with two independant wheels. The attributes of thisclass are speed which is the desired speed of the robot and lwSpeed (resp rwSpeed)which is the speed of the left (resp right) wheel. Parallelism between the twowheels is expressed by the dashed line between LeftWheel and RightWheel sub-states. Each sub-state specifies the behaviour of a wheel. A wheel is in Blockedstate by default. It means that it is not running. In the following we describethe behaviour of the left wheel which is symmetric to the one of the right wheel.If a runL event with a speed parameter is perceived then the left wheel is inRunning state where it can receive change of speed events or blockL event makethe wheel return to Blocked state. If the runL event is perceived then the tran-sition from Blocked to Running state is fired and the operation setLWSpeed iscalled with the speed as input. The input parameter is noted with the ? suffix.

TwoWheelsRobot

speed , lwSpeed , rwSpeed : R

lwStop∆(lwSpeed)

lwSpeed ′ = 0

setLWSpeed∆(lwSpeed), speed?

lwSpeed ′ = speed?

behaviour

setRWSpeed(speed)

Blocked Running

Blocked Running

Left Wheel

Right Wheel

blockL/lwStop

blockR/rwStop

runL(speed)/setLWSpeed(speed)

runR(speed)/setRWSpeed(speed)

changeLSpeed(speed)/setLWSpeed(speed)

changeRSpeed(speed)/

6

The notation for attribute modification consists of the modified attributes whichbelongs to the ∆-list. In any operation sub-schema, attributes before their modi-fication are noted by their names and attributes after the operation are suffixedby ’.The result of the composition of Object-Z and statecharts seems particularly sui-ted to specify MAS. Indeed, each formalism has constructs which enable complexstructure specification. Moreover, aspects such as reactivity and concurrency canbe easily dealt with.

3.2. Idiotypic network specificationThe specification of this section is based upon a framework defined in [11, 12].

Each class inherits from the Role class, not presented here, which specifies abs-tract behaviours played by agents. It means that the Antibody and Idiotypic-Network classes are abstract behaviours that can be played by agents.The first class Antibody specifies an antibody. It is determined by an identifier idwhich belongs to a set of Identifier Id . Usually this set may be a subset of N. Eachantibody is also specified by its interactions with other antibodies. These inter-actions are described by affinities and stimulation functions. These functionsmap antibodies identifiers with their specific affinities (resp stimulation) for thecurrent antibody. The timesBothSelected function stores the number of timesthe argument and the current antibody have been selected. The concentrationvalue gives the current concentration of the antibody and the α, β and k valuesare figures used by the concentration formula. Each antibody, if chosen, receivesreinforcement respectively to the effects of its action on the goals of the system.The behaviour of the antibody is defined as follows : it is idle until receivinga stimulating antigen in which case it is activated. The activation triggers thepropagation of affinities. These stimulations change the concentration values ofthe corresponding antibodies. The idiotypic network choose among the activa-ted antibodies a winner. This winner acts according to its specific behaviourand receive penalties and rewards that update the of affinities values.The affinity operation is a test which is true if and only if this antibody has af-finity with the antigen in input. The updateConcentration and updateAffinitiesoperations update respectively the antibody concentration and affinities. Bothtake as input an antibody Id for which the affinities will be updated.The updateConcentration operation modifies the concentration of antibodiesaccording to the formula presented in section 2.2 and the values of stimula-tion/suppression of the i? antibody. This operation also updates the timesBoth-Selected function.The updateAffinities operation with reinforcement? value as input updates thenumber of rewards and penalties and computes the affinity value between thisantibody and the winner.

7

AntibodyRole

id : Idaffinities, stimulation : Id → RtimesBothSelected : Id → Nconcentration, α, β, k : RnumbersOfPenalty ,numbersOfRewards : N

behaviour

receiveReinforcement(w,r)/updateAffinities(w,r)

idle

idle

activated

antigen(a)[affinity(a)]/propagation

antigen(a)[not affinity(a)]

Act

theWinnerIs(winner)[winner=id]

theWinnerIs(winner)[not winner=id]

stimulation(i)/updateConcentration(i)

INIT

∀ i : Id • timesBothSelected(i) = 0

antigenAffinityantigen? : Antigenstimulated ! : B

updateConcentrationi? : Id∆concentration, timesBothSelected

concentration ′ =α

∑j∈{x |1≤x≤#Id∧x 6=id} stimulations(j )

−α∑

k∈{x |1≤x≤#Id∧x 6=id} affinities(k)+β − k

timesBothSelected ′(i?) =timesBothSelected(i?) + 1

8

updateAffinitieswinner? : Idreinforcement? : {Penalty ,Reward}

reinforcement= Penalty⇒ nbPenalty ′ = nbPenalty + 1

reinforcement= Reward ⇒ nbRewards ′ = nbRewards + 1affinities ′(winner) = nbRewards+nbPenalty

timesBothSelected

propagationaffinities!

The IdiotypicNetwork class specifies the Idiotypic Network. It contains a set,called antibodies, of antibodies. Among these antibodies some are selected andamong the selected antibodies there may be a winner. The selected antibodiesbelongs to the selected set and the winner antibody Id is kept in the winnerattribute.Whenever a change is detected the behaviour of the network consists in broad-casting the antigen representing the change to antibodies and waiting for antibo-dies to react. After a timeout, the network chooses the winner among the selectedantibodies, analyses the result of the executed behaviour and then sends rein-forcement signals according to how the winner antibody deals with the context.The chooseWinner operation chooses among the selected antibodies the onewith the greatest concentration. The output of this operation is the Id of thewinner antibody. The winner is chosen among the selected antibodies. That isto say that it belongs to antibodies. The constraints which allows to choose inthe elements of antibodies is that there can’t be another antibody in this setwith greater concentration.The sendReinforcement operation sends to selected antibodies reinforcementvalue of the winner, according to the result of the analysis of the executionof the behaviour of the winner. If the executed behaviour satisfy the problemconstraints, the value is a Reward else it is a Penalty .

IdiotypicNetworkRole

antibodies, selected : F Antibodywinner : Id

selected ⊆ antibodieswinner ∈ {x : Id | ∃S ∈ selected • x = S .id}

9

behaviour

timeout/sendReinforcement

idle waitingSO

analyseAction

[changeDetected]/broadcastAntigen

timeout/chooseWinner

chooseWinnerwinner ! : Id

winner ! ∈ {x : Id | ∃S ∈ selected • x = S .id}∀ a : Antibody •∃ b : Antibody •b.id = winner ! ∧ a 6= b⇒ a.concentration ≤ b.concentration

sendReinforcementreinforcement ! : {Penalty ,Reward}winner ! : Id

winner ! = winner

3.3. Specification analysisOZS semantics [10] is based upon transition systems as defined in [13]. It

means that for each OZS specification there is an associated transition system.This transition system represents the set of possible computations the specifi-cation can produce.With such transition systems and software tools like SAL [14] one can validatespecifications and verify specification properties.Validation enables to test if the specification behaves as expected and in our casesimulates the functioning of idiotypic networks. In order to validate the specifi-cations of subsection 3.2 we have used the SAL path finder. The SAL path finderis a random trace generator. It means that for the transition system represen-ting the semantics of the idiotypic network specification the SAL environmentgenerates random trace of execution. These traces are alternate sequences ofstates and transitions. A state is a mapping between variables representing thedifferent characteristics of the system and their values. A transition is a changebetween two states. With these traces we gain confidence that our specificationsfaithfully represent the immune system as presented in subsection 2.2.Verification consists in formally verifying specification properties. Different tech-niques can be used. The Model checking technique for example tries to establish

10

a counterexample of a property by exploring the state space defined by the speci-fication. If no counterexample is found then the property is true. This techniqueis easy to use but suffers from combinatorial explosion of the state space. Asolution to avoid this is to use theorem provers but their use requires a greatexpertise. A third way proposed in [15] is to use bounded model-checking andinduction to prove theorems. Given a system S specified by an initial predicateI and a transition relation T , there exist a counterexample of length k to in-variant P if there is a sequence of states I (s0) ∧ T (s0, s1) ∧ ... ∧ T (sk−1, sk ).With this technique we have proven the following property :

2(∀ i , j : Antibody • i .id 6= j .id∧ i .id = IdiotypicNetwork .winner∧ i .reinforcement = reward∧ j .affinity(i) = 0 ⇒

©©©(¬ j .affinity(i) < 0))

It may be interpretated as a safety property of the learning mechanism. Indeed,whenever an antibody is chosen and receive rewards, the affinities of other an-tibodies with this winner will grow.A second property was proven using another technique. This property is a live-ness property stating that whenever an antigen is detected an antibody will beproposed to deal with this antigen. The property is specified as follows :

changeDetected ⇒ 3winner 6= ∅

This property can not be proved by induction. Indeed, the only propertiesthat can be proved using induction are safety properties or properties thatalways hold. The liveness property is not always true, it may takes time tobecome true. In order to prove this property we have used the bounded modelchecker which takes as input the depth of the search in terms of number oftransitions taken. The depth enables to limit the size of the state-space. In ourcase, we have proven the property with depth 20. It means that there is nocounter-example for traces between 0 and 20 transitions.

3.4. Robot soccer exampleThe immune system based architecture presented in the precedent sub-

section allows the arbitration among several behaviours. The arbitration is theresult of the selection of the antibody with the highest concentration. The anti-bodies concentrations evolve according to stimulation of antigens (perception)and stimulation/inhibition of other antibodies. This architecture doesn’t takeinto account agent interactions. Indeed, an agent encapsulates an immune sys-tem which chooses the behaviour it executes to react to external stimulations.Moreover, complex goals are difficult to deal with. The architecture we proposeis based upon the single agent immune architecture but extended for HolonicMAS. The term holon was coined by A. Koestler in 1967. A holon is a self-similarstructure composed of holons as sub-structures. This hierarchical structure com-posed of holons is called a holarchy. A holon can be seen, depending on the level

11

Fig. 3: Robot soccer example

of observation, either as an autonomous ”atomic” entity, or as an organizationof holons.The principle is that a holon H is at the same time an antibody for the lookingup face and one or several immune systems for the looking down face. We illus-trate this architecture by the robot soccers example. Robot soccer competitionshas begun since 1996 either with real and simulated robots [16]. It is an examplewhere real-time coordination behaviour is needed. Indeed, the principle is fortwo teams of autonomous robots to play a game similar to human football. Itconstitutes a benchmark for several research fields such as MAS, vision andcontrol for example.In order to realise an appropriate strategy a holarchy composed of four levelshave been designed. The highest level, called team is a holon representing a teamof robots. The second level assigns appropriate roles to robots according to thesituation which is based on the strategy. The third level deals with role-playingby robots. Eventually, the lowest level computes the robots trajectories. Theoverall organisation of the three levels is depicted in figure 3. The advantagesof such an approach are threefold. First, it enables the behaviours decompo-

12

Fig. 4: Robot Soccers Simulator

sition at several levels of abstraction. This decomposition makes them simplerto design. Second, it separates the different goals of the system and their lear-ning mechanisms. Finally, it allows the coordination of agents and dynamicself-organisation of the MAS.

A robot soccer simulator and an immune system API, implementing the pre-sented specification, have been developed using the MadKit platform [17]. Theinterface of this simulator during a game is shown in figure 4. Several scena-rios were experimented with this simulator. One is presented here, it consistsin one team implementing the immune based architecture and the other used astrategy consisting mainly in following the ball except for the goalkeeper. Thephenomenon observed is the average position of the ball during the games. Thefield has been split in two halves to see if the ball is more in one half than theother. Figure 5 presents the percentage of time the ball was in each half. Theball is 67% of time in the half of the team with the non immune strategy. Itmeans that the immune team is able to keep the ball in its opponent half andthus has more chance to score goals.A complete description of this architecture implementation and detailed expe-rimental results are presented in [18].

4. Related Works

The example used in this paper to illustrate the Immune based architectureis based on robot soccers. Robot soccers since their beginnings [16, 19] consti-

13

33%

67%

Immune team half Simple strategy team half

Fig. 5: Distribution of the ball on the field

tute a testbed for many fields such as : MAS [20, 21], vision [22] and control[23] for example. The goal of this paper is not to propose a completely descri-bed architecture that is better than existing robot soccer architectures as forexample [24, 25, 26]. Indeed, we did not compare the presented architectureto the existing ones. Even if there are no architecture, up to our knowledge,which take into account several goals (strategy, role interpretation, trajectoriescomputation) like the one presented in this paper. We have shown that in thecontext of a dynamic, unpredictable environment the presented architecture isable to exhibit complex and efficient decision making [18].It is indeed difficult to find a MAS architecture which can fit in with dynamicenvironments and open systems. Self-organization is an answer to such pro-blems. Coordination in self-organising systems [27] can be achieved by severaltechniques such as coordination fields or ”tuples on the air” like techniqueswhich enable pheromone propagation [28]. However, these techniques are aimedat very simple behaviours such as exploration. Moreover, it is difficult to takeinto account multiple objectives.The metaphor of the immune system has already been used in computer sciencefor a wide variety of applications, e.g. [29]. For surveys on immune systems ap-plications one can read [30, 31]. There are several computational models used toimplement interpretations of the immune system [32], for example, clonal selec-tion [33], danger theory and immune networks [34, 35]. The idiotypic networkof Jerne is the basis of the immune networks. Since then several different ap-proaches for immune networks have been proposed [36] each has it specificitiesconcerning the dynamics and modeling aspects. However, many scientists criti-cize the immune networks as there are no evidence of their real existence [5]. All

14

these reasons, multiplicity of models, controversial aspects has led to works ongrounding and theoretical foundations of AIS in order to better understand andcompare them as stated in [2, 3, 4]. The work of Stepney et al [37] proposes aframework for AIS that identify their main concepts and give hints for instantia-tion. In [38] the authors emphasize the need of proper formal models of AIS fortheir understanding. In their work Markov chains are used to define the threemain AIS types (clonal selection, immune networks and negative selection). It isa very important work for AIS analysis and fundational in term of formalisation.The problem is that Markov chains are not easily refinable downto code. In thispaper we are interested in a formal specification of one immune network basedarchitecture that enables a precise, unambiguous description. Moreover, withassociated tools that allow proofs one can gain understanding and confidencein the architecture functioning. As opposed to examples like [34, 35] which usea single objective immune network we have presented an approach for the en-gineering of self-organised MAS based upon several levels of immune systems.The role of the immune systems is the arbitration of several behaviours. Thebehaviour resulting from the arbitration of a level is used as input by the levelimmediately below. This architecture allows the coordination of interacting en-tities at several level of abstraction. We have illustrated this approach with aMAS dedicated to robot soccers simulation.The novelty of the model comes from the use of multiple (hierarchically compo-sed) idiotypic networks. The approach enables a flexible and adaptive behaviourwithout the need of a centralised control. Even more, from a Software Enginee-ring point of view, it reduces the complexity of designing such systems by tack-ling different levels of abstraction (team/group, robot / individual, trajectory)independently.

5. Conclusion

In this paper we have presented an architecture for MAS based upon theimmune system. A formal specification gives a precise and non ambiguous des-cription of this architecture. This specification is validated and verified and maybe the starting point of implementations.The role of the immune system in this architecture is the arbitration of severalbehaviours. This architecture allows the coordination of interacting entities atseveral level of abstraction and adds adaptive capabilities to these entities. Wehave illustrated this approach with a HMAS dedicated to robot soccer simula-tion. The advantages of this approach are numerous. The immune system haslearning capabilities. It means that it is able to find at runtime the appropriatebehaviours to different stimulations. It enables the decomposition of behavioursat several levels of abstraction making them simpler to design. It separates thedifferent goals of the system and their learning mechanisms. This goal modu-larity makes the design easier and the adaptation more pertinent. Eventually,it allows the coordination of agents and dynamic self-organisation of the MAS.Indeed, each holon behaviour helps its sub-holons to react to stimulations andto organise themselves in order to solve the problem at hand.

15

References

[1] J. Suzuki, Y. Yamamoto, A decentralized policy coordination facility inopenwebserver, in : Proceedings of SPA2000, 2000.

[2] J. Timmis, Artificial immune systems - today and tomorrow, Natural Com-puting 6 (1) (2007) 1–18.URL http ://dx.doi.org/10.1007/s11047-006-9029-1

[3] U. Aickelin, D. Dasgupta, Advances in artificial immune systems, IEEEComputational Intelligence Magazine 1 (2006) 2006.

[4] L. N. de Castro, J. Timmis, Artificial immune systems as a novel softcomputing paradigm, Soft Comput 7 (8) (2003) 526–544.URL http ://dx.doi.org/10.1007/s00500-002-0237-z

[5] J. Timmis, P. Andrews, N. Owens, E. Clark, An interdisciplinary perspec-tive on artificial immune systems.

[6] J. D. Farmer, N. H. Packard, A. S. Perelson, The immune system, adapta-tion and machine learning, Physica D 22 (1986) 187–204.

[7] N. K. Jerne, Towards a network theory of the immune system, Ann Immu-nol (Inst Pasteur) 125C (1974) 373–389.

[8] Y. Watanabe, A. Ishiguro, Y. Uchkawa, Decentralized behavior arbitrationmechanism for autonomous mobile robot using immune system, Books Arti-ficial Immune Systems and Their Applications, Springer-Verlag, p. 186-208,ISBN 3-540-64390-7.

[9] M. Luck, M. d’Inverno, A formal framework for agency and autonomy,in : V. Lesser, L. Gasser (Eds.), Proceedings of the First InternationalConference on Multi-Agent Systems, AAAI Press, 1995, pp. 254–260.

[10] P. Gruer, V. Hilaire, A. Koukam, Heterogeneous formal specification basedon object-z and state charts : semantics and verification, Journal of Systemsand Software 70 (1-2) (2004) 95–105.

[11] V. Hilaire, A. Koukam, P. Gruer, J.-P. Muller, Formal specification andprototyping of multi-agent systems, in : A. Omicini, R. Tolksdorf, F. Zam-bonelli (Eds.), Engineering Societies in the Agents’ World, no. 1972 in Lec-ture Notes in Artificial Intelligence, Springer Verlag, 2001.

[12] V. Hilaire, P. Gruer, A. Koukam, O. Simonin, Formal driven prototypingapproach for multi-agent systems, International Journal of Agent OrientedSoftware Engineering 2 (2) (2008) 246–266.

[13] Z. Manna, A. Pnueli, Temporal Verification of Reactive Systems : Safety,Springer, 1995.

16

[14] L. de Moura, S. Owre, H. Rueß, J. Rushby, N. Shankar, M. Sorea, A. Tiwari,SAL 2, in : R. Alur, D. Peled (Eds.), Computer-Aided Verification, CAV2004, Vol. 3114 of Lecture Notes in Computer Science, Springer-Verlag,Boston, MA, 2004, pp. 496–500.

[15] J. Rushby, Tutorial on mechanized formal methods.URL http ://www.csl.sri.com/users/rushby/abstracts/fm-tut

[16] Y. H. Kim, Micro-robot world cup soccer tournament, KAIST, 1996.

[17] O. Gutknecht, J. Ferber, The MADKIT agent platform architecture, in :Agents Workshop on Infrastructure for Multi-Agent Systems, 2000, pp.48–55.

[18] V. Hilaire, A. Koukam, S. Rodriguez, An adaptative agent architecturefor holonic multi-agent systems, ACM Transactions on Autonomous andAdaptive Systems 3 (1) (2008) 1–24.

[19] H. Kitano (Ed.), RoboCup 97 : Robot Soccer World Cup 1., Vol. 1395 ofLNCS, Springer Verlag, 1998.

[20] V. Hilaire, P. Gruer, A. Koukam, A. E. Moudni, Engineering soccer robotsbehaviours, in : 2002 FIRA Robot Congress, KAIST Press, Seoul, 2002.

[21] M. Bakhouya, S. Rodriguez, V. Hilaire, A. Koukam, J. Gaber, Intelligentimmune-based system for autonomous soccer robots, in : FIRA RobotWorld Congress Austria, 2003.

[22] D. Bailey, G. S. Gupta, Automatic estimation of camera position in robotsoccer, in : International Machine Vision and Image Processing Conference,2008, pp. 91–96.URL http ://dx.doi.org/10.1109/IMVIP.2008.7

[23] T. Balch, Integrating learning with motor schema-based control for a robotsoccer team, Lecture Notes in Computer Science 1395 (1998) 483– ? ?

[24] R. Aler, J. M. Valls, D. Camacho, A. Lopez, Programming robotsocceragents by modeling human behavior, Expert Systems with Applications 33(2007) 483– ? ?

[25] T. Gabel, M. A. Riedmiller, Learning a partial behavior for a competitiverobotic soccer agent, KI 20 (2) (2006) 18–23.

[26] P. Stone, P. Riley, M. M. Veloso, The CMUnited-99 champion simulatorteam, AI Magazine 21 (3) (2000) 33–40.

[27] G. D. M. Serugendo, N. Foukia, S. Hassas, A. Karageorgos, S. K. Mostaoui,O. F. Rana, M. Ulieru, P. Valckenaers, C. V. Aart, Self-organisation : Pa-radigms and applications, in : Proceedings of ESOA’03, 2003.

17

[28] M. Mamei, F. Zambonelli, Self-organization in multi agent systems : Amiddleware approach, in : G. D. M. Serugendo, A. Karageorgos, O. F. R.et al. (Eds.), Engineering Self-Organising Systems : Nature-Inspired Ap-proaches to Software Engineering, no. 2977 in LNCS, 2004.

[29] N. Foukia, IDReAM : Intrusion detection and response executed with agentmobility, in : Engineering Self-Organising Systems, 2004, pp. 227–239.

[30] D. Dasgupta, N. Attoh-Okine, Immunity-based systems : A survey, in :Proc. of the IEEE Int. Conf. on Systems, Man and Cybernetics, IEEE,Piscataway, NJ, 1997.URL citeseer.ist.psu.edu/dasgupta97immunitybased.html

[31] L. N. de Castro, F. J. Zuben, Artificial immune systems : Part ii - a surveyof applications, Tech. Rep. DCA-RT 02/00, Department of Computer En-gineering and Industrial Automation, School of Electrical and ComputerEngineering, State University of Campinas, SP, Brazil (Feb. 2000).URL citeseer.ifi.unizh.ch/nunesdecastro00artificial.html

[32] L. N. de Castro, Immunity-based systems : A survey, in : Proc. of theICONIP conference (International Conference on Neural Information Pro-cessing), 2002.

[33] R. Hightower, S. Forrest, A. S. Perelson, The Baldwin effect in the immunesystem : Learning by somatic hypermutation, in : R. K. Belew, M. Mit-chell (Eds.), Adaptive Individuals in Evolving Populations : Models andAlgorithms, Addison Wesley, Reading, MA, 1996, pp. 159–167.

[34] Y.Watanabe, A.Ishiguro, Y.Shirai, Y.Uchikawa, Emergent construction ofbehavior arbitration mechanism based on the immune system, AdvancedRobotics 12 (3) (1998) 227–242.

[35] J. Suzuki, Y. Yamamoto, Building an artificial immune network for decen-tralized policy negotiation in a communication endsystem : Openwebser-ver/inexus study, in : Proceedings of The 4th World Multiconference onSystemics, Cybernetics and Informatics (SCI 2000), 2000.

[36] S. M. Garrett, A paratope is not an epitope : Implications for immunenetwork models and clonal selection, in : J. Timmis, P. J. Bentley, E. Hart(Eds.), ICARIS, Vol. 2787 of Lecture Notes in Computer Science, Springer,2003, pp. 217–228.

[37] Stepney, Smith, Timmis, Tyrrell, Towards a conceptual framework for ar-tificial immune systems, in : International Conference on Artificial ImmuneSystems (ICARIS), LNCS, Vol. 3, 2004.

[38] J. Timmis, A. Hone, T. Stibor, E. Clark, Theoretical advances in artificialimmune systems, Theoretical Computer Science 403 (1) (2008) 11 – 32.doi :DOI : 10.1016/j.tcs.2008.02.011.

18