Formal Approaches to Modelling and Verifying Resource-bounded Agents─state of the Art and Future Prospects

In recent years intelligent agents have been the focus of much attention from the Artificial Intelligence (AI) and many other communities. In AI research, agent-based systems technology has emerged as a new paradigm for conceptualizing, designing, and implementing sophisticated software systems. Furthermore, there has been a move of these systems into safety-critical domains including healthcare, emergency scenarios, and disaster recovery. While agents provide great benefits in developing many complex software applications (e.g., systems that have multiple components, distributed over networks, exhibit dynamic changes, and require autonomous behavior), they also present new challenges to application developers, namely verifying requirements and ensuring functional correctness. These problems become even more challenging in the case of multiagent systems (MASs), where agents exchange information via messages. Systematic, formal approaches to their specification and verification can allow addressing these problems.


Introduction
In recent years intelligent agents have been the focus of much attention from the Artificial Intelligence (AI) and many other communities. In AI research, agent-based systems technology has emerged as a new paradigm for conceptualizing, designing, and implementing sophisticated software systems. Furthermore, there has been a move of these systems into safety-critical domains including healthcare, emergency scenarios, and disaster recovery. While agents provide great benefits in developing many complex software applications (e.g., systems that have multiple components, distributed over networks, exhibit dynamic changes, and require autonomous behavior), they also present new challenges to application developers, namely verifying requirements and ensuring functional correctness. These problems become even more challenging in the case of multiagent systems (MASs), where agents exchange information via messages. Systematic, formal approaches to their specification and verification can allow addressing these problems.

