Hierarchical Multi-Agent System - CiteSeerX

13 downloads 0 Views 356KB Size Report
Keywords: expert system, multi-agent system, global decision. 1 Introduction. Multi-agent systems are a source of numerous new tools and technologies support-.
Recent Advances in Intelligent Information Systems ISBN 978-83-60434-59-8, pages 615–628

Hierarchical Multi-Agent System Alicja Wakulicz-Deja1 and Małgorzata Przybyła-Kasperek2 1 2

Institute of Computer Science, Silesian University, Sosnowiec, Poland Institute of Mathematics, Silesian University, Katowice, Poland

Abstract The paper presents the process of taking global decisions on the basis of decision rules of local expert systems involving mutually complementary observations of objects which can be mutually contradictory. The authors suggest the organization of local expert systems into a multi-agent system with a hierarchical structure. The structure of multi-agent systems and theoretical aspects of the organization of the system are presented. Furthermore, the paper presents an algorithm fulfilling the mentioned theory and shows experiment results. Keywords: expert system, multi-agent system, global decision.

1 Introduction Multi-agent systems are a source of numerous new tools and technologies supporting the analysis and design of complex computer systems (Sycara and Zeng 1996; Po-Hsian 2003; Maturana and Norrie 1997; Russell and Subramanian 1995). The cooperation and coordination of agents to eliminate chaotic activity of a unit are a natural feature of such systems. Agents cooperate with each other in order to achieve one purpose, which is beyond their reach separately. This kind of modelling is becoming more important in dealing with complex real-life phenomena. The problem, which emerged during the cooperation of the multi-agent system, is to solve the conflict arising between agents. Conflict analysis has its roots in the game theory, where one of the basic methods to measure the power of agents is the Shapley-Shubik power index, which was formulated in 1945. The power of each player is measured by the probability that the player is a voter whose joining an existing coalition guarantees that this coalition wins under the condition that each possible voting sequence is equally probable. The next method to evaluate the power of agents is the Banzhaf power index, which was formulated for the first time in 1946. This measurement denoted the probability that the player is a critical voter, which means that his changing the vote would cause the coalition to lose. A number of attempts have been made to solve the conflict. One of them was made by Zdzisław Pawlak (Pawlak 1984). Other authors also dealt with this problem (Deja 2000; Pawlak 1987; Pawlak 1998; Skowron and Deja 2002). In most cases, the publications suggested a way of solving conflicts through the agents voting for a given conflict question, drawing conclusions concerning the existing coalitions of agents and possible division of resources among the agents so that the agents can fulfill their objectives.

616

Alicja Wakulicz-Deja and Małgorzata Przybyła-Kasperek

This paper focuses on the problem of taking a global decision on the basis of decision rules of local expert systems which is solved through organisation of multi-agent system whose purpose is to define a global decision. In this system each local expert system is an agent able to solve problems in its surroundings. In the presented method each agent establishes the value of the decision (or a set of values) for a given object on the basis of a subset of conditional attributes which describe its features. Since agents contain data related to monitoring the condition of the objects, which are both mutually complementary and contradictory at the same time, the conflicts between agents are likely to arise. A conflict between agents is a situation in which the common decision established by the agents for a given object were taken on the basis of different values of common conditional attributes. The conflict situation is analysed for each pair of agents. This paper presents in detail a suggested way of solving knowledge conflicts which occur in taking the global decision. It has been assumed that agents have a common language and ontology for an exchange of information. The first part of the paper presents the structure of a multi-agent system and theoretical aspects of the organization of the system whereas the second part deals with the practical aspect of the suggested solution on the basis of the discussed results of experiments carried out with the data. The first chapter establishes the main purpose of the paper. The second chapter describes the structure of the multi-agent system. The notions of resource agent, synthesis agent and manager agent have been defined. The chapter also defines the agents’ purposes and resources available to them. The third chapter describes the scheme of taking decisions through the multi-agent system. The way of exchanging information between agents is discussed as well as the ways of solving conflicts which arise between them. The fourth chapter shows an example whose aim is to establish the decision value for a certain object on the basis of the knowledge of local espert systems. The fifth chapter describes the algorithm fulfilling the presented theory. The last chapter shows a description and the results of three experiments carried out with the use of realistic data. Fig. 2 shows the structure of the multi-agent systems which are used in the experiments.

