Abstract
CAN-verify is an automated tool that aids the development, verification, and analysis of BDI agents written in the Conceptual Agent Notation (Can) language. It does not require users to be familiar with verification techniques. CAN-verify supports syntactic error checking, interpretation of programs (running agents), and exhaustive exploration of all possible executions (agent verification and analysis) to check against both generic agent requirements, such as if a task can be achieved successfully, and user-defined requirements, such as whether a certain belief eventually holds. Simple examples of Unmanned Aerial Vehicles (UAV) and autonomous patrol robots illustrate the tool in action.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
- 2.
Parser requires exact natural language wording with user-defined strings as beliefs.
References
Arcaini, P., Bonfanti, S., Gargantini, A., Riccobene, E., Scandurra, P.: Addressing usability in a formal development environment. In: Sekerinski, E., et al. (eds.) FM 2019. LNCS, vol. 12232, pp. 61–76. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-54994-7_6
Archibald, B., Calder, M., Sevegnani, M., Xu, M.: Probabilistic BDI agents: actions, plans, and intentions. In: Calinescu, R., Păsăreanu, C.S. (eds.) SEFM 2021. LNCS, vol. 13085, pp. 262–281. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-92124-8_15
Archibald, B., Calder, M., Sevegnani, M., Xu, M.: Modelling and verifying BDI agents with bigraphs. Sci. Comput. Program. 215, 102760 (2022)
Archibald, B., Calder, M., Sevegnani, M., Xu, M.: Verifying BDI agents in dynamic environments. In: Proceedings of the International Conference on Software Engineering and Knowledge Engineering, pp. 136–141 (2022)
Archibald, B., Calder, M., Sevegnani, M., Xu, M.: Quantitative modelling and analysis of BDI agents. Softw. Syst. Model. (2023). https://doi.org/10.1007/s10270-023-01121-5
Archibald, B., Calder, M., Sevegnani, M., Xu, M.: Quantitative verification and strategy synthesis for BDI agents. In: Rozier, K.Y., Chaudhuri, S. (eds.) NASA Formal Methods. NFM 2023. LNCS, vol. 13903, pp. 241–259. Springer, Cham (2023). https://doi.org/10.1007/978-3-031-33170-1_15
Bakar, N.A., Selamat, A.: Agent systems verification: systematic literature review and mapping. Appl. Intell. 48(5), 1251–1274 (2018)
Benford, S., Calder, M., Rodden, T., Sevegnani, M.: On lions, impala, and bigraphs: modelling interactions in physical/virtual spaces. ACM Trans. Comput.-Hum. Interact. (TOCHI) 23(2), 1–56 (2016)
Bordini, R.H., Fisher, M., Visser, W., Wooldridge, M.: Verifying multi-agent programs by model checking. Auton. Agent. Multi-Agent Syst. 12, 239–256 (2006)
Bordini, R.H., et al.: Programming Multi-agent Systems in AgentSpeak using Jason. vol. 8. Wiley, New York (2007)
Brat, G., Havelund, K., Park, S., Visser, W.: Model checking programs. In: Proceedings of IEEE International Conference on Automated Software Engineering, pp. 3–11. IEEE (2000)
Cardoso, R.C., et al.: A review of verification and validation for space autonomous systems. Curr. Robot. Rep. 2(3), 273–283 (2021)
Clarke, E.M., Emerson, E.A.: Design and synthesis of synchronization skeletons using branching time temporal logic. In: Proceedings of Workshop on Logic of Programs, pp. 52–71 (1981)
Clavel, M., et al.: Maude manual (version 3.0). SRI International (2020)
Dennis, L.A.: Gwendolen semantics: 2017 (2017)
Dennis, L.A., et al.: Model checking agent programming languages. Autom. Softw. Eng. 19(1), 5–63 (2012)
Eker, S., Meseguer, J., Sridharanarayanan, A.: The Maude LTL model checker. Electron. Notes Theor. Comput. Sci. 71, 162–187 (2004)
Farrell, M., Luckcuck, M., Sheridan, O., Monahan, R.: FRETting about requirements: formalised requirements for an aircraft engine controller. In: Gervasi, V., Vogelsang, A. (eds.) REFSQ 2022. LNCS, vol. 13216, pp. 96–111. Springer, Cham (2022). https://doi.org/10.1007/978-3-030-98464-9_9
Gleirscher, M., van de Pol, J., Woodcock, J.: A manifesto for applicable formal methods. arXiv preprint arXiv:2112.12758 (2021)
Hasan, O., Tahar, S.: Formal verification methods. In: Encyclopedia of Information Science and Technology, 3rd Edition, pp. 7162–7170. IGI Global (2015)
Hensel, C., Junges, S., Katoen, J.-P., Quatmann, T., Volk, M.: The probabilistic model checker Storm. Int. J. Softw. Tools Technol. Trans. 1–22 (2021). https://doi.org/10.1007/s10009-021-00633-z
Holzmann, G.J.: The model checker SPIN. IEEE Trans. Softw. Eng. 23(5), 279–295 (1997)
Holzmann, G.J., Lieberman, W.S.: Design and Validation of Computer Protocols, vol. 512. Prentice hall Englewood Cliffs (1991)
Jensen, A.B.: Machine-checked verification of cognitive agents. In: Proceedings of the 14th International Conference on Agents and Artificial Intelligence, pp. 245–256 (2022)
Luckcuck, M., Farrell, M., Dennis, L.A., Dixon, C., Fisher, M.: Formal specification and verification of autonomous robotic systems: a survey. ACM Comput. Surv. (CSUR) 52(5), 1–41 (2019)
Milner, R.: The Space and Motion of Communicating Agents. Cambridge University Press, Cambridge (2009)
Nipkow, T., Wenzel, M., Paulson, L.C. (eds.): : 5. the rules of the game. In: Isabelle/HOL. LNCS, vol. 2283, pp. 67–104. Springer, Heidelberg (2002). https://doi.org/10.1007/3-540-45949-9_5
Pokahr, A., Braubach, L., Jander, K.: The Jadex project: programming model. In: Ganzha, M., Jain, L. (eds.) Multiagent Systems and Applications. Intelligent Systems Reference Library, vol. 45, pp. 21–53. Springer, Berlin (2013). https://doi.org/10.1007/978-3-642-33323-1_2
Rao, A.S.: AgentSpeak(L): BDI agents speak out in a logical computable language. In: Van de Velde, W., Perram, J.W. (eds.) MAAMAW 1996. LNCS, vol. 1038, pp. 42–55. Springer, Heidelberg (1996). https://doi.org/10.1007/BFb0031845
Sardina, S., Padgham, L.: A BDI agent programming language with failure handling, declarative goals, and planning. Auton. Agent. Multi-Agent Syst. 23(1), 18–70 (2011)
Sardina, S., Silva, L.D., Padgham, L.: Hierarchical planning in BDI agent programming languages: a formal approach. In: Proceedings of the International Joint Conference on Autonomous Agents and Multiagent Systems, pp. 1001–1008 (2006)
Sevegnani, M., Calder, M.: BigraphER: rewriting and analysis engine for bigraphs. In: Chaudhuri, S., Farzan, A. (eds.) CAV 2016. LNCS, vol. 9780, pp. 494–501. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-41540-6_27
Winikoff, M.: Jack™ intelligent agents: an industrial strength platform. In: Bordini, R.H., Dastani, M., Dix, J., El Fallah Seghrouchni, A. (eds.) Multi-Agent Programming. MSASSO, vol. 15, pp. 175–193. Springer, Boston, MA (2005). https://doi.org/10.1007/0-387-26350-0_7
Winikoff, M., Padgham, L., Harland, J., Thangarajah, J.: Declarative & procedural goals in intelligent agent systems. In: KR, vol. 2002, pp. 470–481 (2002)
Xu, M., Rivoalen, T., Archibald, B., Sevegnani, M.: CAN-verify source repository and models, Septemer 2022. https://zenodo.org/record/8282684
Acknowledgments
This work is supported by the Engineering and Physical Sciences Research Council, under grants EP/S035362/1, EP/W01081X/1, EP/V026801, and an Amazon Research Award on Automated Reasoning.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2024 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Xu, M., Rivoalen, T., Archibald, B., Sevegnani, M. (2024). CAN-verify: A Verification Tool For BDI Agents. In: Herber, P., Wijs, A. (eds) Integrated Formal Methods. iFM 2023. Lecture Notes in Computer Science, vol 14300. Springer, Cham. https://doi.org/10.1007/978-3-031-47705-8_19
Download citation
DOI: https://doi.org/10.1007/978-3-031-47705-8_19
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-47704-1
Online ISBN: 978-3-031-47705-8
eBook Packages: Computer ScienceComputer Science (R0)