This page describes ongoing research on predictive runtime monitoring funded by the US National Science Foundation (NSF) and the NSF IUCRC Center on Unmanned Aerial Systems (C-UAS). All opinions expressed here are those of the authors and not necessarily of the US National Science Foundation (NSF) or the C-UAS.
Note: This page is under construction. A complete description of this project will be available soon.
Runtime Monitoring
Runtime monitoring, as the name suggests, consists of building monitors that
repeatedly collect data during a system’s operation in order to ensure that it
is working as expected. Runtime monitoring is increasingly important part
of runtime assurance, wherein we provide guarantees on the behavior of a complex
cyber-physical system by monitoring its runtime behavior rather than seek to
provide proofs of correctness at design time. As an aside, there is an active
area of research that seeks to bridge the gap between simplifying assumptions
in proofs of system properties at design time by monitoring these properties
during system deployment. The key goals of a runtime monitor include:
Active observation of a system’s execution by collecting sensor inputs, and observable events from the software systems.
Evaluating the observations against detailed specifications, typically written in some form of temporal logic.
Flagging potential violations as soon as possible so that mitigations (such as safely shutting down).
There has been a long history of formal verification techniques deployed during
runtime in the area of runtime verification. Most runtime monitors evaluate
properties on the state of the system at the current time instant. However, our
goal is to predict the possible future states of the system at hand in order to
check if these states will satisfy some given specifications.
Predictive runtime monitors are
Predictive Runtime Monitoring
The predictive runtime monitoring project focuses on two key aspects:
a. Predict the possible future states of the system and provide uncertainty estimates?
b. Compute the probability of a correctness property being violated?
In our project, we use Bayesian machine learning techniques that use observed data and
dynamical model to compute forecasted future states of a system.
Prediction
Prediction is a key aspect of predictive runtime monitoring. The goal is to rapidly forecast the future position of vehicles given a series of past observations. There are multiple approaches to prediction ranging from a extrapolation of the vehicle’s current trajectory to understanding the intent of the vehicle/agent in order to predict its future moves.
a. Our approach to extrapolation is described in detail in our Runtime Verification (RV) 2019 paper [1]. Therein, we use an autoregressive + moving average (ARMAX) model to capture the deviation of the vehicle’s position from its current trajectory that would result if it moved on its current heading at a constant velocity. Another way of understanding this model is that it predicts the extraneous forces acting on the vehicle. This approach proves too simplistic, however since it insists on a linear model of the vehicle’s dynamics and the forces acting on it.
b. We refined this approach in our followup paper that appeared in IROS 2020 [2]. In this paper, we use a nonlinear ``coordinated turn’’ model with disturbances. The control inputs to this model are the
unknown turn rate of the vehicle and the acceleration. We use probabilistic inference for predicting the posterior distributions of the turn rate and acceleration given observations of the vehicle’s position and velocity. This approach improves upon our original ARMAX model since it is a nonlinear model.
c. In our recent work, we consider the effect of modeling the operator’s intent as a temporal logic formula [3]. Here, we use a Bayesian inference framework that tries to predict the intent (what is the agent trying to achieve) based on their observed position. It uses a restricted class of temporal logic formulae to capture this intent along with the uncertainty in it. To facilitate this, we also need to make a ``noisy rationality’’ assumption that posits that the probability that the user takes a particular path to achieve a given intent decays exponentially as a function of the cost differential between that path and the most efficient path.
Reachability Analysis
Another important aspect of our approach to predictive runtime monitoring
involves rapid reachability analysis of nonlinear stochastic systems.
Reachability analysis seeks to find out if a given target set of states is
reachable starting from an initial set. For stochastic systems, we have external
disturbances represented by probability distributions at each time step.
Therefore, we ask for bounds on the probability of reaching a given target set.
Key challenges for reachability analysis include:
Our RV 2019 paper shows an approach for computing viability: a game-based reachability analysis that assumes that the system plays a game with a disturbance whose objective is to drive a system away from the desired target set of states[1].
Most of the vehicle models we consider are nonlinear. However, we use invariance of these systems to the frame of reference to actually precompute reachable sets for all possible initial conditions one would see in practice [2].
Our recent work has explored using polynomial expansions for stochastic systems that can compute probability bounds for nonlinear systems [4]
Publications
Predictive Runtime Monitoring for Linear Stochastic Systems and Applications to Geofence Enforcement for UAVs
Hansol Yoon,
Yi Chou,
Xin Chen,
Eric Frew,
and Sriram Sankaranarayanan
In International Conference on Runtime Verification (RV),
Vol. 11757,
pp. 349–367,
2019.
We propose a predictive runtime monitoring approach for linear systems with stochastic disturbances. The goal of the monitor is to decide if there exists a possible sequence of control inputs over a given time horizon to ensure that a safety property is maintained with a sufficiently high probability. We derive an efficient algorithm for performing the predictive monitoring in real time,
specifically for linear time invariant (LTI) systems driven by stochastic
disturbances. The algorithm implicitly defines a control envelope set such that
if the current control input to the system lies in this set, there exists a
future strategy over a time horizon consisting of the next N steps to
guarantee the safety property of interest. As a result, the proposed monitor is
oblivious of the actual controller, and therefore, applicable even in the
presence of complex control systems including highly adaptive controllers.
Furthermore, we apply our proposed approach to monitor whether a UAV will
respect a "geofence" defined by a geographical region over which the vehicle
may operate. To achieve this, we construct a data-driven linear model of the
UAVs dynamics, while carefully modeling the uncertainties due to wind, GPS
errors and modeling errors as time-varying disturbances. Using realistic data
obtained from flight tests, we demonstrate the advantages and drawbacks of the
predictive monitoring approach.
Predictive Runtime Monitoring of Vehicle Models Using Bayesian Estimation and Reachability Analysis
Yi Chou,
Hansol Yoon,
and Sriram Sankaranarayanan
In Intl. Conference on Intelligent Robots and Systems (IROS),
pp. 2111-2118,
2020.
We present a predictive runtime monitoring technique for estimating
future vehicle positions and the probability of collisions
with obstacles. Vehicle dynamics model how the position and
velocity change over time as a function of external inputs.
They are commonly described by discrete-time stochastic
models. Whereas positions and velocities can be measured, the
inputs (steering and throttle) are not directly measurable in
these models. In our paper, we apply Bayesian inference
techniques for real-time estimation, given prior distribution
over the unknowns and noisy state measurements. Next, we
pre-compute the set-valued reachability analysis to
approximate future positions of a vehicle. The pre-computed
reachability sets are combined with the posterior
probabilities computed through Bayesian estimation to provided
a predictive verification framework that can be used to detect
impending collisions with obstacles. Our approach is evaluated
using the coordinated-turn vehicle model for a UAV using
on-board measurement data obtained from a flight test of a
Talon UAV. We also compare the results with sampling-based
approaches. We find that precomputed reachability analysis can
provide accurate warnings up to 6 seconds in advance and the
accuracy of the warnings improve as the time horizon is
narrowed from 6 to 2 seconds. The approach also outperforms
sampling in terms of on-board computation cost and accuracy
measures.
Predictive Runtime Monitoring for Mobile Robots using Logic-Based Bayesian Intent Inference
Hansol Yoon,
and Sriram Sankaranarayanan
In International Conference on Robotics and Automation (ICRA),
pp. 8565-8571,
2021.
We propose a predictive runtime monitoring framework that forecasts the distribution of future positions of mobile robots in order to detect and avoid impending property violations such as collisions with obstacles or other agents. Our approach uses a restricted class of temporal logic formulas to represent the likely intentions of the agents along with a combination of temporal logic-based optimal cost path planning and Bayesian inference to compute the probability of these intents given the current trajectory of the robot. First, we construct a large but finite hypothesis space of possible intents represented as temporal logic formulas whose atomic propositions are derived from a detailed map of the robot’s workspace. Next, our approach uses real-time observations of the robot’s position to update a distribution over temporal logic formulae that represent its likely intent. This is performed by using a combination of optimal cost path planning and a Boltzmann noisy rationality model. In this manner, we construct a Bayesian approach to evaluating the posterior probability of various hypotheses given the observed states and actions of the robot. Finally, we predict the future position of the robot by drawing posterior predictive samples using a Monte-Carlo method. We evaluate our framework using two different trajectory datasets that contain multiple scenarios implementing various tasks. The results show that our method can predict future positions precisely and efficiently, so that the computation time for generating a prediction is a tiny fraction of the overall time horizon.
Reasoning about Uncertainties in Discrete-Time Dynamical Systems using Polynomial Forms
Sriram Sankaranarayanan,
Yi Chou,
Eric Goubault,
and Sylvie Putot
In Advances in Neural Information Processing System (NeurIPS),
2020.
In this paper, we propose polynomial forms to represent distributions of state
variables over time for discrete-time stochastic dynamical systems. This
problem arises in a variety of applications in areas ranging from biology to
robotics. Our approach allows us to rigorously represent the probability
distribution of state variables over time, and provide guaranteed bounds on
the expectations, moments and probabilities of tail events involving the state
variables. First, we recall ideas from interval arithmetic, and use them to
rigorously represent the state variables at time t as a function of the
initial state variables and noise symbols that model the random
exogenous inputs encountered before time t. Next, we show how concentration
of measure inequalities can be employed to prove rigorous bounds on the tail
probabilities of these state variables. We demonstrate interesting
applications that demonstrate how our approach can be useful in some
situations to establish mathematically guaranteed bounds that are of a
different nature from those obtained through simulations with pseudo-random
numbers.