INSPECT-II: An Air Campaign Planning Evaluation Aid

Plan Representation and Reasoning
with Description Logics
and Ontologies
Yolanda Gil
Lecture Notes, October 4, 2000
CS 541 Artificial Intelligence Planning
www.isi.edu/~gil/cs541
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
1
Outline

Representing actions and plans with description logic




Action taxonomies (CLASP)
Plan taxonomies (SUDO-PLANNER)
Goal taxonomies (EXPECT)
Planning ontologies


Process Specification Language (PSL), NIST
PLANET
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
2
Representing Knowledge in Description
Logic (DL)

Description logics are extensions of frame-based systems
where classes can be defined intensionally


Class taxonomy is automatically generated through
subsumption




A subsumes B iff all instances of B are also instances of A
Instances can be automatically classified


Ex: SUVs are vehicles with 4 seats that weight between 1T and 2T
Ex: MyNewCar is a vehicle with 4 seats that weighs 1.3T
=> MyNewCar is an SUV
Relations can also have definitions and can be classified
Tradeoff between expressivity and efficient reasoning
Some well know description logic systems: CLASSIC,
LOOM, NIKL
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
3
Representing Planning Knowledge in
Description Logics: Overview

Action taxonomies in CLASP


Plan taxonomies in SUDO-PLANNER


extended language to represent action networks
plan subsumption of partially ordered plans
Goal taxonomies in EXPECT

expressive representations of goals and their parameters
These systems can exploit the descriptions of all the objects
in the domain (domain knowledge) in order to reason
about action, goal, and plan descriptions
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
4
CLASP: CLAssification of Scenarios and
Plans [Devanbu and Litman 94]

Extension of a DL system (CLASSIC)

Language to express action networks
– Sequence, loop, repeat, test, subplan

Subsumption and classification algorithms for that language
– Action network subsumption viewed as DFA acceptance

Propositional, STRIPS-style representation of actions





States (goals are represented as states)
Actions
Plans
Scenarios (plan instances)
Reasoning based on these descriptions:



Organizing plan classes
Retrieving plan types
Validation of scenarios
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
5
Core Classes in CLASP
(DEFINE-CONCEPT Action
(PRIMITIVE
(AND Classic-Thing
(AT-LEAST 1 Actor)
(ALL ACTOR Agent)
(EXACTLY 1 PRECONDITION)
(ALL PRECONDITION State)
(EXACTLY 1 ADD-LIST)
(ALL ADD-LIST State)
(EXACTLY 1 DELETE-LIST)
(ALL DELETE-LIST State)
(EXACTLY 1 GOAL)
(ALL GOAL STATE))))
USC CS 541 AI Planning Lecture Notes
(DEFINE-CONCEPT State
(PRIMITIVE Classic-Thing))
(DEFINE-PLAN
Plan
(PRIMITIVE
(AND Clasp-Thing
(EXACTLY 1 INITIAL)
(ALL INITIAL State)
(EXACTLY 1 GOAL)
(ALL GOAL State)
(EXACTLY 1 PLAN-EXPRESSION)
(ALL PLAN-EXPRESSION
(LOOP Action)))))
Yolanda Gil
6
Defining Actions, States and Plans in
CLASP in a Telephony Domain
(DEFINE-CONCEPT System-Act
(AND Action
(ALL ACTOR System-Agent)))
(DEFINE-CONCEPT Connect-Dialtone-Act
(AND System-Act
(ALL PRECONDITION
(AND Off-Hook-State
Idle-State))
(All Add-LIST Dialtone-State)
(ALL DELETE-LIST Idle-State
(ALL GOAL
(AND Off-Hook-State
Dialtone-State))))
(DEFINE-CONCEPT Callee-Off-Hook-State
(PRIMITIVE State))
(DEFINE-CONCEPT Callee-On-Hook-State
(PRIMITIVE State))
(DEFINE-CONCEPT Callee-Off-Caller-On-State
(AND Callee-Off-Hook-State
Caller-On-Hook-State))
USC CS 541 AI Planning Lecture Notes
(DEFINE-PLAN Pots-Plan
(AND Plan
(ALL PLAN-EXPRESSION
(SEQUENCE
(SUBPLAN
Originate-And-Dial-Plan)
(TEST
(Callee-On-Hook-State
(SUBPLAN Terminate-Plan))
(Callee-Off-Hook-State
(SEQUENCE
Non-Terminate-Act
Caller-On-Hook-Act
Disconnect Act)))))))
(DEFINE-PLAN Originate-And-Dial-Plan
(AND
Plan
(ALL PLAN-EXPRESSION
(SEQUENCE
Caller-Off-Hook-Act
Connect-Dialtone-Act
Dial-Digits-Act))))
Yolanda Gil
7
Defining Instances in CLASP
(CREATE SCENARIO pots-busy-scenario
(AND Plan
(FILLS INITIAL state-u1on-u2off)
(FILLS GOAL state-u1on)
(FILLS PLAN-EXPRESSION
(caller-off-hook-u1
connect-dialtone-on-u1
dial-digits-u1-to-u2
non-terminate-on-u2
caller-on-hook-u1
disconnect-u1))))
(CREATE-IND state-u1on-u2off
(AND state-U1on State-U2off))
(CREATE-IND connect-dialtone-on-u1
(AND Connect-Dialtone-Act
(FILLS ACTOR switching-system)
(FILLS PRECONDITION state-u1off-idle)))
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
8
SUDO-PLANNER [Wellman 88]



Exploits subsumption to control the search during plan
generation
Actions represented in DL (NIKL), organized in taxonomy
Plans represented as partially ordered sets of actions


Eliminate search nodes whose plan is subsumed (dominated) by
other nodes
SUDO-PLANNER had other features not discussed here:




Uncertainty reasoning and partial goal satisfaction
Policy constraints that relate actions to external events
Conditional effects
Qualitative probabilistic networks
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
9
Action Taxonomy in SUDO-PLANNER
(defconcept surgery
:is (:and action
(:the route invasive-path-into-body)))
(defconcept biopsy
:is-primitive action ...))
(defconcept open-lung-biopsy
:is (:and biopsy
(:the route open-lung-path)))
(defconcept open-lung-path
:is (:and invasive-path-into-body ...))
System deduces that open-lung-biopsy is a surgery
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
10
Plan Representation and Subsumption in
SUDO-PLANNER