2 Defining structure of multi-agent system 2.1 Resource agents Let Ag be a finite set of agents’ names Ag := {ag1 , . . . , agn }. Each agent agi ∈ Ag, is called a resource agent because it has access to some resources which are found in a decision table Dagi := (Uagi , Aagi , d), where Uagi is a finite nonempty set called the universe and elements Uagi are called the objects; Aagi is a finite nonempty set of conditional attributes, where each attribute b ∈ Aagi is a function b b b : Uagi → Vag and Vag is a set of attribute b values; d is referred to as decision i i attribute, it is a function d : Uagi → V d , and V d is called the value set of d. The decision table Dagi is a subtable of a universal decision table Wagi := (Wagi , A∗agi , d∗ ), where Wagi is a set of all possible objects; A∗agi is a fi-

617

Hierarchical Multi-Agent System

nite nonempty set of conditional attributes, where each attribute b∗ ∈ A∗agi is b∗ a function b∗ : Wagi → Vag ; d∗ is referred to as decision attribute, it is a function i ∗ ∗ d d : Wagi → V . This means that Uagi ⊆ Wagi and following conditions are fulfilled ∀b∈Aagi ∃b∗ ∈A∗ag b∗ /Uagi = b, i



d / Sn i=1

Uagi

= d.

For each resource agent we define similarity function. Definition 2.1 Let Wagi := (Wagi , A∗agi , d∗ ) be a universal decision table and let Dagi = (Uagi , Aagi , d) be a given decision table for resource agent agi ∈ Ag, where i ∈ {1, . . . n}. Then the function fagi : Wagi × Uagi → N ∪ {0} given by fagi (x, y) := |{b ∈ Aagi : b(x) = b(y)}|, for x ∈ Wagi , y ∈ Uagi is called similarity function of resource agent. For each resource agent and for each value of decision attribute we define function denoting maximum similarity value in relation to the decision value. Definition 2.2 Let Wagi := (Wagi , A∗agi , d∗ ) be a universal decision table, Dagi = (Uagi , Aagi , d) be a given decision table for resource agent agi ∈ Ag, where d } be a value of decision attribute. i ∈ {1, . . . n} and let v d ∈ V d = {v1d , . . . , vm vd Then the function fagi : Wagi → N ∪ {0} given by  vd fag (x) := max fagi (x, y) : y ∈ Uagi and d(y) = v d , for x ∈ Wagi i is called function denoting maximal similarity value in relation to the decision value v d . 2.2 Synthesis agents Each resource agent agi ∈ Ag can establish decision value for an object x ∈ Uagi on the basis of observation of object condition on the attribute set Aagi . Sets of conditional attributes of different resource agents are not necessarily disjoint. In most cases intersection of the sets will be nonempty. The task of the multi-agent system is taking a global decision for an object with values defined on the set of conditional attributes of multi-agent system A := S ∗ i∈{1,...,n} Aagi . Therefore it seems reasonable to assume that resource agents making decisions on the basis of common conditional attributes should form a group of agents called cluster. Definition 2.3 Let Ag = {ag1 , . . . agn } be a set of resource agents. The smallest subset, due to inclusion, of set of resource agents {agi1 , . . . , agik } ⊆ Ag, i1 , . . . , ik ∈ {1, . . . , n} meeting the two following conditions: ∀j∈{1,...,k} ∃l∈{1,...,k};

l6=j Aagij

∩ Aagil 6= φ,

∀l∈{1,...,n}\{i1 ,...,ik } ∀j∈{1,...,k} Aagl ∩ Aagij = φ. is called a cluster.

(1) (2)

618

Alicja Wakulicz-Deja and Małgorzata Przybyła-Kasperek

The first condition of the above definition guarantees that agents concluding on the basis of common attributes are included in one cluster. The second condition of the definition guarantees separation in the set of conditional attributes of resource agents found in different clusters. We assume that resource agents can communicate with each other within one cluster. However, knowledge of each resource agent is limited to the information contained in the decision table of an agent in the same group. Information exchanged between resource agents refer to only values of common conditional attributes. Therefore existence of a superordinate agent coordinating work of the group in a cluster seems to be essential. Such an agent is called synthesis agent. Synthesis agent, AS, has access to the resources of resource agents which belong to its subordinate group. Definition 2.4 Let {agi1 , . . . , agik } be a cluster and AS synthesis agent of this cluster. Then resources of AS agent can be recorded in information system SAS = (UAS , AAS ), where UAS := Uagi1 × . . . × Uagik ; AAS := Aagi1 × {1} ∪ . . . ∪ Aagik × {k}; (b, j)(x1 , . . . , xk ) := b(xj ), for (x1 , . . . , xk ) ∈ UAS and (b, j) ∈ AAS . Whereas information system SAS is a subsystem of a universal information system WAS := (WAS , A∗AS ), where WAS := Wagi1 × . . . × Wagik ; A∗AS := A∗agi1 × {1} ∪ . . . ∪ A∗agi × {k}; (b, j)(x1 , . . . , xk ) := b(xj ), for (x1 , . . . , xk ) ∈ WAS and k (b, j) ∈ A∗AS . We also assume that synthesis agent knows the set of decision attribute values V d . Also, we assume that there is a possibility of mutual exchange of information between different synthesis agents as well as synthesis agent and agents belonging to the subordinate cluster to this synthesis agent. 2.3 Manager agent Manager agent, AM , plays a fundamental role in multi-agent system described in this paper. Firstly, this agent distributes tasks to synthesis agents. The function of synthesis agent is coordination and cooperation in work of resource agents within a cluster. In other words synthesis agent work is a coordination of decision taking based on the given observation values for conditional attributes belonging to a certain set A of all conditional attributes of multi-agent system. Subsets which are conclusion domains of synthesis agents establish the division in S the set of conditional attributes in the multi-agent system A = j∈{1,...,p1 } A∗agi1 ∪ j S . . . ∪ j∈{1,...,pk } A∗agi , where subsets {agi11 , . . . , agi1p1 }, . . . , {agik1 , . . . , agikp } kj k Sk are clusters such that j=1 {agij1 , . . . , agijp } = Ag. j The main task of the manager agent is association of decisions taken by the groups into one decision value or a subset of decision values for a given object. Therefore manager agent must have access to resources of synthesis agents. Definition 2.5 Let AS1 , . . . , ASk be a set of k synthesis agents controlling the work of certain clusters. Then the resources of manager agent form an information system SAM = (UAM , AAM ) where UAM := UAS1 × . . . × UASk ; AAM = AAS1 ∪

619

Hierarchical Multi-Agent System

. . . ∪ AASk ; b(x1 , . . . , xk ) := b(xj ), for (x1 , . . . , xk ) ∈ UAM and b ∈ AASj ⊂ AAM . Whereas information system SAM is a subsystem of universal information system WAM := (WAM , A∗AM ), where WAM := WAS 1 × . . . × WAS k ; A∗AM := A∗AS 1 ∪ . . . ∪ A∗AS k ; b(x1 , . . . , xk ) := b(xj ), for (x1 , . . . , xk ) ∈ WAM and b ∈ A∗ASj ⊂ A∗AM . We also assume that manager agent knows the set of decision attribute values V d .

3 Decision scheme In order to present the scheme of decision taking by multi-agent system, we introduce the formula definition and the notion of formula fulfillment. Definition 3.1 Let S = (U, A) be an information system and the set P = {b1 , . . . , bk } will be a subset of attribute set A, then atomic formula is (b, v) where b ∈ A oraz v ∈ V b . We say that an object x ∈ U fulfils atomic formula (b, v) in the S-system , x |=S (b, v), if and only if b(x) = v. Each formula α such that α = (b1 , v1 ) ∧ . . . ∧ (bk , vk ), where vi ∈ V bi , i ∈ {1, . . . , k} is called P - formula. If P = A, then expression α is called a formula. We say that an object x ∈ U fulfils P - formula α in the S - system, x |=S α, if and only if ∀i∈{1,...,k} x |=S (bi , vi ). Now we move on to describe the scheme of decision taking by a multi-agent system. Let us assume that {ag1 , . . . , agn } is a set of resource agents and {AS1 , . . . , ASr } is a set of synthesis agents. At first manager agent receives a task to establish a decision value for an object fulfilling formula α which is based on the set A of conditional attributes of the multi-agent systems. The decision taken by a multi-agent system should fulfil the established degree of decision precision. Let us assume that α = (b1 , v1 ) ∧ . . . ∧ (bk , vk ), where vi ∈ V bi , i = 1, . . . , k and {b1 , . . . , bk } = A. Then manager agent which has access to resources of synthesis agents passes on an appropriate part of a formula α to each of the synthesis agents. That means if a synthesis agent ASj coordinates the work of a cluster {agij1 , . . . , agijp } ⊆ Ag then it receives a formula which is restricted the formula j α to a set A∗ASj , α/A∗ . ASj

Then the process of decision taking within a cluster starts. 3.1 Scheme of decision taking within a cluster A synthesis agent ASj coordinating the work of cluster {agij1 , agij2 , . . . , agijp } j after receiving a task to establish decision value for an object fulfilling the formula α/A∗ passes on the formula βl which is a formula α/A∗ restricted to the set ASj

ASj

A∗agi to each resource agent agil , l ∈ {j1 , . . . , jpj } belonging to its subordinate l cluster. According to the cluster’s definition sets of conditional attributes, on which the formulas βj1 , . . . , βjpj are based, are not pairwise disjoint. After this operation resource agents start the process of establishing values vd of function fag (xl ), for each l = j1 , . . . , jpj , and v d ∈ V d where xl ∈ Wagil is il an object fulfilling formula βl , xl |=Wagi βl . Next resource agents exchanging l  information within a cluster for each v d ∈ V d check if for a set of objects yl :

620

Alicja Wakulicz-Deja and Małgorzata Przybyła-Kasperek

vd yl ∈ Uagil and fagil (xl , yl ) = fag (xl ), l = j1 , . . . , jpj realising the maximal il degree of similarity to the object xl in relation to decision v d , values on common attributes are identical. this is the case, then  vIf to the information containing values of the function d fagi (xl ) : l = j1 , . . . , jpj is attached information about the lack of conflict bel tween resource agents while taking a decision v d for a given object within one cluster. Otherwise information about the conflict between resource agents while taking v d for a given object within one cluster is attached to the informa decisions vd tion fagi (xl ) : l = j1 , . . . , jpj . This information packet is sent to synthesis agent l ASj . Next the process of taking decision starts at the level of synthesis agents. 3.2 Scheme of decision taking at the level of synthesis After receiving information packet a synthesis agent establishes a suggested decision value by means of decision function of synthesis agent. Definition 3.2 Let AS be a synthesis agent coordinating the work of cluster {ag1 , . . . , agp } and WAS = (WAS , A∗AS ) be a universal information system, SAS = (UAS , AAS ) be an information system for synthesis agent AS. Then multifunction d γAS : WAS → 2V given by   p p X X vd vd d d γAS (x) := v d ∈ V d : fag (x ) = max f (x ) : v ∈ V , for x ∈ WAS , i i agi i i=1

i=1

where xi ∈ Wagi and the following condition is fulfilled: if x |=WAS α then xi |=Wagi α/A∗ag , for i = 1, . . . , p is called decision function of synthesis agent. i

Each synthesis agent of a multi-agent system establishes value of decision function for an object xj ∈ WASj fulfilling the following formula α/A∗AS , xj |=WASj α/A∗AS . j j Next synthesis Tr agents exchange information between one another and check if the set D := j=1 γASj (xj ) is non-empty. If this set is non-empty, then synthesis agents check if there are decision values v d ∈ D in which no conflict arose between resource agents while taking this decision. If such values exist, then the agents modify set D in such a way that only non-conflict values stay in it, otherwise set D is not changed in any way. Manager agent receives a packet of information containing set D and a set of values  Pjpj vd µj (xj ) := l=j fagi (xl ), j = 1, . . . , r , for some v d ∈ D. 1 l However, if D = φ then each synthesis agent ASj , j = 1, . . . , r sends manager agent a packet of information as 

j

d d µvj (xj ), cvj



:

d µvj (xj )

:=

pj X

d

d

v fag (xl ), cvj = 0 lack of conflict, i l

l=j1

 d cvj = 1 conflict occurred, v d ∈ V d . Next the process of aggregation and decision evaluation starts at the level of the manager agent.

621

Hierarchical Multi-Agent System

3.3 Aggregation and decision evaluation at the level of manager agent Manager agent starts different operations depending on the form of information it receives from synthesis agents. In the first case when set D 6= φ the role of manager agent is limited to evaluating accuracy measure of a decision taken. This evaluation is made by means of accuracy coefficient. Definition 3.3 Let AM be a manager agent and {AS1 , . . . , ASr } be a set of synthesis agents. Then accuracy coefficient is a function µ : WAM → [0, 1] given by r X µj (xj ) j=1

, |AAM | where objects xj ∈ WASj fulfil the following condition: if x |=WAM α then xj |=WASj α/A∗AS for each j = 1, . . . , r. µ(x) :=

j

In the same way we define accuracy coefficient in relation to decision v d ∈ V d by d placing in the definition of accuracy coefficient values µvj (xj ) instead of µj (xj ), d

for j = 1, . . . , r. For accuracy coefficient in relation to decision v d we will use µv . If a decision taken fulfils an accuracy coefficient in a task, manager agent gives a positive response and, in reply to it, sends the decision set D. However, if accuracy coefficient does not fulfil conditions of a task, manager agent informs that it is impossible to take a decision with a given accuracy coefficient. In the case when D = φ manager agent calculates accuracy coefficient for each decision value in set V d and then it chooses decisionsmaximizing accuracy d coefficient. Thus manager agent creates a new set D := v d ∈ V d : µv (x) = d max{µvk (x) : vkd ∈ V d } . Next it checks if decision accuracy coefficient in set D fulfils conditions of the task. If conditions of the task are not fulfilled, manager agent informs about inability to take a decision with a given accuracy coefficient. However, if task conditions are fulfilled, manager agent checks if in set D there are such decision values v d in which no conflict arose between resource agents while taking this decision. Thus agent manager checks if a condition is fulfilled d

∃vd ∈D ∀j∈{1,...,r} cvj = 0.

(3)

If this is the case, then manager agent modifies set D in such a way that condition (3) is fulfilled for each value v d ∈ D. Otherwise manager agent does not change anything in set D. Next manager agent gives a positive answer to the task and sends decision set D.

4 Example of multi-agent system application for taking global decisions This part of the paper focuses on a problem related to establishing a global decision for an object fulfilling formula α, which is based on the knowledge of local expert systems.

622

Alicja Wakulicz-Deja and Małgorzata Przybyła-Kasperek Table 1: Decision tables of the resource agents

Uag1 a b c d

Uag2 a c e f d

Uag3 g h i

Uag4 h j k d

d

1

1 1 1 0

1

1 1 0 0 1

1

0 0 0 0

1

1 0 1 0

2

0 1 1 1

2

0 0 1 0 2

2

0 1 1 1

2

1 1 1 1

3

0 0 0 2

3

1 0 0 1 0

3

1 0 1 2

3

0 0 1 1

4

1 0 0 1

4

1 1 1 1 2

4

1 0 0 2

4

0 1 1 2

5

0 0 1 2

5

0 0 0 0 0

5

0 0 1 1

5

1 1 0 2

Figure 1: Structure of the multi-agent system

Example 4.1 Let Ag := {ag1 , ag2 , ag3 , ag4 } be a set of resource agents. Each agent agi ∈ Ag, i = 1, . . . , 4 has access to a decision table Dagi = (Uagi , Aagi , d). Forms of decision tables are presented in a Table 1. The purpose is to establish decision value for an object fulfilling the formula α which can be described as follows: α = (a, 1) ∧ (b, 1) ∧ (c, 0) ∧ (e, 0) ∧ (f, 0) ∧ (g, 1) ∧ (h, 0) ∧ (i, 1) ∧ (j, 1) ∧ (k, 0). Accuracy coefficient of decision should not be lower than 0.6. The structure of the considered multi-agent system has been presented in a Fig. 1. The Table 2 presents formulas which are received by particular agents. vd Function values fag (xi ), where i ∈ {1, 2, 3, 4}, v1d = 0, v2d = 1, v3d = 2 and i ∀i∈{1,2,3,4} xi ∈ Wagi ∧ xi |=Wagi βi have been shown in the Table 3. Final information packets which will be received by synthesis agents AS1 and AS2 have been presented in a Table 4. Next synthesis agents establish values of decision functions for objects x1 ∈ WAS1 , x2 ∈ WAS2 fulfilling the following conditions: x1 |=WAS1 α/A∗AS and x2 |=WAS2 α/A∗AS . 1

2

Values of decision functions are following γAS1 (x1 ) = {v0d , v1d } and γAS2 (x2 ) = {v3d }. Thus γAS1 (x1 ) ∩ γAS2 (x2 ) = φ. Information packet received by a manager agent have been presented in a Table 5. Next manager agent establishes accuracy coefficient for each decision value v d . The results of calculations have been presented in a Table 6. Thus D = {v2d , v3d }.

623

Hierarchical Multi-Agent System Table 2: Formulas, which are sent to agents

Agent

Formula

AM

α = (a, 1) ∧ (b, 1) ∧ (c, 0) ∧ (e, 0) ∧ (f, 0) ∧ (g, 1) ∧ (h, 0) ∧(i, 1) ∧ (j, 1) ∧ (k, 0)

AS1

α/A∗AS = (a, 1) ∧ (b, 1) ∧ (c, 0) ∧ (e, 0) ∧ (f, 0)

ag1

β1 = (a, 1) ∧ (b, 1) ∧ (c, 0)

ag2

β2 = (a, 1) ∧ (c, 0) ∧ (e, 0) ∧ (f, 0)

AS2

α/A∗AS = (g, 1) ∧ (h, 0) ∧ (i, 1) ∧ (j, 1) ∧ (k, 0)

ag3

β3 = (g, 1) ∧ (h, 0) ∧ (i, 1)

ag4

β4 = (h, 0) ∧ (j, 1) ∧ (k, 0)

1

2

Table 3: Values of function denoting maximal similarity value in relation to decision

v1d v2d

ag1

ag2

ag3

ag4

=0

0 fag (x1 ) 1

=2

0 fag (x2 ) 2

=3

0 fag (x3 ) 3

=1

0 fag (x4 ) 4

=0

=1

1 fag (x1 ) 1

=2

1 fag (x2 ) 2

=3

1 fag (x3 ) 3

=2

1 fag (x4 ) 4

=1

2 2 2 2 (x1 ) = 1 fag (x2 ) = 2 fag (x3 ) = 3 fag (x4 ) = 2 v3d = 2 fag 1 2 3 4

Table 4: Information packets, which are sent to synthesis agents

AS1 v1d v2d v3d

ag1 ag2 Conflict

=0 =1 =2

2 2 1

3 3 2

AS2

ag3 ag4 Conflict

Yes

v1d

=0

1

0

Yes

Yes

v2d

=1

2

1

No

No

v3d

=2

3

2

No

Table 5: Information packet, which are sent to manager agent

AS1 v1d

=0

v2d = 1 v3d = 2

 = =1  µ11 (x1 ) = 5, c11 = 1  µ21 (x1 ) = 3, c21 = 0 µ01 (x1 )

5, c01

AS2  = 1, c02 = 1  µ12 (x2 ) = 3, c12 = 0  µ22 (x2 ) = 5, c22 = 0 µ02 (x2 )

Table 6: Values of accuracy coefficient

v1d = 0 µ0 (x) = v2d = 1 µ1 (x) = v3d = 2 µ2 (x) =

6 13 8 13 8 13

624

Alicja Wakulicz-Deja and Małgorzata Przybyła-Kasperek

As accuracy coefficient of a decision in set D fulfils conditions of a task, manager agent checks if in set D are decision values for which no conflict arose between resource agents while taking this decision. Since there was no conflict while taking a decision v3d but while taking the decision v2d a conflict arose between ag1 and ag2 then D = {v3d }. Thus the answer to the task is positive, it is d(x) = 2, it has been 8 ≈ 0.62. taken with accuracy coefficient µ(x) = 13

5 Algorithm of taking a global decision In this part of the paper the main part of algorithm solving the problem of taking a global decision through organisation of local expert systems into a multi-agent system with a hierarchical structure is discussed. The experiments with data presented in the last chapter of the paper have been carried out with the use of the algorithm presented below. In: 1. The number of resource agents n. 2. The decision tables Dagi = (Uagi , Aagi , d) for each resource agent i = 1, . . . , n. 3. The value set of decision attribute V d which is saved in a table of character variable. 4. Formula α which Sn is defined as follows α = (b1 , v1 ) ∧ . . . ∧ (bk , vk ), where {b1 , . . . , bk } = i=1 Aagi . 5. Minimal accuracy coefficient ρ, which should fulfill the taken decision. Out: The optimum decision value for an object fulfilling the formula α and the accuracy coefficient of the taken decision. Complex structure of data: 1. Cluster: list of variables in type of list maximal n size. 2. AgentsFormulas: table of a structures type formula (maximal n size). Each of the structures type formula consists of table of attributes name (size card(Aagi )) and table of attributes values (size card(Aagi )). 3. f: the two-dimensional table [1 . . . card(V d ), 1 . . . n] integer variables. 4. Conflict: the two-dimensional table [1 . . . cart(V d ), 1 . . . card(Cluster)] string variables. 5. MaximumRealisingFormulas: table of the list of structures type formula. 6. DecisionFunction: the table string variables (size card(Cluster)). Establishing values of function denoting maximal similarity value in relation to the decision value v ∈ V d for each resource agent and determining the state of conflict between agents. for i = 1 to card(Cluster) do for m = 1 to card(V d ) do for j = 1 to card(Cluster[i]) do Look through all rules in decision table of agent Cluster[i][j] for which decision value equals V d [m] and established how many values attribute in the rule are equal to values in formula AgentsF ormulas[Cluster[i][j]].

Hierarchical Multi-Agent System

625

Set the value f [m, j] as the maximal of the mentioned values. In variable M aximumRealisingF ormulas[j] save all rules, which are the realisation of values f [m, j]. end for for j = 1 to card(Cluster[i]) − 1 do for l = j + 1 to card(Cluster[i]) do Check if values common attribute of agents Cluster[i][j] and Cluster[i][l] for rules saved in variables M aximumRealisingF ormulas[j] and M aximumRealisingF ormulas[l] are equal. if yes then Conf lict[m, i] =no else Conf lict[m, i] =yes. end if end for end for end for end for Aggregation and valuation of taken decision. for i = 1 to card(Cluster) do Pcard(Cluster[i]) Set tempmax := maxm∈{1...card(V d )} { j=1 f [m, j]}.  d Pcard(Cluster[i]) Set DecisionF unction[i] := V [m] : j=1 f [m, j] = tempmax, d m ∈ {1 . . . card(V )} . end for Tcard(Cluster) D := i=1 DecisionF unction[i] if card(D) = 0 thenP Pn n D := {v[i] ∈ V d : j=1 f [i, j] = maxm∈{1...card(V d )} j=1 f [m, j]}. end if for i = 0 to card(temp) do temp[i] := 0. end for d m := index of value D[1] Pnin table V .Pn AccuracyCoefficient:= j=1 f [m, j]/ j=1 card(Aagi ). if AccuracyCoefficient ≥ ρ then if card(D) > 1 then for i = 1 to card(D) do m := index of value D[i] in table V d . for j = 1 to card(Cluster) do if Conf lict[m, j] = yes then temp[i] := 1. end if end for end for if temp[j] = 0 for some j ∈ {1 . . . card(D)} then for i = 1 to card(D) do

626

Alicja Wakulicz-Deja and Małgorzata Przybyła-Kasperek Table 7: Data set summary

Data set

# Samples # Conditional attributes # Classes

Soybean

307

35

19

DNA

3190

60

3

SPECT Heart

80

22

2

Figure 2: Structure of the multi-agent system, which was tested

if temp[i] = 1 then Delete decision value D[i] from table D. end if end for end if end if RETURN D, AccuracyCoefficient. else RETURN It is impossible to establish decision with a given accuracy coefficient. end if

6 Experiments with data This part of the paper focused on the description of the experiments conducted using realistic data, which were carried out to verify the correctness and effectiveness the algorithm presented in the previous chapter. For the experiments the following data, which are in the UCI repository (ftp to ics.uci.edu/pub/machine-learning-databases), have been used: - Large Soybean Data Set - Primate splice-junction gene sequences (DNA), - SPECT Heart Data Set. Table 7 gives a numerical summary of the data sets. Each data was divided into five and seven decision tables with randomly selected common conditional attributes. The structure of the multi-agent systems is shown in Fig. 2. The first set of the data is related to identifying the cause of the bad condition of a soya bean plant. The variables are observations on the plants together with some

627

Hierarchical Multi-Agent System Table 8: Error rates

Data set

5 decision tables 7 decision tables

Soybean

0.269

0.114

DNA

0.185

0.177

SPECT Heart

0.423

0.353

climatic variables. The classes are various types of soybean diseases. The conditional attributes are categorical, some nominal and some ordered. The training set and the test set consisting of 376 objects are both available at the UCI repository. The second set of the examined data is related to identifying primate splicejunction gene sequences. The data was randomly divided into a test set with 50% of the data, and a learning set consisting of the other 50%. The classes in this data set are types of boundaries in a spliced DNA sequence. In each decision table a class is a decision attribute whose set of values is as follows: exon/intron boundaries, intron/exon boundaries, neither. The sets of all conditional attributes of the decision tables of resource agents are identical and equal {A, G, T, C}. The third set of the data describes diagnosing of cardiac Single Proton Emission Computed Tomography (SPECT) images. Each of the patients is classified into two categories: normal and abnormal. The conditional attributes are binary. The test set, which consisted of 187 objects, is available at the UCI repository. Table 8 gives the value of error rates, which is measured by the fraction of the number of misclassified objects to the cardinality of a test set. Where, in each data set except SPECT Heart data, we considered that an object is well classified if the proper class belongs to the taken decisions set. In each tested case the algorithm provided a solution within a few seconds, whereas the lowest accuracy coefficient was about: - Soybean 0.865, - DNA 0.629, - SPECT Heart 0.792.

7 Conclusion This work presents the concept of taking global decisions through organisation of local expert systems into a multi-agent system. This way we can establish the decision value despite contradictory knowledge of local expert systems. Agents which cannot independently solve a problem cooperating and exchanging information can take a common decision with the highest accuracy coefficient. Furthermore, the description and the result of three experiments carried out with the use of realistic data was discussed. The experiments showed that the algorithm presented in this paper effectively established a decision value with the highest accuracy coefficient for the formula which is based on the set of conditional attributes situated in different decision tables.

628

Alicja Wakulicz-Deja and Małgorzata Przybyła-Kasperek

The results of the experiments also indicate that the larger the number of decision tables available for taking a global decision the lower the error index generated by the introduced algorithm. This proves that the article contains an effective way of simultaneously using several separate knowledge bases containing information from the same field, which improves the correctness and effectiveness of the decisions taken.

References [Deja 2000] Deja R., Conflict Analysis, Rough Sets; New Developments. In: L. Polkowski (eds.), Studies in Fuzziness and Soft Computing, Physical-Verlag (2000). [Maturana and Norrie 1997] Maturana F. P., Norrie D. H., Distributed decision-making using the contract net within a mediator architecture, Decision Support Systems 20, 53 - 64 (1997). [Mulawka 1996] Mulawka J. J., Systemy ekspertowe, WNT, Warszawa (1996). [Pawlak 1991] Pawlak Z., Rough Sets: Theoretical aspects of reasoning about data, Boston: Kluwer Academic Publishers, (1991). [Pawlak 1984] Pawlak Z., On conflicts, Int. J. of Man-Machine Studies 21, 127-134 (1984). [Pawlak 1987] Pawlak Z., O konfliktach, PWN, Warsaw (1987). [Pawlak 1998] Pawlak Z., An inquiry into anatomy of conflicts, Journal of Information Sciences 109, 65-78 (1998). [Po-Hsian 2003] Po-Hsian H., An application of quantitative techniques to conflict resolution in a multi-agent system, Computers and Electrical Engineering 29, 757–779 (2003). [Polkowski and Skowron 1996] Polkowski L., Skowron A., Rough mereology: A new paradigm for approximate reasoning, International Journal of Approximate Reasoning 15, 333-365 (1996). [Polkowski and Skowron 1998] Polkowski L., Skowron A., Rough Mereological Foundations for Design, Analysis, Synthesis and Control in Distributed Systems, Information Sciences 104, 129-156 (1998). [Russell and Subramanian 1995] Russell S.J., Subramanian D., Provably BoundedOptimal Agents, Journal of Artificial Intelligence Research 2, 575-609 (1995). [Simiński and Wakulicz-Deja 2005] Simiński R., Wakulicz-Deja A., Circularity in Rule Knowledge Bases Detection using Decision Unit Approach, Monitoring, Security and Rescue Techniques in Multiagent System, Springer Verlag, Berlin, 273 - 279 (2005). [Skowron and Deja 2002] Skowron A., Deja R., On Some Conflict Models and Conflict Resolutions, Romanian Journal of Information Science and Technology 3(1-2), 69 82 (2002). [Sycara and Zeng 1996] Sycara K., Zeng D., Coordination of Multiple Intelligent Software Agents, International Journal of Cooperative Information Systems 5(2-3), 181211 (1996). [Wakulicz-Deja and Przybyła-Kasperek 2008] Wakulicz-Deja A., Przybyła-Kasperek M. Hierarchiczny system wieloagentowy, Studia Informatica Vol. 28, No. 4 (74) (2008). [Wakulicz-Deja 2005] Wakulicz-Deja A., Podstawowy systemów ekspertowych. Zagadnienia implementacji, Studia Informatica 3 (64), (2005).

Suggest Documents