26 research outputs found
Quantitative Modeling and Verification of Evolving Software
Mit der steigenden Nachfrage nach Innovationen spielt Software in verschiedenenWirtschaftsbereichen
eine wichtige Rolle, wie z.B. in der Automobilindustrie, bei intelligenten Systemen als auch bei Kommunikationssystemen. Daher ist die
Qualität für die Softwareentwicklung von großer Bedeutung.
Allerdings ändern sich die probabilistische Modelle (die Qualitätsbewertungsmodelle)
angesichts der dynamischen Natur moderner Softwaresysteme. Dies führt dazu,
dass ihre Übergangswahrscheinlichkeiten im Laufe der Zeit schwanken, welches zu
erheblichen Problemen führt.
Dahingehend werden probabilistische
Modelle im Hinblick auf ihre Laufzeit kontinuierlich aktualisiert. Eine fortdauernde
Neubewertung komplexer Wahrscheinlichkeitsmodelle ist jedoch teuer. In
letzter Zeit haben sich inkrementelle Ansätze als vielversprechend für die Verifikation
von adaptiven Systemen erwiesen. Trotzdem wurden bei der Bewertung struktureller
Änderungen im Modell noch keine wesentlichen Verbesserungen erzielt. Wahrscheinlichkeitssysteme
werden als Automaten modelliert, wie
bei Markov-Modellen. Solche Modelle können in
Matrixform dargestellt werden, um die Gleichungen basierend auf Zuständen und
Übergangswahrscheinlichkeiten zu lösen.
Laufzeitmodelle wie Matrizen sind nicht signifikant,
um die Auswirkungen von Modellveränderungen erkennen zu können.
In dieser Arbeit wird ein Framework unter Verwendung stochastischer Bäume mit
regulären Ausdrücken entwickelt, welches modular aufgebaut ist und eine aktionshaltige
sowie probabilistische Logik im Kontext der Modellprüfung aufweist. Ein solches
modulares Framework ermöglicht dem Menschen die Entwicklung der Änderungsoperationen
für die inkrementelle Berechnung lokaler Änderungen, die im Modell auftreten
können. Darüber hinaus werden probabilistische Änderungsmuster beschrieben,
um eine effiziente inkrementelle Verifizierung, unter Verwendung von Bäumen mit regulären
Ausdrücken, anwenden zu können. Durch die Bewertung der Ergebnisse wird
der Vorgang abgeschlossen.Software plays an innovative role in many different domains, such as car industry, autonomous
and smart systems, and communication. Hence, the quality of the software
is of utmost importance and needs to be properly addressed during software evolution.
Several approaches have been developed to evaluate systems’ quality attributes, such
as reliability, safety, and performance of software. Due to the dynamic nature of modern software systems, probabilistic models representing the quality of the software and their transition probabilities change over time and fluctuate, leading to a significant problem that needs to be solved to obtain correct evaluation results of quantitative
properties. Probabilistic models need to be continually updated at run-time to
solve this issue. However, continuous re-evaluation of complex probabilistic models is
expensive. Recently, incremental approaches have been found to be promising for the
verification of evolving and self-adaptive systems. Nevertheless, substantial improvements
have not yet been achieved for evaluating structural changes in the model.
Probabilistic systems are usually
represented in a matrix form to solve the equations
based on states and transition probabilities. On the other side, evolutionary changes can create
various effects on theese models and force them to re-verify the whole system. Run-time
models, such as matrices or graph representations, lack the expressiveness to identify
the change effect on the model.
In this thesis, we develop a framework using stochastic regular expression trees,
which are modular, with action-based probabilistic logic in the model checking context.
Such a modular framework enables us to develop change operations for the incremental
computation of local changes that can occur in the model. Furthermore, we describe
probabilistic change patterns to apply efficient incremental quantitative verification using
stochastic regular expression trees and evaluate our results
Specification, Validation and Verification of Social, Legal, Ethical, Empathetic and Cultural Requirements for Autonomous Agents
Autonomous agents are increasingly being proposed for use in healthcare, assistive care, education, and other applications governed by complex human-centric norms. To ensure compliance with these norms, the rules they induce need to be unambiguously defined, checked for consistency, and used to verify the agent. In this paper, we introduce a framework for formal specification, validation and verification of social, legal, ethical, empathetic and cultural (SLEEC) rules for autonomous agents. Our framework comprises: (i) a language for specifying SLEEC rules and rule defeaters (that is, circumstances in which a rule does not apply or an alternative form of the rule is required); (ii) a formal semantics (defined in the process algebra tock-CSP) for the language; and (iii) methods for detecting conflicts and redundancy within a set of rules, and for verifying the compliance of an autonomous agent with such rules. We show the applicability of our framework for two autonomous agents from different domains: a firefighter UAV, and an assistive-dressing robot
Closed-loop Analysis of Vision-based Autonomous Systems : A Case Study
Deep neural networks (DNNs) are increasingly used in safety-critical autonomous systems as perception components processing high-dimensional image data. Formal analysis of these systems is particularly challenging due to the complexity of the perception DNNs, the sensors (cameras), and the environment conditions. We present a case study applying formal probabilistic analysis techniques to an experimental autonomous system that guides airplanes on taxiways using a perception DNN. We address the above challenges by replacing the camera and the network with a compact probabilistic abstraction built from the confusion matrices computed for the DNN on a representative image data set. We also show how to leverage local, DNN-specific analyses as run-time guards to increase the safety of the overall system. Our findings are applicable to other autonomous systems that use complex DNNs for perception
Navigation and Exploration in 3D-Game Automated Play Testing
To enable automated software testing, the ability to automatically navigate
to a state of interest and to explore all, or at least sufficient number of,
instances of such a state is fundamental. When testing a computer game the
problem has an extra dimension, namely the virtual world where the game is
played on. This world often plays a dominant role in constraining which logical
states are reachable, and how to reach them. So, any automated testing
algorithm for computer games will inevitably need a layer that deals with
navigation on a virtual world. Unlike e.g. navigating through the GUI of a
typical web-based application, navigating over a virtual world is much more
challenging. This paper discusses how concepts from geometry and graph-based
path finding can be applied in the context of game testing to solve the problem
of automated navigation and exploration. As a proof of concept, the paper also
briefly discusses the implementation of the proposed approach
Quantitative Verification of Stochastic Regular Expressions
WOS:000629178200004In this article, we introduce a probabilistic verification algorithm for stochastic regular expressions over a probabilistic extension of the Action based Computation Tree Logic (ACTL*). The main results include a novel model checking algorithm and a semantics on the probabilistic action logic for stochastic regular expressions (SREs). Specific to our model checking algorithm is that SREs are defined via local probabilistic functions. Such functions are beneficial since they enable to verify properties locally for sub-components. This ability provides a flexibility to reuse the local results for the global verification of the system; hence, the framework can be used for iterative verification. We demonstrate how to model a system with an SRE and how to verify it with the probabilistic action based logic and present a preliminary performance evaluation with respect to the execution time of the reachability algorithm
A DSL for the development of software agents working within a semantic web environment
Software agents became popular in the development of complex software systems,especially those requiring autonomous and proactive behavior. Agents interact with each other within a Multi-agent System (MAS), in order to perform certain defined tasks in a collaborative and/or selfish manner. However, the autonomous, proactive and interactive structure of MAS causes difficulties when developing such software systems. It is within this context,that the use of a Domain-specific Language (DSL) may support easier and quicker MAS development methodology. The impact of such DSL usage could beclearer when considering the development of MASs, especially those working on new challenging environments like the Semantic Web. Hence, this paper introduces a new DSL for Semantic Web enabled MASs. This new DSL is called Semantic web Enabled Agent Language (SEA_L). Both the SEA_L user-aspects and the way of implementing SEA_L are discussed in the paper. The practical use of SEA_L is also demonstrated using a case study which considers the modeling of a multi-agent based e-barter system. When considering the language implementation, we first discuss the syntax of SEA_L and we show how the specifications of SEA_L can be utilized during the code generation of real MAS implementations. The syntax of SEA_L is supported by textual modeling toolkits developed with Xtext. Code generation for the instance models are supplied with the Xpand tool