GTrans: Mixed-Initiative Planning System

Download Report

Transcript GTrans: Mixed-Initiative Planning System

IT 803 Spring 2004 – Mixed-Initiative Intelligent Systems – Prof. G. Tecuci
GTrans: Mixed-Initiative
Planning System
by Michael Cox
Reviewed by
Vu Le
Presentation Outline





Introduction to GTrans

Planning as goal transformation.

GTrans: a system using goal transformation
Example of using GTrans in planning
Details of GTrans
Lesson learned
References
2
Typical Planning Models: Search




In AI community, one of the most dominant
models of planning is search, as in Protégé.
Planning consists of searching from initial state to
goal state via sequence of operators.
Pre-cond – Operator(params) – Effect
Example: blockworld
B
C
A
B
C
A
Initial state
B
A
C
B
A
C
C
B
A
Final state (Goal)
3
Typical Planning Models:
Hierarchical Task Decomposition




The other common model
is hierarchical task
decomposition, as in
Disciple.
The planning task is
successively decomposed
into subtasks until they are
elementary tasks.
Find the solutions for
simplest tasks.
Successively compose the
solutions until solution to
the initial task is obtained.
T1
S1
T11 S11 … T1n S1n
T111 S111 … T11m S11m
4
The Alternative Approach:
Planning as Goal Transformation




The “alternative” is to model planning as goal
transformation.
Planning involves moving goals through a problem
space to reach equilibrium between available
resources & constraints of dynamic environment.
This approach is still using search in the
background and hiding all details of search from
user.
The user can steer the goal around the problem
space with the help from system to find the best
possible solutions.
5
Planning as
Goal Transformation

Equilibrium between resource and constraints:
enough resource & constraints are preserved.

Constraints violation




Goal is to deliver package to a recipient at certain address.
Recipient is no longer at that address (constraint violated).
Goal change: return the package to sender.
Not enough resource



Goal is to destroy the bridge.
Not enough dynamites to fulfill the task (not enough resource).
Goal change: to reduce the transportation through the bridge
such as damage part of the bridge.
6
Planning as
Goal Transformation

The motivation of modeling planning as goal
transformation is


Cognitive model of planning as search is not intuitive for
human because
Human planner typically jumps around based on existing
knowledge rather than systematically searches the state
space.
B
C
A
B
C
A
Initial state
B
A
C
B
A
C
C
B
A
Final state (Goal)
7
Planning as
Goal Transformation

The other motivation:


Being able to understand planning details
requires amount of knowledge in planning
technology such as pre-conditions, postconditions and operators with variables bound.
Naïve users feel overwhelmed by details of
planning as search.
8
Presentation Outline





Introduction to GTrans

Planning as goal transformation.

GTrans: a system using goal transformation
Example of using GTrans in planning
Details of GTrans
Lesson learned
References
9
GTrans



Mixed-initiative Planning System.
Using goal transformation approach.
Using Prodigy planning system in backend.
10
Presentation Outline





Introduction to GTrans
Example of using GTrans in planning

Create scenario

Step-by-step demonstration
Details of GTrans
Lesson learned
References
11
Create Scenario






Create scenario is the first step
in planning.
Create scenario loads a
domain and sets up the
objects that belong to domain.
Load domain: Military
File/LoadDomain/Military: A
map comes up with no object.
Map has 2 rivers R1, R2 and

bridges over them. There is a
town & 2 airports.
Goal of this exercise is to
prevent movement across
rivers.
When user loads a domain,
the system offers the relevant
objects in that domain for
user to select.

Military domain: Objects: fighter
12
jets, warships, missiles…
Create Scenario








The map has details but they are just images.
Objects that represent them are needed to interact with
GTrans.
Objects have properties: F15 can destroy only 1 bridge and
can damage any bridge.
Create objects: mobile v.s stationary objects.
Mobile objects are drag-and-drop enabled: airplanes, ships,
people.
Stationary objects are not: bridges, rivers, towns, airports.
This scenario needs F15s to destroy bridges.
Create 5 bridges over 2 rivers, 4 F15s, 1 police, 1 infantry.
13
Set Initial States




