Solving high-level Petri games

The manual implementation of local controllers for autonomous agents in a distributed and concurrent setting is an ambitious and error-prune task. Synthesis algorithms, however, allow for the automatic generation of such controllers given a formal specification of the system’s goal. Recently, high-level Petri games were introduced to allow for a concise modeling technique of distributed systems with a safety objective. One way of solving these games is by a translation to low-level Petri games and applying an existing solving algorithm. In this paper we present a new solving technique for a subclass of high-level Petri games with a single uncontrollable player, a bounded number of controllable players, and a local safety objective. The technique exploits symmetries in the high-level Petri game. We report on encouraging experimental results of a prototype implementation generating the reduced state space. The results for four existing and one new benchmark family show a state space reduction by up to three orders of magnitude.

[1]  Orna Kupferman,et al.  Synthesizing Distributed Systems , 2001, LICS.

[2]  Andrew S. Tanenbaum,et al.  Distributed systems: Principles and Paradigms , 2001 .

[3]  P. Ramadge,et al.  Supervisory control of a class of discrete event processes , 1987 .

[4]  Jean-François Raskin,et al.  Petri Games are Monotonic but Difficult to Decide ⋆ , 2000 .

[5]  Bernd Finkbeiner,et al.  Translating Asynchronous Games for Distributed Synthesis , 2019, CONCUR.

[6]  Markus Lindquist Parameterized Reachability Trees for Predicate/Transition Nets , 1991, Applications and Theory of Petri Nets.

[7]  Giovanni Chiola,et al.  A Symbolic Reachability Graph for Coloured Petri Nets , 1997, Theor. Comput. Sci..

[8]  Karsten Wolf Parameterized Reachability Trees for Algebraic Petri Nets , 1995, Application and Theory of Petri Nets.

[9]  Anca Muscholl,et al.  Distributed Synthesis for Acyclic Architectures , 2014, FSTTCS.

[10]  Lorenzo Capra Colored Petri nets state-space reduction via symbolic execution , 2005, Seventh International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC'05).

[11]  Fabrice Kordon,et al.  PN Standardisation: A Survey , 2006, FORTE.

[12]  Giovanni Chiola,et al.  Stochastic Well-Formed Colored Nets and Symmetric Modeling Applications , 1993, IEEE Trans. Computers.

[13]  Peter Huber,et al.  Reachability Trees for High-level Petri Nets , 1986, Theor. Comput. Sci..

[14]  Dirk Missal Formal synthesis of safety controller code for distributed controllers , 2012 .

[15]  A. Prasad Sistla,et al.  Symmetry Reductions in Model Checking , 1998, CAV.

[16]  Javier Esparza,et al.  Unfoldings - A Partial-Order Approach to Model Checking , 2008, Monographs in Theoretical Computer Science. An EATCS Series.

[17]  Carlo Bellettini,et al.  Quotient graphs for the analysis of asymmetric distributed systems: surveying two alternative approaches , 2005, 19th IEEE International Parallel and Distributed Processing Symposium.

[18]  Jörg Desel,et al.  A Guide to Modelling and Control with Modules of Signal Nets , 2004, SoftSpez Final Report.

[19]  Javier Esparza,et al.  Model Checking Using Net Unfoldings , 1993, Sci. Comput. Program..

[20]  Wolfgang Reisig,et al.  Understanding Petri Nets Modeling Techniques, Analysis Methods, Case Studies , 2013, Bull. EATCS.

[21]  Bernd Finkbeiner,et al.  Symbolic vs. Bounded Synthesis for Petri Games , 2017, SYNT@CAV.

[22]  Kurt Lautenbach,et al.  System Modelling with High-Level Petri Nets , 1981, Theor. Comput. Sci..

[23]  Carlo Bellettini,et al.  A quotient graph for asymmetric distributed systems , 2004, The IEEE Computer Society's 12th Annual International Symposium on Modeling, Analysis, and Simulation of Computer and Telecommunications Systems, 2004. (MASCOTS 2004). Proceedings..

[24]  Joost Engelfriet,et al.  Branching processes of Petri nets , 1991, Acta Informatica.

[25]  Glynn Winskel,et al.  Petri Nets, Event Structures and Domains, Part I , 1981, Theor. Comput. Sci..

[26]  Karsten Wolf,et al.  Integrating Low Level Symmetries into Reachability Analysis , 2000, TACAS.