Resource-bounded Agents ─ state of the Art
The concept of agents, in the setting of this article is used to refer to autonomous reasoning agents, where agents are capable of reasoning about their behavior and interactions. A crucial problem in developing (formal) logical frameworks that model desired agents is to capture the fact that real agents possess limited computational (time and space) and communication resources. In other words, when agents try to achieve goals, each agent in the system requires some basic resources such as time (number of computational steps), space (amount of memory) and perhaps communication bandwidth (number of messages that need to be exchanged).
To give readers an idea on the existing body of research on epistemic logics and verification of resource bounded multi-agent systems, we present state of the art formal approaches to modelling and verifying resource-bounded agents. In achieving this, two different functional areas are identified and jointly addressed here, the first area mostly is about the theoretical foundations (in general), and the second is referred to the practical tools and verification of multi-agent systems.
Representing knowledge in terms of traditional possible worlds semantics is quite useful [1]. However, such semantics do not account the fact that agents possess limited computational resources. It suffers from the logical omniscience problem that presupposes that an agent knows all logical consequences of its beliefs and all valid sentences including tautologies. In [2] Alechina and Logan discussed why standard epistemic logic is not computationally grounded, also they argue that the work presented by [3] using interpreted systems cannot be seen as a grounded semantics for intensional logics. However, these details are not discussed in the document and are out of scope here, interested readers are referred to [2].
There is a growing body of work where the agent's deduction steps are explicitly modelled in the logic, for example [4][5][6], which makes it possible to model the time it takes the agent to arrive at a certain conclusion. Both the time and space limitations on the agent's knowledge were considered in step logics [7]. However, [7] are not concerned with expressing and verifying space requirements for systems while solving a particular problem, rather they are concerned with restricting the size of short term memory to isolate any possible contradictions. The logical framework presented in [5] investigates whether an agent with a knowledge base KB, has sufficient memory to derive a given formula ϕ. The logical syntax contains both temporal and epistemic operators. Interesting properties of an agent that can be expressed include, for example, the agent can derive a goal formula ϕ from its knowledge base KB as EFBϕ (there is some future state where the agent believes formula ϕ). Similarly, that a formula is derivable in n timesteps can be expressed as EX ≤n Bϕ. However, while this work represents a significant advance on the state of the art in temporal epistemic logics, it considers only single agent and ignores communication costs. Alechina et al. [8] have presented a sound and complete modal logic which describes how the beliefs of communicating agents which reason using rules evolve over time. Properties of the system, for example, that a system of two agents will be able to produce an answer to a query after exchanging at most one message and applying four rules, were specified in modal logic, and proof-of-concept verification experiments using model checking techniques reported. However, memory bounds have not been imposed in their framework, and the encoding of the system in the model checker's specification language had to be handcrafted, rules had to be propositionalised using all possible substitutions for variables, and scalability of the verification approach was not explored. In recent work Alechina et al. [9,10], proposed frameworks for the representation, specification and verification of resourcebounded agents that allow developers to model computational and communication resources explicitly, and to reason about and verify tradeoffs between time, memory and communication in systems of distributed reasoning agents.
The frameworks presented above (perhaps [8] is based on first order logic) consider propositional logic as a simple knowledge representation language. However, propositional logic is often not suitable for modelling real life example systems. In [11] an automated verification framework has been presented for resource-bounded reasoners, which takes rules specified in Hornlog RuleML with negation as failure [12] augmented with communication primitives, and automatically produces a Maude [13] specification of the system which can be efficiently verified. The introduction of first-order Horn clause rules and negation as failure increase the expressiveness of the framework in [10], and makes it easier to model complex real world problems. The framework allows the use of abstract specifications consisting of Linear Time Temporal Logic (LTL) formulas to specify some of the agents in the system. That is abstract specifications are given as LTL formulae which describe the external behavior of agents, and allow their temporal behaviour (the response time behaviour of the agent), to be compactly modelled. In the literature temporal logic formulae have been used before in implementing agent based programming language [14]. Perhaps the most noteworthy feature of Concurrent METATEM with regards to its use as an agent language is that agent programs written in Concurrent METATEM are formally verifiable. This is achieved through the specification of agents purely in a first-order temporal logic. The main drawback arises from the lack of an explicit representation of action.
In recent years, agent technologies and Semantic Web have become intertwined and their integration research has been realized [15][16][17], moreover, intelligent agents are considered as a promising approach towards realizing the Semantic Web vision [18]. The main emphasis of the existing research on Semantic Web agents is how can ontologies be utilised for modelling and enhancing level of interoperability and usability of applications. However, that is not sufficient to make Semantic Web agents a key feature technology that has been moving into safety-critical domains including healthcare [19,20]. In [21] Rakib and colleagues proposed an approach to modelling and verifying response time guarantees of ontology-driven multi-agent rule-based systems. They use standard model checking techniques to verify interesting properties of such systems, and show how the Maude LTL model checker can be used to verify properties including response-time guarantees of the form: if the system receives a query, then a response will be produced within n time steps. However, memory bounds have not been imposed in this framework.

Future Research Directions
It is widely acknowledged that computer systems are becoming increasingly nomadic and pervasive. The vision of this next generation technology intends to provide invisible computing environments so that a user can utilize services at any time and everywhere [22]. In these systems information can be collected by using tiny resourcebounded devices, such as, e.g., PDAs, smart phones, and wireless sensor nodes. In recent years much research in pervasive computing has been focused on incorporation of context-awareness features into pervasive applications. There is an extensive body of work in adapting the Semantic Web technologies to model context-aware systems [23][24][25]. In the pursuit of making context-aware system much more useful we need to make its various devises communicate with each other and with the surrounding environment in a cooperative manner. In achieving this goal, agent-based techniques can be seen as a promising approach for developing context-aware applications in complex domains. To develop smarter and reliable application of context aware systems, we need a rigorous study not only on formal representation of such systems but also their formal specification and verification.

Conclusions
Knowledge and belief have long been studied in epistemology, philosophy of mind, and relatively recently in artificial intelligence and in computer science. However, standard epistemic logics are not suitable to accurately describe non-ideal agents which are computationally bounded. This editorial article highlights some of the formal approaches that have been developed over the last few years to describe non-ideal agents and formally verifying their interesting properties. We hope that the article serves as a good introduction to the state-of-the-art in this emerging field and inspires more researchers to contribute to it.