SlideShare a Scribd company logo
1 of 85
Download to read offline
Of Programs, Plans, and Automata:
101 things you can do with AI planning
Sheila A. McIlraith
Joint work with
Jorge Baier, Christian Fritz & Shirin Sohrabi
University of Toronto
Toronto, Canada
Oxford University,
February 24, 2015
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 1 / 71
...some great graduate students and collaborators ...
Jorge Baier Shirin Sohrabi Christian Fritz Tran Cao Son
Meghyn Bienvenu Aws Albarghouthis Niloofar Razavi
Nathan Robinson
Yixiao Wang
Sotirios Liaskos
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 2 / 71
It’s been 50 years ...
2015 marks the 50th anniversary of the Shakey Project, which resulted
in such innovations as A* search and STRIPS planning.
We’ve seen substantial advances in AI Automated Planning since that
time:
compact state and transition system encodings
advances in heuristic search and SAT
plans with hundreds of actions
... hundreds of objects
... 21000
states
plan computation ranging from milliseconds to a couple of hours
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 3 / 71
It’s been 50 years ...
2015 marks the 50th anniversary of the Shakey Project, which resulted
in such innovations as A* search and STRIPS planning.
We’ve seen substantial advances in AI Automated Planning since that
time:
compact state and transition system encodings
advances in heuristic search and SAT
plans with hundreds of actions
... hundreds of objects
... 21000
states
plan computation ranging from milliseconds to a couple of hours
Top-performing planners exploit heuristic search, though
planning-tailored SAT-based planners are starting to close the gap.
Most of these advances have been in classical planning.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 3 / 71
Automated Planning
Given (F, O, I, G), where:
F, set of propositions
O, transitions system described in terms of a set of operators
E.g, pickup(X)
Precondtion: handEmpty
Effect: holding(X), ¬handEmpty
I ∈ L(F), initial state description
G ∈ L(F), goal condition
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 4 / 71
Automated Planning
Given (F, O, I, G), where:
F, set of propositions
O, transitions system described in terms of a set of operators
E.g, pickup(X)
Precondtion: handEmpty
Effect: holding(X), ¬handEmpty
I ∈ L(F), initial state description
G ∈ L(F), goal condition
Planning Problem:
Find an ordering of operators which if applied in I lead to a state
satisfying G
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 4 / 71
Automated Planning
Given (F, O, I, G), where:
F, set of propositions
O, transitions system described in terms of a set of operators
E.g, pickup(X)
Precondtion: handEmpty
Effect: holding(X), ¬handEmpty
I ∈ L(F), initial state description
G ∈ L(F), goal condition
Planning Problem:
Find an ordering of operators which if applied in I lead to a state
satisfying G
Complexity:
PSPACE-complete [Bylander, 1994]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 4 / 71
Classical Planning
Given:
Initial state (fully described)
Goal condition (condition about final state)
Operators (deterministic)
Task:
Find any sequential plan
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 5 / 71
Non-Classical Planning
Non-classical planning can take many forms:
Given:
Initial state (partially described)
Goal condition (temporally extended goal and/or preferences, ...)
Operators (non-deterministic actions, complex actions, ...)
Task:
Find a (high quality) plan
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 6 / 71
Claims
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 7 / 71
Claims
1st Claim
Many tasks that involve reasoning about dynamical systems can be cast
as non-classical planning problems (and indeed many compelling
real-world planning applications are non-classical).
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 7 / 71
Claims
1st Claim
Many tasks that involve reasoning about dynamical systems can be cast
as non-classical planning problems (and indeed many compelling
real-world planning applications are non-classical).
2nd Claim
We can exploit state-of-the-art classical planners to effectively solve
non-classical planning problems.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 7 / 71
The 1st Claim
Many tasks that involve reasoning about dynamical systems can be cast
as non-classical planning problems. E.g.,
(customized) web service composition
synthesis of business processes
verification & counter-example generation
diagnosis of dynamical systems
explanation generation
activity recognition, plan understanding
narrative generation
stakeholder goal modeling
test generation for concurrent programs
network topology transformation
...
and at least 91 other tasks!
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 8 / 71
Spoiler Alert
Key Enabler:
It is the richness of the statement of the planning objective that
enables us to view 101 (and more) diverse endeavours as instances of
non-classical planning problems.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
Spoiler Alert
Key Enabler:
It is the richness of the statement of the planning objective that
enables us to view 101 (and more) diverse endeavours as instances of
non-classical planning problems.
These objectives can be specified via
Linear Temporal Logic
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
Spoiler Alert
Key Enabler:
It is the richness of the statement of the planning objective that
enables us to view 101 (and more) diverse endeavours as instances of
non-classical planning problems.
These objectives can be specified via
Linear Temporal Logic
Automata
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
Spoiler Alert
Key Enabler:
It is the richness of the statement of the planning objective that
enables us to view 101 (and more) diverse endeavours as instances of
non-classical planning problems.
These objectives can be specified via
Linear Temporal Logic
Automata
Regular Expressions in the form of (Con)Golog
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
Spoiler Alert
Key Enabler:
It is the richness of the statement of the planning objective that
enables us to view 101 (and more) diverse endeavours as instances of
non-classical planning problems.
These objectives can be specified via
Linear Temporal Logic
Automata
Regular Expressions in the form of (Con)Golog
Hierarchical Task Networks (HTN)
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
Spoiler Alert
Key Enabler:
It is the richness of the statement of the planning objective that
enables us to view 101 (and more) diverse endeavours as instances of
non-classical planning problems.
These objectives can be specified via
Linear Temporal Logic
Automata
Regular Expressions in the form of (Con)Golog
Hierarchical Task Networks (HTN)
and as either temporally extended goals (aka domain control
knowledge) or as preferences.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
LTL in a Nutshell
A modal temporal logic with modalities referring to time. Interpreted
over sequences of states (paths).
Syntax
if f ∈ F then f is a LTL formula
if φ and ψ are LTL formulae then so are ¬φ, φ ∨ ψ, ...
formulae constructed with the following temporal modalities:
future: U(until), (next), (always), ♦(eventually)
past: S(since), •(yesterday), (always past), (eventually past)
E.g., Always have your keys and eventually be at home.
(have(keys)) ∧ ♦(at(home))
(e.g., [Pnueli, 1977])
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 10 / 71
Example - Diagnosis
Example 1 - Diagnosis [Sohrabi, Baier, M, KR2010, AAAI11]
Observations
I started my car this morning; drove to work; on the way to work I
bought $5 worth of gas; I hit a pothole; the radio said it was -20
Celsius; I parked outside. At noon, I picked up my bag from the
trunk of the car. At the end of the day, my car would not start. I
checked the radio and it was still working.
What’s the explanation for my car not starting?
Battery died
Punctured gas tank, then ran out of gas
Starter motor broke
: 8[Sohrabi, Baier, M KR2010, AAAI11]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 11 / 71
Diagnosis as Non-Classical Planning
Dynamical Diagnosis
• Initial State
• Goal State
• Transition System
obsnobs1
System Description
obs2 obs3 . . .
Observations
(i.e., multiple partial states)
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 12 / 71
Diagnosis as Non-Classical Planning
Dynamical Diagnosis
• Initial State
• Goal State
• Transition System
obsnobs1
a1 a2 a3 ak
Diagnosis = {Assumptions, {a1, a2, a3, …, ak}}
System Description
obs2 obs3 . . .
Observations
(i.e., multiple partial states)
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 13 / 71
Example - Test Generation for Concurrent Programs
...
T1 T2 Tk serialization
[Razavi,Farzan,M,VVPS11,STTP14]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 14 / 71
Example - Synthesis of Business Processes
Process Order
PrePay
Account
Invoice Out Source
Manufacture
. . .
Fill Order Ship GoodsProcess Payment
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 15 / 71
Example 4 - Web Service Composition
Web Services (WS)
Web Services are Web-accessible programs and devices.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 16 / 71
Automating Web Service Composition (WSC)
Problem: Automatically select and compose services to achieve a
user’s objectives.
E.g.,
Make the travel arrangements for my IJCAI 2015 conference
1
Approach: non-classical planning objective comprising:
1. A generic procedure or script to specify roughly how to
perform the task.
2. A set of hard constraints and preferences that customize and
optimize for the individual user.
[M, Son, IEEE01, KR02]
[M, Son, IEEE01, KR2002]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 17 / 71
User Preferences
Why is this Hard ?
E.g., preferences can be
temporally-extended
• I prefer to always pay with my American Express credit card.
conditional
• If my return flight departs before 9am, then I prefer to stay in a hotel
located at the airport the night before departure.
interacting and/or mutually inconsistent
• I prefer to stay in one hotel for my entire trip.
• I prefer to stay at the conference hotel.
• I prefer to spend $100/night or less on my hotel room.
nested
• I prefer to always book my flight after my hotel reservation is
confirmed, if booking is being done 2 weeks or more prior to the trip.
1. User preferences can be arbitrarily complex and mutually inconsistent.
[Sohrabi, M, ISWC06,10][Sohrabi, Baier, M, IJCAI09]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 18 / 71
Historically, planning with LTL, Golog, and HTN
required special-purpose planners.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 19 / 71
The 2nd Claim
Question:
Can we leverage the benefits of classical approaches for these
compelling non-classical planning problems?
Claim:
In many cases it is possible to reformulate a non-classical
planning problem in order to apply directly or almost directly
successful classical approaches, yielding superior performance.
[Jorge Baier, Thesis 2010]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 20 / 71
We Address Compelling Non-Classical Problems
We have addressed the following problems:
Planning for LTL Temporally Extended Goals (TEGs)
Planning with LTL Temporally Extended Preferences (TEPs)
Planning with restricted RE’s – Golog-like Procedural Control
Planning with RE’s plus concurrency – ConGolog Procedural Control
Planning with Golog Sensing Procedures (not discussed)
Planning with Golog-like Procedural Preferences (not discussed)
Key Enabler: Translation to automata or petri-nets in a manner that
supports the exploitation of heuristic search planners
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 21 / 71
Common Approach: Reformulation
Common Approach: Reformulation
Reformulated
Non−classical
planning task
planning task
Reformulation
J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 7 / 19
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 22 / 71
Common Approach: Reformulation
Common Approach: Reformulation
Reformulated
Handled by existing solver? Is not handled by existing solver?
Non−classical
planning task
planning task
Reformulation
Planner
Modified
Planner
Existing
J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 7 / 19
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 22 / 71
The Rest of the Talk
Planning for LTL Temporally Extended Goals (TEGs)
Planning with LTL Temporally Extended Preferences (TEPs)
Planning with restricted RE’s – Golog-like Procedural Control
Planning with RE’s plus concurrency – ConGolog Procedural Control
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 23 / 71
Planning for LTL Temporally Extended Goals
Main Results:
1 First-order, finite logic to represent TEGs: f-FOLTL
(Following [Cerrito, Mayer, Praud, LPAR99])
2 Method to compactly convert TEGs into final-state goals
Algorithm: f-FOLTL formula → parameterized automaton
Theorem: Algorithm is correct
Theorem: Translation worst-case exponential
Property: Simplification and parameterization avoids worst-case
blowup in practice.
Representation of the automaton in a planning problem
3 Experimental evaluation: showing orders-of-magnitude
improvements over traditional approaches.
[Baier, M, AAAI2006]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 24 / 71
From f-FOLTL to Parameterized NFA
From f-FOLTL to Parameterized NFA
Example PNFA for (∀x). (ECapital(x) ⊃ ♦at(x)) ∧ ♦ at(Paris).
Paris
C2 NYC
C1
at(x) at(Paris)
NYC
(¬ECapital(x) ∨ at(x)) ∧ at(Paris)
⊤ ⊤
Plan: nil;
Objects: C1, C2, Paris, NYC. ECapital = {C1, C2, Paris}
Initial State: {at(NYC)}
J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 9 / 19
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 25 / 71
From f-FOLTL to Parameterized NFA
From f-FOLTL to Parameterized NFA
Example PNFA for (∀x). (ECapital(x) ⊃ ♦at(x)) ∧ ♦ at(Paris).
Paris
C2 NYC
C1
at(x) at(Paris)
NYC
(¬ECapital(x) ∨ at(x)) ∧ at(Paris)
⊤ ⊤
Plan: nil;
Objects: C1, C2, Paris, NYC. ECapital = {C1, C2, Paris}
Initial State: {at(NYC)}
J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 9 / 19
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 26 / 71
From f-FOLTL to Parameterized NFA
From f-FOLTL to Parameterized NFA
Example PNFA for (∀x). (ECapital(x) ⊃ ♦at(x)) ∧ ♦ at(Paris).
Paris
C2 NYC
C1
at(x) at(Paris)C1
NYC
(¬ECapital(x) ∨ at(x)) ∧ at(Paris)
⊤ ⊤
Plan: FlyTo(C1);
Objects: C1, C2, Paris, NYC. ECapital = {C1, C2, Paris}
Initial State: {at(NYC)}
J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 9 / 19
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 27 / 71
From f-FOLTL to Parameterized NFA
From f-FOLTL to Parameterized NFA
Example PNFA for (∀x). (ECapital(x) ⊃ ♦at(x)) ∧ ♦ at(Paris).
Paris
C2 NYC
C1
at(x) at(Paris)C1
C2 NYC
(¬ECapital(x) ∨ at(x)) ∧ at(Paris)
⊤ ⊤
Plan: FlyTo(C1); FlyTo(C2);
Objects: C1, C2, Paris, NYC. ECapital = {C1, C2, Paris}
Initial State: {at(NYC)}
J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 9 / 19
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 28 / 71
From f-FOLTL to Parameterized NFA (PNFA)
From f-FOLTL to Parameterized NFA
Example PNFA for (∀x). (ECapital(x) ⊃ ♦at(x)) ∧ ♦ at(Paris).
Paris
C2 NYC
C1
at(x) at(Paris)C1
C2 NYC
Paris
(¬ECapital(x) ∨ at(x)) ∧ at(Paris)
C1
C2 NYC
Paris
⊤ ⊤
Plan: FlyTo(C1); FlyTo(C2); FlyTo(Paris);
Objects: C1, C2, Paris, NYC. ECapital = {C1, C2, Paris}
Initial State: {at(NYC)}
J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 9 / 19
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 29 / 71
From PNFA to PDDL
Key Idea: Represent the PNFA within the planning domain.
We update original problem with:
New Predicates represent what objects are in what states
New Updates in Actions for the new predicates
New (Classical) Goal based on the accepting condition of the
automaton
Augmented Initial State
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 30 / 71
Experimental Evaluation
Our Reformulation + FFX [Thiebaux, Hoffman, Nebel, 2005]
versus
TLPLAN [Bacchus & Kabanza, 1998]
... on standard benchmarks extended with TEGs.
Experimental Evaluation
Our Reformulation + FFX (Thi´ebaux, Hoffmann, & Nebel, 2005)
versus
TLPlan (Bacchus & Kabanza, 1998)
... on standard benchmarks extended with TEGs.
Domain Speedup
< 2 times
faster
2-10 times
faster
1 order of
magn.
2 orders of
magn.
≥ 3 orders
of magn.
ZenoTravel 0 11% 22% 56% 11%
Logistics 6% 24% 24% 35% 12%
Robot 0 44% 33% 22% 0
Translation time never exceeds 15% of planning time.
Ratio |Automatonϕ|/|ϕ| never exceeds 1.
Solution lengths are comparable.
J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 11 / 19
Translation time never exceeds 15% of planning time.
Ratio |Automatonϕ|/|ϕ| never exceeds 1.
Solution lengths are comparable.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 31 / 71
The Rest of the Talk
Planning for LTL Temporally Extended Goals (TEGs)
Planning with LTL Temporally Extended Preferences (TEPs)
Planning with restricted RE’s – Golog-like Procedural Control
Planning with RE’s plus concurrency – ConGolog Procedural Control
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 32 / 71
Planning with LTL Temporally Extended Preferences
Main Results:
1 Compilation of TEPs in PDDL3 to final-state preferences.
2 Branch-and-bound algorithm that finds plans of increasing quality
3 Suite of heuristics, based on existing heuristics
4 Formal analysis:
conditions for optimality and k-optimality.
5 Implemented system: HPlan-P (IPC Runner Up)
6 Experimental analysis that shows that:
Heuristic and pruning are key to good performance
Our planner is more consistent than the competition winner
[Baier, Bacchus, M, AIJ2009]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 33 / 71
But what about (action-centric) procedural control?
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 34 / 71
The Rest of the Talk
Planning for LTL Temporally Extended Goals (TEGs)
Planning with LTL Temporally Extended Preferences (TEPs)
Planning with restricted RE’s – Golog-like Procedural Control
Planning with RE’s plus concurrency – ConGolog Procedural Control
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 35 / 71
Planning with Regular Expressions+
In planning, experts often know how to solve a problem, e.g.:
“If not at point A, then drive the truck to point A; while there
are packages at point A, pick a package and load it onto the
truck; drive to point B; while there are packages on the truck,
pick a package and unload it from the truck.”
We call this search control.
It can drastically increase planning efficiency.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 36 / 71
Golog
One language for specifying search control is Golog:
if not at(A) then driveTo(A);
while (∃pkg)at(pkg, A) do πpkg.load(pkg);
driveTo(B);
while (∃pkg)onTruck(pkg) do πpkg.unload(pkg)
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 37 / 71
Golog and ConGolog: Syntax
Golog:
a primitive action
φ? test condition φ
(δ1; δ2) sequence
if φ then δ1 else δ2 conditional
while φ do δ loops
(δ1|δ2) non-deterministic choice
πv.δ non-deterministic choice of argument
δ∗
non-deterministic iteration
{P1(t1, δ1); . . . ; Pn(tn, δn); δ} procedures
ConGolog: (in addition)
(δ1 δ2) concurrent execution
(δ1 δ2) prioritized concurrency
δ concurrent iteration
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 38 / 71
Golog and ConGolog: Syntax
Golog:
a primitive action
φ? test condition φ
(δ1; δ2) sequence
if φ then δ1 else δ2 conditional
while φ do δ loops
(δ1|δ2) non-deterministic choice
πv.δ non-deterministic choice of argument
δ∗
non-deterministic iteration
{P1(t1, δ1); . . . ; Pn(tn, δn); δ} procedures
ConGolog: (in addition)
(δ1 δ2) concurrent execution
(δ1 δ2) prioritized concurrency
δ concurrent iteration
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 38 / 71
Golog and ConGolog: Syntax
Golog:
a primitive action
φ? test condition φ
(δ1; δ2) sequence
if φ then δ1 else δ2 conditional
while φ do δ loops
(δ1|δ2) non-deterministic choice
πv.δ non-deterministic choice of argument
δ∗
non-deterministic iteration
{P1(t1, δ1); . . . ; Pn(tn, δn); δ} procedures
ConGolog: (in addition)
(δ1 δ2) concurrent execution
(δ1 δ2) prioritized concurrency
δ concurrent iteration
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 38 / 71
Golog and ConGolog: Syntax
Golog:
a primitive action
φ? test condition φ
(δ1; δ2) sequence
if φ then δ1 else δ2 conditional
while φ do δ loops
(δ1|δ2) non-deterministic choice
πv.δ non-deterministic choice of argument
δ∗
non-deterministic iteration
{P1(t1, δ1); . . . ; Pn(tn, δn); δ} procedures
ConGolog: (in addition)
(δ1 δ2) concurrent execution
(δ1 δ2) prioritized concurrency
δ concurrent iteration
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 38 / 71
ConGolog: Semantics
The semantics is defined in the situation calculus, a logical language for
reasoning about action and change. Details are in [Reiter, 2001].
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 39 / 71
Approach
Overview + Contributions
Search Control
Domain Definition+Goal
Domain Definition+Goal
Objective: enable search control in state-of-the-art planners.
Approach: compile search control into domain definition.
Fritz, Baier, McIlraith: ConGolog, Sin Trans 5 / 25
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 40 / 71
Approach
Overview + Contributions
HTNs∗
ConGolog Basic Action Theories (BAT)
ConGolog with restrictions
Golog w/o procedures
PDDL
Objective: enable search control in state-of-the-art planners.
Approach: compile search control into domain definition.
Add procedures and concurrency: ConGolog → BATs.
Identify a subset of ConGolog that can be compiled to PDDL.
Can compile ∗simple HTNs into classical planning.
Fritz, Baier, McIlraith: ConGolog, Sin Trans 5 / 25
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 41 / 71
Planning with Golog-like Procedural Control
Compile Golog into PDDL using -PNFA, using additional book-keeping
actions.
Golog in any PDDL Planner (ICAPS-07)
Golog program
while φ do [if ψ then a else b endif] endwhile
⇓
PNFA for the control
q1 q2
q3 q4
q5 q6
q7 q8
test(φ) test(ψ)
test(¬ψ)
a
b
noop
noop
test(¬φ)
noop
⇒
Automaton’s dynamic in PDDL
New predicate: (aut-state x)
New effects to update for
aut-state
New goal/initial state
Experiments/Applicability shown in our ICAPS-07 paper[Baier, Fritz, M, ICAPS07]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 42 / 71
Planning with Golog-like Procedural Control
Main Results:
1 Golog-based procedural control language for Planning
PDDL-based semantics for the language
2 Compilation of Golog-like control into classical planning
Theorem: Translation is correct
Theorem: Translation is polynomial
3 Experimental analysis showing that underconstrained control
provides superior performance
[Baier, Fritz, M, ICAPS07]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 43 / 71
The Rest of the Talk
Planning for LTL Temporally Extended Goals (TEGs)
Planning with LTL Temporally Extended Preferences (TEPs)
Planning with restricted RE’s – Golog-like Procedural Control
Planning with RE’s plus concurrency – ConGolog Procedural Control
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 44 / 71
Extending the Compilation to ConGolog (Sometimes)
Next we added:
concurrency: being in more than one state simultaneously;
procedures: requires call stack.
Approach:
consider ConGolog program as a Petri Net,
represent this in basic action theory in the situation calculus.
identify a subset of ConGolog that can be compiled to PDDL
[Fritz, Baier, M, KR08] [Christian Fritz, Thesis 2009]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 45 / 71
Compilation: Approach
ConGolog:
(if business then bookHotel(Marriott) else bookHotel(DaysInn)
bookFlight)
Petri Net:
1
2
3
4
5
6
7
8
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 46 / 71
Compilation: Approach
ConGolog:
(if business then bookHotel(Marriott) else bookHotel(DaysInn)
bookFlight)
Petri Net:
1
2
3
4
5
6
7
8
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 47 / 71
Compilation: Approach
ConGolog:
(if business then bookHotel(Marriott) else bookHotel(DaysInn)
bookFlight)
Petri Net:
1
2
3
4
5
6
7
8
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 48 / 71
Compilation: Approach
ConGolog:
(if business then bookHotel(Marriott) else bookHotel(DaysInn)
bookFlight)
Petri Net:
1
2
3
4
5
6
7
8
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 49 / 71
Compilation: Approach
ConGolog:
(if business then bookHotel(Marriott) else bookHotel(DaysInn)
bookFlight)
Petri Net:
1
2
3
4
5
6
7
8
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 50 / 71
Compilation: Approach
ConGolog:
(if business then bookHotel(Marriott) else bookHotel(DaysInn)
bookFlight)
Petri Net:
1
2
3
4
5
6
7
8
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 51 / 71
Compilation: Approach
ConGolog:
(if business then bookHotel(Marriott) else bookHotel(DaysInn)
bookFlight)
Petri Net:
1
2
3
4
5
6
7
8
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 52 / 71
Compilation: Approach
1
2
8
3
5
4
6
7
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Basic Action Theory: (excerpt)
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 53 / 71
Compilation: Approach
1
2
8
3
5
4
6
7
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Basic Action Theory: (excerpt)
Poss(spawn(t, 2, 8), s) ≡ state(t, s) = 1
state(0t, do(spawn(t, 2, 8), s)) = 2
state(1t, do(spawn(t, 2, 8), s)) = 8
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 54 / 71
Compilation: Approach
1
2
8
3
5
4
6
7
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Basic Action Theory: (excerpt)
Poss(spawn(t, 2, 8), s) ≡ state(t, s) = 1
state(0t, do(spawn(t, 2, 8), s)) = 2
state(1t, do(spawn(t, 2, 8), s)) = 8
Poss(test(t, 2, 3), s) ≡ state(t, s) = 2 ∧ business(s)
state(t, do(test(t, 2, 3), s)) = 3
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 55 / 71
Compilation: Approach
1
2
8
3
5
4
6
7
9
10
business
¬business
bookHotel(Marriott)
bookHotel(DaysInn)
bookFlight
noop
noop
spawn join
Basic Action Theory: (excerpt)
Poss(spawn(t, 2, 8), s) ≡ state(t, s) = 1
state(0t, do(spawn(t, 2, 8), s)) = 2
state(1t, do(spawn(t, 2, 8), s)) = 8
Poss(test(t, 2, 3), s) ≡ state(t, s) = 2 ∧ business(s)
state(t, do(test(t, 2, 3), s)) = 3
Poss(bookFlight(t), s) ≡ state(t, s) = 8 ∧ ΠbookFlight(s)
state(t, do(bookFlight(t), s)) = 9 ← state(t, s) = 8
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 56 / 71
Compilation: Theorems
Theorem (Correctness)
omitted.
Theorem (Succinct)
The new theory is of size O(n2
), where n is the size of the program.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 57 / 71
Compilation: Challenges
Procedures:
New fluent: stack(i, r, s): stack of “return addresses”.
Program variables:
New fluent map(v, x, s): “variable v has value x”.
Concurrency:
Actions get additional thread argument.
New actions spawn and join.
Prioritized concurrency:
New fluent Prio(t2, t2, s): “thread t1 has priority over t2”.
Synchronized if’s and while’s.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 58 / 71
Previous Experimental Results
Storage Domain: (log scale)
0.01
0.1
1
10
100
1000
4 6 8 10 12 14 16 18 20 22 24
seconds
testcase
original
dumb
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 59 / 71
HTNs → ConGolog
unordered: Move2(p1, p2, s, d)
Move1(p1, s, d) Move1(p2, s, d)
→ proc Move2(p1, p2, s, d) : Move1(p1, s, d) Move1(p2, s, d)
ordered: Move1(p, s, d)
load(p) drive(s, d) unload(p)
→ proc Move1(p, s, d) : load(p); drive(s, d); unload(p)
Several methods m1, . . . , mn for decomposing a task Task:
→ proc Task : m1| . . . |mn
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 60 / 71
Recap
AI planning can be leveraged to improve the generate:
plans with LTL Temporally Extended Goals
plans/Golog programs LTL Temporally Extended Preferences
Plans with Golog-like Procedural Control
...and other things not discussed.
We took a reformulation approach:
Its output is in most cases usable with a wide range of planners
It is composable
Sheds light on the construction of new heuristics
It is applicable to other types of reasoning
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 61 / 71
Recap (continued)
Formally analyzed the properties of translations/algorithms:
Theorems on the correctness of translations,
Size bounds,
Conditions for optimality,
...
Showed significant experimental advantages of the approach
Orders-of-magnitude over state of the art
Superior/competitive with state of the art
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 62 / 71
Recap (continued)
Contribution: A method for compiling ConGolog search control into
domain definitions (e.g. Basic Action Theories, PDDL).
Merits:
Planning:
Rich search control in any state-of-the-art planner:
ConGolog (with restrictions),
Simple HTNs.
KR:
Makes ConGolog first-order definable.
Avoids need for program reification.
Facilitates automated reasoning about programs.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 63 / 71
Take Home Message
Many tasks that involve reasoning about dynamical systems
can be cast as non-classical planning problems and solved
effectively using state-of-the-art planning techniques.
A key enabler for at least 101 of these problems is the
restatement of the objective in terms of LTL, Regular
Expressions (Golog) and/or Automata.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 64 / 71
Related Work
LTL/Control Knowledge
LTL Search Control for Planning (Bacchus & Kabanza, AIJ 2000)
Compiling limited subset of LTL to PDDL (Rintanen 2000)
Compiling propositional LTL to PDDL (Cresswell & Codington, ECAI
2004)
LTL Search Control for Planning (Doherty et al., 2000)
LTL Preferences (Son & Pontelli, LPNMR 2004, TPLP 2006)
Extension of PDDL to incorporate LTL (Gerevini, Haslum, Long, et al
2005 & AIJ 2009)
Precondition Control (Gabaldon IJCAI 2003, KR 2004)
Finite LTL + Regular Expressions (De Giacomo & Vardi, IJCAI 2013)
...
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 65 / 71
Related Work (cont.)
PDDL3 Planners
HPlanP (Baier, Bacchus, M, 2006, AIJ 2009)
MIPS-XXL (Edelkamp et al, 2006)
MIPS-BDD (Edelkamp, 2006)
SGPlan (Hsu et al., 2007)
HPlan-P (Baier, Bacchus, M, 2006, AIJ 2009)
LPRPG-P - (Coles & Coles ICAPS 2011, & Benton ICAPS 2012)
... ?
Planning with Golog Search Control
Planning with Golog (Klassen, Eyerich, Lakemeyer & Nebel, IJCAI
2007)
First-order characterization of Golog and ConGolog (Lin, KR 2014)
Nebel & Lakemeyer & Roeger work on Golog and planning (various)
...
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 66 / 71
My Personal Journey in Academia
Hon BSc (Pure & Applied Math - Prob & Stats) [U.Ottawa]
In my last 2 years of ugrad, worked for my Stats prof, at the
computer help centre, and as a CS Teaching Assistant
Worked developing software for the oil & gas sector (1.5 yrs)
MSc (Computer Science) [U.Waterloo]
Worked for an applied research lab in Canada (3 years)
PhD (Computer Science) [U.Toronto], continuing p-t work at lab
Postdoc [joint Xerox PARC & Stanford]
(Senior) Research Scientist [Stanford]
Associate Professor → Professor → Vice-Chair → Professor
[U.Toronto]
...and married with 2 children along the way!
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 67 / 71
Questions?
[Baier2010] [Fritz2009] [Baier and McIlraith2006] [Baier et al.2009]
[Sohrabi et al.2009] [Albarghouthi et al.2009] [Baier et al.2007]
[Sohrabi et al.2006] [Sohrabi et al.2010] [Baier and McIlraith2008]
[Razavi et al.2014] [Razavi et al.2011] [McIlraith et al.2001]
[Bienvenu et al.2011] [Baier et al.2008] [Pnueli1977] [Reiter2001]
[Sohrabi and McIlraith2010] [Bylander1994]
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 68 / 71
References I
Aws Albarghouthi, Jorge A. Baier, and Sheila A. McIlraith.
On the use of planning technology for verification.
In Proceedings of the Validation and Verification of Planning and Sched. Systems Workshop (VVPS), Thessaloniki, Greece, 2009.
J. Baier and S. McIlraith.
Planning with first-order temporally extended goals using heuristic search.
In Proceedings of the 21st National Conference on Artificial Intelligence (AAAI06), pages 788–795, Boston, MA, July 2006.
Jorge A. Baier and Sheila A. McIlraith.
Planning with preferences.
Artificial Intelligence Magazine, 29(4):25–36, 2008.
Jorge A. Baier, Christian Fritz, and Sheila A. McIlraith.
Exploiting procedural domain control knowledge in state-of-the-art planners.
In Proceedings of the 17th International Conference on Automated Planning and Scheduling (ICAPS), pages 26–33, Providence,
Rhode Island, USA, September 22 - 26 2007.
Jorge A. Baier, Christian Fritz, Meghyn Bienvenu, and Sheila McIlraith.
Beyond classical planning: Procedural control knowledge and preferences in state-of-the-art planners.
In Proceedings of the 23rd AAAI Conference on Artificial Intelligence (AAAI), Nectar Track, pages 1509–1512, Chicago, Illinois,
USA, July 13–17 2008.
Jorge A. Baier, Fahiem Bacchus, and Sheila A. McIlraith.
A heuristic search approach to planning with temporally extended preferences.
Artificial Intelligence, 173(5-6):593–618, 2009.
Jorge A. Baier.
Effective Search Techniques for Non-Classical Planning via Reformulation.
Ph.D. in Computer Science, University of Toronto, 2010.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 69 / 71
References II
Meghyn Bienvenu, Christian Fritz, and Sheila A. McIlraith.
Specifying and computing preferred plans.
Artificial Intelligence, 175(7–8):1308–1345, 2011.
Tom Bylander.
The computational complexity of propositional STRIPS planning.
Artificial Intelligence, 69(1-2):165–204, 1994.
Christian Fritz.
Monitoring the Generation and Execution of Optimal Plans.
PhD thesis, University of Toronto, April 2009.
Sheila A. McIlraith, Tran Cao Son, and Honglei Zeng.
Semantic web services.
IEEE Intelligent Systems. Special Issue on the Semantic Web, 16(2):46–53, March/April 2001.
Amir Pnueli.
The temporal logic of programs.
In Proceedings of the 18th Annual Symposium on Foundations of Computer Science (FOCS), SFCS ’77, pages 46–57, 1977.
Niloofar Razavi, Azadeh Farzan, and Sheila A. McIlraith.
Predicting atomicity violations in concurrent programs via planning.
In Proceedings of the ICAPS-11 Workshop on Verification and Validation of Planning and Scheduling Systems (VVPS), 2011.
Niloofar Razavi, Azadeh Farzan, and Sheila A. McIlraith.
Generating effective tests for concurrent programs via AI automated planning techniques.
International Journal on Software Tools for Technology Transfer (STTT) (STTT), 16(1):49–65, 2014.
Raymond Reiter.
Knowledge in Action: Logical Foundations for Specifying and Implementing Dynamical Systems.
MIT Press, Cambridge, MA, 2001.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 70 / 71
References III
Shirin Sohrabi and Sheila A. McIlraith.
Preference-based web service composition: A middle ground between execution and search.
In Proceedings of the 9th International Semantic Web Conference (ISWC-10), pages 713–729, Shanghai, China, November 2010.
Shirin Sohrabi, Natasha Prokoshyna, and Sheila. A. McIlraith.
Web service composition via generic procedures and customizing user preferences.
In Proceedings of the 5th International Semantic Web Conference (ISWC), pages 597–611, Athens, Georgia, 2006.
Shirin Sohrabi, Jorge Baier, and Sheila A. McIlraith.
Htn planning with preferences.
In Proceedings of the 21st International Joint Conference on Artificial Intelligence (IJCAI), pages 1790–1797, Pasadena,
California, 2009.
Shirin Sohrabi, Jorge Baier, and Sheila A. McIlraith.
Diagnosis as planning revisited.
In Proceedings of the 12th International Conference on Knowledge Representation and Reasoning (KR), Toronto, Canada, 2010.
To appear.
Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 71 / 71

