An Automated Distributed Meeting Scheduler for FCVW Plug-in Hsiang-Hwa Koo and Elhadi Shakshuki Jodrey School of Computer Science Acadia University Wolfville, Nova Scotia, Canada B4P 2R6 032139k@acadiau.ca, elhadi.shakshuki@acadiau.ca Abstract People have faced conflicts for shifting scheduled meetings to other time slots in order to fit incoming meetings or to find a time slot to book a meeting. The goal of this research is to develop a personal distributed meeting scheduler in FCVW (Federated Collaborative Virtual Workspace) that assists users to deal with these situations. FCVW is an extension of CVW [6] developed by MITRE. In our approach to meeting scheduling, is to provide each user with meeting scheduler agent. Each agent is able to manage, negotiate and schedule tasks, meetings, events, appointments for its user. This paper describes the objective of our research to develop an automated distributed meeting scheduler. is another alternative to help users’ book and arrange their meetings and appointments. January 05 M T W T F S 1 2 3 1 0 1 4 1 1 1 5 1 2 1 6 1 3 2 7 1 4 2 8 1 5 2 9 1 6 2 3 3 7 2 4 3 1 User 8 2 5 9 2 6 0 2 7 1 2 8 2 2 9 S 0 January 05 M T W T F 3 1 0 1 4 1 1 1 5 1 2 1 6 1 3 2 7 1 4 2 7 2 4 3 User 8 2 5 9 2 6 0 2 7 S S 1 2 8 1 5 2 9 1 6 2 1 2 8 2 2 9 3 3 0 1 Figure 2. Computer scheduling applications January 05 1 Introduction Network A scheduler is one of the most important personal tools in daily routines. Since computing technologies have improved rapidly, software designers have developed many useful personal applications to fit users’ needs and replace the traditional tools. Scheduler is one of those significant developments, and Figure 1 shows the traditional scheduler, and Figure 2 is an instance of using scheduling software to book meetings. In the software realm there are many scheduling applications such as Microsoft Outlook [4] and Microsoft Exchange Server [5]. M T W T F S 1 2 3 4 5 6 7 8 S 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 January 05 M 3 T 4 W 5 T F 6 7 8:00 AM - 9:00 AM On Mon. Jan. 17, 2005 January 05 S S 1 2 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 M 3 T 4 W 5 T 6 F 7 S S 1 2 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 24 25 26 27 28 29 30 31 31 8:00 AM - 9:00 AM On Tue. Jan. 25, 2005 Figure 3. Book meetings through the network User Figure 1. Traditional scheduler These applications can be combined together through a network. The combination of these programs allows one user to book meetings on another user’s scheduler. Figure 3 shows an example booking meetings via the network. PDA Copyright © 2005, American Association for Artificial Intelligence (www.aaai.org). All rights reserved. Although the aforementioned schedulers are useful tools, they cannot work on behalf of their users automatically and autonomously. The main goal of our work is to develop an automated distributed meeting scheduler which consists of several agents. Each user can have an agent that acts on behalf of him or her. This agent utilizes the calendar and allows its user to inputs a meeting request and then it negotiates with agents corresponding to other users to schedule the meeting. The agents will communicate with each other using the email server. Figure 4 shows our view how a user might book meetings through the network with the personal assisting agents. The agent can help the user to manage multiple tasks, events, and appointments. Utilizing different negotiation strategies [3] the agent will be able to make its decisions AAAI-05 Student Abstract / 1610 which are based on the users’ constraints and preferences that allow it to alter meetings in different time slots. We will be also considering incorporating a learning technique to the agent. This makes the agent to monitor the user behaviour as well as other agents’ behaviours. January 05 Network 3 T 4 W 5 T 6 W T F S 1 2 3 4 5 6 7 8 S 9 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Personal Agent January 05 M T 10 11 12 13 14 15 16 Personal Agent Personal Agent M F 7 January 05 S S 1 2 8 9 M T W T F 3 4 5 6 7 S S 1 2 8 9 10 11 12 13 14 15 16 10 11 12 13 14 15 16 17 18 19 20 21 22 23 17 18 19 20 21 22 23 24 25 26 27 28 29 30 24 25 26 27 28 29 30 31 31 messages into the machine language and transfer to the destinations. The client application has abilities to communicate with server, manage the negotiation with other agents, book or find the desired time slots, and display the calendar. The client is a part of FCVW plug-in in the Eclipse platform. FCVW is an extension of Collaborative Virtual Workspace (CVW) [6]. CVW provides the “virtual building” which users can communicate, collaborate, and share information without geographic problem. The Eclipse [7] is an open source platform with an IDE which allows users to edit programming languages such as JAVA and C/C++. The Eclipse consists of extensive plug-ins, and users can use the plug-in development environment to develop their own plug-ins, and then integrate them into the Eclipse workbench. The meeting scheduler will be used as a plugin. 4 Conclusion Figure 4. Book meetings using agents 2 Design Concepts In this work, we will utilize the approaches presented in Pragnesh[1] and Sandip Sen [2]. The design of the meeting schedulers has two main parts, the server and the client. The components of the client include calendar displayer, negotiation manager, learning processor, email generator, and schedule finder. The calendar displayer displays the visual contact with the user. The negotiation manager manages tasks or appointments with other users or agents. The learning processor experiences from real world, and provides feedbacks to increase decision-making. The email generator generates the latest notification, and sends it to attendees. The schedule finder provides available time slots to the negotiation manager, and arrange meetings internally. The server consists of three components, including knowledge base, message formatter, backup database and communicator. The knowledge base stores all previous negotiation cases that will be used by the learning processor. The message formatter responsible for parsing incoming messages and formatting the outgoing messages to the required message formats. The backup database assists users to backup data of their local hard drive, and update meetings in their scheduler when they are offline. The communicator builds a link between users, and transfers messages between users. This forms the basic architecture of our proposed meeting scheduler system. Automated distributed meeting schedulers are the next generation of the scheduling applications. It is used the personal assisting agent to let schedulers work intelligently. The learning processor and negotiation strategies are the two most difficult concepts to materialize. Although researchers have found some solutions to solve these two problems, it requires a lot of improvements and study in order to achieve optimal result, and stability. References [1] Pragnesh Jay Modi, Manuela Veloso, Stephen F. Smith, and Jean Oh, 2004, CMRadar: A Personal Assist Agent for Calendar Management, At The Agent Oriented Information Systems. [2] Sandip Sen, 1997, An automated distributed meeting scheduler, IEEE Expert: Intelligent Systems and Their Applications, Volume 12 Issue 4. [3] Roman Berres, and Eugenio Oliveira, 1999 , Automated Distributed Meeting Scheduler, Faculdade de Engenharia, Universidade do Porto. [4] Microsoft Outlook http://office.microsoft.com/enus/FX010857931033.aspx [5] Microsoft Exchange http://www.microsoft.com/exchange/default.mspx [6] Collaborative Virtual http://cvw.sourceforge.net/ 3 Implementation Currently, we started implementing the proposed meeting scheduler in FCVW. FCVW consists of Server, client and a middleware layers. The server program contains abilities to identify users’ authorization, and to modify users’ Workspace [7] Eclipse Foundation http://www.eclipse.org/ AAAI-05 Student Abstract / 1611 Server (CVW)