Presentation is loading. Please wait.

Presentation is loading. Please wait.

School of Computing and Mathematics, University of Huddersfield An Interactive Method for Inducing Operator Descriptions Lee McCluskey Beth Richardson.

Similar presentations


Presentation on theme: "School of Computing and Mathematics, University of Huddersfield An Interactive Method for Inducing Operator Descriptions Lee McCluskey Beth Richardson."— Presentation transcript:

1 School of Computing and Mathematics, University of Huddersfield An Interactive Method for Inducing Operator Descriptions Lee McCluskey Beth Richardson Ron Simpson Department of Computing and Mathematical Sciences, The University of Huddersfield

2 School of Computing and Mathematics, University of Huddersfield Background n Acquiring and maintaining planning domains is acknowledged to be a major problem. Operators can be hard to construct and debug and planners are not built to help in debugging. n We want non-planning experts to use our planning technology. This requires a higher level interface than PDDL ‘code’ n Complex domains make these problems more acute

3 School of Computing and Mathematics, University of Huddersfield Thrust of this work.. To develop an induction method for creating planning operators that works.. n in complex hierarchical domains n in the context of an “acquisition method” supported by a planning engineering environment We draw from some previous (T.Grant, X.Wang) - our long term aim: The knowledge engineering method/tools should reduce the complexity of the creation process by abstracting away “mathematical details” and reusing “off the shelf” templates. Eventually it should be usable for non- planning-experts.

4 School of Computing and Mathematics, University of Huddersfield GIPO (papers in ECP’01, ISMIS’02) n An ‘open’ tools environment supporting domain acquisition and domain modelling integrated via a GUI around the Object Centred language OCL h language and associated method. Available free in Linux, Solaris and Windows. GIPO contains domain model editors, planners, a stepper, importer/exporter, animator, random task generator, static analysis tools - AND NOW an induction tool to ease Operator Acquisition

5 School of Computing and Mathematics, University of Huddersfield Opmaker - INPUTS Offline: Partial domain spec, got via GIPO or other acquisition method:- Objects, object classes (sorts), predicates, invariants Online: Training sequence, initial state, and user ‘clicks’. Example training sequence: pay_fees pk_3 commission truck_2 move truck_2 city1_cl1 city1_cl2 local_roads load_package pk_3 truck_2 city1_cl2 move truck_2 city1_cl2 city3_ts1 road_route_42 unload_package pk_3 truck_2 city3_ts1

6 School of Computing and Mathematics, University of Huddersfield Opmaker - OUTPUT: A set of Operators/Methods in OCL h Induced Method (HTN operator) has the following structure: - Preconditions - Transitions (Strucural Specification of Op) - Static Constraints - Decomposition (Procedural Specification of Op) - Temporal Constraints

7 School of Computing and Mathematics, University of Huddersfield Example Training Sequence produces.. (pay_fees(Pk_3),[],[sc(package,Pk_3,[uncertified(Pk_3)] => [waiting(Pk_3),certified(Pk_3)])], []). (commission(Truck_2),[],[sc(truck,Truck_2,[moveable(Truck_2),available(Truck_2)] => [moveable(Truck_2),busy(Truck_2)])], []). (move(Truck_2,City1_cl1,City1_cl2,Local_roads),[],[sc(truck,Truck_2,[at(Truck_2,C ity1_cl1),route_available(Local_roads),connects(Local_roads,City1_cl1,City1_cl 2),in_city(City1_cl1,City1),in_city(City1_cl2,City1)] => [at(Truck_2,City1_cl2)])], []). (load_package(Pk_3,Truck_2,City1_cl2),[se(truck,Truck_2,[at(Truck_2,City1_cl2), moveable(Truck_2),busy(Truck_2)])],[sc(package,Pk_3,[waiting(Pk_3),certified( Pk_3)] => [loaded(Pk_3,Truck_2),certified(Pk_3)])], []). (unload_package(Pk_3,Truck_2,City3_ts1),[],[sc(package,Pk_3,[loaded(Pk_3,Truc k_2),certified(Pk_3)] => [waiting(Pk_3),certified(Pk_3)]),sc(truck,Truck_2,[at(Truck_2,City3_ts1),moveab le(Truck_2),busy(Truck_2)] => [at(Truck_2,City3_ts1),moveable(Truck_2),available(Truck_2)])], []).

8 School of Computing and Mathematics, University of Huddersfield Example Training Sequence produces.. method(move_package_local(Pk_3,Truck_2), % dynamic constraints [], % list of necessary transitions [sc(package,Pk_3,[at(Pk_3,City1_cl2),uncertified(Pk_3)] => [at(Pk_3,City3_ts1),waiting(Pk_3),certified(Pk_3)]), sc(truck,Truck_2,[at(Truck_2,City1_cl1),moveable(Truck_2),available(Truck_2)] => [at(Truck_2,City3_ts1),moveable(Truck_2),available(Truck_2)])], % static constraints[ route_available(Road_route_42) connects(Road_route_42,City1_cl2,City3_ts1) connects(Road_route_42,City3_ts1,City1_cl2) route_available(Local_roads) connects(Local_roads,City1_cl1,City1_cl2) in_city(City1_cl1,City1) in_city(City1_cl2,City1)], % temporal constraints [before(1,2),before(2,3),before(3,4),before(4,5),before(5,6)], % decomposition[ pay_fees(Pk_3), commission(Truck_2), move(Truck_2,City1_cl1,City1_cl2,Local_roads), load_package(Pk_3,Truck_2,City1_cl2), move(Truck_2,City1_cl2,City3_ts1,Road_route_42), unload_package(Pk_3,Truck_2,City3_ts1)]).

9 School of Computing and Mathematics, University of Huddersfield RESULTS: “FLAT” DOMAIN MODELS n The Hiking Domain: as shown in paper - a partial domain model was created, then a full operator set was generated by Opmaker, passing all local and global validation checks in the GIPO system. The resulting model was fed into Hoffman’s FF which solved the general hiking problem. This was all done in approximately 1 day’s development. n Other “Flat” domains: Briefcase World, Rocket World and Tyre World: full operator sets induced with little difference to hand-crafted

10 School of Computing and Mathematics, University of Huddersfield RESULTS: Hierarchical domains Results for Translog and Drum Store showed up problems: n inaccurate constraints: opmaker embodies a simple induction algorithm for generating constraints. The constraint set may therefore need refining. n inaccurate pre-conditions: especially in the hierarchical case, the LHS is not so easy to generate accurately. n undergeneralised parameters: The rule of generalising constants to variables in the object's primitive sorts is sometimes too restrictive. For example, the load_package induced operator in the Translog worlds was only applicable to loading packages into trucks if the training example used involved trucks.

11 School of Computing and Mathematics, University of Huddersfield Future Work n Induction of recursive hierarchical operators, with more distinctive HTM features (e.g. more conditional filters) n integration of induction method for hierarchical models into GIPO n use of theory refinement to debug initial operator set n evaluation with novice users (students) ongoing

12 School of Computing and Mathematics, University of Huddersfield Conclusions Opmaker relies on the following cues to help induce operators: n a partial domain model of object sort and behaviour n the completeness and coherence of the example sequences of operators n high level user input, when necessary, in the form of one `click' indicating a choice of substate class DEMONSTRATION: GIPO’s TOOLS INCLUDING OPMAKER INDUCING FLAT OPERATORS


Download ppt "School of Computing and Mathematics, University of Huddersfield An Interactive Method for Inducing Operator Descriptions Lee McCluskey Beth Richardson."

Similar presentations


Ads by Google