Coordination in Composite Multi Agent Architecture

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 10

Coordination in Composite Multiagent Architecture

Thiri Haymar Kyaw and Ni Lar Thein

University of Computer Studies, Yangon, Myanmar.


hayman.kyaw@gmail.com

Abstract. We present an approach for token-based coordination among


composite agents through an intelligent coordinator called ICo. A composite
agent is composed of multiple agents. When any agent has a task or request or
information, it creates a token and sends to ICo through Negotiator Agent (NA).
Each composite agent has one Negotiator Agent that is responsible for passing
the token to addressed agents within the same composite agent. NA and ICo use
Mobile Inference Engine (MIE). MIE has mobility property and it works with
required databases to route the tokens to receiver agents efficiently and directly.
Token passing algorithms for ICo and NA have been developed in this paper.
We described some parts of a multiagent system for supporting university
workflows as a case study. The result gives efficient coordination between
automated entities in university with very little communication.

Keywords: Multiagent System, Token based Coordination, Communication,


Composite Agent and Mobile Inference Engine.

1 Introduction

Coordination is central to multi-agent systems. Automated coordination is still a very


active research area because it can decrease operational cost, risk, time and human
activities while increasing efficiency, flexibility and cooperation performance.
Coordination between multiple agents requires to perform several various function
including messages passing, tasks allocation, resources sharing, and negotiation to
reach the common goal.
There are many widely used coordination approaches such as auction based
coordination, token-based coordination and hybrid approach, etc. These approaches
have extra routings that tokens are passed to agents, which do not need to pass or bids,
which cannot get the task or resource, are sent.
The proposed approach uses token-based hierarchical coordination because
hierarchical coordination gives the best results for large-scale systems and token-
based approach finds the reasonable solution rather than searching for the optimal.
New coordination algorithms are developed to determine the tokens are passed to
where. In previous, token-based algorithms use the local models for token movement
and a token is routed to all agents within the teams. In this approach, Intelligent
Coordinator (ICo) provides token movement decision by using token passing
algorithm called coordination algorithm. In this paper, we show a multiagent system
for supporting university workflows as a case study. This concept offers a range of
coordinated services, tasks allocation and access to resources through the intelligent
coordinator agent and supports on the fundamental computerized subsystems for the
university’s administrative, teaching, library and student affairs.
Traditional university systems provide all workflows as fully automated
computerized systems. In our multiagent system, each subsystem is constructed as a
composite agent and ICo communicates and coordinates among composite agents. A
composite agent is composed of agent teams or individual agents. If anyone agent
appears a new task or information or request, it creates a token and sends to ICo
through the Negotiator Agent (NA). NA has responsibilities of passing the token to
correct destination agent within the same composite agent and uses coordination
algorithm like ICo. ICo determines when and where to pass the token directly using
its coordination algorithm with the help of MIE. MIE is a simple rule based reasoning
engine. It can move to the other sites when any NA requires it. This approach
promises to reach the message or task or resource directly to the receiver agent with
low cost and little communication.
In the rests of the paper, we review the previous approaches related to multiagent
coordination and communication in section 2. We discuss the proposed hierarchical
composite multiagent architecture in section 3 and token-based coordination with
token passing algorithms for ICo and NA in section 4. We briefly describe the
components of ICo in section 5 and case study implementation and results in section
6. Finally, in section 7, we conclude the paper with our future work.

2 Related Works

Efficient and effective coordination between large agent teams promises for
performing complex and distributed tasks successfully. P. Scerri et al. have developed
an integrated token based algorithm for scalable coordination [1], [2], [3], [4]. They
used tokens to encapsulate anything that needs to be shared by the team, including
information, tasks, and resources. The tokens are routed with decentralized manner
through the team via the use of local decision model, Partially Observable Markov
Decision Process (POMD) that determines what to do with the tokens in order to
maximize expected utility.
M. Dastani et al. [6] describes an exogenous channel-based compositional
coordination language, called Reo to manage the interaction of individual agents and
multi-agent systems. To enhance high-level communication capability in multiagent
systems and to provide inter-area coordination, an approach through modeling agent
conversations based on a component-based construction and incorporating distributed
conversation managers [7] has been proposed.
A. Aldea. et. al. [10] proposed a multiagent architecture to coordinate the Spanish
activity in organ transplants. It is structured in four levels: national, zonal, regional
and hospital level which constructed as agents and two other agents: Emergency
Coordinator and Historical Agent. When there is a new organ available for transplant
in a hospital addresses in the first place the needs of patients that have reached an
extremely critical stage; if no patients, it tries to find an appropriate recipient as close
as possible to the donor’s hospital in order to minimize both the financial costs to
transport the organ and length of transport time.