More Related Content

Similar to Here are a few reasons why automating web service composition to satisfy user preferences is challenging:1. User preferences can be complex and context-dependent. It's not always clear how to represent qualitative preferences like "cheap" or "convenient" in a way that a system can optimize for. 2. There are typically many possible compositions that achieve the basic task, but optimizing across multiple preferences requires sophisticated algorithms. 3. Web services have varying degrees of reliability, availability, and cost that can change over time. The system needs to be able to adapt the composition and re-optimize if underlying services change.4. Privacy and security requirements also need to be taken into account. Not all services or sequences

130321 zephyrin soh - on the effect of exploration strategies on maintenanc...
130321   zephyrin soh - on the effect of exploration strategies on maintenanc...130321   zephyrin soh - on the effect of exploration strategies on maintenanc...
130321 zephyrin soh - on the effect of exploration strategies on maintenanc...Ptidej Team
 
Unit 5 Introduction to Planning and ANN.pptx
Unit 5 Introduction to Planning and ANN.pptxUnit 5 Introduction to Planning and ANN.pptx
Unit 5 Introduction to Planning and ANN.pptxDrYogeshDeshmukh1
 
mlrev.ppt
mlrev.pptmlrev.ppt
mlrev.pptbutest
 
Accelerated life testing
Accelerated life testingAccelerated life testing
Accelerated life testingSteven Li
 
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCLOCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCLLionel Briand
 
