Multi-Agent Scheduler - The Department of Computer Science

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 Paretooptimal 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.
Example of a CP-network
a
a
A
B
C
c:d
b
b
( a  b)  ( a  b ) : c
c
( a  b )  ( a  b) : c
c
d
c :d
d
d: f
f
d:f
f
D
F
E
c:e
e
c :e
e
Preferences definition
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.
CP-network with constraint arcs
Main window
User’s Request for Meeting
Negotiation Algorithm
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].
Viewing of results
Confirmation
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
1.
2.
3.
4.
5.
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)