Skip to main content
Log in

Model checking approach to automated planning

  • Published:
Formal Methods in System Design Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18

Similar content being viewed by others

Notes

  1. 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.

  2. The awards page of the 33rd International Conference on Software Engineering (ICSE 2011) in Hawaii, USA, http://2011.icse-conferences.org/content/awards.

References

  1. Bacchus F, Kabanza F, Sherbrooke UD (2000) Using temporal logics to express search control knowledge for planning. Artif Intell 16:123–191

    Article  Google Scholar 

  2. Berardi D, Giacomo GD (2000) Planning via model checking: some experimental results. Unpublished manuscript

  3. Bryant RE (1992) Symbolic boolean manipulation with ordered binary-decision diagrams. ACM Comput Surv 24:293–318

    Article  Google Scholar 

  4. 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

  5. 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

    Chapter  Google Scholar 

  6. Fox M, Long D (1998) The automatic inference of state invariants in TIM. J Artif Intell Res 9:367–421

    MATH  Google Scholar 

  7. Fox M, Long D (2003) PDDL2.1: an extension to PDDL for expressing temporal planning domains. J Artif Intell Res 20:61–124

    MATH  Google Scholar 

  8. 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

    Chapter  Google Scholar 

  9. 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

    Chapter  Google Scholar 

  10. Hoare CAR (1978) Communicating sequential processes. Commun ACM 21(8):666–677

    Article  MATH  MathSciNet  Google Scholar 

  11. 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

    Google Scholar 

  12. Hoffmann J, Nebel B (2001) The FF planning system: fast plan generation through heuristic search. J Artif Intell Res 14:253–302

    MATH  Google Scholar 

  13. Holzmann GJ (2003) The SPIN model checker: primer and reference manual. Addison-Wesley, Reading

    Google Scholar 

  14. 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

    Google Scholar 

  15. Kautz HA, Selman B, Hoffmann J (2006) SatPlan: planning as satisfiability. In: Abstracts of the 5th international planning competition

    Google Scholar 

  16. 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

    Chapter  Google Scholar 

  17. 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

    Chapter  Google Scholar 

  18. 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

    Chapter  Google Scholar 

  19. 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

    Chapter  Google Scholar 

  20. 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

    Chapter  Google Scholar 

  21. 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

    Google Scholar 

  22. 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

    Chapter  Google Scholar 

  23. McDermott DV (1998) PDDL—The Planning Domain Definition Language. Yale Center for Computational Vision and Control

  24. McMillan KL (1992) Symbolic model checking: an approach to the state explosion problem. PhD thesis, Carnegie Mellon University, Pittsburgh, PA, USA

  25. 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

    Chapter  Google Scholar 

  26. Peled D, Pelliccione P, Spoletini P (2009) Wiley encyclopedia of computer science and engineering. Wiley, New York. Chap “Model checking”

    Google Scholar 

  27. 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

    Google Scholar 

  28. 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

    Google Scholar 

  29. 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

    Google Scholar 

  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

    Article  Google Scholar 

  31. 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

    Google Scholar 

  32. 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

    Chapter  Google Scholar 

  33. 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

    Google Scholar 

  34. 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

    Google Scholar 

  35. 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

    Google Scholar 

  36. 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

    Chapter  Google Scholar 

  37. 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

    Chapter  Google Scholar 

  38. 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

    Chapter  Google Scholar 

Download references

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

Authors

Corresponding author

Correspondence to Jing Sun.

Rights and permissions

Reprints 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

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10703-013-0197-1

Keywords

Navigation