Presentation is loading. Please wait.

Presentation is loading. Please wait.

Planner-based Softbots Keith Golden University of Washington Advisor: Dan Weld.

Similar presentations


Presentation on theme: "Planner-based Softbots Keith Golden University of Washington Advisor: Dan Weld."— Presentation transcript:

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: Δ ( φ  { TF } U ) Information gain: Δ ( φ U { TF }) Domain Growth: Δ ( φ FT ) Domain contraction: Δ ( φ TF )

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 { TF }) 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 Δ ( φ FT )  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


Download ppt "Planner-based Softbots Keith Golden University of Washington Advisor: Dan Weld."

Similar presentations


Ads by Google