3 Hierarchical Composite Multiagent Architecture

Multiagent system architecture is a typical system architecture that has intelligent


agents as the system components and social communication as the interactions.
Hierarchical architecture is a typical control-oriented architecture of multiagent
system. It well matches human organization management procedures and provides
effective feedback and control ways. In this multiagent architecture, there have many
heterogeneous composite agents and one coordinator agent. Coordination in
hierarchical composite multiagent architecture based on [9] is shown in Fig. 1.

Fig. 1. Coordination in Hierarchical Composite Multiagent Architecture.

3.1 Composite Agents

We create a composite agent team CA = {CA1, CA2, …, CAn} and CAi is


composed of a Negotiator Agent (NA) and member agents, CAi = {A1, A2, …, An}.
NA may be any one of member agents who has responsibility to communicate with
other agents within CAi. NA selects appropriate agents among all agents within the
same composite agent to pass the token according to types of tokens.
Each CAi has its own behaviors and goals. We consider a composite agent team
CA = { AdminAgent, DeptAgent, LibraryAgent, StuAffairAgent}. Behavior of
AdminAgent is doing administration and it is composed of one administrator agent
and staff agents. DeptAgent is composed of all department teams that include several
teacher agents. Its behaviors and tasks are teaching, supervising, correction, drawing
course schedule or school timetable, etc.
LibraryAgent includes librarian agent, library staff agents and its own tasks are
member registration, book reservation, book hiring, sending warning message for
expired date hired books, inserting or updating databases, etc. StuAffairAgent
includes Head agents, staff agents. Some of its tasks are student registration process,
timetabling examinations, creating or updating students’ roll calls, etc.
Some individual agents may be humans and their profile is included in CAi. For
example, teacher agents are humans and they do the teaching. Agents in the same
team do the same kinds of tasks.

4 Token Based Coordination

Coordination in the activities of the agents in a multiagent system is a key element of


Multiagent System organization. Token-based algorithms have been developed by [1],
[2]. A token encapsulates control and information needed for message passing, task
allocation, and resources sharing and so on. The general format of a token used in our
approach is shown in Fig. 2. There are five types of tokens: inform token, task assign
token, resource token, request token and negotiate token.

Token ID Title Content Detail Description


Sender ID Sender Address
Receiver ID Receiver Address
Attachment Deadline Signature Reply

Fig. 2. General format of a token.

4.1 Informing Messages

When any agent wants to inform some messages or notices, it creates a token and
passes to the ICo. ICo replicates the token, fills with each receiver address and sends
to all composite agents in the same time. When NA within a composite agent receives
an inform token, it passes the token to all individual agents included in its composite
agent.

4.2 Task Allocation

If the token is task token, ICo checks the category of task and find the appropriate
composite agent with the help of MIE. Then, ICo sends the task token to appropriate
composite agent and MIE to NA to find appropriate individual agents. NA selects an
appropriate agent to perform the task among all agents that accepted the task. If there
is no available agent to accept the task, NA selects an appropriate agent among all
agents that have appropriate skills and time to perform the task.
The appropriate agent selAg based on experiences Expr, skill or ability Abl and
free time to perform the task T is defined in equation (1). A task t will be considered
to satisfy the specification R if R(t) = 1. Assuming that R(t) is a reward function for
an assigned task and defined in equation (2) and Expr can be seen by such function in
equation (3).

selAg= MIN (WorkLoad ( SAg i )) × MAX R (t ).P (t / Ag , Expr , Abl , T ) (1)


∀SAg i ∈ SAg ∀SAg i ∈ SAg

number of finished tasks within deadline with best quality


R(t) = (2)
number of assigned tasks

number of finished tasks in previous


Expr = (3)
number of assigned tasks in previous
If an appropriate agent exists, it accepts the task, checks the signature of the sender
agent and replaces its signature to the signature field of the token. Then, the token is
re-passed to the ICo after the agent has finished the task. The task in the token has to
finish in time according to the Deadline. If the task is not finished in time, ICo
perform the punish scheme for the agent that is responsible for the unfinished task. If
any agent rejects a task, which is assigned, ICo also perform the punish scheme for
that agent.

Fig. 3. Token passing procedure for task token used by ICo.


Sometimes, the task cannot be completed to perform by an individual agent and
NA itself has to perform the task. In order to successfully accomplish one task
allocation process, there are passing several tokens through ICo. Token passing
procedures for a task token used in ICo and NA are shown in Fig. 3 and Fig. 4.

Fig. 4. Token passing procedure for task token used by NA.

4.3 Reward/ Punish Scheme

