Winning Cores in Parity Games Steen Vester DTU Compute October 22, 2015 S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 1 / 35
Outline Motivation 1 Introducing parity games 2 Contributions 3 Winning cores An approximation algorithm Experimental results Summary 4 S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 2 / 35
Motivation Outline Motivation 1 Introducing parity games 2 Contributions 3 Winning cores An approximation algorithm Experimental results Summary 4 S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 3 / 35
Motivation Why is parity game solving important? Solving parity games is polynomial-time equivalent to µ -calculus model-checking Solving boolean equation systems Emptiness of parity tree automata on infinite binary trees. Various problems are reducible to parity games , e.g. Satisfiability problems Model-checking problems Synthesis problems (though, not necessarily by polynomial-time reductions) S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 4 / 35
Motivation Complexity Status It is unknown whether ParityGame is in PTime . We know: Paritygame is in NP ∩ co-NP implying If it is NP -complete then NP = co-NP If it is not solvable in PTime then P � = NP For a fixed maximal color d , it is in PTime S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 5 / 35
Motivation Existing Algorithms The best current algorithms for solving parity games are Zielonkas Recursive algorithm O ( n d ) and O (2 n ) [Zielonka, 1998] Small Progress Measures O ( d · m · ( n / d ) d / 2 ) [Jurdzinski, 1998] Strategy Improvement O ( n · m · 2 m ) [V¨ oge and Jurdzinski, 2000] √ n ) [Jurdzinski et al., 2006] Dominion Decomposition O ( n Big Step Algorithms O ( m · n d / 3 ) [Schewe, 2007] where n is the number of states, m is the number of transitions, d is the maximal color of the game. Note: d ≤ n S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 6 / 35
Motivation Contributions We introduce and study winning cores They are interesting because they provide 1 knowledge about parity games 2 a new direction for solving parity games 3 a polynomial-time approximation algorithm for solving parity games S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 7 / 35
Introducing parity games Outline Motivation 1 Introducing parity games 2 Contributions 3 Winning cores An approximation algorithm Experimental results Summary 4 S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 8 / 35
Introducing parity games A game graph Player 0 state Player 1 state Transition • • Current state S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 9 / 35
Introducing parity games A game graph Player 0 state Player 1 state Transition • • Current state S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 9 / 35
Introducing parity games A game graph Player 0 state Player 1 state • Transition • Current state S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 9 / 35
Introducing parity games A game graph Player 0 state Player 1 state Transition • • Current state S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 9 / 35
Introducing parity games A game graph Player 0 state Player 1 state Transition • Current state • S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 9 / 35
Introducing parity games A game graph Player 0 state Player 1 state Transition • Current state • S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 9 / 35
Introducing parity games A game graph Player 0 state Player 1 state Transition • Current state • S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 9 / 35
Introducing parity games A game graph Player 0 state Player 1 state Transition • Current state • S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 9 / 35
Introducing parity games A Parity Game Player 0 state Player 1 state 4 1 2 Transition 0 3 • Current state 0 , ..., d Colors 1 2 Player 0 wants the largest color infinitely often visited is even Player 1 wants the largest color infinitely often visited is odd S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 10 / 35
Introducing parity games Determinacy A game is determined if for every state s either Player 0 can ensure winning from s or Player 1 can ensure winning from s Theorem ([Ehrenfeucht and Mycielski, 1979]) Parity games are determined G : A parity game W j ( G ) : Set of winning states for player j S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 11 / 35
Introducing parity games Determinacy Example W 1 ( G ) 4 1 2 0 3 1 2 W 0 ( G ) S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 12 / 35
Introducing parity games Determinacy Example W 1 ( G ) 4 1 2 0 3 1 2 W 0 ( G ) S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 12 / 35
Introducing parity games Solving parity games ParityGame Input: A parity game G Output: W 0 ( G ) , W 1 ( G ) S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 13 / 35
Contributions Outline Motivation 1 Introducing parity games 2 Contributions 3 Winning cores An approximation algorithm Experimental results Summary 4 S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 14 / 35
Contributions Winning cores Dominating sequences A sequence ρ = s 0 s 1 ... of states is 0-dominating if max i > 0 ( c ( s i )) is even 1-dominating if max i > 0 ( c ( s i )) is odd Note: Initial state does not count ... 1 4 3 4 3 6 2 3 2 3 2 3 0-dominating 1-dominating S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 15 / 35
Contributions Winning cores Consecutive j -dominating sequences A sequence ρ = s 0 s 1 ... begins with k consecutive j -dominating sequences if ∃ i 0 < i 1 ... < i k such that i 0 = 0 ρ i ℓ ρ i ℓ +1 ...ρ i ℓ +1 is j -dominating for all 0 ≤ ℓ < k ... 1 4 3 4 3 6 2 3 2 3 2 3 0-dominating 1-dominating S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 16 / 35
Contributions Winning cores Winning core Winning core A j ( G ) for player j in game G : Set of states from which player j can force the play to begin with an infinite number of consecutive j -dominating sequences. S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 17 / 35
Contributions Winning cores Winning core example W 1 ( G ) A 1 ( G ) 4 1 2 0 3 1 2 W 0 ( G ) S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 18 / 35
Contributions Winning cores Properties of winning cores Theorem A j ( G ) ⊆ W j ( G ) A j ( G ) = ∅ ⇔ W j ( G ) = ∅ W 0 ( G ) A 0 ( G ) G A 1 ( G ) W 1 ( G ) S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 19 / 35 Figure : The sequence A , A , ... converging to the winning core A for player 0
Contributions Winning cores Winning cores and dominions A j - dominion D is a set of states so player j can make sure that both 1 the play stays in D and 2 that player j wins the play Interestingly, the winning core A j ( G ) is not necessarily a j -dominion. S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 20 / 35
Contributions Winning cores Complexity of computing winning cores Theorem There is a polynomial-time reduction from ParityGame to computing winning cores and vice versa Corollary Computing winning cores is in NP ∩ co-NP Computing winning cores is in P if and only if ParityGame is in P S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 21 / 35
Contributions Winning cores Computing winning regions using winning cores ParityGameSolver( G ) : A ← WinningCore ( G , 0) B ← WinningCore ( G , 1) if A = ∅ and B = ∅ then return ( ∅ , ∅ ) end if A ′ = Attr 0 ( G , A ) B ′ = Attr 1 ( G , B ) ( W 0 , W 1 ) ← ParityGameSolver ( G \ ( A ′ ∪ B ′ )) return ( A ′ ∪ W 0 , B ′ ∪ W 1 ) Note: If WinningCore ( G , j ) returns a subset of A j ( G ) then ParityGameSolver ( G ) returns subsets of the winning regions S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 22 / 35
Contributions An approximation algorithm An underapproximation algorithm WinningCoreApp( G , j ) : A ← S A ′ ← ∅ while A � = A ′ do A ′ ← A A ← { s | Player j can ensure a j -dominating sequence ending in A ′ } end while return A Note: Returns subset of A j ( G ) Combined with previous slide, gives underapproximations of winning regions in time O ( d · n 2 · ( n + m )) and O ( n + m + d ) space. S. Vester (DTU Compute) Winning Cores in Parity Games October 22, 2015 23 / 35
Recommend
More recommend