Htn Planning In A Tool Supported


Published on

Htn Planning In A Tool Supported

Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Htn Planning In A Tool Supported

    1. 1. GIPO II: HTN Planning in a Tool-supported Knowledge Engineering Environment <ul><li>Lee McCluskey </li></ul><ul><li>Donghong Liu </li></ul><ul><li>Ron Simpson </li></ul><ul><li>Department of Computing and </li></ul><ul><li>Mathematical Sciences, </li></ul><ul><li>The University of Huddersfield </li></ul>
    2. 2. Summary <ul><li>In this paper/talk, we postulate a “domain independent” method supported by </li></ul><ul><ul><li>static/dynamic tools </li></ul></ul><ul><ul><li>dual structuring of the model via object hierarchies and HTN operators </li></ul></ul><ul><li>to acquire, develop and validate a hierarchical planning domain model . </li></ul>
    3. 3. Contents <ul><li>Contents: </li></ul><ul><li>Background+ Development Method </li></ul><ul><li>Modelling </li></ul><ul><li>The Transparency Tool </li></ul><ul><li>The HyHTN planner / algorithm </li></ul><ul><li>Conclusions </li></ul>
    4. 4. 1`. Background + Development Method <ul><li>Our main interest is in Knowledge Engineering - the acquisition, validation and modelling of AI Planning knowledge. </li></ul><ul><li>We are creating experimental research platforms for investigating </li></ul><ul><ul><li>the integration of planning tools </li></ul></ul><ul><ul><li>methods of planning knowledge acquisition </li></ul></ul>
    5. 5. Advertisements <ul><li>GIPO-I and GIPO-II software can be obtained freely for Linux, Solaris and Windows via our website: </li></ul><ul><li> </li></ul><ul><li>There is a demonstration of GIPO II at the Demo session later on this evening </li></ul><ul><li>Also please note that there is a NEW comprehensive web site for planners and schedulers, planning tools, domain models - on </li></ul><ul><li> </li></ul><ul><li>sponsored by the EU PLANET Network </li></ul>
    6. 6. Recap on GIPO (related papers in ECP’01, ISMIS’02,AIPS’02) : <ul><li>An ‘open’ tools environment supporting domain acquisition and domain modelling integrated via a GUI around the Object Centred language OCL h and associated method. </li></ul><ul><li>Our approach has been to stick to a ‘classical’ planning foundation and concentrate on the integration/acquisition/modelling aspects </li></ul>
    7. 7. GIPO - I : <ul><li>GIPO version 1 contains within a GUI: </li></ul><ul><ul><li>domain model editors </li></ul></ul><ul><ul><li>static analysis checking tools </li></ul></ul><ul><ul><li>a plan stepper </li></ul></ul><ul><ul><li>an exporter to PDDL </li></ul></ul><ul><ul><li>planners + API for 3rd party planners </li></ul></ul><ul><ul><li>a solution animator </li></ul></ul><ul><ul><li>a random task generator </li></ul></ul><ul><ul><li>(new in ‘02) an induction tool to help in operator acquisition </li></ul></ul>
    8. 8. Domain Model Development with GIPO-II : Method Outline <ul><li>GIPO-II is designed for writing HTN models. GIPO II contains </li></ul><ul><ul><li>domain model editors </li></ul></ul><ul><ul><li>basic static analysis checking tools </li></ul></ul><ul><ul><li>is object class hierarchy consistent? </li></ul></ul><ul><ul><li>do object state descriptions satisfy invariants? </li></ul></ul><ul><ul><li>are predicate structures and operator schema mutually consistent? </li></ul></ul><ul><ul><li>are task specifications consistent with the domain model? </li></ul></ul><ul><ul><li>a plan stepper </li></ul></ul><ul><ul><li>a solution visualiser </li></ul></ul><ul><ul><li>PLUS: </li></ul></ul><ul><ul><li>Transparency Tool + HyHTN Planner </li></ul></ul><ul><ul><li>TO ADD: </li></ul></ul><ul><ul><li>Induction and Pattern tools </li></ul></ul>Acquisition of Objects/ Object State Behaviour -use GIPO-II GUI or (next release) use generic paterns Operator Acquisition Using GIPO-II GUI or (next release) induction Static Analysis Tools Static Analysis including Transparency Tool Solving simple tasks using The Plan Stepper Solving more complex Tasks with HyHTN Solution visualier
    9. 9. 2. Modelling <ul><li>GIPO’s modelling based on the idea of engineering a planning domain so that the universe of potential states of objects are defined first: </li></ul><ul><li>objects grouped within classes under a class hierarchy. </li></ul><ul><li>Each class in the hierarchy may have a ``behaviour'' in the sense that objects of that class have changeable properties and relations. </li></ul><ul><li>An object may inherit behaviour from each class above it in the hierarchy. </li></ul><ul><li>This proceeds before operator definition and makes it possible to accurately induce operator schema (as shown in our AIPS’02 paper..) </li></ul>GIPO Example from a TransLog Domain
    10. 10. Object hierarchy example physical_obj package vehicle railv train traincar waiting certified delivered moveable available attached unattached at
    11. 11. Operator representation <ul><li>The basis of both primitive and hierarchical operators are transitions of objects LHS => RHS </li></ul><ul><li>Depending on how precisely specified the LHS/RHS of transitions are, this abstraction uniformly encompasses goal conditions, pre-conditions, necessary and conditional effects, deterministic and non-deterministic actions.. </li></ul>
    12. 12. Method Representation <ul><li>Primitive operators are composed of transitions and constraints. But hierarchical domain models contain methods - HTN-like operators </li></ul><ul><li>Methods are defined using </li></ul><ul><ul><li>transitions </li></ul></ul><ul><ul><li>constraints </li></ul></ul><ul><ul><li>a task network (of methods and achieve goals) </li></ul></ul>
    13. 13. Task Representation <ul><li>Tasks are defined using </li></ul><ul><ul><li>an initial state </li></ul></ul><ul><ul><li>a task network (of methods and achieve goals) </li></ul></ul><ul><ul><li>constraints on variables/orders in the task network </li></ul></ul><ul><ul><li>EXAMPLE (without the initial state data): </li></ul></ul><ul><ul><li>( [ achieve(ss(traincar,traincar1, </li></ul></ul><ul><ul><li>[at(traincar1,city1-ts1)])), </li></ul></ul><ul><ul><li>transport(pk-5-z,city3-cl1-z,city2-cl1), </li></ul></ul><ul><ul><li>achieve(ss(package,pk-5, </li></ul></ul><ul><ul><li>[at(pk-5,X),delivered(pk-5)] )) ], </li></ul></ul><ul><ul><li>[before(1,3)], </li></ul></ul><ul><ul><li>[serves(X,city3-x)] ) </li></ul></ul>
    14. 15. 3. The Transparency Tool <ul><ul><li>A Method’s transitions can be viewed as (or translated to) pre- and post conditions for that method’s task network </li></ul></ul><ul><li>For Example: </li></ul>PRE POST PRE POST POST POST POST PRE PRE ACHIEVE GOAL task network task network CAN BE EXPANDED BY EXPANDING EACH METHOD
    15. 16. The Transparency Property <ul><ul><li>Methods are regulated by the semantic property of transparency -- this ensures they are structured in a coherent manner. </li></ul></ul><ul><li>A method is sound if its task network necessarily achieves its POST-condition with respect to the objects in the method’s transitions. </li></ul><ul><li>The transparency property is then as follows: </li></ul><ul><li>A method m is transparent if it and every expansion of m, consistent with its static constraints, is sound. </li></ul>
    16. 17. The Transparency Tool <ul><ul><li>The tool is executed after each method has been created or updated. </li></ul></ul><ul><li>An error shows that the method’s task network cannot perform the method’s transitions. </li></ul><ul><li>Its use can uncover subtle errors in methods .. But it cannot spot all errors! </li></ul>
    17. 19. 4. The HyHTN planner / algorithm <ul><li>A m ethods’ task networks can be composed of all achieve goals, all methods, or somewhere in between. The idea is to use HyHTN at any point in this development space. </li></ul><ul><li>It inputs an OCL h domain model and task as shown above. </li></ul><ul><li>It outputs a plan that is input to the plan visualiser , displaying the decompositions making up the solution to the task. </li></ul>
    18. 20. HyHTN Algorithm: <ul><li>HYHTN is a forward state advancing HTN planner. This has the advantage that heuristic state-space search can be used to establish `achieve-goal' conditions . </li></ul><ul><li>Thus the performance of eg SHOP-like algorithms in HTN planning, and the performance of fast forward algorithms in pre-condition planning have been combined into a flexible, efficient hybrid system. </li></ul><ul><li>Also the transparency property reduces the possibility of choosing methods that lead to dead - ends, as every task network decomposition that satisfies its static constraints is guaranteed to achieve its post-conditions. </li></ul>
    19. 21. Experiments with HyHTN <ul><li>In the paper we include a comparison of HyHTN vs SHOP using the Translog Domain with object classes such as cities, regions, packages, trucks, trains, planes, cranes, ramps etc. </li></ul><ul><li>The domain model contains 34 parameterised methods and 58 parameterised primitive operator structures. The SHOP model is of a similar size. </li></ul><ul><li>The specific problems concern the transport of up to 10 packages, with 5 connected cities, 15 locations, 15 cranes to maintain one crane at each location, and 11 trucks in one location in the initial state.The packages were of different types: bulky, liquid, granular, and mail. </li></ul>
    20. 23. 5. Summary <ul><li>We have introduced a method which includes two powerful tools for HTN planning and domain development: </li></ul><ul><li>Transparency – to ensure that hierarchical operators do what their transitions say they do. This is static validation. </li></ul><ul><li>HyHTN – a planner that can be used to help develop hierarchical operators in that initially it can be run with `achieve goals’ and these can be replaced by canned plans as the domain model is refined. </li></ul>
    21. 24. 6. Future <ul><li>GIPO-II is still only usable by experts… we want to make it more accessible :- </li></ul><ul><li>We intend to incorporate the transparency property into an induction and theory revision tool we are creating for inducing HTN models from examples. </li></ul><ul><li>We intend to transfer GIPO into a Web Service and eventually make it into an autonomous knowledge acquisition agent for planning problems. </li></ul>