170 likes | 186 Views
Multi-Agent Organizer. by Kogan Tanya Shusterman Evgeny. Advisor : Domshlak Carmel. Motivation. Solve the problem of meeting scheduling between two persons. Schedule a meeting and satisfy user ’ s individual preferences. Keep user ’ s calendar and preferences information private.
E N D
Multi-Agent Organizer by Kogan Tanya Shusterman Evgeny Advisor: Domshlak Carmel
Motivation • Solve the problem of meeting scheduling between two persons. • Schedule a meeting and satisfy user’s individual preferences. • Keep user’s calendar and preferences information private.
Basic Definitions • Agent - software module that negotiate and schedules meetings. • User - person that owns the agent. • Preferences on the values of various meeting parameters. • Constraints on the meeting parameters which either explicitly specified by the user or derived from the current state of the schedule.
Project Parts • Negotiation algorithm between the agents. • Finding preferentially Pareto-optimal solution for current meeting proposal. • Convenient graphic user interface.
CP-network (Boutilier et al. 99`) An intuitive, qualitative, graphical model of preferences, that captures statements of conditional preferential independence. • DAG in which each node represent a state variable. • The immediate parents of a variable in the network are those variables that affect user’s preference over its values. • Any CP-network defines a consistent partial order over the complete assignments on its variables.
A B C D E F Example of a CP-network
My preferences: If I have “Presentation” then I’d like to do it during the morning or at 12:00. If I have a meeting with Jon during the morning then I prefer to do it in Haifa, otherwise I prefer to do it in Beer-Sheva. Translation for software (this) "subject" "Presentation" -> (this) "time" morning 12:00 (person) “Jon" 1 & (time) "morning" 1 -> (this) "place" Tel-Aviv Haifa (person) “Jon" 1 & (time) "morning" 0 -> (this) "place" Beer-Sheva. Preferences definition
CP-network with constraint arcs subject Jon time place town constraints length day preferences
Negotiation Algorithm Agent A Agent B Meeting request generate request generate all offers Send first offer generate offer check constraints No generate offer Send next offer generate offer insert meeting Yes insert meeting
Finding Solutions Given a CP-network and the current constraints, generate a list of all feasible offers for a meeting, sorted according to the preferences of the user. This generator is based on the algorithm for constraint-based preferential optimization from [2].
Confirmation Owner Agent Request for new meetings extract new meeting Show new meeting Confirm Reject enter the meeting into the dairy start negotiation from begining
Tools • Python 2.0 for Windows • Java • Gadfly (database support) • IMAP4 (mail protocol)
Future development • Providing an approach for scheduling meetings with more than two agents. • Development of more natural language for preference and constrains elicitation.
Bibliography • Craig Boultilier, Ronen I Brafman, Holger H. Hoos and David Pool. Reasoning with Conditional Ceteris Paribus Preference Statements (1999) • Craig Boultilier, Ronen I Brafman, Chris Geib and David Poole. A Constraint-Based Approach to Preference Elicitation and Decision Making (1997). • Sandip Sen. An automated distributed meeting scheduler. (Department of Mathematical & Computer Sciences, University of Tulsa) • Leonardo Garrido, Katia Sycara. Multi-Agent Meeting Scheduling: Preliminary Experimental Results. • Axel van Lamsweerde, Robert Darimont and Philipe Massonet. The Meeting Scheduler System - Problem Statement. (University Catholique de Louvain, Belgium)