6,165 research outputs found

    Formal Specification and Automatic Verification of Conditional Commitments

    Get PDF
    Developing and implementing a model checker dedicated to conditional logic with the user interface are urgent requirements for determining whether agents comply with their commitment protocols

    Formal Specification and Automatic Verification of Multi-Agent Conditional Commitments and their Applications

    Get PDF
    Modeling agent communication using social commitments in the form of obligatory contracts among intelligent agents in a multi-agent system (MAS) provides a quintessential basis for capturing flexible and declarative interactions and helps in addressing the challenge of ensuring compliance with specifications. However, on the one hand, social commitments exclusively are not able to model agent communication actions, the cornerstone of the fundamental agent communication theory, namely speech act theory. These actions provide mechanisms for dynamic interactions and enable designers to track the evolution of active commitments. On the other hand, the designers of the system cannot guarantee the emergence of expected behaviors, such as self-contained intelligent agent complies with its protocols and honors its activated commitments. Moreover, the designers might still wish to develop effective and scalable algorithms to tackle the problem of model checking complex interactions modeled by conditional commitments and conditional commitment actions and regulated by commitment-based protocols at design time. Conditional commitments are a natural and universal frame of social commitments and cope with business conditional contracts. This dissertation is in principle about addressing two open challenging issues: 1) formally defining computationally grounded semantics for agent communication messages in terms of conditional commitments and associated actions (fulfill, cancel, release, assign and delegate), which is yet to be studied; and 2) developing a symbolic algorithm dedicated to tackle the raised model checking problem and to ensure the development of correct systems. In this dissertation, we start with distinguishing between two types of conditional commitments: weak and strong. Weak conditional commitments are those that can be activated even if the antecedents will never be satisfied, while strong conditional commitments are those that can be solely activated when there is at least one possibility to satisfy their assigned antecedents. We develop a branching-time temporal logic called CTL{cc,\alpha} that extends computation tree logic (CTL) with new modalities for representing and reasoning about the two types of conditional commitments and their actions using the formalism of interpreted systems. We present a set of valid properties, a set of reasoning rules, and a set of action postulates in order to explore the capabilities of CTL{cc,\alpha}. Furthermore, we propose a new life cycle of conditional commitments. Having a new logic (CTL{cc,\alpha}), we introduce a new symbolic algorithm to tackle the problem of its model checking. Instead of developing our algorithm from scratch, we extend the standard CTL model checking algorithm with symbolic algorithms needed for new modalities. We also investigate important theoretical results (soundness and termination) of the algorithm. Given that, we completely implement our algorithm and then assemble it on top of the symbolic model checker MCMAS, developed to automatically and directly test MAS specifications. The resulting symbolic model checker is so-called MCMAS+. We extend MCMAS's input modeling and encoding language called ISPL with shared and unshared variables needed for agent interactions and with the syntactic grammar of new modalities to produce a new one called ISPL+. We also extend the MCMAS's graphical user interface to display verified models to reduce inefficient and labor-intensive processes performed by the designers. To evaluate the performance of the developed algorithm, we analyze its time and space computational complexity. The computed time and space complexity are P-complete for explicit models and PSPACE-complete for concurrent programs. Such results are positive because model checking CTL{cc,\alpha} has the same time and space complexity of model checking CTL although CTL{cc,\alpha} extends CTL. Therefore, CTL{cc,\alpha} balances between expressive power and verification efficiency. Regarding the feasibility aspect, we apply our approach in three different application domains: business interaction protocols, health care processes, and web service compositions. The MAS paradigm is successfully employed in these domains wherein a component is represented, implemented and enacted by an agent. The proposed approach improved the employed MAS paradigm by formally modeling and automatically verifying interactions among participating agents so that the bad behaviors can be detected and then eliminated or repaired at design time and the confidence on the safety, efficiency and robustness is increased. We conduct extensive experiments to evaluate the computational performance and scalability of MCMAS+ using very large case studies. The obtained results strongly confirm the theoretical findings and make MCMAS+ practical. We finally compare our approach to other available approaches and show that it outperforms such approaches in terms of execution time, memory usage and number of considered intelligent agents

    Logic-Based Specification Languages for Intelligent Software Agents

    Full text link
    The research field of Agent-Oriented Software Engineering (AOSE) aims to find abstractions, languages, methodologies and toolkits for modeling, verifying, validating and prototyping complex applications conceptualized as Multiagent Systems (MASs). A very lively research sub-field studies how formal methods can be used for AOSE. This paper presents a detailed survey of six logic-based executable agent specification languages that have been chosen for their potential to be integrated in our ARPEGGIO project, an open framework for specifying and prototyping a MAS. The six languages are ConGoLog, Agent-0, the IMPACT agent programming language, DyLog, Concurrent METATEM and Ehhf. For each executable language, the logic foundations are described and an example of use is shown. A comparison of the six languages and a survey of similar approaches complete the paper, together with considerations of the advantages of using logic-based languages in MAS modeling and prototyping.Comment: 67 pages, 1 table, 1 figure. Accepted for publication by the Journal "Theory and Practice of Logic Programming", volume 4, Maurice Bruynooghe Editor-in-Chie

    Reasoning about Communicating Agents in the Semantic Web

    Full text link
    Abstract. In this article we interpret the Semantic Web and Web Service issues in the framework of multi-agent interoperating systems. We will advocate the application of results achieved in the research area of reasoning about actions and change by showing scenarios and techniques that could be applied.

    Blockchain Ontologies: OCL and REA

    Get PDF
    Unified Modeling Language (UML) of Object Management Group, along with Object Constraint Language (OCL), are considered as the best fit for blockchain ontology. OCL is a declarative language that describes the rules applicable to UML models and is part of the UML standard. Initially, OCL was just an extension of the formal specification language for UML. Now, OCL can be used with any meta-model. Enterprise ontology is combined with the business ontology of Resources, Events, Agents (REA) to be used for the content of the change. REA was originally proposed in 1982 by William E. McCarthy as generalized accounting model. DOI: 10.13140/RG.2.2.14744.1408

    Recursive Program Optimization Through Inductive Synthesis Proof Transformation

    Get PDF
    The research described in this paper involved developing transformation techniques which increase the efficiency of the noriginal program, the source, by transforming its synthesis proof into one, the target, which yields a computationally more efficient algorithm. We describe a working proof transformation system which, by exploiting the duality between mathematical induction and recursion, employs the novel strategy of optimizing recursive programs by transforming inductive proofs. We compare and contrast this approach with the more traditional approaches to program transformation, and highlight the benefits of proof transformation with regards to search, correctness, automatability and generality

    A Survey of Languages for Specifying Dynamics: A Knowledge Engineering Perspective

    Get PDF
    A number of formal specification languages for knowledge-based systems has been developed. Characteristics for knowledge-based systems are a complex knowledge base and an inference engine which uses this knowledge to solve a given problem. Specification languages for knowledge-based systems have to cover both aspects. They have to provide the means to specify a complex and large amount of knowledge and they have to provide the means to specify the dynamic reasoning behavior of a knowledge-based system. We focus on the second aspect. For this purpose, we survey existing approaches for specifying dynamic behavior in related areas of research. In fact, we have taken approaches for the specification of information systems (Language for Conceptual Modeling and TROLL), approaches for the specification of database updates and logic programming (Transaction Logic and Dynamic Database Logic) and the generic specification framework of abstract state machine
    corecore