PL-PLAN : A Java Open-Source AI Planner

    Introduction

    PL-PLAN is an open-source ai planner written during the summer of 2004 by Philippe Fournier-Viger and Ludovic Lebel as a side project. The goal was to create a simple AI planner to experiment many search techniques for classical states-space exploration, including the Graphplan algorithm, and six algorithms based on partial-order theory. PL-PLAN can be used as a library from any Java programs. A software with a graphical user interface (cf. figure 1) has been developed to run multiple random tests to compare the various algorithms of PL-PLAN. Tests results can be exported to comma-separated files that can be read by Microsoft Excel.

     

    Theoretical Foundations

    Our implementation of the Graphplan algorithm is based on the description found in this book :

    • M. Ghallab, D. Nau, and P. Traverso. Automated Planning: Theory and Practice. Morgan Kaufmann, May 2004.

    Our partial order algorithms are directly inspired by the work done by P. Godefroid and M. Najjar:

    Godefroid, P. (1996). Partial-Order Methods for the Verification of Concurrent Systems -- An Approach to the State-Explosion Problem, Springer-Verlag, volume 1032 of Lecture Notes in Computer Science.

    Najjar, M. (2001). Planification par des Ordres Partiels. M. Sc. Dissertation. Department of Computer Science, University of Sherbrooke. Ref : Q 336 N34 2000 (Bibliothèque des Sciences).

    The code of PL-PLAN is not fully optimized. It should be noted that the four partial-order algorithms based on persistant sets (algorithms with names prefixed by F1) do not always find optimal plans, because of our implementation of persistant sets .

     

    Licence

    This software is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.0 Canada License.