PG@PG

Task Network Compiler 
a domain compilation based planner 

TNC is a planner developed by Automated Planning Group at University of Perugia which is able to solve , problems with intermediate goals, events and partial plan completion problems by exploiting the performance figure of  fast planners, based on classical state based representation.

TNC's approach is planner engine independent. Despite of syntactic details, any classical planner can be used to solve the compiled problem. The current online version outputs domains which are solved by  GRAPHPLAN.

run the examples, modify them,  and/or insert and run your own problem domain.
 
TNC Architecture  TNC Sintax  TNC References on line TNC Planner

Please  send any question, comment, or source downloading request to milani@unipg.it 


TNC Architecture

TNC compiles the extended problem into the domain, it generates an appropriate and equivalent classical problem domain by adding artificial dummy operators, dummy facts and dummy goals.
 
TNC receives in
A TNC domain without extended goals will result in the classical planner provided by the internal engine working on the classical domain. 

TNC References

Task Planning and Partial Order Planning: A Domain Transformation Approach
Marco Baioletti, Stefano Marcugini, Alfredo Milani
Lecture Notes in AI vol.1348, 52-63, Springer-Verlag 1997
4th European Conference On Planning, Sept 24-26 1997, Toulose, France
Encoding Planning Constraints into Partial Order Planning Domains
Marco Baioletti, Stefano Marcugini, Alfredo Milani
in KR98 Proceedings of 6th International Conference on Principles of Knowledge Representation and Reasoning, Trento, Italy, June 2-5, 1998
Partial Plans Completion with GRAPHPLAN
Marco Baioletti, Stefano Marcugini, Alfredo Milani,
Workshop on Planning as Combinatorial Search, Pittsburgh, USA, June 7, 1998
 
 

TNC Sintax

The syntax for defining facts and operators is based on Graphplan syntax with the following extensions: where taskslist is a list of tasks, each of them defined by the syntax eventslist is a list of events, defined by the syntax
(label conditions)
and orderlist is a list of temporal constraints among tasks and events defined by
(label1 label2).
 

Graphplan syntax

Every object has a type specified as Initial state is specified as a special preconds fact, a list of  facts which are true: Goal state is specified as a special effects fact, a list of facts which are required to be true: Operatoll rs are specified by the classical preconditions/effects scheme with typed parameters : Example: (operator goto
                (params (<l1> place)(<l2> place))
                (preconds (at <l1>) (route <l1> <l2>))
                (effects (del at <l1>)(at <l2>)) )
 

TNC Examples

The following examples point out the expressive power of TNC for modeling extended goals with features like intermediate goals, activity goals, events, precedences. TNC traslates the extended problem domain in a classical problem domain to be solved by a Graphplan engine.

All online examples run a TNC Planner interface will allow you to to interact with examples and to modify the default domain by adding/deleting operators and/or extended goals, or by submitting a completely new problem domain according to TNC Sintax.

Click on any link below to run the corresponding example within a TNC Planner Interface:
Example1 Round Trip Intermediate goal 
Example2 Round Trip Intermediate goal+ordering 
Example3 Round Trip Intermediate goal+activity goal+ordering 
Example4 Round Trip Intermediate goal+activity goal+event 
Example5 Round Trip Intermediate goal+activity goal+event+ordering 
Example6 Comet&Telescope Events+ordering  


TNC Submitting a New Domain

and Running TNC from Online Interface

insert your own problem domain from an example interface or from an online planner interface and click the solve button to run TNC.

the domain interface consists of a Facts form and an Operators form :

run TNC by clicking on the solve button. TNC will run on a remote host machine
The first step consists of domain compilation the extended goals and events are used to generate a classical problem domain which embed the given constraints; the second step is classical planning on the generated equivalent domain.
Output: the first step, domain compilation, can output sintax error messages(e.g. if  the domain contains sintax errors), the second step output consists of a Graphplan like output, where tasks (achieve intermediate goals and do activity goals) and events are plan steps.
 

Visitors since 9 Oct 1998