
In recent years there has also been intensive investigation on using agent technologies
to achieve scheduling automation for distributed users [1], [2]. Endowed with certain
knowledge and information about their users and relevant jobs, autonomous or semi-
autonomous agents are employed to process calendars and coordinate with each other
a mutually acceptable time for a meeting on behalf of their users. For coordination
between distributed users, protocols ranging from simple but effective contract net to
recent market mechanisms are extensively employed. In the contract net protocol [3],
an agent for a user (usually the agent for the meeting host) proposes one or more time
proposals according to its user’s availability. The other user agents then bid for the
proposals. User preferences or biases were considered in [4] when proposing and
accepting time slots. User preferences, however, were values defined and input by
users themselves. This obviously increases the workload of users, and more seriously,
decreases the usability of the scheduling software since personal preferences or
requirements are always difficult to define in exact numbers. Because the
coordination and negotiation between user agents always follow a fixed routine (e.g.,
one agent proposes time slots and others bid, a decision on a proposed time slot is
based on bids from all agents, etc.), the scheduling procedure cannot make timely
responses for varied calendar conditions and user requirements. This inevitably causes
ineffective scheduling which has unnecessary information collection and
computation.
2.1 An Effective Solution for Meeting Scheduling
The approach proposed here for automatic meeting scheduling, called iMeeting,
adopts intelligent agents and fuzzy logic to seek the best available solutions based on
user personal information through flexible and efficient coordination. User personal
information such as preferences for a time slot and the importance of a meeting to a
user can be either input by user through natural language, or automatically learned by
agents through the users’ previous time-management behaviour or other exterior
information proactively collected by the agents. Meanwhile, a kind of lightweight
adaptive agent is designed to implement flexible and efficient coordination between
user agents. Based on an easy-to-use web portal, iMeeting provides automatic
meeting scheduling for users at any time and anywhere from any device. Figure 1
illustrates an overview of the iMeeting software. iMeeting develops a client-server
architecture to cope with the limitations of current handheld devices whose
computational power and operating systems (e.g., PalmOS) are generally incapable of
running large data processing and handling tasks such as incoming request in the
background. The iMeeting server stores user calendar information and undertakes
necessary computation tasks for calendar management and meeting scheduling,
whereas client machines provide an intuitive interface for users to request and receive
all kinds of calendaring and scheduling services. All scheduling work is dealt within
the iMeeting server through internal interactions between agents. Even inside the
system, iMeeting agents only request information about other users
from their user
agents when it is really necessary. Users are only informed of automatically searched
solutions (via their user agents) when scheduling is done. iMeeting avoids any
unnecessary disclosure of users’ personal information thus protecting user privacy to
a great extent.
121