Download presentation
Presentation is loading. Please wait.
Published byAlfred Fox Modified over 9 years ago
1
Planner-based Softbots Keith Golden University of Washington Advisor: Dan Weld
2
1 Internet Softbot Software robot Effectors mv, ftp, chmod, cd, lpr, rm,... Sensors ls, finger, INSPEC, netfind, wc,... whathow Say what we want, not how to do it Find phone numbers, fetch/print online papers, … Integrate multiple resources
3
2 Can AI planning help? AI planners Take inputs: goal, description of actions Produce: sequence of actions that achieves goal But most planning systems only work on toy problems make unrealistic assumptions –omniscience, infallibility Challenge: Extend planning technology A A B B E E R R S S C C
4
3 The Middle Ground 1. Action Representation 2. Knowledge Representation
5
4 Planning Overview LPR paper FTP LPQ Ahoy! LS FTP CD PwD Print D. Smith’s AIPS ‘96 paper Theory of Action Goal Initial State
6
5 Motivation/Contributions Represent actions like ls, finger Represent goals such as “Rename paper.tex to kr.tex ” “Print all files in directory papers. ” (even with incomplete information) No previous system could express
7
6 The Internet Softbot Sensors Task Manager Effectors UNIX shell & WWW SADL Actions PUCCINI Planner LCW Knowledge
8
7 S ADL Family Tree STRIPS UWLADL SADL Incomplete info, Noise-free sensors Conditional Effects [Pednault, 89] [Etzioni et al, 92] [Fikes & Nilsson, 71] Represents ls, “Rename”, finger...
9
8 S ADL / UWL Annotations Goal annotations: satisfy = achieve by any means hands-off = don’t change (maintenance) Effect annotations cause = change world observe = change agent’s knowledge “Delete the file named core ” satisfy (name (ƒ, core )) satisfy(deleted (ƒ))
10
9 Information Goals are Temporal Two time points When proposition sampled When proposition sampled When reply given When reply given nowin 1883“Tell me now who was President in 1883” tomorrownow“Tell me tomorrow who is President now” ASAPnow“Identify (ASAP) the file now named core ”
11
10 Information Goals are Temporal “Rename paper.tex to kr.tex ” designator (name) changes UWL can’t express initially = time goal was posed SADL solution initially = time goal was posed initially (name ( ƒ, paper.tex )) satisfy (name ( ƒ, kr.tex )) initially (name ( ƒ, core )) satisfy (deleted ( ƒ ))
12
11 “Print paper, but don’t leave it uncompressed.” initially (compressed (paper), tv) satisfy (printed (paper)) satisfy (compressed (paper), tv) State of paper.ps may change temporarily but must be restored C C B B Tidiness Goals
13
12 Unbounded Information Gain action ls (d ) precondition: satisfy(current.shell( csh )) satisfy(readable(d )) ff effect: f when in.dir(f, d) observef l,n,d observe(length(f, l )) observef observe(name(f, n )) observef observe(in.dir(f, d ))
14
13 Knowledge Preconds (Moore) Agent “can achieve” P by performing ACT if: 1. Knows what ACT is 2. Knows ACT achieves P dial.phone (602-1023) to reach Avogadro Is that his number? Is he home? Agent must know action will succeed! A A C C B B A A
15
14 “Open the safe” (combo on paper ) read ( paper, n) KNOW combination ( safe, n) dial (n) opened ( safe ) Knowledge Preconditions
16
15 “Open the safe” (combo on paper ) read ( paper, n) KNOW combination ( safe, n) dial (n) opened ( safe ) “Find out if combo is 31-24-15” dial (31-24-15) “Find out if combo is 31-24-15” dial (31-24-15) Knowledge Preconditions
17
16 “Open the safe” (combo on paper) read ( paper, n) KNOW combination ( safe, n) dial (n) opened ( safe ) “Find out if combo is 31-24-15” dial (31-24-15) “Open the safe” (no combo available) Why not try them all? Feynman: Average time = 4hrs Finding a file, free printer, etc. “Open the safe” (no combo available) Why not try them all? Feynman: Average time = 4hrs Finding a file, free printer, etc. Knowledge Preconditions
18
17 Goals ≠ preconditions Preconditions restrict applicability KP = agent must know outcome beforehand Actions applicable (and useful) even when outcomes uncertain Use only physical preconditions Knowledge Preconditions Considered Harmful
19
18 KPs inappropriate in all Restricted-Markov Domains Effects depend only on –state of the world (not agent’s mental state) –at the time of execution Unix, Internet, robotic domains are R-Markov Domains of Moore, et. al not R-Markov Knowledge subgoals still needed Reduce search Avoid dangerous mistakes Know that goal was achieved Restricted Markov Domains
20
19 UNIX Finger action finger (string ) precondition:... personperson effect: person when lastname(person, string) person firstname(person, string) person userid(person, string) observeperson l,f,u observe(lastname(person, l )) observeperson observe(firstname(person, f )) observeperson observe(userid(person, u ))
21
20 Knowledge Subgoals action finger (string ) precondition:... personperson effect: person when lastname(person, string) person firstname(person, string) person userid(person, string) observeperson l,f,u observe(lastname(person, l )) observeperson observe(firstname(person, f )) observeperson observe(userid(person, u )) GOAL: satisfy(lastname( USER32, last )) INIT: KNOW(userid ( USER32, map@cs.washington.edu ))
22
21 No Knowledge Subgoals action finger (string ) precondition:... personperson effect: person when lastname(person, string) person firstname(person, string) person userid(person, string) observeperson l,f,u observe(lastname(person, l )) observeperson observe(firstname(person, f )) observeperson observe(userid(person, u )) GOAL: satisfy(userid ( user, map ))
23
22 Making Assumptions action finger (string ) precondition:... personperson effect: person when lastname(person, string) person firstname(person, string) person userid(person, string) observeperson l,f,u observe(lastname(person, l )) observeperson observe(firstname(person, f )) observeperson observe(userid(person, u )) GOAL: satisfy(userid ( user, map ))
24
23 Leap before you look! Okay to assume preconditions are true But must verify them later! Knowledge subgoal means verify before Assumption means verify after Want to consider both options Simple solution: Don’t constrain order
25
24 The Internet Softbot Sensors Task Manager Effectors UNIX shell & WWW SADL Actions PUCCINI Planner LCW Knowledge
26
25 Knowledge Representation Closed World Assumption (CWA) Made by classical planners false Anything not recorded as true is false Open World Assumption (OWA) unknown Anything not recorded true or false is unknown Sensor abuse Can’t handle goals
27
26 Sensor Abuse OWA: Don’t know when to stop sensing Many ways to find same information Many plans containing same action After executing find / -name foo, should know ls bin won’t reveal more files named foo ls tex won’t reveal more files named foo Alta Vista may reveal more files named foo
28
27 C B A How Classical Planners Handle block( x ) x block ( x ) OnTable ( x ) replaced with: AB OnTable (A) OnTable (B) C OnTable (C) Relies on CWA Must know all blocks OWA can never be sure A A C C B B
29
28 Local Closed World Knowledge Complete info over restricted domain All blocks on table, all files in directory Local Closed World Knowledge ( LCW ) Restricted form of circumscription Provides fast closed world inference Allows fast updates Suited to action representations of today’s planners.
30
29 L CW Semantics “I know all files in directory bin ” LCW (in.dir(f, bin )) f LCW ( in.dir (f, bin )) ff f ⊨ in.dir (f, bin ) f ⊨ in.dir (f, bin )
31
30 M : Ground literals in agent’s model in.dir(bar, papers) in.dir(core, papers) executable(core) L : LCW formulas in agent’s model f LCW ( in.dir( f, papers) ) If P M, and L ⊢ LCW (P), then P foo in.dir(foo, papers) L CW Representation
32
31 L CW Reasoning Inference If I know all files in tex, and I know the size of every file, then do I know the size of every file in tex ? Updates the size of every file in tex remove the size of every file in tex If I know the size of every file in tex, and I remove a file from tex, do I still know the size of every file in tex ? add What if I add a file to tex ?
33
32 L CW Reasoning is Hard Theorem: If LCW formulas can contain and then answering an LCW query is NP-hard. But we need fast inference! Solution: restrict representation Positive first-order conjunctions Fast polynomial time inference/updates
34
33 L CW Updates L must be updated when M changes. All changes to M fall into one of four categories: Information loss: Δ ( φ { TF } U ) Information gain: Δ ( φ U { TF }) Domain Growth: Δ ( φ FT ) Domain contraction: Δ ( φ TF )
35
34 Information Gain action ls (d ) precondition: satisfy(current.shell( csh )) satisfy(readable(d )) ff effect: f when in.dir(f, d) observef l,n,d observe(length(f, l )) observef observe(name(f, n )) observef observe(in.dir(f, d ))
36
35 Information Gain If agent only gains information, it cannot lose LCW, but could gain it Theorem: If Δ ( φ U { TF }) then L’ L LCW ( φ )
37
36 Domain Growth Adding core to bin invalidates LCW (in.dir(f, bin ) size(f,c)) unless the size of core is known! Theorem: If Δ ( φ FT ) then L’ L - MREL ( φ ) MREL ( φ ) { Φ REL ( φ ) ⊬ LCW ( Φ X ) θ } REL( φ ) { Φ L ( X Φ θ α ) X θ φα ⊬ ( Φ X ) θ }BB A A C C
38
37 L CW Updates
39
38 Pruning Redundant Sensing Experience (problems attempted) Time (CPU seconds)
40
39 Related Work L CW McCarthy, 80 (et al) Eiter & Gottlob, 92 Cadoli & Schaerf, 93 Motro, 89 Levy, 96 Friedman et al, 97 S ADL Moore, Morgenstern, Davis Levesque, 96 Goldman & Boddy, 96 Shoham, 93 (AOP) Allen, 85 Ingrand et al, 96 (PRS)
41
40 Conclusions Building planners for software agents requires scaling up the representation Building fast agents forbids scaling up too much. Find the middle ground
42
41 Conclusions: The Middle Ground S ADL initially: limited temporal goals, no overhead Unbounded info gain, no Situation Calculus No knowledge preconditions L CW Restricted form of Circumscription Representation ideal for modern planners Fast polynomial time inference & updates
43
42 Other Agents Etzioni, et al Kautz, et al, 94, 96 Arens, et al (SIMS) Chawathe, et al (TSIMMIS) Levy, et al (Information Manifold) Maes
44
43 LCW Inference is Incomplete LCW(in.dir(back, f) is.backup(bak)) is.backup(bak) is true in.dir(back, f) is.backup(bak) is.backup(bak) So LCW(in.dir(back, f)) LCW inference rules won’t derive
45
44 NP-hardness of LCW inference Reduce SAT to singleton LCW query = arbitrary boolean formula, p = proposition L = {LCW(p )} Query = LCW(p) If unsatisfiable (p p – so LCW(p ) LCW(p) If satisfiable, cannot conclude LCW(p)
46
45 dial (n ) Precondition: satisfy (at ( safe )) satisfy (isa combo n ) Effect: when (combination ( safe, n ) cause (opened ( safe )) observe (combination ( safe, n )) Dialing for Dollars
47
46 L CW Inference If I know the contents of all directories, then I know the contents of bin. (Instantiation)
48
47 L CW Inference If I know the contents of all directories, then I know the contents of bin. (Instantiation) If I know all files in bin, and I know whether each file in bin is executable, then I know all executable files in bin. (Composition)
49
48 L CW Inference If I know the contents of all directories, then I know the contents of bin. (Instantiation) If I know all files in bin, and I know whether each file in bin is executable, then I know all executable files in bin. (Composition) If I know all executable files, and all files in bin, then I know all executable files in bin. (Conjunction):
50
49 Tractability Theorem: Query time = O ( ( | L | + | M | ) c ) Theorem: Update time O ( | L | ( | L | + | M | ) c ) c = max # conjuncts in LCW formula
51
50 L CW Results Soundness proofs for query/update algorithms Updates optimal for representation Empirical validation of queries Support in P UCCINI Subgoal on obtaining LCW Protect against clobbering of LCW goals
52
51 LCW Query Time
53
SADL LCW
54
(LCW) (SADL)
55
hands-off (name (ƒ, core )) satisfy + hands-off = “Look, but don’t touch”
56
Avg. query time 2 ms Avg. update time 1.2 ms
57
56 Partial-order Planning LPR paper FTP LPQ Ahoy! LS FTP CD PwD Print D. Smith’s AIPS ‘96 paper INSPEC
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.