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).
© Copyright 2026 Paperzz