If no agent accepts the task, negotiator agent (NA) selects an appropriate agent among
all available agents and sends the task token. If the selected agent rejects the task, NA
informs to the ICo and ICo send a first warning token to this agent via NA. If the
selected agent continues to reject, ICo perform the punish scheme.
ICo gives a reward to an agent that accepts the task, becomes selected agent and
finishes the task before the deadline with the best result. If an agent accepts the token
but the task is not finished in time, ICo sends a warning token to this agent via NA.
All tasks can be finished in time with the best quality because of the reward/punish
scheme of ICo.

4.4 Requesting the Resource

Individual agents may request the resource to perform their tasks. When ICo receives
a request token, ICo checks the availability of the resource with the help of MIE
which searches the detail facts of the resource in the related databases and checks
whether the other agents currently used or not. If the resource is available, the
resource is packed into the attachment and the token is sent to the agent that requested
the resource.
When ICo receives the resource token, ICo searches the requested agents. If there
are more than one requested agents, ICo checks the tasks’ priorities that each agent
have to do using this resource and chooses one agent that has maximum priority of the
task. Then ICo sends the resource token to the selected composite agent and NA
passes the token to the requested agent. If there is more than one, NA chooses
appropriate agent based on the task’s priority like ICo.

5 Intelligent Coordinator (ICo)

Intelligent coordinator (ICo) works with three components: ICo, Mobile Inference
Engine (MIE) and AgentList schema. ICo is a program implementing coordination
algorithm, also called token passing algorithm that determines where to pass the token
with the help of the MIE. The host of MIE is ICo and ICo also manages and controls
the movement of MIE. The abstract structure of ICo is shown in Fig. 5.

Fig. 5. Structure of Intelligent Coordinator Agent (ICo)

5.1 Mobile Inference Engine (MIE)

MIE is a rule based reasoning engine that works with AgentList schema. If MIE
wants to get the data in the databases of other sites, it can move to these sites. In
addition, MIE and its replicas move to composite agents when any negotiator agents
required it. The titleMatching function for task token passing is shown in Fig. 6.
Remaining functions in MIE are not described detail in this paper. The detail rule
explanations of MIE depend on the specific application and may be changed
according to the nature of the application.
Fig. 6. An Example Function in MIE.

5.2 AgentList Schema

AgentList schema is a knowledge base that contains the data of all individual agents
in this case study multiagent system. One agent record includes: AgentName,
CompositeAgent, AgentID, Address, TeamName, Role, Skill, Current Assigned Task
and Task Schedule. AgentID is combined with platform and localName according to
[13] [14]. AgentList is updated automatically whenever any one agent record is
changed.

6 Case Study Implementation

A composite agent team CA = { AdminAgent, DeptAgent, LibraryAgent,


StuAffairAgent } is being evaluated by prototyping in JADE [13] with Java
programming and mySQL database. Each composite agent has one interface which
allows adding and deleting individual agents within the same team. A simple case
study is briefly described as follows.
AdminAgent creates a token to draw the course timetable for next academic year
and sends to ICo. First, ICo checks the tokenID and MIE works the TitleMatching
function. TokenID is Task Allocation and Title Content is Course Timetabling. An
example of MIE’s TitleMatching function is as follows: IF t.TitleContent=”Course
Timetabling” OR “Creating Question” OR “Assign Course to Teachers” OR
“Marking for student answers” THEN return DeptAgent. So, ICo sends the task token
for each course to the DeptAgent. There is no need to pass the other composite agents.
When NA in DeptAgent received the task token, NA calls MIE. MIE’s
TitleToRoleMatching function works with TeachersProfile database. Detail rules are
not described in this paper. NA adds the teacher agents, which MIE returned, to a set
of selected agents and sends inform tokens to all agents in the set of selected agents.
Then, NA computes for appropriate agent among all agents that accepted the task
according to the equation (1).
P(t/Ag, Expr, Abl, T) is the probability of tasks will be finished. We assumed Expr
is 1 for each working year and it represents the number of working years for each
teacher agent. Abl is the union of role, rank, degree of education and preference or
last year experienced course for each teacher which expressed as integer values. T
represents an available time to teach the course. R(t) for each teacher agent is marked
in the Remark field of TeachersProfiles. Workload for each teacher agent is also
included in the TeachersProfiles. TeachersProfiles table includes teachersID, name,
rank, dept, role, degree, Experience (year), workload (times), prefer course1, prefer
course2, prefer course3, last-year course1, last-year course2 and timetable for week
days.
NA selects an appropriate agent that has minimum workload together with
maximum probability and sends the task token to the selected agent. NA selects the
required number of agents for all courses. If any conflicts arise, NA negotiates to get
the agreement among teachers using negotiate token. NA prepares the timetables for
class rooms looking and matching teachers’ timetables and packs it to the attachment
of the token and sends to ICo. And then ICo passes the token to AdminAgent.
We tested the task allocation among individual agents in our prototype model and
traditional procedure. Manually or traditionally task allocation to teachers in a
university takes more time including negotiating time until the global agreement. In
our approach, there is very little negotiating time as the first time task assigning
reaches to the correct agent. Fig. 7 shows the time units versus the number of agents
for normal procedure and our model.
The result can prove the acceleration of task assignment for teacher agents. In
addition, ICo can provide that the task tokens are assigned to correct agents with low
communication overheads. All the tasks can be finished without delay and agents are
assigned tasks with equal workloads.