Plan is described as a set of action types associated with
identifiers


Plan is simplified if action subsumption and same id


[(surgery, id1) (CABG, id2)]
[(surgery, id1) (CABG, id1)] -> [(surgery, id1)]
Plan subsumption

Action network viewed as bipartite graph matching
a1
a2
a5
a1
a4
a5
a3
a4
a6
a2
a3
a6
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
11
Eliminating Redundant Paths in Plan Space
Search

Dominance-based planning:



Generate new nodes by adding constraints to search nodes
Derive dominance (i.e., subsumption) based on domain knowledge
Eliminate nodes in the plan graph that are dominated by others
...
A* a1 A*
a2 A*
A* = {ai…aj}
ai subsumes aj when i<j
USC CS 541 AI Planning Lecture Notes
a2 b7 A*
A* a1 b5 A*
X
a1 b5 A*
Yolanda Gil
12
Reasoning about Goals in EXPECT
[Swartout et al 98]

Highly declarative representation of goals


Goals as verb-based expressions
Rich language of goal parameter types
– Qualification parameters that describe the type of task
– Intentional and extensional sets

Given a goal, matcher looks for methods (operators) that
have the capability of achieving that goal



can match variabilized goals
can decompose goal into subgoals through reformulations
Goal representations have been used in several contexts:



representing planning goals
problem solving
agent matchmaking
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
13
Representing Goals in EXPECT

Represented as a case grammar (verb + roles)


Roles can be filled by:






ex: ESTIMATE OBJ duration OF trip
a specific instance:
a concept:
a type of instance:
extensional sets:
intensional sets:
add OBJ 3 TO 5
compute OBJ (spec-of factorial) OF 7
divide OBJ number BY 2
find OBJ (spec-of maximum) OF (54 15 256)
add OBJ (set-of number)
find OBJ (set-of (spec-of violated-constraint))
IN configuration
Roles filled by concepts express task qualification parameters
declaratively
(compute-factorial ?n) -> (compute (obj (spec-of factorial)) (of number)))
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
14
Matching Goals in EXPECT


Desired goals and available capabilities are automatically
translated to LOOM concepts
Classifier is used to find most specific method capability
OBJ
that subsumes the posted goal
Method capability:
(move
(OBJ (inst-of cargo))
move
(WITH (inst-of aircraft)))
Goal:
(move
(OBJ (inst-of cargo))
(WITH C-140))
OBJ
move
OBJ
move
cargo
cargo
WITH
vehicle
WITH
aircraft
cargo
WITH
C-140
OBJ
move
WITH
truck
Self-organizing method taxonomy
USC CS 541 AI Planning Lecture Notes
cargo
Yolanda Gil
15
Flexible Matching through Goal
Reformulation