Planning solutions in the real world
Planning solutions in the real worldPlanning solutions in the real world
Planning solutions in the real worldijaia
 
Operations research.pptx
Operations research.pptxOperations research.pptx
Operations research.pptxssuserad3989
 
Implementing Generate-Test-and-Aggregate Algorithms on Hadoop
Implementing Generate-Test-and-Aggregate Algorithms on HadoopImplementing Generate-Test-and-Aggregate Algorithms on Hadoop
Implementing Generate-Test-and-Aggregate Algorithms on HadoopYu Liu
 
Automated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUAutomated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUCS, NcState
 
Two-Stage Eagle Strategy with Differential Evolution
Two-Stage Eagle Strategy with Differential EvolutionTwo-Stage Eagle Strategy with Differential Evolution
Two-Stage Eagle Strategy with Differential EvolutionXin-She Yang
 
Trilinos progress, challenges and future plans
Trilinos progress, challenges and future plansTrilinos progress, challenges and future plans
Trilinos progress, challenges and future plansM Reza Rahmati
 
Artificial Agents Without Ontological Access to Reality
Artificial Agents Without Ontological Access to RealityArtificial Agents Without Ontological Access to Reality
Artificial Agents Without Ontological Access to Realityogeorgeon
 
memory_allocation_use1.ppt
memory_allocation_use1.pptmemory_allocation_use1.ppt
memory_allocation_use1.pptKanchanTiwari45
 