7
Time Units required to

6
allocate the task

5
4
3
2
Coordination without ICo and NA
1
Coordination through ICo and NA
0
5 10 15 20 25 30 35 40 45 50
Number of agents

Fig. 7. Performance comparison between coordination with and without ICo and NA.

7 Conclusion

We presented an approach using tokens for coordination between composite agents in


multiagent system. Token passing algorithms are developed to reach the destination
agents directly and to complete the tasks in time. Our proposed multiagent system
architecture includes coordinator agent (ICo) and several composite agents. ICo takes
the duty of coordination and communication between composite agents using token
passing algorithm. The Negotiator Agent (NA) provides the internal communication
between individual agents within the same composite agent using token passing
algorithm. ICo and NA determine where destination to pass the token with the help of
Mobile Inference Engine (MIE). MIE has several rule functions to work with required
databases and it can move to access these databases in composite agents.
ICo allows reaching the token directly to the correct receiver agent without extra
routing to other agents and reducing coordination cost. Main purpose of this approach
is to provide efficient and effective coordination among large agent teams with very
little communication. We plan to address the proposed coordination compared with
some of other coordination approaches.

References

1. Y.Xu, P.Scerri, B.Yu, S. Okamoto, M. Lewis, and K. Sycara.: An integrated Token-Based


Algorithm for Scalable Coordination. Proc. of the Fourth International Conference on
Autonomous Agents and Multiagent Systems (AAMAS’05). (2005) 407 - 414
2. Y. Xu, P. Scerri, B. Yu, S. Okamoto, M. Lewis, and K. Sycara.: A POMDP Approach to
Token-Based Team Coordination. Proc. of the Fourth International Conference on
Autonomous Agents and Multiagent Systems (AAMAS’05). (2005)
3. P. Scerri, Y. Xu, J. Polvichai, B. Yu, S. Okamoto, M. Lewis, and K. Sycara.: Challenges in
Building Very Large Teams. Lecture Notes in Economics and Mathematical Systems, Vol.
558. Springer Berlin/ Heidelberg (2007) 197-228
4. P. Scerri, J. A. Giampapa, K. P. Sycara.: Techniques and Directions for Building Very
Large Agent Teams. International Conference on Integration of Knowledge Intensive
Multi-Agent Systems (KIMAS’05). (2005) 79-84
5. Y. Xu, P. Scerri, K. Sycara and M. Lewis.: Comparing Market and Token-Based
Coordination. Proc. of the Fifth International Conference on Autonomous Agents and
Multiagent Systems (AAMAS’06). (2006)
6. M. Dastani, F. Arbab and F. de Boer. Coordination and Composition in Multi-Agent
Systems. Proc. of the Fourth International Conference on Autonomous Agents and
Multiagent Systems (AAMAS’05). (2005)
7. F. Lin, D. H. Norrie, R.A. Flores and R. Kremer.: Incorporating Conversation Managers
into Multi-agent Systems. (2000)
8. C. Varela and G. Agha.: A Hierarchical Model for Coordination of Concurrent Activities.
Third International Conference on Coordination Languages and Models
(COORDINATION ’99). (1999)
9. N. Bensaid and Ph. Mathieu.: Integration of hypothetical reasoning in hierarchical multi-
agent architecture. (1996)
10. A. Aldea, B. Lopez, A. Moreno, D. Riano and A. Valls.: A Multi-Agent System for Organ
Transplant Coordination. Proc. of the Eighth Conference on AI in Medicine in Europe.
(2001)
11. H. Tianfield, J. Tian and X. Yao.: On the Architectures of Complex Multi-Agent Systems.
IEEE/WIC International Conference on Web Intelligence/ Intelligent Agent Technology.
(2003)
12. M. Wooldridge.: An Introduction to Multi Agent Systems. ISBN 047149691X (2002)
13. F. Bellifemine, A. Poggi and G. Rimassa.: Developing Multiagent System with JADE.
Lecture Notes in Computer Science. Intelligent Agents VII. Agent Theories Architectures
and Languages. Vol 1986/2001. Springer Berlin / Heidelberg (2001) 42-47

You might also like