When no capability matches a posted goal, but more specific
versions of the goal match


Use descriptive knowledge to reformulate goal




ex: no method to estimate round-trip time (rtt) of a vehicle, but there
are methods to estimate rtt of aircraft and trucks
reexpress goal into subgoals by breaking down one of the arguments
recombine the results of solving subgoals
Conjunctive (disjunctive) subgoals produce conjunctive
(disjunctive) reformulations
Types of reformulations



Covering reformulation: subgoals cover partitions of a class
Set reformulation: subgoals iterate over elements of a set
Input reformulation: subgoals handle each of the subtypes
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
16
Goal Matching in EXPECT
Calculate round-trip time (RTT)
for aircraft
Find route from
location1 to location2
Calculate RTT
for transport aircraft
Calculate RTT
for combat aircraft
Find egress route
from Ryad to Kuwait city
A) Subsumption-based match: the posted
goal is subsumed by a capability
B) Reformulation-based match: the posted goal can be
satisfied by combining two or more existing capabilities
Find route
from location1 to location2
Find addresses of
US citizens in Kuwait
Find phone numbers of
US citizens in Kuwait
Find route from
city1 to city2
C) Reverse subsumption-based match: a
capability can satisfy some aspect of the goal
USC CS 541 AI Planning Lecture Notes
D) Partial match: a capability is similar/related
to the posted goal
Yolanda Gil
17
Overview of Planning Ontologies

Why planning ontologies




Process descriptions in PSL



knowledge reuse
knowledge sharing
knowledge modeling
temporal constraints
resources
Describing plans in PLANET


can represent state-based, plan-based search, hierarchical plans
captures plan representations understandable by people
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
18
Process Specification Language (PSL)
[NIST, 99]

National Institute of Standards and Technology (NIST),
Manufacturing Systems Division



Proposed to Int’l Standards Organization (ISO)
PSL core represents widely accepted commitments




Academic and industrial collaborators
activity, activity-occurrence, object, timepoint
PSL extensions accommodate possible shareable
agreements
Contains axioms defining terms and constraints
Available at http://www.mel.nist.gov/psl/
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
19
PSL Overview
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
20
PSL Modules for Activities and Orderings
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
21
PSL Core

Activity



Objects



Generic activity: occurrences, interruptions, nondeterministic,
subactivities
Ordering: ordering over activities, complex ordering relations,
junctions
Resources: capacities, homogeneous sets, inventories,
divisibility, usage, resource paths, pools, requirements, resource
roles, substitutability
States: defined, constraints
Timepoints

Duration theory, activity durations, temporal orderings
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
22
PLANET: a PLAN Semantic nET [Gil & Blythe 00]

Capture unifying views on planning algorithms




Represent manually created plans


typically include unintended flaws (incomplete, unjustified,
inconsistent)
Capture planning context



constraints, commitments, task templates, alternative choices
state-based and objective-based goals
operator-based and HTN-based plans
initial constraints (guide, user advice, preferences) and restraints
initial state, constraints and goals may be incompatible
Available from http://www.isi.edu/expect/projects/planet/
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
23
Some Terms Defined in PLANET

Planning problems



Goals and effects



Goals: state-based goals, objective-based goals
Human readable descriptions
Actions, operators, and tasks



Planning problem context: world state, desired goals, external
constraints
Planning problem: candidate plans (rejected, feasible, selected)
Plan task descriptions: plan task templates, plan tasks,
Capabilities, preconditions, effects, subtasks, primitive tasks,
plan steps
Plans

Commitments, sub-plans, planning level
USC CS 541 AI Planning Lecture Notes
Yolanda Gil
24
PLANET: An Ontology for Representing Plans
Plan
plan-commitments
capability
effects
preconditions
Plan-task-description
plan-refinements
feasible
consistent
complete
sub-plans
planning-level
sub-tasks
task-of
task-template
Plan-task
rejected
justified
feasible
ordering
temporal
unexplored
Planning-problem-context
Goal-specification
planning - level
commitments
desired-goals
state-based
-goal-spec
objective-based
-goal-spec
initial-state
world-state
planning-problems
human-readable
description
accomplishes
selected
candidate-plans
Plan-task-template
external constraints
USC CS 541 AI Planning Lecture Notes
Resourcerequirements
resource-needed
amount
when-needed
Yolanda Gil
25