Select State/Initial States.
Once the user selects initial
state, the system suggests
lists of initial states
associated with objects.
User can set the state of
objects by right-click on
them.
Examples:



F15_1 is ready
Airport_1 is close to river_2
Bridge_1 enables movement
over River_1
14
Set Goals




Select State/Final States.
System helps set up the goals by
providing lists of goals associated
with objects.
There are 2 ways to set goal:
Right-click on target, a popup menu
with goals associated with objects.
Select the desired goal. Bridge: building
bridge, destroy bridge.

Assign resource such as mobile object
to target object by dragging:


Right-click on target, a list of goals
associated with targets and resources
comes up. Select the desired goal.
Drag F15 to bridge -> goal: destroy
bridge by F15

The goal of this scenario is
to make River_1 impassable

The letter “G” will be
asserted at the target.
15
Run Planner





Click on Planning/Run to start the planner.
There will be some types of message returned
from planner such as: Done or No Plan with
explanations.
No plan to blow up all 5 bridges with 4 F15s.
Need goal transformation.
System helps user transform the goal by offering a
hierarchical trees of predicates in particular
domain.


is-destroyed  is-damaged
Impassable  restricted-movement.
16
Transform Goal



Click on Planning/Change Goals to start the transform.
Select current goal and change it.
Change from “outcome-impassable” to “outcome-restrictmovement”.
17
The Final Plan
18
Presentation Outline



Introduction to GTrans
Example of using GTrans in planning
Details of GTrans








Architecture
Communication
Control
Shared awareness
Tasks
Evaluation
Lesson learned
References
19
Architecture
RMI
KQML
• Three-layer architecture:
GTrans RMI server
Planning user interface (PUI)
Prodigy/Agent
20
Architecture





GTrans RMI server and Planning UI use RMI
mechanism to communicate.
Planning UI and Prodigy/Agent use KQML to
exchange information.
GTrans server allows multiple users to co-plan.
Planning UI coordinated with Prodigy/Agent allows
users to create objects, set or modify goals, solve
problems…
Prodigy/Agent allows underlying Prodigy to
communicate with Planning UIs.
21
GTrans Server




Users log in/out to/from
GTrans server during planning.
A user shares planning
information to other users via
GTrans server in joint/share
planning mode.
The user uses PUI to
communicate with system.
The interactions of Gtrans server and Planning UIs
follows publisher-subscribers pattern.


A PUI subscribes to the publisher (GTrans server) when user logs
in to the system.
An event generates from PUI will be distributed to subscribed
22
PUIs via publisher.
Planning User Interface (PUI)



This is the user’s workplace where menu-based mixedinitiative transactions happen.
Users can setup goals, assign resources, change goals with
agent assistance.
There are two types of transactions from Planning UI


To GTrans Server: RMI
To Prodigy/Agent: KQML
23
Prodigy/Agent





Consists of Prodigy Planner and wrapper
Prodigy Planner is a domain independent,
state-space planner.
Prodigy uses backward & forward search
from initial states to goal.
Prodigy domains are represented with a
conceptual hierarchy and a set of operators.
Wrapper serves as interface between
Prodigy planner and Planning UI.
24
Presentation Outline



Introduction to GTrans
Example of using GTrans in planning
Details of GTrans

Architecture

Communication






Control
Shared awareness
Tasks
Evaluation
Lesson learned
References
25
Communication

There are 2 types of communication:




Among users
Between user and agent
Communication between users is realized by
GTrans RMI server.
Communication between user and agent is
realized by Prodigy wrapper.
26
Human Users Communication
RMI
KQML
27
Registration Service





GTrans RMI Server offers registration service
Each Planning UI connects to GTrans server
has to register.
Each Planning UI disconnects to GTrans
server has to unregister.
Registration service monitors all connected
clients and allows interaction between
clients.
Planning UI connects to server via Java RMI.
28
Registration Service
subscribe
acknowledge
create event
GTrans RMI
Server
acknowledge
Planning UI
distribute event
acknowledge
unsubscribe

