RV4JaCa—Towards Runtime Verification of Multi-Agent Systems and Robotic Applications
Abstract
:1. Introduction
2. Background
2.1. Multi-Agent Systems
2.2. JaCaMo Framework
2.3. Runtime Verification
2.4. Runtime Monitoring Language
- , denoting a set of singleton traces containing the events s.t. ;
- , denoting the sequential composition of two sets of traces;
- , denoting the unordered composition of two sets of traces (also called shuffle or interleaving);
- , denoting the intersection of two sets of traces;
- , denoting the union of two sets of traces;
- , denoting the set of traces where the variable x can be used (i.e., the variable x can appear in event types in and can be unified with values).
- , denoting the set of chains of concatenations of traces in
3. Engineering Runtime Verification for Multi-Agent Systems
- (1)
- A Sniffer class, developed in Java, responsible for observing all communication between agents in the MAS.
- (2)
- A CArtAgO artefact, named RV4JaCa Artefact, responsible for analysing the messages observed by the Sniffer, transforming them into a JSON (JavaScript Object Notation) object and sending it as a REST (Representational State Transfer) request to the Formal Monitor. Note that RV4JaCa is not in any way limited to a specific kind of monitor; we used an RML monitor in our tests simply because it was the most suitable candidate for specifying the protocols of our interest. Nonetheless, a different monitor could be as easily integrated as the RML one. In addition, when the RV4JaCa Artefact receives the response to the request made to the Formal Monitor saying that there was a violation, it can add a belief in the Monitor agent’s belief base.
- (3)
- The Formal Monitor, responsible for analysing the events sent by RV4JaCa Artefact and verifying the satisfaction or violation of a formal property of interest.
- (4)
- A Monitor agent, which can be added to the system if it is necessary to interfere with agents’ behaviour during the runtime. In this case, if there is a violation, the RV4JaCa Artefact adds a belief to the Monitor’s belief base. When the agent perceives this addition, it can react by sending a message to the interested agents warning about the violation. This may trigger some consequent recovery mechanism, which usually is fully domain dependent. On the other hand, the Monitor agent can also perform different activities depending on the system’s needs. Listing 1 shows an example of a plan in Jason that the Monitor agent can use to react to a belief addition (+violation). It informs an interested agent (receiver) that there was a violation in exchanging messages between two agents. In this simple example, the agent uses the internal action .send to inform the Receiver agent about the violation. Such a send action is used to inform the receiver of the message classified as a violation of the latter. The information passed as parameters are domain specific; indeed, RV4JaCa is mainly focused on checking whether an interaction protocol is violated at runtime or not. How to react and what to do after a violation has been observed is completely domain specific. Listing 1 is an example of an implementation of the monitor agent, which in this case, only propagates the information to the agents’ of interest. Naturally, as we point out later on in the paper, more complex behaviour can be implemented, and the monitor agent is the place where the developer can customise it.
Listing 1. An example of how an agent perceives a violation. | |
1 | +violation(Time,Id,IsReply,Performative,Sender,Receiver,Verdict) |
2 | <- |
3 | .print(“Message ”,Id,“ from ”,Sender,“ to ”,Receiver,“ at ”, Time, |
4 | “ has a violation.”); |
5 | .send(Receiver,assert,violation(Time,Id,IsReply,Performative, |
6 | Sender,Receiver,Verdict)). |
3.1. Agents Instrumentation
3.2. Monitor Information Exchange
3.3. Runtime Verification of Agents Interaction Protocols
3.4. Runtime Enforcement through the Monitor Agent
4. Bed Allocation Case Study
4.1. Hospital Bed Allocation Domain
4.2. MAIDS—Multi-Agent Intentional Dialogue System
- assistant (a): The internal representation in MAS for a chatbot that assists hospital staff in carrying out bed allocation in a hospital;
- ontology (l): An agent with access to ontologies responsible for semantic reasoning using argumentation schemes as defeasible rules generated automatically from the semantic rules contained in the ontology.
- operator (o): The internal representation in MAS for the hospital staff member who operates the system for allocating beds;
- nurse (n): The internal representation in MAS for a nurse who in that hospital serves as domain expert for bed allocation and whom the operator needs to consult in case of doubt;
- database (d): An agent with access to the hospital’s general information system for checking details of past and current patients, bed allocations, etc.
- validator (v): An agent responsible for validating bed allocation plans using a PDDL plan validator.
- optimiser (p): An agent responsible for making suggestions for optimised allocations using an optimiser.
Listing 2. MAS Log. | |
1 | [ Dial4JaCa ] Defining observable property |
2 | [ operator ] Request received - Get Suggestion from Dialog |
3 | operator ] Params : [ param (“ paciente ” ,[“2044429”]) ] |
4 | [ operator ] Chatbot of operator asks for suggestions to allocate : [“2044429”] |
5 | [ assistant ] Agent operator requesting suggestion . |
6 | [ optimiser ] Agent assistant requesting optmised suggestion . |
7 | [ assistant ] Result received from agent optimiser |
8 | [ operator ] Asking to chatbot : Eu posso sugerir colocar o/a paciente 2044429 no leito 2233. Voce gostaria que eu confirmasse essa alocacao ? |
9 | [ Dial4JaCa ] Reply received from agent |
10 | [ Dial4JaCa ] Agent jason response : Eu posso sugerir colocar o/a paciente 2044429 no leito 2233. Voce gostaria que eu confirmasse essa alocacao ? |
11 | [ Dial4JaCa ] Request received : {…} |
12 | [ Dial4JaCa ] Defining observable property |
13 | [ operator ] Request received - Verify Suitability from Dialog |
14 | [ operator ] Params : [ param (“ paciente ” ,“1318550”) ,param (“ leito ” ,“3134”) ] |
15 | [ operator ] Chatbot of operator is requesting to verify suitability : paciente : 1318550 , leito : 3134 |
16 | [ ontology_specialist ] Verifying if adequado (“3134” ,“1318550”) . |
17 | [ monitor ] Message mid6 from operator to assistant at Wed Jan 25 10:17:25 BRT 2023 has a violation . |
18 | [ assistant ] Agent monitor reported a violation . |
19 | [ operator ] Asking to chatbot : Me desculpe , primeiro eu preciso que voce me responda o que perguntei anteriormente . |
20 | [ Dial4JaCa ] Reply received from agent |
21 | [ Dial4JaCa ] Agent jason response : Me desculpe , primeiro eu preciso que voce me responda o que perguntei anteriormente . |
4.3. RML Properties for the Bed Allocation Domain
Listing 3. The RML specification for checking that no change in topic is observed after the user has requested a validation result. | |
1 | question matches { |
2 | performative:’question’, |
3 | sender:’operator’, receiver:’assistant’, |
4 | content:{name:’getValidationResult’} |
5 | }; |
6 | answer_with_constraint matches |
7 | { |
8 | performative:’assert’, |
9 | sender:’assistant’, receiver:’operator’, |
10 | content:{name:’answer’, name:’result’, arg1:_, arg2:_} |
11 | }; |
12 | constrained_question matches |
13 | {performative:’question’, sender:’operator’, receiver:’assistant’, content:{name:’allocValPatients’}} | |
14 | {performative:’question’, sender:’operator’, receiver:’assistant’, content:{name:’getOptimisedAllocation’}} | |
15 | {performative:’question’, sender:’operator’, receiver:’assistant’, content:{name:’dontAllocValPatients’}} | |
16 | {performative:’question’, sender:’operator’, receiver:’assistant’, content:{name:’allocValidValPatients’}}; |
17 | a_question matches |
18 | { |
19 | performative:’question’, |
20 | sender:’operator’, receiver:’assistant’ |
21 | }; |
22 | an_answer matches |
23 | { |
24 | performative:’assert’, |
25 | sender:’assistant’, receiver:’operator’ |
26 | }; |
27 | Main = Question*; |
28 | Question = (question Answer); |
29 | Answer = (answer_with_constraint ConstrainedQuestion) \/ (an_answer); |
30 | ConstrainedQuestion = constrained_question Answer; |
Listing 4. The RML specification for checking that an agent always replies before messaging about something else. | |
1 | question(ag1, ag2) matches |
2 | { |
3 | performative:’question’, |
4 | sender:ag1, receiver:ag2 |
5 | }; |
6 | answer(ag1, ag2) matches |
7 | { |
8 | performative:’assert’, |
9 | sender:ag1, receiver:ag2 |
10 | }; |
11 | Main = {let ag1, ag2; question(ag1, ag2) answer(ag2, ag1)}*; |
5. Related Works
6. Conclusions and Future Work
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
Abbreviations
Multidisciplinary Digital Publishing Institute | MDPI |
Directory of open access journals | DOAJ |
Runtime Verification | RV |
Multi-Agent Systems | MAS |
Artificial Intelligence | AI |
Agent-Centred Multi-Agent Systems | ACMAS |
Organisation-Centred Multi-Agent Systems | OCMAS |
Explainable Artificial Intelligence | XAI |
Belief–Desire–Intention | BDI |
Extensible Markup Language | XML |
Runtime Monitoring Language | RML |
Domain-Specific Language | DSL |
Representational State Transfer | REST |
GNU Linear Programming Kit | GLPK |
Planning Domain Definition Language | PDDL |
Multi-Agent Intentional Dialogue System | MAIDS |
W3C Web Ontology Language | OWL |
References
- Bordini, R.H.; Dastani, M.; Dix, J.; Seghrouchni, A.E.F. (Eds.) Multi-Agent Programming, Languages, Tools and Applications; Springer: Berlin/Heidelberg, Germany, 2009. [Google Scholar] [CrossRef]
- Schmidt, D.; Panisson, A.R.; Freitas, A.; Bordini, R.H.; Meneguzzi, F.; Vieira, R. An Ontology-Based Mobile Application for Task Managing in Collaborative Groups. In Proceedings of the Twenty-Ninth International Florida Artificial Intelligence Research Society Conference, FLAIRS 2016, Key Largo, FL, USA, 16–18 May 2016; Markov, Z., Russell, I., Eds.; AAAI Press: Palo Alto, CA, USA, 2016; pp. 522–526. [Google Scholar]
- Cardoso, R.C.; Ferrando, A.; Briola, D.; Menghi, C.; Ahlbrecht, T. Agents and Robots for Reliable Engineered Autonomy: A Perspective from the Organisers of AREA 2020. J. Sens. Actuator Netw. 2021, 10, 33. [Google Scholar] [CrossRef]
- Winikoff, M. BDI agent testability revisited. Auton. Agents Multi Agent Syst. 2017, 31, 1094–1132. [Google Scholar] [CrossRef]
- Winikoff, M. Debugging Agent Programs with Why?: Questions. In Proceedings of the 16th Conference on Autonomous Agents and MultiAgent Systems, AAMAS 2017, São Paulo, Brazil, 8–12 May 2017; Larson, K., Winikoff, M., Das, S., Durfee, E.H., Eds.; ACM: Richland, SC, USA, 2017; pp. 251–259. [Google Scholar] [CrossRef]
- Dennis, L.A.; Fisher, M.; Webster, M.P.; Bordini, R.H. Model checking agent programming languages. Autom. Softw. Eng. 2012, 19, 5–63. [Google Scholar] [CrossRef] [Green Version]
- Bartocci, E.; Falcone, Y.; Francalanza, A.; Reger, G. Introduction to Runtime Verification. In Lectures on Runtime Verification—Introductory and Advanced Topics; Bartocci, E., Falcone, Y., Eds.; Springer: Cham, Switzerland, 2018; Volume 10457, pp. 1–33. [Google Scholar] [CrossRef] [Green Version]
- Leucker, M.; Schallhart, C. A brief account of runtime verification. J. Log. Algebr. Methods Program. 2009, 78, 293–303. [Google Scholar] [CrossRef] [Green Version]
- Ahrendt, W.; Chimento, J.M.; Pace, G.J.; Schneider, G. Verifying data- and control-oriented properties combining static and runtime verification: Theory and tools. Form. Methods Syst. Des. 2017, 51, 200–265. [Google Scholar] [CrossRef] [Green Version]
- Boissier, O.; Bordini, R.H.; Hübner, J.F.; Ricci, A.; Santi, A. Multi-agent oriented programming with JaCaMo. Sci. Comput. Program. 2013, 78, 747–761. [Google Scholar] [CrossRef]
- Engelmann, D.C.; Ferrando, A.; Panisson, A.R.; Ancona, D.; Bordini, R.H.; Mascardi, V. RV4JaCa–Runtime Verification for Multi-Agent Systems. In Proceedings of the Second Workshop on Agents and Robots for Reliable Engineered Autonomy, AREA@IJCAI-ECAI 2022, Vienna, Austria, 24 July 2022; pp. 23–36. [Google Scholar] [CrossRef]
- Wooldridge, M. An Introduction to MultiAgent Systems; John Wiley & Sons Ltd.: Hoboken, NJ, USA, 2002. [Google Scholar]
- Bordini, R.H.; Hübner, J.F.; Wooldridge, M. Programming Multi-Agent Systems in AgentSpeak Using Jason; John Wiley & Sons: Hoboken, NJ, USA, 2007. [Google Scholar]
- Ferber, J.; Gutknecht, O.; Michel, F. From Agents to Organizations: An Organizational View of Multi-agent Systems. In Proceedings of the Agent-Oriented Software Engineering IV, 4th International Workshop, AOSE 2003, Melbourne, Australia, 15 July 2003; Giorgini, P., Müller, J.P., Odell, J., Eds.; Springer: Berlin/Heidelberg, Germany, 2003; Volume 2935, pp. 214–230. [Google Scholar] [CrossRef] [Green Version]
- Horling, B.; Lesser, V.R. A survey of multi-agent organizational paradigms. Knowl. Eng. Rev. 2004, 19, 281–316. [Google Scholar] [CrossRef] [Green Version]
- Anjomshoae, S.; Najjar, A.; Calvaresi, D.; Främling, K. Explainable agents and robots: Results from a systematic literature review. In Proceedings of the 18th International Conference on Autonomous Agents and Multiagent Systems (AAMAS 2019), Montreal, QC, Canada, 13–17 May 2019; pp. 1078–1088. [Google Scholar] [CrossRef]
- Adadi, A.; Berrada, M. Peeking inside the black-box: A survey on Explainable Artificial Intelligence (XAI). IEEE Access 2018, 6, 52138–52160. [Google Scholar] [CrossRef]
- Donadello, I.; Dragoni, M.; Eccher, C. Explaining reasoning algorithms with persuasiveness: A case study for a behavioural change system. In Proceedings of the 35th Annual ACM Symposium on Applied Computing, Brno, Czech Republic, 30 March–3 April 2020; pp. 646–653. [Google Scholar] [CrossRef] [Green Version]
- Rao, A.S.; Georgeff, M.P. BDI agents: From theory to practice. In Proceedings of the First International Conference on Multiagent Systems, San Francisco, CA, USA, 12–14 June 1995; Volume 95, pp. 312–319. [Google Scholar]
- Hubner, J.F.; Sichman, J.S.; Boissier, O. Developing organised multiagent systems using the MOISE+ model: Programming issues at the system and agent levels. Int. J. Agent Oriented Softw. Eng. 2007, 1, 370–395. [Google Scholar] [CrossRef] [Green Version]
- Ricci, A.; Piunti, M.; Viroli, M.; Omicini, A. Environment programming in CArtAgO. In Multi-Agent Programming; Springer: Berlin/Heidelberg, Germany, 2009; pp. 259–288. [Google Scholar] [CrossRef]
- Cardoso, R.C.; Ferrando, A. A Review of Agent-Based Programming for Multi-Agent Systems. Computers 2021, 10, 16. [Google Scholar] [CrossRef]
- Clarke, E.M. Model checking. In Proceedings of the International Conference on Foundations of Software Technology and Theoretical Computer Science; Springer: Berlin/Heidelberg, Germany, 1997; pp. 54–56. [Google Scholar] [CrossRef]
- Loveland, D.W. Automated Theorem Proving: A Logical Basis; Fundamental Studies in Computer Science; North-Holland: Amsterdam, The Netherlands, 1978; Volume 6. [Google Scholar]
- Fisher, M.; Mascardi, V.; Rozier, K.Y.; Schlingloff, B.; Winikoff, M.; Yorke-Smith, N. Towards a framework for certification of reliable autonomous systems. Auton. Agents Multi Agent Syst. 2021, 35, 8. [Google Scholar] [CrossRef]
- Ancona, D.; Franceschini, L.; Ferrando, A.; Mascardi, V. RML: Theory and Practice of a Domain Specific Language for Runtime Verification. Sci. Comput. Program. 2021, 205, 102610. [Google Scholar] [CrossRef]
- Ancona, D.; Ferrando, A.; Mascardi, V. Comparing Trace Expressions and Linear Temporal Logic for Runtime Verification. In Proceedings of the Theory and Practice of Formal Methods—Essays Dedicated to Frank de Boer on the Occasion of His 60th Birthday; Ábrahám, E., Bonsangue, M.M., Johnsen, E.B., Eds.; Springer: Berlin/Heidelberg, Germany, 2016; Volume 9660, pp. 47–64. [Google Scholar] [CrossRef]
- Ancona, D.; Ferrando, A.; Mascardi, V. Parametric Runtime Verification of Multiagent Systems. In Proceedings of the 16th Conference on Autonomous Agents and MultiAgent Systems, AAMAS 2017, São Paulo, Brazil, 8–12 May 2017; pp. 1457–1459. [Google Scholar] [CrossRef]
- Falcone, Y.; Havelund, K.; Reger, G. A Tutorial on Runtime Verification. In Engineering Dependable Software Systems; Broy, M., Peled, D.A., Kalus, G., Eds.; IOS Press: Amsterdam, The Netherlands, 2013; Volume 34, pp. 141–175. [Google Scholar] [CrossRef]
- Havelund, K.; Rosu, G. An Overview of the Runtime Verification Tool Java PathExplorer. Form. Methods Syst. Des. 2004, 24, 189–215. [Google Scholar] [CrossRef] [Green Version]
- Ferrando, A.; Ancona, D.; Mascardi, V. Decentralizing MAS Monitoring with DecAMon. In Proceedings of the 16th Conference on Autonomous Agents and MultiAgent Systems, AAMAS 2017, São Paulo, Brazil, 8–12 May 2017; pp. 239–248. [Google Scholar] [CrossRef]
- Ancona, D.; Briola, D.; Ferrando, A.; Mascardi, V. Global Protocols as First Class Entities for Self-Adaptive Agents. In Proceedings of the 2015 International Conference on Autonomous Agents and Multiagent Systems, AAMAS 2015, Istanbul, Turkey, 4–8 May 2015; pp. 1019–1029. [Google Scholar]
- Elalouf, A.; Wachtel, G. Queueing Problems in Emergency Departments: A Review of Practical Approaches and Research Methodologies. In Proceedings of the Operations Research Forum; Springer: Berlin/Heidelberg, Germany, 2022; Volume 3, pp. 1–46. [Google Scholar] [CrossRef]
- Grübler, M.D.S.; da Costa, C.A.; Righi, R.; Rigo, S.; Chiwiacowsky, L. A hospital bed allocation hybrid model based on situation awareness. Comput. Inform. Nurs. 2018, 36, 249–255. [Google Scholar] [CrossRef] [PubMed]
- Matos, J.; Rodrigues, P.P. Modeling decisions for hospital bed management—A review. In Proceedings of the 4th International Conference on Health Informatics, Rome, Italy, 26–29 January 2011; pp. 504–507. [Google Scholar] [CrossRef]
- Bigoni, A.; Malik, A.M.; Tasca, R.; Carrera, M.B.M.; Schiesari, L.M.C.; Gambardella, D.D.; Massuda, A. Brazil’s health system functionality amidst of the COVID-19 pandemic: An analysis of resilience. Lancet Reg. Health Am. 2022, 10, 100222. [Google Scholar] [CrossRef]
- Ma, X.; Zhao, X.; Guo, P. Cope with the COVID-19 pandemic: Dynamic bed allocation and patient subsidization in a public healthcare system. Int. J. Prod. Econ. 2022, 243, 108320. [Google Scholar] [CrossRef] [PubMed]
- Teow, K.L.; El-Darzi, E.; Foo, C.; Jin, X.; Sim, J. Intelligent Analysis of Acute Bed Overflow in a Tertiary Hospital in Singapore. J. Med. Syst. 2012, 36, 1873–1882. [Google Scholar] [CrossRef] [PubMed]
- Zhang, C.; Eken, T.; Jørgensen, S.B.; Thoresen, M.; Søvik, S. Effects of patient-level risk factors, departmental allocation and seasonality on intrahospital patient transfer patterns: Network analysis applied on a Norwegian single-centre data set. BMJ Open 2022, 12, e054545. [Google Scholar] [CrossRef]
- Proudlove, N.C.; Gordon, K.; Boaden, R. Can good bed management solve the overcrowding in accident and emergency departments? Emerg. Med. J. 2003, 20, 149–155. [Google Scholar] [CrossRef] [Green Version]
- Engelmann, D.C.; Panisson, A.R.; Vieira, R.; Hübner, J.F.; Mascardi, V.; Bordini, R.H. MAIDS—A Framework for the Development of Multi-Agent Intentional Dialogue Systems. In Proceedings of the 22st International Conference on Autonomous Agents and Multiagent Systems, AAMAS 2023, London, UK, 29 May–2 June 2023. [Google Scholar]
- Gombolay, M.C.; Yang, X.J.; Hayes, B.; Seo, N.; Liu, Z.; Wadhwania, S.; Yu, T.; Shah, N.; Golen, T.; Shah, J.A. Robotic assistance in coordination of patient care. In Proceedings of the 12nd Robotics: Science and Systems Conference, Cambridge, MA, USA, 12–14 July 2016; pp. 26–37. [Google Scholar]
- Engelmann, D.C.; Damasio, J.; Krausburg, T.; Borges, O.T.; da Silveira Colissi, M.; Panisson, A.R.; Bordini, R.H. Dial4JaCa—A Communication Interface Between Multi-agent Systems and Chatbots. In Proceedings of the Advances in Practical Applications of Agents, Multi-Agent Systems, and Social Good. The PAAMS Collection—19th International Conference, PAAMS 2021, Salamanca, Spain, 6–8 October 2021; Dignum, F., Corchado, J.M., de la Prieta, F., Eds.; Springer: Berlin/Heildeberg, Germany, 2021; Volume 12946, pp. 77–88. [Google Scholar] [CrossRef]
- Panisson, A.R.; Engelmann, D.C.; Bordini, R.H. Engineering Explainable Agents: An Argumentation-Based Approach. In Proceedings of the Engineering Multi-Agent Systems—9th International Workshop, EMAS 2021, Virtual Event, 3–4 May 2021; Alechina, N., Baldoni, M., Logan, B., Eds.; Springer: Berlin/Heildeberg, Germany, 2021; Volume 13190, pp. 273–291. [Google Scholar] [CrossRef]
- Panisson, A.R.; Meneguzzi, F.; Vieira, R.; Bordini, R.H. An approach for argumentation-based reasoning using defeasible logic in multi-agent programming languages. In Proceedings of the 11th International Workshop on Argumentation in Multiagent Systems, Paris, France, 5 May 2014; pp. 1–15. [Google Scholar]
- Sirin, E.; Parsia, B.; Grau, B.C.; Kalyanpur, A.; Katz, Y. Pellet: A practical OWL-DL reasoner. J. Web Semant. 2007, 5, 51–53. [Google Scholar] [CrossRef]
- Horrocks, I.; Patel-Schneider, P.F.; Boley, H.; Tabet, S.; Grosof, B.; Dean, M. SWRL: A semantic web rule language combining OWL and RuleML. W3C Memb. Submiss. 2004, 21, 1–31. [Google Scholar]
- Engelmann, D.C.; Cezar, L.D.; Panisson, A.R.; Bordini, R.H. A Conversational Agent to Support Hospital Bed Allocation. In Proceedings of the Intelligent Systems—10th Brazilian Conference, BRACIS 2021, Virtual Event, 29 November–3 December 2021; Britto, A., Delgado, K.V., Eds.; Springer: Berlin/Heildeberg, Germany, 2021; Volume 13073, pp. 3–17. [Google Scholar] [CrossRef]
- Cohen, P. Foundations of Collaborative Task-Oriented Dialogue: What’s in a Slot? In Proceedings of the 20th Annual SIGdial Meeting on Discourse and Dialogue; Association for Computational Linguistics: Stockholm, Sweden, 2019; pp. 198–209. [Google Scholar]
- Bakar, N.A.; Selamat, A. Runtime Verification of Multi-agent Systems Interaction Quality. In Proceedings of the Intelligent Information and Database Systems—5th Asian Conference, ACIIDS 2013, Kuala Lumpur, Malaysia, 18–20 March 2013; Volume 7802, pp. 435–444. [Google Scholar] [CrossRef]
- Roungroongsom, C.; Pradubsuwun, D. Formal Verification of Multi-agent System Based on JADE: A Semi-runtime Approach. In Recent Advances in Information and Communication Technology 2015; Springer: Berlin/Heildeberg, Germany, 2015; pp. 297–306. [Google Scholar] [CrossRef]
- Lim, Y.J.; Hong, G.; Shin, D.; Jee, E.; Bae, D. A runtime verification framework for dynamically adaptive multi-agent systems. In Proceedings of the 2016 International Conference on Big Data and Smart Computing, BigComp 2016, Hong Kong, China, 18–20 January 2016; pp. 509–512. [Google Scholar] [CrossRef]
- Alberti, M.; Gavanelli, M.; Lamma, E.; Mello, P.; Torroni, P. The SCIFF Abductive Proof-Procedure. In Proceedings of the AI*IA 2005: Advances in Artificial Intelligence, 9th Congress of the Italian Association for Artificial Intelligence, Milan, Italy, 21–23 September 2005; Volume 3673, pp. 135–147. [Google Scholar] [CrossRef]
- Torroni, P.; Yolum, P.; Singh, M.P.; Alberti, M.; Chesani, F.; Gavanelli, M.; Lamma, E.; Mello, P. Modelling Interactions via Commitments and Expectations. In Handbook of Research on Multi-Agent Systems—Semantics and Dynamics of Organizational Models; Dignum, V., Ed.; IGI Global: Hershey, PA, USA, 2009; pp. 263–284. [Google Scholar] [CrossRef]
- Chesani, F.; Mello, P.; Montali, M.; Torroni, P. Commitment Tracking via the Reactive Event Calculus. In Proceedings of the 21st International Joint Conference on Artificial Intelligence, Pasadena, CA, USA, 11–17 July 2009; pp. 91–96. [Google Scholar]
- Kyrarini, M.; Lygerakis, F.; Rajavenkatanarayanan, A.; Sevastopoulos, C.; Nambiappan, H.R.; Chaitanya, K.K.; Babu, A.R.; Mathew, J.; Makedon, F. A survey of robots in healthcare. Technologies 2021, 9, 8. [Google Scholar] [CrossRef]
- Holland, J.; Kingston, L.; McCarthy, C.; Armstrong, E.; O’Dwyer, P.; Merz, F.; McConnell, M. Service robots in the healthcare sector. Robotics 2021, 10, 47. [Google Scholar] [CrossRef]
- Khan, A.; Anwar, Y. Robots in healthcare: A survey. In Proceedings of the Science and Information Conference; Springer: Berlin/Heidelberg, Germany, 2020; pp. 280–292. [Google Scholar]
- Riek, L.D. Healthcare robotics. Commun. ACM 2017, 60, 68–78. [Google Scholar] [CrossRef]
- Cardoso, R.C.; Ferrando, A.; Dennis, L.A.; Fisher, M. An Interface for Programming Verifiable Autonomous Agents in ROS. In Proceedings of the Multi-Agent Systems and Agreement Technologies—17th European Conference, EUMAS 2020, and 7th International Conference, AT 2020, Thessaloniki, Greece, 14–15 September 2020; Volume 12520, pp. 191–205. [Google Scholar] [CrossRef]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Engelmann, D.C.; Ferrando, A.; Panisson, A.R.; Ancona, D.; Bordini, R.H.; Mascardi, V. RV4JaCa—Towards Runtime Verification of Multi-Agent Systems and Robotic Applications. Robotics 2023, 12, 49. https://doi.org/10.3390/robotics12020049
Engelmann DC, Ferrando A, Panisson AR, Ancona D, Bordini RH, Mascardi V. RV4JaCa—Towards Runtime Verification of Multi-Agent Systems and Robotic Applications. Robotics. 2023; 12(2):49. https://doi.org/10.3390/robotics12020049
Chicago/Turabian StyleEngelmann, Debora C., Angelo Ferrando, Alison R. Panisson, Davide Ancona, Rafael H. Bordini, and Viviana Mascardi. 2023. "RV4JaCa—Towards Runtime Verification of Multi-Agent Systems and Robotic Applications" Robotics 12, no. 2: 49. https://doi.org/10.3390/robotics12020049
APA StyleEngelmann, D. C., Ferrando, A., Panisson, A. R., Ancona, D., Bordini, R. H., & Mascardi, V. (2023). RV4JaCa—Towards Runtime Verification of Multi-Agent Systems and Robotic Applications. Robotics, 12(2), 49. https://doi.org/10.3390/robotics12020049