Predictive Runtime Verification of Stochastic Systems
Loading...
Date
2019-08-13
Authors
Babaee Cheshmeahmadrezaee, Reza
Advisor
Rayside, Derek
Ganesh, Vijay
Ganesh, Vijay
Journal Title
Journal ISSN
Volume Title
Publisher
University of Waterloo
Abstract
Runtime Verification (RV) is the formal analysis of the execution of a system against some
properties at runtime. RV is particularly useful for stochastic systems that have a non-zero
probability of failure at runtime. The standard RV assumes constructing a monitor that
checks only the currently observed execution of the system against the given properties.
This dissertation proposes a framework for predictive RV, where the monitor instead
checks the current execution with its finite extensions against some property. The extensions are generated using a prediction model, that is built based on execution samples
randomly generated from the system. The thesis statement is that predictive RV for
stochastic systems is feasible, effective, and useful.
The feasibility is demonstrated by providing a framework, called Prevent, that builds a
predictive monitor by using trained prediction models to finitely extend an execution path,
and computing the probabilities of the extensions that satisfy or violate the given property.
The prediction model is trained using statistical learning techniques from independent and
identically distributed samples of system executions. The prediction is the result of a
quantitative bounded reachability analysis on the product of the prediction model and the
automaton specifying the property. The analysis results are computed offline and stored in
a lookup table. At runtime the monitor obtains the state of the system on the prediction
model based on the observed execution, directly or by approximation, and uses the lookup
table to retrieve the computed probability that the system at the current state will satisfy
or violate the given property within some finite number of steps.
The effectiveness of Prevent is shown by applying abstraction when constructing the
prediction model. The abstraction is on the observation space based on extracting the
symmetry relation between symbols that have similar probabilities to satisfy a property.
The abstraction may introduce nondeterminism in the final model, which is handled by
using a hidden state variable when building the prediction model. We also demonstrate
that, under the convergence conditions of the learning algorithms, the prediction results
from the abstract models are the same as the concrete models.
Finally, the usefulness of Prevent is indicated in real-world applications by showing
how it can be applied for predicting rare properties, properties with very low but non-zero
probability of satisfaction. More specifically, we adjust the training algorithm that uses
the samples generated by importance sampling to generate the prediction models for rare
properties without increasing the number of samples and without having a negative impact
on the prediction accuracy.
Description
Keywords
runtime verification, predictive runtime verification, black box system, abstraction, importance sampling, stochastic system, prediction model