450 likes | 459 Views
This research explores nested Petri nets as an extension of classical Petri nets for modeling dynamic multi-agent systems. The study focuses on unraveling the state space explosion issue in highly concurrent systems through unfoldings. It delves into the structure, steps, and synchronization in nested Petri nets to enhance system verification.
E N D
Verification of Multi-Agent System Models via Nested Petri Net Unfoldings M11PE Yermakova Vera Supervisor: Doctor of Sciences, Professor Lomazova I.A. Higher School of Economics , Moscow, 2015 www.hse.ru
Introduction Verification of highly concurrent systems Solution: Unfoldings state space explosion problem. photo photo photo Higher School of Economics , Moscow, 2015
Talk overview • Petri nets and nested Petri nets • Petri nets unfolding • Nested Petri nets translation into Petri nets • Nested Petri nets unfolding photo photo photo Higher School of Economics , Moscow, 2015
Petri net- formally photo photo x photo Higher School of Economics , Moscow, 2015
High level Petri net(example) Instead of having different nets, we use a single net with different kinds of tokens. photo photo photo Higher School of Economics , Moscow, 2015
Nested Petri nets • The “flat” structure of regular Petri nets can be inconvenient, when modelling systems with multiple autonomous agents. • Nested Petri net (NP-net) is an extension of classical Petri nets used for modelling dynamic multi-agent systems. • In NP-net tokens can be Petri nets themselves (“nets-within-nets” approach). photo photo photo Higher School of Economics , Moscow, 2015
Nested Petri nets photo photo photo Higher School of Economics , Moscow, 2015
Nested Petri net element net element net photo system net photo NP-net = system net + element nets An instance of the element nets are called net tokens. photo element net Higher School of Economics , Moscow, 2015
Nested Petri nets photo • Therearethreekindsofstepsinan NP-net • An element-autonomous step • A system-autonomous step • A synchronization step photo photo Higher School of Economics , Moscow, 2015
Nested Petri net: synchronization step photo photo photo Higher School of Economics , Moscow, 2015
Nested Petri net: synchronization step photo photo photo Higher School of Economics , Moscow, 2015
Nested Petri net: synchronization step photo photo photo Higher School of Economics , Moscow, 2015
Nested Petri net: element-autonomous step photo photo photo Higher School of Economics , Moscow, 2015
Nested Petri net: element-autonomous step photo photo photo Higher School of Economics , Moscow, 2015
Nested Petri net: system-autonomous step photo photo photo Higher School of Economics , Moscow, 2015
Nested Petri net: system-autonomous step photo photo photo Higher School of Economics , Moscow, 2015
Talk overview • Petri nets and nested Petri nets • Petri nets unfolding • Nested Petri nets translation into Petri nets • Nested Petri nets unfolding photo photo photo Higher School of Economics , Moscow, 2015
Unfoldings in verification • Unfoldings are defined using branching processes – partial branching concurrent runs of the system. The function h (union of all the morphisms from unfoldings to individual components) relates the nodes of a branching process to the nets of the main net • Places and transitions in a branching process are called conditions and events. photo photo photo
Net unfoldings photo photo photo Higher School of Economics , Moscow, 2014
Unfoldings in verification • Unfoldings are represented by a special class of Petri nets Occurrence nets. • Occurrence nets are acyclic, the flow relation induces a partial order <: transitive closure of F. • A net, consisting just of places, corresponding to the initial marking of N, is a branching process. • The initial marking of a branching process is the <-minimal set. photo photo photo
Occurrence net An occurrence net (ON) is a net (B, E, F) where elements of B and E are called conditions and events, respectively, and such that: • ∀e ∈ E, ¬(e # e) (no self-conflict), • ∀e ∈ E, ¬(e < e) (≤ is a partial order), • ∀e ∈ E, |e| < ∞, • ∀b ∈ B, | • b| = 1 (no backward branching), • ⊥ ∈ E is the only ≤-minimal node (event ⊥ creates the initial conditions). Higher School of Economics , Moscow, 2015
Occurrence net occurrence net Petri net Higher School of Economics , Moscow, 2015
Unfoldings in verification • Unfoldings of Petri nets provide true concurrency semantics to Petri nets. • If we can “cut” the unfolding to a finite prefix, then we can use it for verification. • The size of finite prefixes of unfoldings can be much smaller than the size of the reachability graph. photo photo photo
Unfoldings in verification • If X is a set of reachable conditions of a branching process B, and X correspond to a set h(X) of places in the net N, that enable a transition t.. • .. Then we can obtain a branching process B’ by adding a new event e (which corresponds to t), and “fresh” post-conditions which correspond to t• ‚ Such e is called a possible extension of B. photo photo photo
Petri net unfolding ( example ) Higher School of Economics , Moscow, 2015
Talk overview • Petri nets and nested Petri nets • Petri nets unfolding • Nested Petri nets translation into Petri nets • Nested Petri nets unfolding photo photo photo Higher School of Economics , Moscow, 2015
Restristions photo photo photo Higher School of Economics , Moscow, 2014
Translation algorithm Step 1.First, we define places of PN. PPN = PSN× (P1∪…∪Pk ∪ {•}). Simultaneously we define a one to one correspondence between markings in NPN and markings in PN (p, q) ∈ PSN× P1. Step 2. Here we construct transitions corresponding to autonomous transitions in SN. For each unlabeled transition t ∈ TSN, for each net token SN and for each marking in SN we build a separate transition with input and output arcs connected to corresponding places. Step 3 defines element-autonomous transitions translation into PN. For each unlabeled transition t ∈ TEN in net token EN we build one transition t' in PN with arcs connected to corresponding places. Step 4. A firing of a synchronization transition consists of simultaneous firing of a system net transition and firings of some transition with the same labeling in each involved net token. For each net token p ∈ PSN with corresponding synchronization label on a transition, and for state in which this transition may fire a new transition t' is built, which simulates vertical synchronization steps in NPN. photo photo photo Higher School of Economics , Moscow, 2014
Translation of nested Petri nets into Petri nets Nested Petri net SN: λ EN1: EN2: Higher School of Economics , Moscow, 2015
Translation of nested Petri nets into Petri nets Higher School of Economics , Moscow, 2015
Translation of nested Petri nets into Petri nets Synchronized transition Higher School of Economics , Moscow, 2015
Translation of nested Petri nets into Petri nets Transitions – just for EN2 Higher School of Economics , Moscow, 2015
Translation of nested Petri nets into Petri nets Higher School of Economics , Moscow, 2015
Translation of nested Petri nets into Petri nets Translated net Higher School of Economics , Moscow, 2015
Talk overview • Petri nets and nested Petri nets • Petri nets unfolding • Nested Petri nets translation into Petri nets • Nested Petri nets unfolding photo photo photo Higher School of Economics , Moscow, 2015
Nested Petri nets and unfoldings • NP-nets are good for modeling multi-agent systems • Multi-agent systems inherently posses a high grade of concurrency • Unfolding NP-nets can be beneficial compared to state-space exploration photo photo photo Higher School of Economics , Moscow, 2014
Nested Petri nets and unfoldings photo photo Unfoldings for NP-net are defined using branching processes, similarly to the case of classical Petri nets. photo Higher School of Economics , Moscow, 2014
Nested Petri nets and unfoldings photo photo photo Higher School of Economics , Moscow, 2014
Nested Petri nets and unfoldings photo photo photo Higher School of Economics , Moscow, 2014
Nested Petri nets and unfoldings photo photo photo Higher School of Economics , Moscow, 2014
Nested Petri nets and unfoldings photo photo photo Higher School of Economics , Moscow, 2014
Nested Petri nets and unfoldings photo photo photo Higher School of Economics , Moscow, 2014
Conclusion Conservative safe nested Petri net (Unfolding) (Translation) Classical Petri net (Unfolding) • Translation algorithm was developed and formalized • Program for time and resource comparison was developed Higher School of Economics , Moscow, 2015
Literature • Daniil Frumin and Irina Lomazova Branching Processes of Conservative Nested Petri Nets • K.L. McMillan Using unfoldings to avoid the state explosion problem in the verification of asynchronous circuits. • Irina A. Lomazova. Vlozhennye seti Petri: modelirovanie i analiz raspredelennykh sistem s ob"ektnoy strukturoy (in Russian). Nauchnyy Mir, Moscow, 2004 • Mogens Nielsen, Gordon Plotkin, and Glynn Winskel. Petri nets, event structures and domains, part I. photo photo photo Higher School of Economics , Moscow, 2014
20, Myasnitskaya str., Moscow, Russia, 101000 Tel.: +7 (495) 628-8829, Fax: +7 (495) 628-7931 www.hse.ru