1,352 research outputs found
Using decision diagrams to compactly represent the state space for explicit model checking
pre-printThe enormous number of states reachable during explicit model checking is the main bottleneck for scalability. This paper presents approaches of using decision diagrams to represent very large state space compactly and efficiently. This is possible for asynchronous systems as two system states connected by a transition often share many same local portions. Using decision diagrams can significantly reduce memory demand by not using memory to store the redundant information among different states. This paper considers multi-value decision diagrams for this purpose. Additionally, a technique to reduce the runtime overhead of using these diagrams is also described. Experimental results and comparison with the state compression method as implemented in the model checker SPIN show that the approaches presented in this paper are memory efficient for storing large state space with acceptable runtime overhead
Explicit Model Checking of Very Large MDP using Partitioning and Secondary Storage
The applicability of model checking is hindered by the state space explosion
problem in combination with limited amounts of main memory. To extend its
reach, the large available capacities of secondary storage such as hard disks
can be exploited. Due to the specific performance characteristics of secondary
storage technologies, specialised algorithms are required. In this paper, we
present a technique to use secondary storage for probabilistic model checking
of Markov decision processes. It combines state space exploration based on
partitioning with a block-iterative variant of value iteration over the same
partitions for the analysis of probabilistic reachability and expected-reward
properties. A sparse matrix-like representation is used to store partitions on
secondary storage in a compact format. All file accesses are sequential, and
compression can be used without affecting runtime. The technique has been
implemented within the Modest Toolset. We evaluate its performance on several
benchmark models of up to 3.5 billion states. In the analysis of time-bounded
properties on real-time models, our method neutralises the state space
explosion induced by the time bound in its entirety.Comment: The final publication is available at Springer via
http://dx.doi.org/10.1007/978-3-319-24953-7_1
Symblicit Exploration and Elimination for Probabilistic Model Checking
Binary decision diagrams can compactly represent vast sets of states,
mitigating the state space explosion problem in model checking. Probabilistic
systems, however, require multi-terminal diagrams storing rational numbers.
They are inefficient for models with many distinct probabilities and for
iterative numeric algorithms like value iteration. In this paper, we present a
new "symblicit" approach to checking Markov chains and related probabilistic
models: We first generate a decision diagram that symbolically collects all
reachable states and their predecessors. We then concretise states one-by-one
into an explicit partial state space representation. Whenever all predecessors
of a state have been concretised, we eliminate it from the explicit state space
in a way that preserves all relevant probabilities and rewards. We thus keep
few explicit states in memory at any time. Experiments show that very large
models can be model-checked in this way with very low memory consumption
Memory-Efficient Symbolic Heuristic Search
A promising approach to solving large state-space search problems is to integrate heuristic search with symbolic search. Recent work shows that a symbolic A * search al-gorithm that uses binary decision diagrams to compactly rep-resent sets of states outperforms traditional A * in many do-mains. Since the memory requirements of A * limit its scal-ability, we show how to integrate symbolic search with a memory-efficient strategy for heuristic search. We analyze the resulting search algorithm, consider the factors that affect its behavior, and evaluate its performance in solving bench-mark problems that include STRIPS planning problems
Sparse Positional Strategies for Safety Games
We consider the problem of obtaining sparse positional strategies for safety
games. Such games are a commonly used model in many formal methods, as they
make the interaction of a system with its environment explicit. Often, a
winning strategy for one of the players is used as a certificate or as an
artefact for further processing in the application. Small such certificates,
i.e., strategies that can be written down very compactly, are typically
preferred. For safety games, we only need to consider positional strategies.
These map game positions of a player onto a move that is to be taken by the
player whenever the play enters that position. For representing positional
strategies compactly, a common goal is to minimize the number of positions for
which a winning player's move needs to be defined such that the game is still
won by the same player, without visiting a position with an undefined next
move. We call winning strategies in which the next move is defined for few of
the player's positions sparse.
Unfortunately, even roughly approximating the density of the sparsest
strategy for a safety game has been shown to be NP-hard. Thus, to obtain sparse
strategies in practice, one either has to apply some heuristics, or use some
exhaustive search technique, like ILP (integer linear programming) solving. In
this paper, we perform a comparative study of currently available methods to
obtain sparse winning strategies for the safety player in safety games. We
consider techniques from common knowledge, such as using ILP or SAT
(satisfiability) solving, and a novel technique based on iterative linear
programming. The results of this paper tell us if current techniques are
already scalable enough for practical use.Comment: In Proceedings SYNT 2012, arXiv:1207.055
A Comparison of BDD-Based Parity Game Solvers
Parity games are two player games with omega-winning conditions, played on
finite graphs. Such games play an important role in verification,
satisfiability and synthesis. It is therefore important to identify algorithms
that can efficiently deal with large games that arise from such applications.
In this paper, we describe our experiments with BDD-based implementations of
four parity game solving algorithms, viz. Zielonka's recursive algorithm, the
more recent Priority Promotion algorithm, the Fixpoint-Iteration algorithm and
the automata based APT algorithm. We compare their performance on several types
of random games and on a number of cases taken from the Keiren benchmark set.Comment: In Proceedings GandALF 2018, arXiv:1809.0241
Generating and Solving Symbolic Parity Games
We present a new tool for verification of modal mu-calculus formulae for
process specifications, based on symbolic parity games. It enhances an existing
method, that first encodes the problem to a Parameterised Boolean Equation
System (PBES) and then instantiates the PBES to a parity game. We improved the
translation from specification to PBES to preserve the structure of the
specification in the PBES, we extended LTSmin to instantiate PBESs to symbolic
parity games, and implemented the recursive parity game solving algorithm by
Zielonka for symbolic parity games. We use Multi-valued Decision Diagrams
(MDDs) to represent sets and relations, thus enabling the tools to deal with
very large systems. The transition relation is partitioned based on the
structure of the specification, which allows for efficient manipulation of the
MDDs. We performed two case studies on modular specifications, that demonstrate
that the new method has better time and memory performance than existing PBES
based tools and can be faster (but slightly less memory efficient) than the
symbolic model checker NuSMV.Comment: In Proceedings GRAPHITE 2014, arXiv:1407.767
- …