• Action Model Learning:

    Creating domain models for planning is time-consuming and tedious, even for domain experts. In this project we aim to automatically learn domain models (or action models) from historical plan traces.

  • Publications:

    Hankz Hankui Zhuo, Qiang Yang, Derek Hao Hu and Lei Li. Learning Complex Action Models with Quantifiers and Logical Implications. Artificial Intelligence Journal (AIJ), 174(18), 1540-1569, 2010.

    Hankz Hankui Zhuo, Derek Hao Hu, Chad Hogg, Qiang Yang, Hector Munoz-Avila. Learning HTN Method Preconditions and Action Models from Partial Observations. International Joint Conference on Artificial Intelligence (IJCAI-09), 1804-1810, 2009. [PDF]

    Hankz Hankui Zhuo, Hector Muñoz-Avila and Qiang Yang. Learning Hierarchical Task Network Domains from Partially Observed Plan Traces. Artificial Intelligence. volume 212, July 2014, Pages 134-157.
    http://dx. doi. org/10. 1016/j. artint. 2014. 04. 003


  • Code:

    HTNML is designed to learn Hierarchical Task Network Models. Please refer to the above papers for more details. HTNML, as well as SOME testing data, can be downloaded here.
    ************************************************************************/
    NOTE THAT WE ARE MAKING HTNML MORE READABLE AND EXTENDING HTNML TO LEARNING FROM OTHER SOURCES, E.G., SENSING DATA, HUMAN INTELLIGENCE, ETC. THE SYSTEM WILL THUS BE UPDATED ANYTIME WHEN NEW VERSIONS ARE READY.
    Before you run HTNML, please configure the file "Profile". The following is an example: ------
    Block
    10
    0.5
    0.1
    Block/Maxsat.in
    Block/Maxsat1.in
    Block/Result.out
    ------
    the first line: the directory of traces, i.e., where is Solni;
    the second line: the number of traces;
    the third line: the percentage of observations;
    the fourth line: the percentage of incompleteness of decomposition-trees in traces;
    the fifth and sixth lines: two input files of max-sat, for learning HTN models;
    the last line: the outputted HTN models.
    After configuring "Profile", you can simply compile HTNML by "make" and run HTNML by "./HTNML".
    -----
    Updated on Nov 11, 2013.