Modeling and Reasoning in Event Calculus using Goal-Directed Constraint Answe...
Modeling and Reasoning in Event Calculus using Goal-Directed Constraint Answe...Modeling and Reasoning in Event Calculus using Goal-Directed Constraint Answe...
Modeling and Reasoning in Event Calculus using Goal-Directed Constraint Answe...Universidad Rey Juan Carlos
 

Similar to Here are a few reasons why automating web service composition to satisfy user preferences is challenging:1. User preferences can be complex and context-dependent. It's not always clear how to represent qualitative preferences like "cheap" or "convenient" in a way that a system can optimize for. 2. There are typically many possible compositions that achieve the basic task, but optimizing across multiple preferences requires sophisticated algorithms. 3. Web services have varying degrees of reliability, availability, and cost that can change over time. The system needs to be able to adapt the composition and re-optimize if underlying services change.4. Privacy and security requirements also need to be taken into account. Not all services or sequences (20)

130321 zephyrin soh - on the effect of exploration strategies on maintenanc...
130321   zephyrin soh - on the effect of exploration strategies on maintenanc...130321   zephyrin soh - on the effect of exploration strategies on maintenanc...
130321 zephyrin soh - on the effect of exploration strategies on maintenanc...
 
Unit 5 Introduction to Planning and ANN.pptx
Unit 5 Introduction to Planning and ANN.pptxUnit 5 Introduction to Planning and ANN.pptx
Unit 5 Introduction to Planning and ANN.pptx
 
