Try to find a good excuse! BRA-2015 (Workshop on Belief Revision and Argumentation) Bernhard Nebel & Moritz Göbelbecker Department of Computer Science Foundations of Artificial Intelligence
Finding excuses § Motivation § What is action planning? § What can be an excuse? § Possible orderings over excuses § Computational complexity § Some computational experiments BRA 2015 2
Planner-Based Agent Architectures § Planner-based agents can - anticipate the future - compose behaviors / motor programs into complex action sequences - in order to achieve goals § Continual planning: From final demonstration of our TIDY-UP project - monitoring - replanning BRA 2015 3
Incompetence: No plan can be found! § If the robot fails to § At least, we want to execute an action, it know what went wrong possibly can recover § Come up with a from it counterfactual § If the robot fails to explanation (excuse) come up with a plan, - if only the door were this is really annoying! unlocked, I could find a plan to get the coffee - domain is not correctly and the book for you modeled - Determine a minimal - perhaps there are perturbation of the intrinsic reasons (no planning task resources available) BRA 2015 4
Finding excuses § Motivation § What is action planning? § What can be an excuse? § Possible orderings over excuses § Computational complexity § Some computational experiments BRA 2015 5
What is planning (in our context)? § Planning is the process of generating (possibly partial) representations of future behavior prior to the use of such plans to constrain or control that behavior: - Planning is the art and practice of thinking before acting [Haslum] § Kinds of planning: - Trajectory planning - Manipulation planning - Action (or mission) planning BRA 2015 6
Action planning § Given - an initial state (usually described by using Boolean state variables), - a set of possible actions, - a specification of the goal conditions, Ø generate a plan that transforms the current state into a goal state – if there exist one. BRA 2015 7
Another planning task: Logistics § Given a road map, and a number of trucks and airplanes, make a plan to transport objects from their start positions to their destinations. BRA 2015 8
Household Robot domain Given a floor plan, the book1 coffee position of objects and key 2 the state of the doors, room1 room 2 make a plan to door1 (locked) door2 (unlocked) transport objects from their start positions to room3 their destinations. BRA 2015 9
Domain-independent action planning § We would like to solve these problems using a general domain-independent solver. § Start with a declarative specification of the planning task at hand. § Use a domain-independent planning system to solve the general planning problem § Issues: - What specification language shall we use? - How can we solve such planning tasks efficiently? - … BRA 2015 10
A planning formalism: Basic STRIPS § STRIPS: STanford Research Institute Problem Solver § Operators: < para, pre, eff > - para : parameters - pre : conjunctive precondition of atomic facts - effects : literals that become true after execution of the action § Actions: variable-free (instantiated) operators § Initial state description: all positive ground atoms § Goal description: conjunction of ground literals § Example for move operator in the Robot domain: - < (R,S,D), and(room(R), room(S), door(D), unlocked(D), , conn(D,R,S), rin(R)), (¬rin(R), rin(S)) > § Plan: sequence of actions transforming initial state into a goal state BRA 2015 11
Household example (1) § Logical atoms: - room(R), door(D), keyfor(O,D), object(O), rin(R), rholds(O), rfree(), in(O,R), conn(D,R1,R2), unlocked(D) - Operators: - Move operator (R, S, D) : … - Take operator (O,R) : • Precondition: and( object(O), room(R), in(O,R), rfree()) • Effects: ¬ in(O,R), ¬ rfree(), rholds(O) - Put operator (O,R): … - Unlock operator (K,D,R,S) • Precondition: and( object(K),door(D), room(R), room(S), rin(R), conn(D,R,S), keyfor(K,D), ¬ unlocked(D), rholds(K)) • Effects: unlocked(D) BRA 2015 12
Household example (2) § Initial state (described by true ground atoms): - S = {object(c), object(k), room(r1), room(r2), door(d), rin(r1), in(c,r2), conn(d,r1,r2), conn(d,r2,r1), keyfor(k,d), rholds(k)} § Goal description: - G = {in(c,r1)} § Executing unlock(k,d,r1,r2) : - S’ = S ∪ {unlocked(d)} § Succesful plan: - ∆ = <unlock(k,d,r1,r2), put(k,r1), move(r1,r2,d), take(c,r2), move(r2,r1,d), put(c,r1)> BRA 2015 13
Datalog- and propositional STRIPS § STRIPS as described allows for unrestricted first-order terms, i.e., arbitrarily nested function terms - Infinite state space Ø semi-decidability § Simplification: No function terms (only 0-ary terms = constants) - DATALOG-STRIPS Ø EXPTIME-complete § Simplification: No variables in operators (=actions) or only fixed arity of predicates - Propositional STRIPS → used in planning algorithms nowadays (but specification is done using DATALOG- STRIPS) Ø PSPACE-complete BRA 2015 14
Finding excuses § Motivation § What is action planning? § What can be an excuse? § Possible orderings over excuses § Decidability and computational complexity § Some computational experiments BRA 2015 15
Changing a planning task: Excuse types § One could modify operators (teleport through closed doors): - weaken preconditions - delete unwanted side effects - add wanted effects § One could change/reduce the goals (bring only the book) - only reduction makes sense § One could change the initial state (door unlocked) BRA 2015 16
What is a reasonable excuse? § Reducing goals is sensible, but is already dealt with by oversubscription planning , i.e. we will ignore that here. § For operator modifications, every type of modification seems to be reasonable. § For initial state modification, making goals directly true does not seem to make sense (which could lead to non-existence of excuses!). § There are many more operator modifications than state modifications (2 2n compared to 2 n ). § For every state mod. we can find an op. mod, but not vice versa. § We focus on initial state modifications as excuses! BRA 2015 17
Excuses formally Given a planning task Π =(A,O,I,G) , with A being the set of ground atoms, O being the operators, I the initial state description, and G the goal description, the set E ⊆ A is an excuse iff § Π is unsolvable, § E does not contain atoms mentioned in G, § I[E] is a set such that a ∊ I[E] iff 1. a ∊ I and a ∉ E or 2. a ∉ I and a ∊ E, § Π [E]=(A,O,I[E],G) is solvable. That is, E describes which for which atoms the truth value has to be changed to make Π solvable. BRA 2015 18
Finding excuses § Motivation § What is action planning? § What can be an excuse? § Possible orderings over excuses § Decidability and computational complexity § Some computational experiments BRA 2015 19
Preferring Excuses § Even excluding excuses that make goals true directly (or more restrictively excluding mutex- classes), many possibilities remain. § One could order them ( E and E’ being excuses) by: - set inclusion: E is preferred over E’ if E ⊂ E’; - cardinality: E is preferred over E’ if |E|<|E’|; - accumulated weight: Given a weight function w from ground atoms to real numbers, E is preferred over E’ if ∑ e ∊ E w(e) < ∑ e’ ∊ E’ w(e’) ; - lexical ordering over linearly ordered priority classes. BRA 2015 20
Excuses with causal relations § We could get book1 , book1 coffee if door2 were key 2 unlocked . room1 room 2 § We could get book1 , door1 (locked) door2 (locked) if we had key2 . § We could get book1 , room3 if door1 were unlocked . BRA 2015 21
Preferring causes § We prefer an excuse E over E’ if there is a plan from I[E] to the goal that contains a state “satisfying the excuse E’”. § Interestingly, this preference relation by itself is not transitive (since changes by actions are non-monotonic), but we could take the transitive closure. § The relation is orthogonal to the other preference relations and can be combined with it arbitrarily. BRA 2015 22
There is a Hole in the Bucket … key 1 key 2 coffee § All excuses in a cycle room 1 room 2 appear to be equally door 1 (locked) door 2 (locked) plausible, and should therefore be room 3 equivalent. The robot could get the coffee, if - door1 were unlocked, - we had key 1, - door2 were unlocked - we had key 2 - door2 were unlocked - … BRA 2015 23
Finding excuses § Motivation § What is action planning? § What can be an excuse? § Possible orderings over excuses § Computational complexity § Some computational experiments BRA 2015 24
Computational Complexity § Three different reasoning problems: - Existence of an excuse (i.e. original task is unsolvable and excuse is possible). - Relevance of a ground atom: it is part of one preferred excuse. - Necessity of a ground atom: it is part of every preferred excuse. § All these problems are not harder than planning, provided the underlying planning problem is in a complexity class closed under complementation (e.g. PSPACE) and allows to force operators applied in phases. BRA 2015 25
Recommend
More recommend