Typical events:




Add objects
Set goals
Set states
Request shared objects





Move objects
Delete objects
Remove goals
Remove states
Release shared objects
29
RMI (Remote Method Invocation)





RMI facilitates the interprocess communication
between Java Virtual Machines.
RMI enables remote method invocation.
RMI server creates the remote objects.
RMI client invokes a method on a remote object.
Example


Naming.bind(“rmi:///CalendarImpl”, new CalendarImpl());
//create an instance of object and bind it to name CalendarImpl
Naming.lookup(“rmi:///cs.gmu.edu/CalendarImpl”);
//lookup the remote object at the specified URI: remote objects
//bound to the name CalendarImpl at cs.gmu.edu
30
Human User & Agent Communication
31
Human User & Agent Communication


The communication is enabled via Prodigy
wrapper.
KQML (Knowledge Query & Manipulation
Language) is used in communication.
 Lisp-like syntax
 (tell :content (word “hello”) :sender M
:receiver S)
 (request :content (kill P))
 (achieve :content (killed P))
32
KQML - Standard Verbs
33
KQML - Standard Parameters
34
Presentation Outline



Introduction to GTrans
Example of using GTrans in planning
Details of GTrans

Architecture
Communication

Control






Shared awareness
Tasks
Evaluation
Lesson learned
References
35
Control Issues (Single Plan)


User sends planning request to
agent via achieve(goals)
If the agent does not fully
understand the context of the goals,
then it asks user via
query(obj,state) such as What is
initial state of the missile?

The clarification is realized by
reply(obj,state)


If everything is clear then agent
generates plan and send back the
plan to user via tell(plan)
If there are more than one available
plans in system then the agent
receives a standby signal. In this
case we have multiple plans
36
Control Issues (Multiple Plans)




When agent receives standby
signal then it asks user if s/he
wants more by ask-one.
The user can cancel or next
next signals agent to provide a
stream of plans.
The first next provides all
needed parameters such as
depth-bound, time-bound…

agent sends back first plan via
tell.


The next next specifies how the
next plan differs from the first
(shorter, different…)
Continue until no more plan
37
Control Issues (Multiple Plans)
38
Presentation Outline



Introduction to GTrans
Example of using GTrans in planning
Details of GTrans

Architecture
Communication
Control

Shared awareness






Tasks
Evaluation
Lesson learned
References
39
Shared Awareness

There are two types of communication:



Among users
Between user and agent.
Consequently, there are two types of shared
awareness:


Shared awareness among users
Shared awareness between user and agent
40
Shared Awareness Among Users

There are 3 modes of planning




Separate planning: Plans cannot be seen by
other planners, all resultant plans are
independent.
Information sharing planning: Plans can be seen
by other planners, all resultant plans are
independent
Joint planning: Plans can be seen by other
planners, all resultant plans combine into a
complex plan.
Share/Joint planning allows shared
awareness to be realized.
41
Separate Planning




The users do not cooperate in separate
planning.
No one can see other’s
plan.
The domains from
different users can be
different.
In short, the two plans
are total independent.
42
Information Sharing Planning





The users do not cooperate in separate
planning.
But one can see other’s
plan.
The domains from
different users can be
different.
In short, the two plans
are total independent.
One of purposes of this
mode is to compare
plans.
43
Joint Planning





The users do co-operate
in planning.
One can see other’s
plan.
The domains from
different users can be
different.
In short, the two
planning are
independent.
Joint planning is really
useful in multi-domains
planning.
44
Joint Planning

Example of joint planning:






Suppose to send a package from a post office to
an oversea country.
One planner has expertise in truck-logistics
domain.
The other planner has expertise in air-logistics
domain.
Neither domain is suffice to carry on the task.
Neither planner can achieve the goal by itself.
Need to joint plan: from post office carry
package by truck to nearest airport. From there
fly the package over to that country.
45
Shared Objects




Ownership of objects: in joint planning the server serves as
repository of objects.
If user wants to borrow objects not owned by her/him then
s/he sends request to server.
If the object is available (either not owned by any one or
owned but not in use) then that object is sharable.
Example:


In military domain, an F15 is defined as being able to blow up only
1 bridge but can damage a numbers of bridges.
If the task is blowing up 2 bridges with only 1 F15 then there are 2
solutions:


Either ask for help by getting 1 more F15 if it’s available.
Or reduce the goal to blow up 1 bridge and damage 1 bridge.
46
Shared Awareness between user and
agent



The agent and user share
information during the
discourse.
The agent sends to user the
info based on request:
All objects in domain.
All available goals in domain.
All initial states in domain.
All hierarchy of concepts,
predicates in domain.
The information helps user
create objects, set initial
states, setup goals, transform
goals.
47
Shared Awareness between user and
agent

All objects in domain: help user select available
objects in domains.


Available goals in domain: help user decide what
goal to achieve.


Associated with bridge is goal of destroying, building…
Initial states in domain: help user setup initial states
of problem.


Fighter jets, warships, missiles… in military domain.
Associated with missiles is state of being stored, loaded…
Hierarchy of concepts, predicates: help user
transform the goal.

Hierarchy of predicates: is-destroyed  is-damaged
48
Presentation Outline



Introduction to GTrans
Example of using GTrans in planning
Details of GTrans

Architecture
Communication
Control
Shared awareness

Tasks

Evaluation





Lesson learned
References
49
Task: User Task





Defining the goals.
Assigning the resources. This is nice feature of Goal
Transformation.



The planning details are
hidden from user in black-box.
The user has 3 handles to the
black-box.
The user controls the planning
process by:
Users has more control over the process.
Set the priorities of goals (not implemented).
Adjusting the goals and resources based on the world
changes as well as the response (succeeded, failed with
explanations) from black-box.
50
Task: Agent Task




Generates the plan based on inputs from
users.
Helps users create objects, setup initial
states and goals (via menus)
Helps users transform the goals.
There are 3 types of goal transformation:



Goal type transformation
Goal argument transformation
Negated goal transformation
51
Goal Type Transformation

Transform a goal by moving the predicate of the
goal along an abstraction hierarchy defined in the
domain knowledge.
is-ineffective
is-isolated




is-destroyed
(is-ineffective enemy-brigade1)
(is-isolated enemy-brigade1) or (is-destroyed enemy-brigade1)
is more specific.
Assume the initial plan is (is-destroyed enemy-brigade1)
The discovery of non-combatants in the battle area necessitates
the change to (is-isolated enemy-brigade1)
52
Goal Argument Transformation

Transform a goal by moving its arguments
along the abstraction hierarchy of objects in
domain knowledge.




Initial goal: (destroyed-by bridge_1 F15_1) The specific
bridge bridge_1 is destroyed by specific F15_1
Transformed goal: (destroyed-by bridge F15) Any
bridge can be destroyed by any F15.
The transformed goal is more generic than initial goal.
When there is not enough resource to fulfill initial goal,
the transformed goal is good enough.
53
Negated Goal Transformation


This type of transformation is to inverse a goal.
Purposes: for what-if scenario


The user may want to see what happens if bridge_1 is not
destroyed by f15_1
Or to annul a particular goal and still want to keep
the planning process going on.


Initial goal: destroy bridge_1 and bridge_2 with only 1
F15_1. => Plan failed
Transformed goal: destroy bridge_2 only (more critical
infrastructure).
54
Presentation Outline



Introduction to GTrans
Example of using GTrans in planning
Details of GTrans

Architecture
Communication
Control
Shared awareness
Tasks

Evaluation






Lesson learned
References
55
Goal Satisfaction as Function of
Cognitive Model







Goal satisfaction is the ratio of actual goal satisfaction
achieved by the participant’s plan to the goal satisfaction
achieved by the optimal plan.
Given a goal to destroy a bridge, destroying it achieves
100% goal satisfaction, damaging it achieves only 50%
goal satisfaction.
The experiment uses 18 variations on the Bridge problem.
Insufficient resources exists.
Uses 2 models: search and goal transformation.
Search model allows partial goal planning.
Goal manipulation lets users transform the goal to achieve
partial goal planning.
56
Goal Satisfaction as Function of
Cognitive Model



Experts are 6 out of 13
subjects who had
familiarity to search in AI.
When presents with goal
manipulation model,
achievement is over 95
percent goal satisfaction
on average.
When presents with search
model, achievement is
about 80 percent goal
satisfaction on average.
57
Goal Satisfaction as Function of
Complexity




Problems with longer plan is considered more
complex than problem with shorter plan.
Complexity is dependent on the number of
steps in the optimal plan.
Uses the same setup as before.
Categorizes 18 problems into 3 categories:



Number of steps ≤ 13: Easy
14 ≤ Number of steps ≤ 25: Medium
26 ≤ Number of steps: Hard
58
Goal Satisfaction as Function of
Complexity


Presents the average goal
satisfaction ratio for
combination of planning
model and problem
complexity.

When the goal
manipulation model is
presented to users, the
goal satisfaction almost
remains the same with
increasing problem
complexity.
When the search model is
presented to users, the
goal satisfaction decreases
when the problem
complexity increases.
59
Goal Satisfaction as Function of
Expertise





Using the same setup as
before.
Presents the average goal
satisfaction ratio for
combination of planning model
and expertise levels.
The experts perform better than the novices in each model.
The goal satisfaction ratio is still higher in goal manipulation
model.
Both lines are not parallel and that means the difference
between novices and experts in goal manipulation model is
less than that of search model.
60
Presentation Outline





Introduction to GTrans
Example of using GTrans in planning
Details of GTrans
Lesson learned
References
61
Lesson Learned

Strength:





Planning becomes easier with visualization.
Hiding all search trees from novices => easier
for them to make decision.
Assigning resources & transforming goals as
needed make planning more understandable.
System helps users in setting up scenario and
goals as well as transforming the goal.
Drag & Drop capability speeds up the planning
process.
62
Lesson Learned

Weakness:





All goals have the same priorities.
In Joint/Share planning modes, all information is
shared. Should share only information which
may interfere the planning.
Mixed-initiative is less interactive and less
explicit.
No appropriate explanation for a planning
failure.
No learning capability.
63
Presentation Outline





Introduction to GTrans
Example of using GTrans in planning
Details of GTrans
Lesson learned
References
64
References









Cox, M. T., Edwin, G., Balasubramanian, K., & Elahi, M. (2001). Multiagent goal transformation and mixedinitiative planning using Prodigy/Agent. To appear in Proceedings of the 5th World Multiconference on
Systemics, Cybernetics and Informatics (SCI 2001). http://www.cs.wright.edu/~mcox/Papers/cox-edwinbalas-elahi.ps
Cox, M., Kerkez, B., Srinivas, C., Edwin, G., Archer, W. (2000). Toward Agent-Based Mixed-Initiative
Interfaces.In H. R. Arabnia (Ed.), Proceedings of the 2000 International Conference on Artificial Intelligence ,
Vol. 1 http://www.cs.wright.edu/people/faculty/mcox/ic-ai/abmii-camera-ready.pdf
Immaneni, T., & Cox, M. T. (2004). GTrans: An application for mixed-initiative collaborative planning during
emergency response situations. In W. W. Smari & W. McQuay (Eds.), Proceedings of the 2004 International
Symposium on Collaborative Technologies and Systems (CTS 04), (pp. 121-126). San Diego: Society of
Modeling and Simulation International. http://www.cs.wright.edu/people/faculty/mcox/Papers/immaneni-cox04.pdf
Veloso, M. M., Mulvehill, A. M., & Cox, M. T. (1997). Rationale-supported mixed-initiative case-based
planning. In Proceedings of the Fourteenth National Conference on Artificial Intelligence and Ninth Innovative
Applications of Artificial Intelligence Conference (pp. 1072-1077). Menlo Park, CA: AAAI Press / The MIT
Press. http://www.cs.wright.edu/~mcox/Ftp/veloso-mulvehill-cox.ps
Zhang, C., Cox, M. T., & Immaneni, T. (2002). GTrans version 2.1 User manual and reference (Tech. Rep. No.
WSU-CS-02-02). Dayton, OH: Wright State University, Departmentof Computer Science and Engineering.
http://www.cs.wright.edu/~mcox/Gtrans/Tech-Rep-WSU-CS-02-02.pdf
Cox, M. T. (2001). Toward tailored information presentation in support of collaborative planning. In B. Bell &
E. Santos (Eds.), Intent Inference for Collaborative Tasks: Papers from the 2001 fall symposium (pp. 44-50).
AAAI Technical Report FS-01-05.Menlo Park, CA :AAAI Press.
http://www.cs.wright.edu/~mcox/Ftp/mcox01.pdf
Cox ,M.T.(2000).A conflict of metaphors :Modeling the planning process.In Proceedings of 2000 Summer
Computer Simulation Conference (pp. 666-671) .San Diego :The Society for Computer Simulation
International. http://www.cs.wright.edu/people/faculty/mcox/Ftp/metapho-camera-ready.pdf
Finin, T., McKay, D., & Fritzson, R. (1992). An Overview of KQML: A Knowledge Query and Manipulation
Language. Computer Science Department, University of Maryland.
http://citeseer.nj.nec.com/chalupsky92overview.html
Zhang, C. (2002), Cognitive Models For Mixed-Initiative Planning. Master’s thesis. Wright State University,65
Dayton, OH. http://www.cs.wright.edu/~mcox/GTrans/zhang2002.pdf
References








Cox, M. T. (in press). Planning as mixed-initiative goal manipulation . To appear in the Proceedings of the
Workshop on Mixed-Initiative Intelligent Systems at the 18th International Conference on Artificial
Intelligence. Menlo Park, CA: AAAI Press. http://www.cs.wright.edu/~mcox/Ftp/cox-ijcai03.pdf
Michael T. Cox, Thomas Hartrum, Scott DeLoach,1 and S. Narayanan. Agent-Based Mixed-Initiative
Collaboration: The ABMIC project final report. Wright State University Technical Report WSU-CS-02-01, July
2002. http://www.cis.ksu.edu/~sdeloach/ai/publications/ABMIC-final.report2.pdf
Cox, M. T., & Veloso, M. M. (1997a). Controlling for unexpected goals when planning in a mixed-initiative
setting. In E. Costa & A. Cardoso (Eds.), Progress in Artificial Intelligence: Eighth Portuguese Conference
on Artificial Intelligence (pp. 309-318). Berlin: Springer. http://www2.cs.cmu.edu/afs/cs.cmu.edu/project/prodigy/Web/Mixed-init/Papers/m-init3.html
Cox, M. T., & Veloso, M. M. (1997b). Supporting combined human and machine planning: An interface for
planning by analogical reasoning. In D. B. Leake & E. Plaza (Eds.), Case-Based Reasoning Research and
Development: Second International Conference on Case-Based Reasoning (pp. 531-540). Berlin: SpringerVerlag. http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/prodigy/Web/Mixed-init/Papers/ui.ps.gz
Cox, M. T., & Veloso, M. M. (1997c). Supporting combined human and machine planning: The Prodigy 4.0
User Interface Version 2.0 (Tech, Rep. No. CMU-CS-97-174). Pittsburgh: Carnegie Mellon University,
Computer Science Department. http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/prodigy/Web/Mixedinit/Papers/ui-tech-rep.ps.gz
Cox, M. T., & Veloso, M. M. (in press). Goal Transformations in Continuous Planning. In M. desJardins (Ed.),
Proceedings of the 1998 AAAI Fall Symposium on Distributed Continual Planning. Menlo Park, CA: AAAI
Press / The MIT Press. http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/prodigy/Web/Mixedinit/Papers/goal-trans.ps.gz
Tecuci, G. Lecture notes of CS785 George Mason University, 2001.
Stanescu, B. Presentation: The Trips system. George Mason University, 2004.
66