Abstract
Model checking provides a way to automatically explore the state space of a finite state system based on desired properties, whereas planning is to produce a sequence of actions that leads from the initial state to the target goal states. Previous research in this field proposed a number of approaches for connecting model checking with planning problem solving. In this paper, we investigate the feasibility of using an established model checking framework, Process Analysis Toolkit (PAT), as a planning solution provider for upper layer applications. To achieve this, we first carry out a number of experiments on different model checking tools in order to compare their performance and capabilities on planning problem solving. Our experimental results suggest that solving planning problems using model checkers is not only possible but also practical. We then propose a formal semantic mapping from the standard Planning Domain Description Language (PDDL) to the Labeled Transition System (LTS), based on which a planning module was implemented as a part of the PAT framework. Lastly, we demonstrate and evaluate the approach of using PAT as planning service via a case study on a public transportation management system.
Similar content being viewed by others
Notes
PAT will automatically detect the safety LTL properties and convert them into reachability problems. Hence, we do not include the LTL checking mode for PAT in this experiment.
The awards page of the 33rd International Conference on Software Engineering (ICSE 2011) in Hawaii, USA, http://2011.icse-conferences.org/content/awards.
References
Bacchus F, Kabanza F, Sherbrooke UD (2000) Using temporal logics to express search control knowledge for planning. Artif Intell 16:123–191
Berardi D, Giacomo GD (2000) Planning via model checking: some experimental results. Unpublished manuscript
Bryant RE (1992) Symbolic boolean manipulation with ordered binary-decision diagrams. ACM Comput Surv 24:293–318
Cavada R, Cimatti A, Jochim CA, Keighren G, Olivetti E, Pistore M, Roveri M, Tchaltsev A (2005) NuSMV 2.5 User Manual. CMU and ITC-irst
Cimatti A, Giunchiglia E, Giunchiglia F, Traverso P (1997) Planning via model checking: a decision procedure for \(\mathcal{AR}\). In: Recent advances in AI planning, pp 130–142
Fox M, Long D (1998) The automatic inference of state invariants in TIM. J Artif Intell Res 9:367–421
Fox M, Long D (2003) PDDL2.1: an extension to PDDL for expressing temporal planning domains. J Artif Intell Res 20:61–124
Giunchiglia F, Traverso P (2000) Planning as model checking. In: Biundo S, Fox M (eds) Recent advances in AI planning. Lecture notes in computer science, vol 1809. Springer, Berlin, pp 1–20
Gregory P, Long D, Fox M (2007) A meta-CSP model for optimal planning. In: Proceedings of the 7th international conference on abstraction, reformulation, and approximation, SARA’07. Springer, Berlin, pp 200–214. http://portal.acm.org/citation.cfm?id=1770681.1770700
Hoare CAR (1978) Communicating sequential processes. Commun ACM 21(8):666–677
Hoffmann J (2002) Extending FF to numerical state variables. In: Proceedings of the 15th European conference on artificial intelligence (ECAI-02). Wiley, Lyon, pp 571–575
Hoffmann J, Nebel B (2001) The FF planning system: fast plan generation through heuristic search. J Artif Intell Res 14:253–302
Holzmann GJ (2003) The SPIN model checker: primer and reference manual. Addison-Wesley, Reading
Hörne T, van der Poll JA (2008) Planning as model checking: the performance of ProB vs NuSMV. In: Proceedings of the 2008 annual research conference of the South African Institute of Computer Scientists and Information Technologists on IT research in developing countries: riding the wave of technology, SAICSIT ’08. ACM, New York, pp 114–123
Kautz HA, Selman B, Hoffmann J (2006) SatPlan: planning as satisfiability. In: Abstracts of the 5th international planning competition
Koehler J, Nebel B, Hoffmann J, Dimopoulos Y (1997) Extending planning graphs to an ADL subset. In: Proceedings of the 4th European conference on planning: recent advances in AI planning, ECP ’97. Springer, London, pp 273–285. http://dl.acm.org/citation.cfm?id=647867.736939
Leuschel M, Butler M (2003) ProB: a model checker for B. In: Araki K, Gnesi S, Mandrioli D (eds) FME 2003: formal methods. Lecture notes in computer science, vol 2805. Springer, Berlin, pp 855–874
Lin S-W, André É, Dong J-S, Sun J, Liu Y (2011) An efficient algorithm for learning event-recording automata. In: Bultan T, Hsiung P-A (eds) Automated technology for verification and analysis. LNCS, vol 6996. Springer, Berlin, pp 463–472
Lin S-W, Liu Y, Sun J, Dong JS, André É (2012) Automatic compositional verification of timed systems. In: Giannakopoulou D, Méry D (eds) FM 2012: formal methods. LNCS, vol 7436. Springer, Berlin, pp 272–276
Liu Y, Sun J, Dong JS (2008) An analyzer for extended compositional process algebras. In: Companion of the 30th international conference on software engineering, ICSE Companion ’08. ACM, New York, pp 919–920
Liu Y, Sun J, Dong JS (2010) Analyzing hierarchical complex real-time systems. In: Proceedings of the ACM SIGSOFT international symposium on the foundations of software engineering (FSE 2010), pp 511–527
Liu Y, Sun J, Dong JS (2010) Developing model checkers using PAT. In: Proceedings of the 8th international symposium on automated technology for verification and analysis, ATVA ’10, pp 371–377
McDermott DV (1998) PDDL—The Planning Domain Definition Language. Yale Center for Computational Vision and Control
McMillan KL (1992) Symbolic model checking: an approach to the state explosion problem. PhD thesis, Carnegie Mellon University, Pittsburgh, PA, USA
Nguyen TK, Sun J, Liu Y, Dong JS, Liu Y (2012) Improved BDD-based discrete analysis of timed systems. In: Giannakopoulou D, Méry D (eds) FM 2012: formal methods. LNCS, vol 7436. Springer, Berlin, pp 326–340
Peled D, Pelliccione P, Spoletini P (2009) Wiley encyclopedia of computer science and engineering. Wiley, New York. Chap “Model checking”
Reinefeld A (1993) Complete solution of the eight-puzzle and the benefit of node ordering in IDA*. In: Proceedings of the 13th international joint conference on artificial intelligence, vol 1. Morgan Kaufmann, San Francisco, pp 248–253. http://portal.acm.org/citation.cfm?id=1624025.1624060
Sun J, Liu Y, Dong JS (2008) Model checking CSP revisited: introducing a process analysis toolkit. In: Proceedings of the 3rd international symposium on leveraging applications of formal methods, verification and validation (ISoLA 2008). Springer, Berlin, pp 307–322
Sun J, Liu Y, Dong JS, Sun J (2008) Bounded model checking of compositional processes. In: Proceedings of the 2nd IEEE theoretical aspects of software engineering conference (TASE 2008). IEEE Comput Soc, Los Alamitos, pp 23–30
Sun J, Liu Y, Dong JS, Sun J (2008) Compositional encoding for bounded model checking. Frontiers of Computer Science in China 2(4):368–379
Sun J, Liu Y, Dong JS, Wang HH (2008) Specifying and verifying event-based fairness enhanced systems. In: Proceedings of the 10th international conference on formal engineering methods (ICFEM 2008). Springer, Berlin, pp 318–337
Sun J, Liu Y, Dong JS, Chen C (2009) Integrating specification and programs for system modeling and verification. In: Chin WN, Qin S (eds) Proceedings of the third IEEE international symposium on theoretical aspects of software engineering (TASE’09). IEEE Comput Soc, Los Alamitos, pp 127–135
Sun J, Liu Y, Dong JS, Pang J (2009) PAT: towards flexible verification under fairness. In: Proceedings of the 21th international conference on computer aided verification (CAV 2009), Grenoble, France. Springer, Berlin, pp 709–714
Sun J, Liu Y, Dong JS, Zhang X (2009) Verifying stateful timed CSP using implicit clocks and zone abstraction. In: Proceedings of the 11th international conference on formal engineering methods (ICFEM 2009), pp 581–600
Sun J, Liu Y, Roychoudhury A, Liu S, Dong JS (2009) Fair model checking of parameterized systems. In: Proceedings of the 6th international symposium on formal methods (FM 2009), pp 123–139
Sun J, Song SZ, Liu Y (2010) Model checking hierarchical probabilistic systems. In: Dong J, Zhu H (eds) Formal methods and software engineering. LNCS, vol 6447. Springer, Berlin, pp 388–403
Sun J, Liu Y, Song S, Dong JS, Li X (2011) PRTS: an approach for model checking probabilistic real-time hierarchical systems. In: Qin S, Qiu Z (eds) Formal methods and software engineering. LNCS, vol 6991. Springer, Berlin, pp 147–162
Wang T, Song S, Sun J, Liu Y, Dong JS, Wang X, Li S (2012) More anti-chain based refinement checking. In: Aoki T, Taguchi K (eds) Formal methods and software engineering. LNCS, vol 7635. Springer, Berlin, pp 364–380
Acknowledgements
The authors would like to thank their teammates in the ICSE 2011 SCORE contest, Mr. Hang Yang and Mr. Huanan Wu, for their valuable contributions to the implementation of the “Transport4You” system. This work is partially supported by the research grant TDSI-11-002-1A “Model Checking System of Systems” and NAP project “Formal Verification on Cloud”.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Li, Y., Dong, J.S., Sun, J. et al. Model checking approach to automated planning. Form Methods Syst Des 44, 176–202 (2014). https://doi.org/10.1007/s10703-013-0197-1
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10703-013-0197-1