Scheduling with Uncertain Resources Reflective Agent with Distributed Adaptive Reasoning RADAR
, but also under crisis conditions Help not only in routine situations Purpose Automation of office-management tasks, such as scheduling, handling, and resource allocation
Outline Overview of RADAR Resource-allocation system Optimization and elicitation Current and future challenges
PAL video Four-minute video: Military-setting motivation for RADAR (Carnegie Mellon) and CALO ( SRI ).
Challenges Intelligent performance of office-management tasks Collaboration with users Continuous learning of new knowledge and strategies
Main components Planning and coordination of high-level actions. Web Master Helps create and maintain web sites. Organizer Helps filter, sort, and prioritize messages. Calendar Manager Helps keep track of appointments and negotiate meeting times among multiple users. Briefing Assistant Helps compile reports based on multiple data sources. Resource Allocation
Outline Overview of RADAR Resource-allocation system Optimization and elicitation Current and future challenges
Purpose Automated allocation of rooms and related resources, in both routine and crisis situations. Assignment of offices Reservation of conference rooms Allocation of furniture, computers, and other office equipment
Year 1: Office allocation A prototype system for automated allocation of offices. Satisfying work-related needs of individual users and groups Maximizing user satisfaction
Year 1: Office allocation A prototype system for automated allocation of offices. Processing of natural-language requests Effective allocation of office resources Interface for a human administrator
Year 1: Office allocation Six-minute video Automated assignment of offices.
Years 2–3: Conference planning Scheduling of talks at a conference, and related allocation of rooms and equipment, in a crisis situation. Initial allocation plan Unexpected major change in space availability; for example, closing of a building Continuous stream of minor changes; for example, schedule changes and unforeseen equipment needs
Years 2–3: Conference planning Scheduling of talks at a conference, and related allocation of rooms and equipment, in a crisis situation. Temporal reasoning Uncertainty tolerance Information elicitation Collaboration with the human administrator
Years 2–3: Conference planning Demo: Semi-automated scheduling of conference events.
Outline Overview of RADAR Resource-allocation system Optimization and elicitation Current and future challenges
Architecture Info elicitorParserOptimizer Process new info Update resource allocation Choose and send questions Top-level control and learning Graphical user interface Administrator
Uncertainty The system allows uncertainty in the representation of all variables and functions in optimization problems. Uncertain nominals Uncertain integers Uncertain utility
Uncertain nominals An uncertain nominal value is either a complete unknown or a set of possible values and their probabilities. Example: We have ordered vegetarian meals, but there is a chance that we will receive meals of a wrong type. Meal-type: 0.90 chance: vegetarian 0.05 chance: regular 0.05 chance: vegan
Uncertain integers An uncertain integer is either a complete unknown or a probability-density function represented by a set of uniform distributions. Example: An auditorium has about 600 seats. Room-size: 0.2 chance: [ ] 0.6 chance: [ ] 0.2 chance: [ ] Proba- bility Room Size 0 0
Uncertain utilities An uncertain utility function may be represented in three ways. Complete unknown Piecewise-linear function with uncertain y-coordinates Room Size Quality Set of possible piecewise-linear functions and their probabilities 0.2 chance 0.8 chance
Main limitation We assume that all probability distributions are independent.
Optimization The optimization algorithm is based on randomized hill-climbing. At each step, reschedule one event Stop after finding a local maximum or reaching a time limit Search for a schedule with the greatest expected quality
Experiments Manual Auto rooms 62 events Manual Auto rooms 84 events without uncertainty with uncertainty 10 Search time Schedule Quality Time (seconds) 13 rooms 84 events Manual Auto rooms 32 events 0.80 Schedule Quality Manual and auto scheduling problem size
Information elicitation The system identifies critical missing knowledge, sends related questions to users, and improves the world model based on users’ answers.
Missing info: Invited talk: – Projector need Poster session: – Room size – Projector need Assumptions: Invited talk: – Needs a projector Poster session: – Small room is OK – Needs no projector Example: Initial schedule Available rooms: Room num. Area (feet 2 ) Proj- ector ,000 1,000 1,000 Yes No Yes Requests: Invited talk, 9–10am: Needs a large room Poster session, 9–11am: Needs a room Initial schedule: Talk Posters
Example: Choice of questions Initial schedule: Talk Posters Candidate questions: Invited talk: Needs a projector? Poster session: Needs a larger room? Needs a projector? Requests: Invited talk, 9–10am: Needs a large room Poster session, 9–11am: Needs a room Useless info: There are no large rooms w/o a projector × Useless info: There are no unoccupied larger rooms × Potentially useful info √
Example: Improved schedule Requests: Invited talk, 9–10am: Needs a large room Poster session, 9–11am: Needs a room Initial schedule: Talk Posters Info elicitation: System: Does the poster session need a projector? User: A projector may be useful, but not really necessary New schedule: Talk Posters
Choice of questions For each candidate question, estimate the probabilities of possible answers For each question, compute its expected impact on the schedule quality, and select questions with large expected impacts For each possible answer, compute the respective change of the schedule quality
Experiments We have applied the system to repair a schedule after a “crisis” loss of rooms. After Crisis 0.50 Manual Repair 0.61 Auto w/o Elicitation 0.68 Auto with Elicitation 0.72 Schedule Quality Manual and auto repair Schedule Quality Number of Questions Dependency of the quality on the number of questions
Outline Overview of RADAR Resource-allocation system Optimization and elicitation Current and future challenges
Main results Optimization based on uncertain knowledge of available resources and scheduling constraints Collaboration with the user Elicitation of additional information about resources and constraints
Current work Learning of typical requirements and default user preferences Learning of elicitation strategies Contingency scheduling
Learning of typical requirements The system analyzes known requirements and user preferences, and creates rules for generating default requirements. These rules enable the system to make reasonable assumptions about unknown requirements and preferences.
Learning of elicitation strategies The system analyzes old elicitation logs and creates rules for “static” generation of useful questions. These rules enable the system to ask critical questions before scheduling.
Contingency scheduling The system analyzes multiple possible scenarios and constructs different schedules for these scenarios. It thus reduces real-time re-scheduling required in crisis situations.
Learning of control rules for high-level planning and elicitation strategies Automated selection of reasoning and learning strategies from a library Future challenges