Meeting scheduling is a good candidate for automation because it is often tedious, iterative, and time-consuming for people. Even when everyone involved in a meeting has available times to meet, the process of searching for a commonly available time in the presence of communication delays (either through electronic mail or in contacting by phone), and in the presence of other meetings being scheduled concurrently, can be frustrating and lead to suboptimal solutions. Past efforts in developing automated meeting schedulers have met with limited success, although they are available in a number of office software systems. The limitations often stem from the inability of a scheduler to represent the preferences a particular user has in how his or her calendar should be managed, and from the inability of the scheduler to adapt its scheduling strategies to the evolving multi-agent situation.
Our work is directed toward developing intelligent agents that can support human collaboration, and we have paid particular attention to the meeting scheduling application where agents negotiate over scheduling options on behalf of their associated humans. Under routine circumstances, these agents should converge on acceptable meetings unaided, while in more complex situations (requiring cancellations or complicated tradeoffs) the agents should aid their associated human users to schedule meetings better and faster. Having evolved out of a tradition of work in Distributed AI (DAI), our approach views meeting scheduling as a distributed task where a separate calendar management process is associated with each person in order to increase reliability and exploit inherent parallelism. Moreover, giving each person his or her own process enhances privacy and permits personal tailoring of preference parameters for scheduling meetings. But because the information about available times is distributed among processes that wish to minimize how much information they reveal, arriving at meeting times involves selective, distributed search. Our research is concerned with how to implement and control that search.
For example, when we view the interactions among schedulers as consisting of rounds of proposed meeting times until a mutually acceptable proposal is found, then the characteristics of a calendar, and the time needed to schedule meetings (number of rounds), will depend on the strategy adopted in generating proposals. Consider two simple strategies. One, called earliest, starts with the soonest available time to meet and works forward in time until a meeting is arranged. The other, called hierarchical, allows schedulers to converge on times by focussing down from abstract levels, such as first finding a week that generally seems lightly scheduled for all participants, then finding a good day in that week, and then finding a good hour in that day. Clearly, these two strategies will result in very different looking calendars: earliest will bunch meetings up early on, while hierarchical will tend to spread them out evenly. As a result, hierarchical will build calendars that are more accomodating to fitting in meetings that must be held on short notice, but will be less likely to be able to fit in extended meetings.
More interestingly, by developing analytical models of the scheduling processes and resulting calendars, we can make predictions about how many rounds each strategy will need, on average, as the calendar begins to fill up. These predictions show that, in some circumstances, a scheduler with a calendar built using one strategy should in fact switch over to the other strategy at some point to be more efficient. Because our analyses provide quantitative predictions, moreover, we can go beyond intuitions and instead provide clear criteria for how a scheduling agent should adapt to changing circumstances.
Thus, in this project, we have been investigating how people can delegate certain decisionmaking responsibilities to processes within the information infrastructure, thereby improving both personal and interpersonal productivity. Our ongoing work in this area involves exploring other facilities in intelligent information infrastructures, including change monitoring in distributed software systems, reason/rationale maintenance in scientific enterprises, and intelligent electronic notebooks. These facilities will enhance the abilities of systems analysts to anticipate how modifications to a service will impact various users (and other services). Moreover, in scientific enterprises that span large geographic areas, or that persist over long periods of time, a major concern is that the rationale for choices be maintained so that inappropriate decisions are avoided as circumstances change. By building infrastructures that actively support the storage, retrieval, and delivery of information to appropriate decisionmakers, we can help enhance continuity of endeavors through persistent processes, despite turnovers in personnel.