[27]  Belhassen Zouari,et al.  Symbolic Reachability Graph and Partial Symmetries , 1995, Application and Theory of Petri Nets.

[28]  Serge Haddad,et al.  Regular stochastic Petri nets , 1989, Applications and Theory of Petri Nets.

[29]  Karsten Wolf The Petri net twist in explicit model checking , 2014, Software & Systems Modeling.

[30]  Bernd Finkbeiner,et al.  Bounded Synthesis for Petri Games , 2015, Correct System Design.

[31]  Bernd Finkbeiner,et al.  Synthesis in Distributed Environments , 2017, FSTTCS.

[32]  Giovanni Chiola,et al.  On Well-Formed Coloured Nets and Their Symbolic Reachability Graph , 1991 .

[33]  Peter Huber,et al.  Towards reachability trees for high-level Petri nets , 1985, European Workshop on Applications and Theory in Petri Nets.

[34]  Bernd Finkbeiner,et al.  Uniform distributed synthesis , 2005, 20th Annual IEEE Symposium on Logic in Computer Science (LICS' 05).

[35]  Wieslaw Zielonka,et al.  Notes on Finite Asynchronous Automata , 1987, RAIRO Theor. Informatics Appl..

[36]  P. H. Starke,et al.  Reachability analysis of Petri nets using symmetries , 1991 .

[37]  Souheib Baarir,et al.  Exploiting partial symmetries in well-formed nets for the reachability and the linear time model checking problems , 2004 .

[38]  Qiong Zhou,et al.  Generation of optimal control policy for flexible manufacturing cells: A Petri net approach , 1995 .

[39]  Kurt Jensen,et al.  Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use. Vol. 2, Analysis Methods , 1992 .

[40]  Somesh Jha,et al.  Exploiting symmetry in temporal logic model checking , 1993, Formal Methods Syst. Des..

[41]  Karsten Schmidt Integrating Low Level Symmetries into Reachability Analysis , 2000 .

[42]  Isabelle Mounier,et al.  Automatic Symmetry Detection in Well-Formed Nets , 2003, ICATPN.

[43]  Ugo Buy,et al.  Supervisory control of time Petri nets using net unfolding , 2005, 29th Annual International Computer Software and Applications Conference (COMPSAC'05).

[44]  Bernd Finkbeiner,et al.  Petri Games: Synthesis of Distributed Systems with Causal Memory , 2014, GandALF.

[45]  Markus Lindqvist,et al.  Parameterized reachability trees for predicate/transition nets , 1991 .

[46]  A. Prasad Sistla Symmetry Reductions in Model-Checking , 2003, VMCAI.

[47]  Anca Muscholl,et al.  Asynchronous Games over Tree Architectures , 2012, ICALP.

[48]  Alessandro Giua,et al.  Petri nets as discrete event models for supervisory control , 1992 .

[49]  Wolfgang Reisig,et al.  Understanding Petri nets , 1995, IEEE Parallel & Distributed Technology: Systems & Applications.

[50]  Viktor Kuncak,et al.  Electronic Proceedings in Theoretical Computer Science, EPTCS: Preface , 2016 .

[51]  Fernando Gustavo Tinetti Distributed systems: principles and paradigms (2nd edition) , 2011 .

[52]  Amir Pnueli,et al.  Distributed reactive systems are hard to synthesize , 1990, Proceedings [1990] 31st Annual Symposium on Foundations of Computer Science.

[53]  Bernd Finkbeiner,et al.  Adam: Causality-Based Synthesis of Distributed Systems , 2015, CAV.

[54]  Ernst-Rüdiger Olderog,et al.  High-Level Representation of Benchmark Families for Petri Games , 2019, Model Checking, Synthesis, and Learning.

[55]  Andrew S. Tanenbaum,et al.  Distributed systems - principles and paradigms, 2nd Edition , 2007 .

[56]  Paul Gastin,et al.  Distributed Games with Causal Memory Are Decidable for Series-Parallel Systems , 2004, FSTTCS.

[57]  Hans-Michael Hanisch,et al.  A Modular Synthesis Approach for Distributed Safety Controllers, Part A:⋆ Modelling and Specification , 2008 .

[58]  Karsten Wolf How to calculate symmetries of Petri nets , 2000, Acta Informatica.

[59]  P. S. Thiagarajan,et al.  The MSO Theory of Connectedly Communicating Processes , 2005, FSTTCS.