mlrev.ppt
mlrev.pptmlrev.ppt
mlrev.ppt
 
Scheduling And Htn
Scheduling And HtnScheduling And Htn
Scheduling And Htn
 
Accelerated life testing
Accelerated life testingAccelerated life testing
Accelerated life testing
 
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCLOCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
OCLR: A More Expressive, Pattern-Based Temporal Extension of OCL
 
Planning solutions in the real world
Planning solutions in the real worldPlanning solutions in the real world
Planning solutions in the real world
 
Operations research.pptx
Operations research.pptxOperations research.pptx
Operations research.pptx
 
Tomorrow's House
Tomorrow's HouseTomorrow's House
Tomorrow's House
 
Implementing Generate-Test-and-Aggregate Algorithms on Hadoop
Implementing Generate-Test-and-Aggregate Algorithms on HadoopImplementing Generate-Test-and-Aggregate Algorithms on Hadoop
Implementing Generate-Test-and-Aggregate Algorithms on Hadoop
 
Planning Agent
Planning AgentPlanning Agent
Planning Agent
 
Static Analysis and Verification of C Programs
Static Analysis and Verification of C ProgramsStatic Analysis and Verification of C Programs
Static Analysis and Verification of C Programs
 
Operations research
Operations research Operations research
Operations research
 
Operations research
Operations research Operations research
Operations research
 
Automated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSUAutomated Software Enging, Fall 2015, NCSU
Automated Software Enging, Fall 2015, NCSU
 
Two-Stage Eagle Strategy with Differential Evolution
Two-Stage Eagle Strategy with Differential EvolutionTwo-Stage Eagle Strategy with Differential Evolution
Two-Stage Eagle Strategy with Differential Evolution
 
Trilinos progress, challenges and future plans
Trilinos progress, challenges and future plansTrilinos progress, challenges and future plans
Trilinos progress, challenges and future plans
 
Artificial Agents Without Ontological Access to Reality
Artificial Agents Without Ontological Access to RealityArtificial Agents Without Ontological Access to Reality
Artificial Agents Without Ontological Access to Reality
 
memory_allocation_use1.ppt
memory_allocation_use1.pptmemory_allocation_use1.ppt
memory_allocation_use1.ppt
 
Modeling and Reasoning in Event Calculus using Goal-Directed Constraint Answe...
Modeling and Reasoning in Event Calculus using Goal-Directed Constraint Answe...Modeling and Reasoning in Event Calculus using Goal-Directed Constraint Answe...
Modeling and Reasoning in Event Calculus using Goal-Directed Constraint Answe...
 

Recently uploaded

Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerunnathinaik
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,Virag Sontakke
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfMahmoud M. Sallam
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 

Recently uploaded (20)

Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developer
 
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdf
 
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
9953330565 Low Rate Call Girls In Rohini Delhi NCR
9953330565 Low Rate Call Girls In Rohini  Delhi NCR9953330565 Low Rate Call Girls In Rohini  Delhi NCR
9953330565 Low Rate Call Girls In Rohini Delhi NCR
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 

Here are a few reasons why automating web service composition to satisfy user preferences is challenging:1. User preferences can be complex and context-dependent. It's not always clear how to represent qualitative preferences like "cheap" or "convenient" in a way that a system can optimize for. 2. There are typically many possible compositions that achieve the basic task, but optimizing across multiple preferences requires sophisticated algorithms. 3. Web services have varying degrees of reliability, availability, and cost that can change over time. The system needs to be able to adapt the composition and re-optimize if underlying services change.4. Privacy and security requirements also need to be taken into account. Not all services or sequences

  • 1. Of Programs, Plans, and Automata: 101 things you can do with AI planning Sheila A. McIlraith Joint work with Jorge Baier, Christian Fritz & Shirin Sohrabi University of Toronto Toronto, Canada Oxford University, February 24, 2015 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 1 / 71
  • 2. ...some great graduate students and collaborators ... Jorge Baier Shirin Sohrabi Christian Fritz Tran Cao Son Meghyn Bienvenu Aws Albarghouthis Niloofar Razavi Nathan Robinson Yixiao Wang Sotirios Liaskos Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 2 / 71
  • 3. It’s been 50 years ... 2015 marks the 50th anniversary of the Shakey Project, which resulted in such innovations as A* search and STRIPS planning. We’ve seen substantial advances in AI Automated Planning since that time: compact state and transition system encodings advances in heuristic search and SAT plans with hundreds of actions ... hundreds of objects ... 21000 states plan computation ranging from milliseconds to a couple of hours Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 3 / 71
  • 4. It’s been 50 years ... 2015 marks the 50th anniversary of the Shakey Project, which resulted in such innovations as A* search and STRIPS planning. We’ve seen substantial advances in AI Automated Planning since that time: compact state and transition system encodings advances in heuristic search and SAT plans with hundreds of actions ... hundreds of objects ... 21000 states plan computation ranging from milliseconds to a couple of hours Top-performing planners exploit heuristic search, though planning-tailored SAT-based planners are starting to close the gap. Most of these advances have been in classical planning. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 3 / 71
  • 5. Automated Planning Given (F, O, I, G), where: F, set of propositions O, transitions system described in terms of a set of operators E.g, pickup(X) Precondtion: handEmpty Effect: holding(X), ¬handEmpty I ∈ L(F), initial state description G ∈ L(F), goal condition Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 4 / 71
  • 6. Automated Planning Given (F, O, I, G), where: F, set of propositions O, transitions system described in terms of a set of operators E.g, pickup(X) Precondtion: handEmpty Effect: holding(X), ¬handEmpty I ∈ L(F), initial state description G ∈ L(F), goal condition Planning Problem: Find an ordering of operators which if applied in I lead to a state satisfying G Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 4 / 71
  • 7. Automated Planning Given (F, O, I, G), where: F, set of propositions O, transitions system described in terms of a set of operators E.g, pickup(X) Precondtion: handEmpty Effect: holding(X), ¬handEmpty I ∈ L(F), initial state description G ∈ L(F), goal condition Planning Problem: Find an ordering of operators which if applied in I lead to a state satisfying G Complexity: PSPACE-complete [Bylander, 1994] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 4 / 71
  • 8. Classical Planning Given: Initial state (fully described) Goal condition (condition about final state) Operators (deterministic) Task: Find any sequential plan Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 5 / 71
  • 9. Non-Classical Planning Non-classical planning can take many forms: Given: Initial state (partially described) Goal condition (temporally extended goal and/or preferences, ...) Operators (non-deterministic actions, complex actions, ...) Task: Find a (high quality) plan Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 6 / 71
  • 10. Claims Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 7 / 71
  • 11. Claims 1st Claim Many tasks that involve reasoning about dynamical systems can be cast as non-classical planning problems (and indeed many compelling real-world planning applications are non-classical). Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 7 / 71
  • 12. Claims 1st Claim Many tasks that involve reasoning about dynamical systems can be cast as non-classical planning problems (and indeed many compelling real-world planning applications are non-classical). 2nd Claim We can exploit state-of-the-art classical planners to effectively solve non-classical planning problems. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 7 / 71
  • 13. The 1st Claim Many tasks that involve reasoning about dynamical systems can be cast as non-classical planning problems. E.g., (customized) web service composition synthesis of business processes verification & counter-example generation diagnosis of dynamical systems explanation generation activity recognition, plan understanding narrative generation stakeholder goal modeling test generation for concurrent programs network topology transformation ... and at least 91 other tasks! Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 8 / 71
  • 14. Spoiler Alert Key Enabler: It is the richness of the statement of the planning objective that enables us to view 101 (and more) diverse endeavours as instances of non-classical planning problems. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
  • 15. Spoiler Alert Key Enabler: It is the richness of the statement of the planning objective that enables us to view 101 (and more) diverse endeavours as instances of non-classical planning problems. These objectives can be specified via Linear Temporal Logic Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
  • 16. Spoiler Alert Key Enabler: It is the richness of the statement of the planning objective that enables us to view 101 (and more) diverse endeavours as instances of non-classical planning problems. These objectives can be specified via Linear Temporal Logic Automata Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
  • 17. Spoiler Alert Key Enabler: It is the richness of the statement of the planning objective that enables us to view 101 (and more) diverse endeavours as instances of non-classical planning problems. These objectives can be specified via Linear Temporal Logic Automata Regular Expressions in the form of (Con)Golog Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
  • 18. Spoiler Alert Key Enabler: It is the richness of the statement of the planning objective that enables us to view 101 (and more) diverse endeavours as instances of non-classical planning problems. These objectives can be specified via Linear Temporal Logic Automata Regular Expressions in the form of (Con)Golog Hierarchical Task Networks (HTN) Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
  • 19. Spoiler Alert Key Enabler: It is the richness of the statement of the planning objective that enables us to view 101 (and more) diverse endeavours as instances of non-classical planning problems. These objectives can be specified via Linear Temporal Logic Automata Regular Expressions in the form of (Con)Golog Hierarchical Task Networks (HTN) and as either temporally extended goals (aka domain control knowledge) or as preferences. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 9 / 71
  • 20. LTL in a Nutshell A modal temporal logic with modalities referring to time. Interpreted over sequences of states (paths). Syntax if f ∈ F then f is a LTL formula if φ and ψ are LTL formulae then so are ¬φ, φ ∨ ψ, ... formulae constructed with the following temporal modalities: future: U(until), (next), (always), ♦(eventually) past: S(since), •(yesterday), (always past), (eventually past) E.g., Always have your keys and eventually be at home. (have(keys)) ∧ ♦(at(home)) (e.g., [Pnueli, 1977]) Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 10 / 71
  • 21. Example - Diagnosis Example 1 - Diagnosis [Sohrabi, Baier, M, KR2010, AAAI11] Observations I started my car this morning; drove to work; on the way to work I bought $5 worth of gas; I hit a pothole; the radio said it was -20 Celsius; I parked outside. At noon, I picked up my bag from the trunk of the car. At the end of the day, my car would not start. I checked the radio and it was still working. What’s the explanation for my car not starting? Battery died Punctured gas tank, then ran out of gas Starter motor broke : 8[Sohrabi, Baier, M KR2010, AAAI11] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 11 / 71
  • 22. Diagnosis as Non-Classical Planning Dynamical Diagnosis • Initial State • Goal State • Transition System obsnobs1 System Description obs2 obs3 . . . Observations (i.e., multiple partial states) Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 12 / 71
  • 23. Diagnosis as Non-Classical Planning Dynamical Diagnosis • Initial State • Goal State • Transition System obsnobs1 a1 a2 a3 ak Diagnosis = {Assumptions, {a1, a2, a3, …, ak}} System Description obs2 obs3 . . . Observations (i.e., multiple partial states) Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 13 / 71
  • 24. Example - Test Generation for Concurrent Programs ... T1 T2 Tk serialization [Razavi,Farzan,M,VVPS11,STTP14] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 14 / 71
  • 25. Example - Synthesis of Business Processes Process Order PrePay Account Invoice Out Source Manufacture . . . Fill Order Ship GoodsProcess Payment Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 15 / 71
  • 26. Example 4 - Web Service Composition Web Services (WS) Web Services are Web-accessible programs and devices. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 16 / 71
  • 27. Automating Web Service Composition (WSC) Problem: Automatically select and compose services to achieve a user’s objectives. E.g., Make the travel arrangements for my IJCAI 2015 conference 1 Approach: non-classical planning objective comprising: 1. A generic procedure or script to specify roughly how to perform the task. 2. A set of hard constraints and preferences that customize and optimize for the individual user. [M, Son, IEEE01, KR02] [M, Son, IEEE01, KR2002] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 17 / 71
  • 28. User Preferences Why is this Hard ? E.g., preferences can be temporally-extended • I prefer to always pay with my American Express credit card. conditional • If my return flight departs before 9am, then I prefer to stay in a hotel located at the airport the night before departure. interacting and/or mutually inconsistent • I prefer to stay in one hotel for my entire trip. • I prefer to stay at the conference hotel. • I prefer to spend $100/night or less on my hotel room. nested • I prefer to always book my flight after my hotel reservation is confirmed, if booking is being done 2 weeks or more prior to the trip. 1. User preferences can be arbitrarily complex and mutually inconsistent. [Sohrabi, M, ISWC06,10][Sohrabi, Baier, M, IJCAI09] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 18 / 71
  • 29. Historically, planning with LTL, Golog, and HTN required special-purpose planners. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 19 / 71
  • 30. The 2nd Claim Question: Can we leverage the benefits of classical approaches for these compelling non-classical planning problems? Claim: In many cases it is possible to reformulate a non-classical planning problem in order to apply directly or almost directly successful classical approaches, yielding superior performance. [Jorge Baier, Thesis 2010] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 20 / 71
  • 31. We Address Compelling Non-Classical Problems We have addressed the following problems: Planning for LTL Temporally Extended Goals (TEGs) Planning with LTL Temporally Extended Preferences (TEPs) Planning with restricted RE’s – Golog-like Procedural Control Planning with RE’s plus concurrency – ConGolog Procedural Control Planning with Golog Sensing Procedures (not discussed) Planning with Golog-like Procedural Preferences (not discussed) Key Enabler: Translation to automata or petri-nets in a manner that supports the exploitation of heuristic search planners Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 21 / 71
  • 32. Common Approach: Reformulation Common Approach: Reformulation Reformulated Non−classical planning task planning task Reformulation J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 7 / 19 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 22 / 71
  • 33. Common Approach: Reformulation Common Approach: Reformulation Reformulated Handled by existing solver? Is not handled by existing solver? Non−classical planning task planning task Reformulation Planner Modified Planner Existing J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 7 / 19 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 22 / 71
  • 34. The Rest of the Talk Planning for LTL Temporally Extended Goals (TEGs) Planning with LTL Temporally Extended Preferences (TEPs) Planning with restricted RE’s – Golog-like Procedural Control Planning with RE’s plus concurrency – ConGolog Procedural Control Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 23 / 71
  • 35. Planning for LTL Temporally Extended Goals Main Results: 1 First-order, finite logic to represent TEGs: f-FOLTL (Following [Cerrito, Mayer, Praud, LPAR99]) 2 Method to compactly convert TEGs into final-state goals Algorithm: f-FOLTL formula → parameterized automaton Theorem: Algorithm is correct Theorem: Translation worst-case exponential Property: Simplification and parameterization avoids worst-case blowup in practice. Representation of the automaton in a planning problem 3 Experimental evaluation: showing orders-of-magnitude improvements over traditional approaches. [Baier, M, AAAI2006] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 24 / 71
  • 36. From f-FOLTL to Parameterized NFA From f-FOLTL to Parameterized NFA Example PNFA for (∀x). (ECapital(x) ⊃ ♦at(x)) ∧ ♦ at(Paris). Paris C2 NYC C1 at(x) at(Paris) NYC (¬ECapital(x) ∨ at(x)) ∧ at(Paris) ⊤ ⊤ Plan: nil; Objects: C1, C2, Paris, NYC. ECapital = {C1, C2, Paris} Initial State: {at(NYC)} J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 9 / 19 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 25 / 71
  • 37. From f-FOLTL to Parameterized NFA From f-FOLTL to Parameterized NFA Example PNFA for (∀x). (ECapital(x) ⊃ ♦at(x)) ∧ ♦ at(Paris). Paris C2 NYC C1 at(x) at(Paris) NYC (¬ECapital(x) ∨ at(x)) ∧ at(Paris) ⊤ ⊤ Plan: nil; Objects: C1, C2, Paris, NYC. ECapital = {C1, C2, Paris} Initial State: {at(NYC)} J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 9 / 19 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 26 / 71
  • 38. From f-FOLTL to Parameterized NFA From f-FOLTL to Parameterized NFA Example PNFA for (∀x). (ECapital(x) ⊃ ♦at(x)) ∧ ♦ at(Paris). Paris C2 NYC C1 at(x) at(Paris)C1 NYC (¬ECapital(x) ∨ at(x)) ∧ at(Paris) ⊤ ⊤ Plan: FlyTo(C1); Objects: C1, C2, Paris, NYC. ECapital = {C1, C2, Paris} Initial State: {at(NYC)} J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 9 / 19 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 27 / 71
  • 39. From f-FOLTL to Parameterized NFA From f-FOLTL to Parameterized NFA Example PNFA for (∀x). (ECapital(x) ⊃ ♦at(x)) ∧ ♦ at(Paris). Paris C2 NYC C1 at(x) at(Paris)C1 C2 NYC (¬ECapital(x) ∨ at(x)) ∧ at(Paris) ⊤ ⊤ Plan: FlyTo(C1); FlyTo(C2); Objects: C1, C2, Paris, NYC. ECapital = {C1, C2, Paris} Initial State: {at(NYC)} J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 9 / 19 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 28 / 71
  • 40. From f-FOLTL to Parameterized NFA (PNFA) From f-FOLTL to Parameterized NFA Example PNFA for (∀x). (ECapital(x) ⊃ ♦at(x)) ∧ ♦ at(Paris). Paris C2 NYC C1 at(x) at(Paris)C1 C2 NYC Paris (¬ECapital(x) ∨ at(x)) ∧ at(Paris) C1 C2 NYC Paris ⊤ ⊤ Plan: FlyTo(C1); FlyTo(C2); FlyTo(Paris); Objects: C1, C2, Paris, NYC. ECapital = {C1, C2, Paris} Initial State: {at(NYC)} J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 9 / 19 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 29 / 71
  • 41. From PNFA to PDDL Key Idea: Represent the PNFA within the planning domain. We update original problem with: New Predicates represent what objects are in what states New Updates in Actions for the new predicates New (Classical) Goal based on the accepting condition of the automaton Augmented Initial State Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 30 / 71
  • 42. Experimental Evaluation Our Reformulation + FFX [Thiebaux, Hoffman, Nebel, 2005] versus TLPLAN [Bacchus & Kabanza, 1998] ... on standard benchmarks extended with TEGs. Experimental Evaluation Our Reformulation + FFX (Thi´ebaux, Hoffmann, & Nebel, 2005) versus TLPlan (Bacchus & Kabanza, 1998) ... on standard benchmarks extended with TEGs. Domain Speedup < 2 times faster 2-10 times faster 1 order of magn. 2 orders of magn. ≥ 3 orders of magn. ZenoTravel 0 11% 22% 56% 11% Logistics 6% 24% 24% 35% 12% Robot 0 44% 33% 22% 0 Translation time never exceeds 15% of planning time. Ratio |Automatonϕ|/|ϕ| never exceeds 1. Solution lengths are comparable. J. Baier: Effective Search Techniques for Non-Classical Planning via Reformulation 11 / 19 Translation time never exceeds 15% of planning time. Ratio |Automatonϕ|/|ϕ| never exceeds 1. Solution lengths are comparable. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 31 / 71
  • 43. The Rest of the Talk Planning for LTL Temporally Extended Goals (TEGs) Planning with LTL Temporally Extended Preferences (TEPs) Planning with restricted RE’s – Golog-like Procedural Control Planning with RE’s plus concurrency – ConGolog Procedural Control Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 32 / 71
  • 44. Planning with LTL Temporally Extended Preferences Main Results: 1 Compilation of TEPs in PDDL3 to final-state preferences. 2 Branch-and-bound algorithm that finds plans of increasing quality 3 Suite of heuristics, based on existing heuristics 4 Formal analysis: conditions for optimality and k-optimality. 5 Implemented system: HPlan-P (IPC Runner Up) 6 Experimental analysis that shows that: Heuristic and pruning are key to good performance Our planner is more consistent than the competition winner [Baier, Bacchus, M, AIJ2009] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 33 / 71
  • 45. But what about (action-centric) procedural control? Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 34 / 71
  • 46. The Rest of the Talk Planning for LTL Temporally Extended Goals (TEGs) Planning with LTL Temporally Extended Preferences (TEPs) Planning with restricted RE’s – Golog-like Procedural Control Planning with RE’s plus concurrency – ConGolog Procedural Control Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 35 / 71
  • 47. Planning with Regular Expressions+ In planning, experts often know how to solve a problem, e.g.: “If not at point A, then drive the truck to point A; while there are packages at point A, pick a package and load it onto the truck; drive to point B; while there are packages on the truck, pick a package and unload it from the truck.” We call this search control. It can drastically increase planning efficiency. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 36 / 71
  • 48. Golog One language for specifying search control is Golog: if not at(A) then driveTo(A); while (∃pkg)at(pkg, A) do πpkg.load(pkg); driveTo(B); while (∃pkg)onTruck(pkg) do πpkg.unload(pkg) Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 37 / 71
  • 49. Golog and ConGolog: Syntax Golog: a primitive action φ? test condition φ (δ1; δ2) sequence if φ then δ1 else δ2 conditional while φ do δ loops (δ1|δ2) non-deterministic choice πv.δ non-deterministic choice of argument δ∗ non-deterministic iteration {P1(t1, δ1); . . . ; Pn(tn, δn); δ} procedures ConGolog: (in addition) (δ1 δ2) concurrent execution (δ1 δ2) prioritized concurrency δ concurrent iteration Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 38 / 71
  • 50. Golog and ConGolog: Syntax Golog: a primitive action φ? test condition φ (δ1; δ2) sequence if φ then δ1 else δ2 conditional while φ do δ loops (δ1|δ2) non-deterministic choice πv.δ non-deterministic choice of argument δ∗ non-deterministic iteration {P1(t1, δ1); . . . ; Pn(tn, δn); δ} procedures ConGolog: (in addition) (δ1 δ2) concurrent execution (δ1 δ2) prioritized concurrency δ concurrent iteration Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 38 / 71
  • 51. Golog and ConGolog: Syntax Golog: a primitive action φ? test condition φ (δ1; δ2) sequence if φ then δ1 else δ2 conditional while φ do δ loops (δ1|δ2) non-deterministic choice πv.δ non-deterministic choice of argument δ∗ non-deterministic iteration {P1(t1, δ1); . . . ; Pn(tn, δn); δ} procedures ConGolog: (in addition) (δ1 δ2) concurrent execution (δ1 δ2) prioritized concurrency δ concurrent iteration Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 38 / 71
  • 52. Golog and ConGolog: Syntax Golog: a primitive action φ? test condition φ (δ1; δ2) sequence if φ then δ1 else δ2 conditional while φ do δ loops (δ1|δ2) non-deterministic choice πv.δ non-deterministic choice of argument δ∗ non-deterministic iteration {P1(t1, δ1); . . . ; Pn(tn, δn); δ} procedures ConGolog: (in addition) (δ1 δ2) concurrent execution (δ1 δ2) prioritized concurrency δ concurrent iteration Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 38 / 71
  • 53. ConGolog: Semantics The semantics is defined in the situation calculus, a logical language for reasoning about action and change. Details are in [Reiter, 2001]. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 39 / 71
  • 54. Approach Overview + Contributions Search Control Domain Definition+Goal Domain Definition+Goal Objective: enable search control in state-of-the-art planners. Approach: compile search control into domain definition. Fritz, Baier, McIlraith: ConGolog, Sin Trans 5 / 25 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 40 / 71
  • 55. Approach Overview + Contributions HTNs∗ ConGolog Basic Action Theories (BAT) ConGolog with restrictions Golog w/o procedures PDDL Objective: enable search control in state-of-the-art planners. Approach: compile search control into domain definition. Add procedures and concurrency: ConGolog → BATs. Identify a subset of ConGolog that can be compiled to PDDL. Can compile ∗simple HTNs into classical planning. Fritz, Baier, McIlraith: ConGolog, Sin Trans 5 / 25 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 41 / 71
  • 56. Planning with Golog-like Procedural Control Compile Golog into PDDL using -PNFA, using additional book-keeping actions. Golog in any PDDL Planner (ICAPS-07) Golog program while φ do [if ψ then a else b endif] endwhile ⇓ PNFA for the control q1 q2 q3 q4 q5 q6 q7 q8 test(φ) test(ψ) test(¬ψ) a b noop noop test(¬φ) noop ⇒ Automaton’s dynamic in PDDL New predicate: (aut-state x) New effects to update for aut-state New goal/initial state Experiments/Applicability shown in our ICAPS-07 paper[Baier, Fritz, M, ICAPS07] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 42 / 71
  • 57. Planning with Golog-like Procedural Control Main Results: 1 Golog-based procedural control language for Planning PDDL-based semantics for the language 2 Compilation of Golog-like control into classical planning Theorem: Translation is correct Theorem: Translation is polynomial 3 Experimental analysis showing that underconstrained control provides superior performance [Baier, Fritz, M, ICAPS07] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 43 / 71
  • 58. The Rest of the Talk Planning for LTL Temporally Extended Goals (TEGs) Planning with LTL Temporally Extended Preferences (TEPs) Planning with restricted RE’s – Golog-like Procedural Control Planning with RE’s plus concurrency – ConGolog Procedural Control Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 44 / 71
  • 59. Extending the Compilation to ConGolog (Sometimes) Next we added: concurrency: being in more than one state simultaneously; procedures: requires call stack. Approach: consider ConGolog program as a Petri Net, represent this in basic action theory in the situation calculus. identify a subset of ConGolog that can be compiled to PDDL [Fritz, Baier, M, KR08] [Christian Fritz, Thesis 2009] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 45 / 71
  • 60. Compilation: Approach ConGolog: (if business then bookHotel(Marriott) else bookHotel(DaysInn) bookFlight) Petri Net: 1 2 3 4 5 6 7 8 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 46 / 71
  • 61. Compilation: Approach ConGolog: (if business then bookHotel(Marriott) else bookHotel(DaysInn) bookFlight) Petri Net: 1 2 3 4 5 6 7 8 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 47 / 71
  • 62. Compilation: Approach ConGolog: (if business then bookHotel(Marriott) else bookHotel(DaysInn) bookFlight) Petri Net: 1 2 3 4 5 6 7 8 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 48 / 71
  • 63. Compilation: Approach ConGolog: (if business then bookHotel(Marriott) else bookHotel(DaysInn) bookFlight) Petri Net: 1 2 3 4 5 6 7 8 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 49 / 71
  • 64. Compilation: Approach ConGolog: (if business then bookHotel(Marriott) else bookHotel(DaysInn) bookFlight) Petri Net: 1 2 3 4 5 6 7 8 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 50 / 71
  • 65. Compilation: Approach ConGolog: (if business then bookHotel(Marriott) else bookHotel(DaysInn) bookFlight) Petri Net: 1 2 3 4 5 6 7 8 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 51 / 71
  • 66. Compilation: Approach ConGolog: (if business then bookHotel(Marriott) else bookHotel(DaysInn) bookFlight) Petri Net: 1 2 3 4 5 6 7 8 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 52 / 71
  • 67. Compilation: Approach 1 2 8 3 5 4 6 7 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Basic Action Theory: (excerpt) Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 53 / 71
  • 68. Compilation: Approach 1 2 8 3 5 4 6 7 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Basic Action Theory: (excerpt) Poss(spawn(t, 2, 8), s) ≡ state(t, s) = 1 state(0t, do(spawn(t, 2, 8), s)) = 2 state(1t, do(spawn(t, 2, 8), s)) = 8 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 54 / 71
  • 69. Compilation: Approach 1 2 8 3 5 4 6 7 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Basic Action Theory: (excerpt) Poss(spawn(t, 2, 8), s) ≡ state(t, s) = 1 state(0t, do(spawn(t, 2, 8), s)) = 2 state(1t, do(spawn(t, 2, 8), s)) = 8 Poss(test(t, 2, 3), s) ≡ state(t, s) = 2 ∧ business(s) state(t, do(test(t, 2, 3), s)) = 3 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 55 / 71
  • 70. Compilation: Approach 1 2 8 3 5 4 6 7 9 10 business ¬business bookHotel(Marriott) bookHotel(DaysInn) bookFlight noop noop spawn join Basic Action Theory: (excerpt) Poss(spawn(t, 2, 8), s) ≡ state(t, s) = 1 state(0t, do(spawn(t, 2, 8), s)) = 2 state(1t, do(spawn(t, 2, 8), s)) = 8 Poss(test(t, 2, 3), s) ≡ state(t, s) = 2 ∧ business(s) state(t, do(test(t, 2, 3), s)) = 3 Poss(bookFlight(t), s) ≡ state(t, s) = 8 ∧ ΠbookFlight(s) state(t, do(bookFlight(t), s)) = 9 ← state(t, s) = 8 Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 56 / 71
  • 71. Compilation: Theorems Theorem (Correctness) omitted. Theorem (Succinct) The new theory is of size O(n2 ), where n is the size of the program. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 57 / 71
  • 72. Compilation: Challenges Procedures: New fluent: stack(i, r, s): stack of “return addresses”. Program variables: New fluent map(v, x, s): “variable v has value x”. Concurrency: Actions get additional thread argument. New actions spawn and join. Prioritized concurrency: New fluent Prio(t2, t2, s): “thread t1 has priority over t2”. Synchronized if’s and while’s. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 58 / 71
  • 73. Previous Experimental Results Storage Domain: (log scale) 0.01 0.1 1 10 100 1000 4 6 8 10 12 14 16 18 20 22 24 seconds testcase original dumb Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 59 / 71
  • 74. HTNs → ConGolog unordered: Move2(p1, p2, s, d) Move1(p1, s, d) Move1(p2, s, d) → proc Move2(p1, p2, s, d) : Move1(p1, s, d) Move1(p2, s, d) ordered: Move1(p, s, d) load(p) drive(s, d) unload(p) → proc Move1(p, s, d) : load(p); drive(s, d); unload(p) Several methods m1, . . . , mn for decomposing a task Task: → proc Task : m1| . . . |mn Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 60 / 71
  • 75. Recap AI planning can be leveraged to improve the generate: plans with LTL Temporally Extended Goals plans/Golog programs LTL Temporally Extended Preferences Plans with Golog-like Procedural Control ...and other things not discussed. We took a reformulation approach: Its output is in most cases usable with a wide range of planners It is composable Sheds light on the construction of new heuristics It is applicable to other types of reasoning Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 61 / 71
  • 76. Recap (continued) Formally analyzed the properties of translations/algorithms: Theorems on the correctness of translations, Size bounds, Conditions for optimality, ... Showed significant experimental advantages of the approach Orders-of-magnitude over state of the art Superior/competitive with state of the art Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 62 / 71
  • 77. Recap (continued) Contribution: A method for compiling ConGolog search control into domain definitions (e.g. Basic Action Theories, PDDL). Merits: Planning: Rich search control in any state-of-the-art planner: ConGolog (with restrictions), Simple HTNs. KR: Makes ConGolog first-order definable. Avoids need for program reification. Facilitates automated reasoning about programs. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 63 / 71
  • 78. Take Home Message Many tasks that involve reasoning about dynamical systems can be cast as non-classical planning problems and solved effectively using state-of-the-art planning techniques. A key enabler for at least 101 of these problems is the restatement of the objective in terms of LTL, Regular Expressions (Golog) and/or Automata. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 64 / 71
  • 79. Related Work LTL/Control Knowledge LTL Search Control for Planning (Bacchus & Kabanza, AIJ 2000) Compiling limited subset of LTL to PDDL (Rintanen 2000) Compiling propositional LTL to PDDL (Cresswell & Codington, ECAI 2004) LTL Search Control for Planning (Doherty et al., 2000) LTL Preferences (Son & Pontelli, LPNMR 2004, TPLP 2006) Extension of PDDL to incorporate LTL (Gerevini, Haslum, Long, et al 2005 & AIJ 2009) Precondition Control (Gabaldon IJCAI 2003, KR 2004) Finite LTL + Regular Expressions (De Giacomo & Vardi, IJCAI 2013) ... Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 65 / 71
  • 80. Related Work (cont.) PDDL3 Planners HPlanP (Baier, Bacchus, M, 2006, AIJ 2009) MIPS-XXL (Edelkamp et al, 2006) MIPS-BDD (Edelkamp, 2006) SGPlan (Hsu et al., 2007) HPlan-P (Baier, Bacchus, M, 2006, AIJ 2009) LPRPG-P - (Coles & Coles ICAPS 2011, & Benton ICAPS 2012) ... ? Planning with Golog Search Control Planning with Golog (Klassen, Eyerich, Lakemeyer & Nebel, IJCAI 2007) First-order characterization of Golog and ConGolog (Lin, KR 2014) Nebel & Lakemeyer & Roeger work on Golog and planning (various) ... Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 66 / 71
  • 81. My Personal Journey in Academia Hon BSc (Pure & Applied Math - Prob & Stats) [U.Ottawa] In my last 2 years of ugrad, worked for my Stats prof, at the computer help centre, and as a CS Teaching Assistant Worked developing software for the oil & gas sector (1.5 yrs) MSc (Computer Science) [U.Waterloo] Worked for an applied research lab in Canada (3 years) PhD (Computer Science) [U.Toronto], continuing p-t work at lab Postdoc [joint Xerox PARC & Stanford] (Senior) Research Scientist [Stanford] Associate Professor → Professor → Vice-Chair → Professor [U.Toronto] ...and married with 2 children along the way! Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 67 / 71
  • 82. Questions? [Baier2010] [Fritz2009] [Baier and McIlraith2006] [Baier et al.2009] [Sohrabi et al.2009] [Albarghouthi et al.2009] [Baier et al.2007] [Sohrabi et al.2006] [Sohrabi et al.2010] [Baier and McIlraith2008] [Razavi et al.2014] [Razavi et al.2011] [McIlraith et al.2001] [Bienvenu et al.2011] [Baier et al.2008] [Pnueli1977] [Reiter2001] [Sohrabi and McIlraith2010] [Bylander1994] Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 68 / 71
  • 83. References I Aws Albarghouthi, Jorge A. Baier, and Sheila A. McIlraith. On the use of planning technology for verification. In Proceedings of the Validation and Verification of Planning and Sched. Systems Workshop (VVPS), Thessaloniki, Greece, 2009. J. Baier and S. McIlraith. Planning with first-order temporally extended goals using heuristic search. In Proceedings of the 21st National Conference on Artificial Intelligence (AAAI06), pages 788–795, Boston, MA, July 2006. Jorge A. Baier and Sheila A. McIlraith. Planning with preferences. Artificial Intelligence Magazine, 29(4):25–36, 2008. Jorge A. Baier, Christian Fritz, and Sheila A. McIlraith. Exploiting procedural domain control knowledge in state-of-the-art planners. In Proceedings of the 17th International Conference on Automated Planning and Scheduling (ICAPS), pages 26–33, Providence, Rhode Island, USA, September 22 - 26 2007. Jorge A. Baier, Christian Fritz, Meghyn Bienvenu, and Sheila McIlraith. Beyond classical planning: Procedural control knowledge and preferences in state-of-the-art planners. In Proceedings of the 23rd AAAI Conference on Artificial Intelligence (AAAI), Nectar Track, pages 1509–1512, Chicago, Illinois, USA, July 13–17 2008. Jorge A. Baier, Fahiem Bacchus, and Sheila A. McIlraith. A heuristic search approach to planning with temporally extended preferences. Artificial Intelligence, 173(5-6):593–618, 2009. Jorge A. Baier. Effective Search Techniques for Non-Classical Planning via Reformulation. Ph.D. in Computer Science, University of Toronto, 2010. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 69 / 71
  • 84. References II Meghyn Bienvenu, Christian Fritz, and Sheila A. McIlraith. Specifying and computing preferred plans. Artificial Intelligence, 175(7–8):1308–1345, 2011. Tom Bylander. The computational complexity of propositional STRIPS planning. Artificial Intelligence, 69(1-2):165–204, 1994. Christian Fritz. Monitoring the Generation and Execution of Optimal Plans. PhD thesis, University of Toronto, April 2009. Sheila A. McIlraith, Tran Cao Son, and Honglei Zeng. Semantic web services. IEEE Intelligent Systems. Special Issue on the Semantic Web, 16(2):46–53, March/April 2001. Amir Pnueli. The temporal logic of programs. In Proceedings of the 18th Annual Symposium on Foundations of Computer Science (FOCS), SFCS ’77, pages 46–57, 1977. Niloofar Razavi, Azadeh Farzan, and Sheila A. McIlraith. Predicting atomicity violations in concurrent programs via planning. In Proceedings of the ICAPS-11 Workshop on Verification and Validation of Planning and Scheduling Systems (VVPS), 2011. Niloofar Razavi, Azadeh Farzan, and Sheila A. McIlraith. Generating effective tests for concurrent programs via AI automated planning techniques. International Journal on Software Tools for Technology Transfer (STTT) (STTT), 16(1):49–65, 2014. Raymond Reiter. Knowledge in Action: Logical Foundations for Specifying and Implementing Dynamical Systems. MIT Press, Cambridge, MA, 2001. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 70 / 71
  • 85. References III Shirin Sohrabi and Sheila A. McIlraith. Preference-based web service composition: A middle ground between execution and search. In Proceedings of the 9th International Semantic Web Conference (ISWC-10), pages 713–729, Shanghai, China, November 2010. Shirin Sohrabi, Natasha Prokoshyna, and Sheila. A. McIlraith. Web service composition via generic procedures and customizing user preferences. In Proceedings of the 5th International Semantic Web Conference (ISWC), pages 597–611, Athens, Georgia, 2006. Shirin Sohrabi, Jorge Baier, and Sheila A. McIlraith. Htn planning with preferences. In Proceedings of the 21st International Joint Conference on Artificial Intelligence (IJCAI), pages 1790–1797, Pasadena, California, 2009. Shirin Sohrabi, Jorge Baier, and Sheila A. McIlraith. Diagnosis as planning revisited. In Proceedings of the 12th International Conference on Knowledge Representation and Reasoning (KR), Toronto, Canada, 2010. To appear. Sheila A. McIlraith (UofT): Of Plans, Programs, and Automata 71 / 71