1 / 23

Object Transition Sequences: A New Form of Abstraction for HTN Planners

Object Transition Sequences: A New Form of Abstraction for HTN Planners. Lee McCluskey Computing Science Dept, The University of Huddersfield, UK. Contents. Research Aims Background: the domain modelling language OCLh The HTN Planning Algorithm EMS. Problems.

oriel
Download Presentation

Object Transition Sequences: A New Form of Abstraction for HTN Planners

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Object Transition Sequences: A New Form of Abstraction for HTN Planners Lee McCluskey Computing Science Dept, The University of Huddersfield, UK

  2. Contents • Research Aims • Background: the domain modelling language OCLh • The HTN Planning Algorithm EMS

  3. Problems • In applications involving non-toy domain models, traditional htn/Strips domain modelling languages seem to lead to • trouble in building and reasoning with models and planners • models which are hard to validate • There have been various recent advances in planning (e.g. advance in expression by UCPOP, in efficiency by Graphplan) but not much effort in harnessing domain STRUCTURE.

  4. General Aims Our general work on “object-centred planning” is aimed at: • Making domain model building easier • making domain models clearer • making the algorithms simpler to understand At the heart is a simple, tool-supported hierarchical language called OCLh which can be used in conjunction with a design method.

  5. Specific Aims • Introduce a new HTN algorithm called EMS (Expand - Make - Sound) • EMS based on the use of “transition sequences” • Transition sequences based on OCLh

  6. OCLh: States and Objects SORT; OB-ID; SUBSTATE Truck; t-1; at(city-1), moveable, busy(pk-2) object descriptions S-2 ; j-2 ; ss-2 S-3 ; j-3 ; ss-3 ...................... STATE = list of object descriptions

  7. OCLh: Sort Hierarchy vehicle; V; at(V,location) Truck; T; moveable(T) & busy(T,package) or moveable(T) or out-of-service(T) truck ; t-1; at(t-1,city1-cl1) & moveable(t-1) & busy(t-1,pk-2)

  8. OBJECT and CLASS Expressions Object expression: satisfied by at least one substate truck ; T; at(T,C) & moveable(T) & busy(T,P) vehicle ; V; at(V,C) & busy(V,P) & in-city(C,city1) Class expression: must include full hierarchical components truck ; t-1; at(t-1,city1-cl1) & moveable(t-1) & busy(t-1,pk-2) Object description

  9. OCLh: ACTIONS and TRANSITIONS Train ; t-1; at(city2-ts1), in-service, attached(c-2) Train ; t-1; at(city1-ts1), in-service, attached(c-2) Car ; c-2; at(city1-ts1), attached(t-1), busy, .. Car ; c-2; at(city2-ts1), attached(t-1), busy, .. ...................... ...................... State-1 State-2

  10. GUARDED TRANSITION SEQUENCES • TRANSITION: OBJECT EXPRESSION => CLASS EXPRESSION • GUARDED TRANSITION SEQUENCE: (SORT,OBJ-PARAM,PRE,[oe-1 => ce-1, ... ,oe-N => ce-N], POST) • SOUND GUARDED TRANSITION SEQUENCE: For any object description that satisfies the precondition, the transition sequence will result in an object that satisfies the post-condition.

  11. Example (truck,T, [at(T,C),movable(T),available(T)] [ [movable(T),available(T)] => [movable(T),busy(T,pk-2)], [at(T,C),movable(T)] => [at(T,city3-cl1)], [at(T,city3-cl1),movable(T)] => [at(T,city3-cl1), movable(T),busy(T,pk-2)], [at(T,city3-cl1),movable(T)] => [at(T,city1-cl1)], [at(T,city1-cl1), movable(T),busy(T,pk-2)] => [at(T,city1-cl1), movable(T),available(T)] ], [at(T,city1-cl1), movable(T),available(T)] )

  12. Hierarchical Operators GENERAL FORM (ID, PRE, TRANSITIONS, STATICS, TEMPS, DECOMPOSITION) EXAMPLE: (carry-direct(P,O,D), [ ], [ (package, P, [at(P,O), waiting(P), certified(P)] => [at(P,D), waiting(P), certified(P)] )] [is-of-sort(P,package), is-of-sort(V,truck), in-city(O,CY), in-city(D,CY) ], [before(1,3), before(2,3), before(3,4), before(4,5)], [commission(V,P), achieve((truck,V,[at(V,O)])), load-package(P,V,O), move(V,O,D,R1), unload-package(P,V,D) ] )

  13. Summary: an OCLh Domain Model DOMAIN MODEL = OBJECTS; SORT HIERARCHY; CLASS EXPRESSIONS; ATOMIC INVARIANTS; GENERAL INVARIANTS; PRIMITIVE OPERATORS; HIERARCHICAL OPERATORS

  14. The EMS Algorithm: Input and Output - INPUT TASK: ( BODY, TEMPS, STATICS) - EXAMPLE TASK: ( [ achieve(ss(traincar,traincar1,[at(traincar1,city1-ts1)])), transport(pk-5-z,city3-cl1-z,city2-cl1), achieve(ss(package,pk-5,[at(pk-5,X),delivered(pk-5)] )) ], [before(1,3)], [serves(X,city3-x)] ) OUTPUT: a solution - a partially ordered/instantiated set of primitive ops

  15. EMS: Search Space PARTIAL PLAN = (NETWORKS, STATICS) NETWORKS is TREE STRUCTURED: ROOT NETWORK NODE NETWORK NODE NETWORK LEAF NETWORK LEAF NETWORK LEAF NETWORK

  16. EMS: Operation • Network = (Id, Pre, Post, Steps, Temps) • Each non-root Network comes from a Step in its parent Network • A Network is SOUND if all its guarded transition sequences are sound, where • Pre and Post contain the guards • all sequences are those that satisfy Temps

  17. EMS: Operation • Outline Algorithm: • 1. Construct and store an initial partial plan using initial state and task as usual • 2. Choose a partial plan P; If all networks in P are sound and contain primitive operators, go to 6. • 3. If all networks in P are sound, expand leaf networks by replacing hierarchical ops with their expansions • 4. If some networks in P are not sound, make them sound by manipulating their pre- and post-conditions; if this introduces new objects into the guards, these must be ‘passed-up’ • 5. Go to 2 • 6. Extract a solution from P’s network leaves

  18. EMS: Example Network B5 P1 SOUND NETWORK: N2 P2 A5 P3 A0 P0 B0 A1 B1 A4 A3 N4 N3 A2 EXPANSION OF STEP N3: A1 B1 A6 V1 B2 A2 A7 V2 B3 V4 V3 N5 N6

  19. EMS: Network Made Sound B5 P1 N2 P2 A5 P3 B6 V6 A0 P0 B0 V7 A1 B1 V0 A4 A3 N4 N3 A2 B4 V5 NETWORK MADE SOUND: A1 B1 V0 A6 V1 B2 A2 B4 V5 A7 V2 B3 V4 V3 N5 N6

  20. EMS uses another form of abstraction.. • The EMS Algorithm draws on the LINK between: Operator Structure, Substate Class Structure, and Transition Sequences

  21. EMS: EVALUATION • Theoretical • current algorithm proved sound • current algorithm not complete • Empirical • tried out on Translog-derived domains of varying complexity (results in paper)

  22. Conclusions • The main innovation in the EMS algorithm - • sound algorithm with the potential of application to complex applications • object transitions correspond, in general, to the sequential parts of a plan. This allows the pre and post-conditions of transitions in a network to be efficiently computed, and these conditions can be used as guards in reasoning within higher-level networks. • the sort-abstraction technique means that we only consider transitions of a related sort when reasoning about soundness. • reasoning about the soundness of transition sequences is essential done locally - at no time does EMS have to consider the soundness of the whole plan at a global level.

  23. Future Work • EMS is new and requires a great deal of development. One development would be to make it very generic so that it could be (automatically) configured to various domains. • Through the PLANFORM project we will be applying EMS to some complex ‘real’ applications

More Related