Counterexamples for Model Checking of Markov Decision Processes

The debugging of stochastic system models relies on the availability of diagnostic information. Classic probabilistic model checkers, which are based on iterated numerical probability matrix operations, do not provide such diag- nostic information. In precursory work, we have devised counterexample genera- tion methods for continuous- and discrete-time Markov Chains based on heuris- tics guided explicit state space search. In this paper we address the problem of generating diagnostic information, or counterexamples, for Markov Decision Processes (MDPs), which are a convenient formalism for modelling concurrent stochastic systems. We define the notion of counterexamples for MDPs in re- lation to an upwards-bounded PCTL formula. Next we present our approach to counterexample generation. We first use an adoption of Eppstein's algorithm for k-shortest paths in order to collect the most probable MDP execution traces contributing to a violation of the PCTL formula. We then use the data structure of AND/OR trees in order to adequately extract from the collected execution sequences the most informative counterexample and to compute its probability. In our experimental evaluation we show that our approach scales to models of realistic size, and that the collected diagnostic information is helpful in system debugging.

[1]  Husain Aljazzar,et al.  Extended Directed Search for Probabilistic Timed Reachability , 2006, FORMATS.

[2]  David Eppstein,et al.  Finding the k shortest paths , 1994, Proceedings 35th Annual Symposium on Foundations of Computer Science.

[3]  Adnan Aziz,et al.  It Usually Works: The Temporal Logic of Stochastic Systems , 1995, CAV.

[4]  Joost-Pieter Katoen,et al.  A Markov reward model checker , 2005, Second International Conference on the Quantitative Evaluation of Systems (QEST'05).

[5]  Jesfis Peral,et al.  Heuristics -- intelligent search strategies for computer problem solving , 1984 .

[6]  Christel Baier,et al.  Model checking for a probabilistic branching time logic with fairness , 1998, Distributed Computing.

[7]  Micha Sharir,et al.  Termination of Probabilistic Concurrent Program , 1983, TOPL.

[8]  Holger Hermanns,et al.  Counterexamples for Timed Probabilistic Reachability , 2005, FORMATS.

[9]  Joost-Pieter Katoen,et al.  Counterexamples in Probabilistic Model Checking , 2007, TACAS.

[10]  Andrew Hinton,et al.  PRISM: A Tool for Automatic Verification of Probabilistic Systems , 2006, TACAS.

[11]  Mihalis Yannakakis,et al.  The complexity of probabilistic verification , 1995, JACM.

[12]  Bengt Jonsson,et al.  A logic for reasoning about time and reliability , 1990, Formal Aspects of Computing.

[13]  Moshe Y. Vardi Automatic verification of probabilistic concurrent finite state programs , 1985, 26th Annual Symposium on Foundations of Computer Science (sfcs 1985).

[14]  Nancy A. Lynch,et al.  Probabilistic Simulations for Probabilistic Processes , 1994, Nord. J. Comput..

[15]  Andrea Bianco,et al.  Model Checking of Probabalistic and Nondeterministic Systems , 1995, FSTTCS.

[16]  Stephan Merz,et al.  Model Checking , 2000 .