This paper is organized in 5 sections. The design
of the proposed system and an implementation of the
system on Java platform are described in Section 2
and 3, respectively. In Section 4, we present the re-
sult of experiments. Finally, in Section 5, we describe
some concluding remarks.
2 MEETING ARRANGEMENT
SYSTEM
In this section the design of the proposed meeting ar-
rangement system will be presented.
When a user of the proposed system intends to call
a meeting, he selects participants from registered on-
line users. In addition, he provides the further infor-
mation about the meeting that consists of a timeframe
during which the meeting must be held, the duration
of the meeting, and the subject of the meeting. Then
an agent is created to arrange the meeting and collect
schedules from both the inviter and invitees. They are
requested to classify each hour in the timeframe into
three categories: “free”, “tentative”, and “busy”. An
agent may ask a user whether he can join a meeting
only when the meeting will be held across his ten-
tative hours. In addition to the three categories, an
inviter of a meeting can select the category named
“preferable” in which he hopes the meeting will be
held.
The negotiation procedure of an agent is as follows:
1. Merge all the participants’ schedules and generate
a list which contains all the possible continuous
hours up to the meeting length. Hours classified
as busy by one more participants are excluded.
2. Order the list by the number of hours relating a ne-
gotiation, by the number of persons relating a ne-
gotiation, and by the inviter’s preference.
3. Exit from this procedure if no negotiation is
needed, i.e., the number of hours relating a nego-
tiation of the top element of the list is zero.
4. Retrieve each element of the list and negotiate with
the related participants to open their schedules until
a negotiation succeeds or the list is empty.
3 IMPLEMENTATION
An implementation of the proposed system has been
developed on Java platform by using our mobile agent
framework, Maglog(Motomura et al., 2005; Kawa-
mura et al., 2005) .
As shown in Fig. 1, in this implementation, agents
described in the previous section are divided two
types of agents: scheduling agents and query agents.
A scheduling agent corresponding to a meeting cre-
ates query agents for each participant of the meeting.
Each query agent asks one participant’s schedule con-
currently. The scheduling agent does the rest of the
work for meeting scheduling.
In addition to the two types of agents, a user man-
agement agent is introduced to manage user informa-
tion that include login name, password, IP address of
the user’s computer, and online/offline status. Login
name and password are static while IP address and
online/offline status are updated dynamically when a
user logins to the system. A user can use any com-
puter on the network because his login name is tied
up with the IP address of his computer dynamically.
Each query agent migrates to the user management
computer to obtain the IP address of a participant’s
computer at the first, and then migrates to the partic-
ipant’s computer by using the obtained IP address to
ask his schedule. The IP address of the user manage-
ment computer is assumed as known.
Figure 1: Overview of the meeting arrangement system de-
veloped on Java platform.
As mentioned in the above section, when one in-
tends to call a meeting, he needs to select participants
and to provide the further information about the meet-
ing that consist of a timeframe during which the meet-
ing must be held, the duration of the meeting, and
the subject of the meeting. Figure 2 shows a sam-
ple screen-shot of selecting participants and inputting
information about a meeting. One can select partic-
ipants through dragging a node from the tree in the
Available Participants pane and dropping
it into the Selected Participants pane. If a
dragged and dropped node is leaf then one person cor-
responds to the node is added to the participants list,
otherwise persons correspond to descendant leaves of
WEBIST 2006 - INTERNET TECHNOLOGY
118