partial solvers for parity games effective polynomial
play

Partial solvers for parity games: effective polynomial-time - PowerPoint PPT Presentation

Partial solvers for parity games: effective polynomial-time composition Patrick Ah-Fat, Michael Huth Imperial College London 1 / 19 Background 1 Parity games Partial solvers and static analyses Residual games Composition Procedure and


  1. Partial solvers for parity games: effective polynomial-time composition Patrick Ah-Fat, Michael Huth Imperial College London 1 / 19

  2. Background 1 Parity games Partial solvers and static analyses Residual games Composition Procedure and objectives 2 Data-driven design 3 Node merging methods Edge removal methods Experimental Results 4 A theoretical result Effectiveness tests Results for ps 5 Future Works 5 Conlusion 6 2 / 19

  3. Background Parity games Parity game v 1 v 4 2 2 2 0 1 2 v 0 v 2 v 3 v 5 Figure 1 : Player 0 wins v 0 , v 1 and v 2 while player 1 wins v 3 , v 4 and v 5 . Parity games are determined (Zielonka’s algorithm ([Zie98]), ...) Is there a polynomial time solver ? 3 / 19

  4. Background Partial solvers and static analyses Partial solvers decide the winners of some nodes: Fatal attractors removal ( psol B , [HKP13]) Alternating reachability under parity ( psol C , [HKP16]) Static analyses reduce the complexity of a game: Static color compression ( scc ) Priority propagation ( pp ) Abstract Rabin index reduction ( ari , [HKP15]) Effectiveness VS efficiency (of psol B ) psol B solves ladder and strategy improvement benchmark games more efficiently than Zielonka’s algorithm. psol B is also effective on model checker ladder benchmark games (i.e. runs in PTIME) 4 / 19

  5. Background Residual games Example: Fatal attractors and psol B A set of nodes X of color c and parity p has a fatal attractor for color c iff: p can force from X to get to X again through nodes of color ≥ c . Such an X is won by player p . v 1 v 4 2 2 Figure 2 : Nodes v 3 , v 4 and v 5 form a fatal attractor for color 1. We call the game composed of { v 0 , v 1 , v 2 } a residual 2 0 1 2 game for psolB . v 0 v 3 v 5 v 2 Residual game A game G is called residual for partial solver ps if ps cannot simplify G . 5 / 19

  6. Background Composition Example: Composition effectiveness v 1 v 1 2 0 scc 2 0 0 0 v 0 v 2 v 0 v 2 Residual game for psol B Game solved by psol B Figure 3 : Composition of scc and psol B . { psol B } alone cannot solve game G whereas { scc , psol B } can Composition is effective Residual games can help designing new static analyses 6 / 19

  7. Procedure and objectives Our first partial solver was ps 1 = while ( f 1 , · · · , f 5 ) as presented below. ps 1 (G){ ( flag , G’ ) = f 1 (G) ; i f ( f l a g ){ ps 1 (G’ ) ; } ( flag , G’ ) = f 2 (G) ; i f ( f l a g ){ ps 1 (G’ ) ; } . . . ( flag , G’ ) = f 5 (G) ; i f ( f l a g ){ ps 1 (G’ ) ; } r e t u r n } flag flag flag · · · f 1 f 2 f 5 return flag flag flag Figure 4 : Composition pattern between analyses. 7 / 19

  8. Procedure and objectives Methodology Consider partial solver ps 1 = while ( f 1 , · · · , f 5 ) Generate and manually study residual games for ps 1 (the data ) Invent static analysis f 6 Restart with ps 2 = chain ( ps 1 , f 6 ) Static analysis f 6 ? G G’ Residual game for ps 1 ( data ) Not residual for ps 1 Figure 5 : Data-driven approach given partial solver ps 1 and residual game G . 8 / 19

  9. Procedure and objectives New static analyses Node merging Corresponding partial solver Sole successors node merging ps 2 = while ( ps 1 , m ss ) m ss SCC node merging ps 3 = while ( ps 2 , m scc ) m scc Edge removal Edge removal based on er fa ps 4 = while ( ps 3 , er fa ) conditional fatal attractors Edge removal based on er sd ps 5 = while ( ps 4 , er sd ) shared descendant Figure 6 : Notations of the different new static analyses we produced. Note We also studied variants and generalisations of those static analyses. 9 / 19

  10. Data-driven design Node merging methods Example: SCC nodes merging ( m scc ) v 32 v 33 0 v 13 2 v 5 2 v 10 v 30 2 1 2 Figure 7 : Example of residual game for ps 2 . Observation: Nodes v 5 and v 33 have the same winner and same color. Conclusion ( m scc ) : Nodes v 5 and v 33 can be merged together. 10 / 19

  11. Data-driven design Node merging methods Example: SCC nodes merging ( m scc ) v 32 v 10 v 33 0 v 32 v 34 1 m scc v 13 2 v 13 v 5 0 2 2 v 30 v 10 v 30 2 2 2 1 2 G ′ : Game solved by ps 2 G : Residual game for ps 2 Figure 8 : Effectiveness of node merging m scc . 11 / 19

  12. Data-driven design Edge removal methods Example: Edge removal based on conditional fatal attractors ( er fa ) v 16 v 28 2 1 v 25 v 27 2 2 v 26 v 0 v 20 0 1 2 Figure 9 : Example of residual game for ps 3 . Observation: Committing to edge ( v 25 , v 16 ) creates a fatal attractor for player 0 and color 2. Conclusion ( er fa ): Edge ( v 25 , v 16 ) can be removed. 12 / 19

  13. Data-driven design Edge removal methods Example: Edge removal based on conditional fatal attractors ( er fa ) v 16 v 28 v 16 v 28 er fa 2 1 2 1 v 25 v 27 v 25 v 27 2 2 2 2 v 26 v 0 v 20 v 26 v 0 v 20 0 1 2 0 1 2 G : Residual game for ps 3 G ′ : Game solved by ps 3 Figure 10 : Effectiveness of edge removal er fa . 13 / 19

  14. Experimental Results A theoretical result Theorem 1 Partial solver while ( scc ′ , ari , fa ) solves all 1-player games. scc ′ : Static color compression on SCC’s ari : Abstract Rabin index reduction fa : Fatal attractors removal 14 / 19

  15. Experimental Results Effectiveness tests Model Checking MLSolver Alternating Bit Protocol (ABP) Concurrent Alternating Bit CTL Star Binary Counter Protocol (CABP) Demri Killer Formula Positive Acknowledgement with Fair Scheduler Retransmission Protocol (PAR) FLCTL Limit Closure Bounded Retransmission Protocol (BRP) Include Sliding Window Protocol (SWP) LT Mucalc Binary Counter Cache Coherence Protocol (CCP) Mu Calc Limit Closure Leader Election Protocol Nester Domineering Parity And Buechi Snake PDL Binary Counter Lift Petri Elevator FIFO Star Nester Elevator LIFO Hanoi Equivalence checking PGSolver Random Games Clustered Random Games Alternating Bit Protocol (ABP) Steady Random Games Concurrent Alternating Clique Games Bit Protocol (CABP) Ladder Games Onebit Sliding Window Protocol Jurdzinski Games Positive Acknowledgement with Recursive Ladder Games Retransmission Protocol (PAR) Model Checker Ladder Games Sliding Window Protocol (SWP) Tower of Hanoi Fairness Verification of an Elevator System Figure 11 : Keiren’s benchmark suite ([Kei15]): types of games that ps 5 solved. 15 / 19

  16. Experimental Results Effectiveness tests number of residual games 10 4 10 3 10 2 ps 1 ps 2 ps 3 ps 4 ps 5 partial solver Figure 12 : Frequency of residual games for our partial solvers. We have generated 13 800 347 games under the configuration 50 − 25 − 2 − 4. 16 / 19

  17. Experimental Results Results for ps 5 residual residual configuration time (s) games generated games games for lift ( ps 5 ) for ps 5 1000-300-2-4 1 879 881 3 079 306 0 0 200-50-1-2 214 621 406 768 22 0 200-50-1-3 214 691 507 032 44 0 200-50-2-3 214 734 361 253 99 0 200-50-2-4 214 771 4 600 227 43 0 30-15-2-4 2 117 308 2 723 701 031 2 023 0 40-20-2-4 2 117 288 1 466 037 789 3 040 0 50-25-2-4 2 117 273 862 630 173 3 328 0 55-27-2-4 2 117 217 658 895 399 3 119 0 60-30-2-4 2 117 250 528 227 035 3 084 0 17 / 19

  18. Future Works The following questions might be worth studying in more details: What types of games are solved by a given partial solver ? What properties do the residual games for a given partial solver have ? Can we extend Theorem 1 to interesting classes of 2-player games ? 18 / 19

  19. Conlusion We studied and applied composition between known partial solvers. We followed a data-driven approach and proposed new static analyses. We built effective polynomial time partial solvers that appear to solve all structured benchmarks. We still seek further mathematical insights into partial solvers composition. 19 / 19

  20. Michael Huth, Jim Huan-Pu Kuo, and Nir Piterman. Fatal attractors in parity games. In International Conference on Foundations of Software Science and Computational Structures , pages 34–49. Springer, 2013. Michael Huth, Jim Huan-Pu Kuo, and Nir Piterman. The rabin index of parity games: Its complexity and approximation. Information and Computation , 2015. Michael Huth, Jim Huan-Pu Kuo, and Nir Piterman. Static analysis of parity games: Alternating reachability under parity. In Semantics, Logics, and Calculi , pages 159–177. Springer, 2016. Jeroen JA Keiren. Benchmarks for parity games. In International Conference on Fundamentals of Software Engineering , pages 127–142. Springer, 2015. Wieslaw Zielonka. Infinite games on finitely coloured graphs with applications to automata on infinite trees. Theoretical Computer Science , 200(1):135–183, 1998. 19 / 19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend