1,871 research outputs found
Benchmarks for Parity Games (extended version)
We propose a benchmark suite for parity games that includes all benchmarks
that have been used in the literature, and make it available online. We give an
overview of the parity games, including a description of how they have been
generated. We also describe structural properties of parity games, and using
these properties we show that our benchmarks are representative. With this work
we provide a starting point for further experimentation with parity games.Comment: The corresponding tool and benchmarks are available from
https://github.com/jkeiren/paritygame-generator. This is an extended version
of the paper that has been accepted for FSEN 201
Symmetric Strategy Improvement
Symmetry is inherent in the definition of most of the two-player zero-sum
games, including parity, mean-payoff, and discounted-payoff games. It is
therefore quite surprising that no symmetric analysis techniques for these
games exist. We develop a novel symmetric strategy improvement algorithm where,
in each iteration, the strategies of both players are improved simultaneously.
We show that symmetric strategy improvement defies Friedmann's traps, which
shook the belief in the potential of classic strategy improvement to be
polynomial
The Rabin index of parity games
We study the descriptive complexity of parity games by taking into account
the coloring of their game graphs whilst ignoring their ownership structure.
Colored game graphs are identified if they determine the same winning regions
and strategies, for all ownership structures of nodes. The Rabin index of a
parity game is the minimum of the maximal color taken over all equivalent
coloring functions. We show that deciding whether the Rabin index is at least k
is in PTIME for k=1 but NP-hard for all fixed k > 1. We present an EXPTIME
algorithm that computes the Rabin index by simplifying its input coloring
function. When replacing simple cycle with cycle detection in that algorithm,
its output over-approximates the Rabin index in polynomial time. Experimental
results show that this approximation yields good values in practice.Comment: In Proceedings GandALF 2013, arXiv:1307.416
Solving Parity Games in Scala
Parity games are two-player games, played on directed graphs, whose nodes are labeled with priorities. Along a play, the maximal priority occurring infinitely often determines the winner. In the last two decades, a variety of algorithms and successive optimizations have been proposed. The majority of them have been implemented in PGSolver, written in OCaml, which has been elected by the community as the de facto platform to solve efficiently parity games as well as evaluate their performance in several specific cases.
PGSolver includes the Zielonka Recursive Algorithm that has been shown to perform better than the others in randomly generated games. However, even for arenas with a few thousand of nodes (especially over dense graphs), it requires minutes to solve the corresponding game.
In this paper, we deeply revisit the implementation of the recursive algorithm introducing several improvements and making use of Scala Programming Language. These choices have been proved to be very successful, gaining up to two orders of magnitude in running time
Algorithmic analysis of parity games
Parity games are discrete infinite games of two players with complete information. There are two main motivations to study parity games. Firstly the problem of deciding a winner in a parity game is polynomially equivalent to the modal µ-calculus model checking, and therefore is very important in the field of computer aided verification. Secondly it is the intriguing status of parity games from the point of view of complexity theory. Solving parity games is one of the few natural problems in the class NP∩co-NP (even in UP∩co-UP), and there is no known polynomial time algorithm, despite the substantial amount of effort to find one. In this thesis we add to the body of work on parity games. We start by presenting parity games and explaining the concepts behind them, giving a survey of known algorithms, and show their relationship to other problems. In the second part of the thesis we want to answer the following question: Are there classes of graphs on which we can solve parity games in polyno
Improved Algorithms for Parity and Streett objectives
The computation of the winning set for parity objectives and for Streett
objectives in graphs as well as in game graphs are central problems in
computer-aided verification, with application to the verification of closed
systems with strong fairness conditions, the verification of open systems,
checking interface compatibility, well-formedness of specifications, and the
synthesis of reactive systems. We show how to compute the winning set on
vertices for (1) parity-3 (aka one-pair Streett) objectives in game graphs in
time and for (2) k-pair Streett objectives in graphs in time
. For both problems this gives faster algorithms for dense
graphs and represents the first improvement in asymptotic running time in 15
years
Robust Exponential Worst Cases for Divide-et-Impera Algorithms for Parity Games
The McNaughton-Zielonka divide et impera algorithm is the simplest and most
flexible approach available in the literature for determining the winner in a
parity game. Despite its theoretical worst-case complexity and the negative
reputation as a poorly effective algorithm in practice, it has been shown to
rank among the best techniques for the solution of such games. Also, it proved
to be resistant to a lower bound attack, even more than the strategy
improvements approaches, and only recently a family of games on which the
algorithm requires exponential time has been provided by Friedmann. An easy
analysis of this family shows that a simple memoization technique can help the
algorithm solve the family in polynomial time. The same result can also be
achieved by exploiting an approach based on the dominion-decomposition
techniques proposed in the literature. These observations raise the question
whether a suitable combination of dynamic programming and game-decomposition
techniques can improve on the exponential worst case of the original algorithm.
In this paper we answer this question negatively, by providing a robustly
exponential worst case, showing that no intertwining of the above mentioned
techniques can help mitigating the exponential nature of the divide et impera
approaches.Comment: In Proceedings GandALF 2017, arXiv:1709.0176
- …