Petri Net1 :Abstract formal model of information flow Major use: Modeling of systems of events in which it is possible for some events to occur concurrently,

Presentation on theme: "Petri Net1 :Abstract formal model of information flow Major use: Modeling of systems of events in which it is possible for some events to occur concurrently,"— Presentation transcript:

Petri Net1 :Abstract formal model of information flow Major use: Modeling of systems of events in which it is possible for some events to occur concurrently, but there are constraints on the occurrences, precedence, or frequency of these occurrences.

Petri Net2 Petri Net as a Graph :Models static properties of a system Graph contains 2 types of nodes –Circles (Places) –Bars (Transitions) Petri net has dynamic properties that result from its execution –Markers (Tokens) –Tokens are moved by the firing of transitions of the net.

Petri Net3 Petri Net as a Graph (cont.) (Figure 1) A simple graph representation of a Petri net.

Petri Net4 Petri Net as a Graph (cont.) (Figure 2) A marked Petri net.

Petri Net5 Petri Net as a Graph (cont.) (Figure 3) The marking resulting from firing transition t 2 in Figure 2. Note that the token in p 1 was removed and tokens were added to p 2 and p 3

Petri Net6 Petri Net as a Graph (cont.) (Figure 4) Markings resulting from the firing of different transitions in the net of Figure 3. (a) Result of firing transition t 1

Petri Net7 Petri Net as a Graph (cont.) (Figure 4) Markings resulting from the firing of different transitions in the net of Figure 3. (b) Result of firing transition t 3

Petri Net8 Petri Net as a Graph (cont.) (Figure 4) Markings resulting from the firing of different transitions in the net of Figure 3. (c) Result of firing transition t 5

Petri Net9 Petri Net as a Graph (cont.) (Figure 5) A simple model of three conditions and an event

Petri Net10 (Figure 6) Modeling of a simple computer system

Petri Net11 Petri Net as a Graph (cont.) (Figure 7) Modeling of a nonprimitive event

Petri Net12 Petri Net as a Graph (cont.) (Figure 8) Modeling of “simultaneous” which may occur in either order

Petri Net13 Petri Net as a Graph (cont.) (Figure 9) Illustration of conflicting transitions. Transitions t j and t k conflict since the firing of one will disable the other

Petri Net14 Petri Net as a Graph (cont.) (Figure 10) An uninterpreted Petri net.

Petri Net15 (Figure 11) Hierarchical modeling in Petri nets by replacing places or transitions by subnets (or vice versa).

Petri Net16 (Figure 12) A portion of a Petri net modeling a control unit for a computer with multiple registers and multiple functional units

Petri Net17 (Figure 13) Representation of an asynchronous pipelined control unit. The block diagram on the left is modeled by the Petri net on the right

Petri Net18 Petri Net as a Graph (cont.)

Petri Net19 (Figure 15) A Petri net model of a P/V solution to the mutual exclusion problem

Petri Net20 (Figure 16) Example of a Petri net used to represent the flow of control in programs containing certain kind of constructs L: S 0 Do while P 0 if P 2 then S 1 else S 2 endif parbegin S 3,S 4,S 5, parend enddo goto L

Petri Net21 (Figure 17) A Petri net model for protocol 3

Petri Net22 Other properties for analysis Boundeness –Safe net (bound = 1) –K-bounded net Conservation ==> conservative net Live transition Dead transition

Petri Net23 State of a Petri net State - defined by its marking,  State space - set of all markings: (  ,  ,  ,...) Change in state - caused by firing a transition, defined by partial F n,  (example)   =  (  , t j ) Note: marking -- For a marking ,  (P i ) =  i A marked Petri net: m = (P, T, I, O,  )

Petri Net24   = (1, 0, 1, 0, 2)  (  , t 3 )  = (1, 0, 0, 1, 2) =    (  , t 4 )  = (1, 1, 1, 0, 2) =   etc.

Petri Net25 (Figure 19) A Petri net with a nonfirable transition. Transition t 3 is dead in this marking

Petri Net26 Petri Net as a Graph (cont.)

Petri Net27 Petri Net as a Graph (cont.) (Figure 21) The reachability tree of the Petri net of Figure 19 (1, 0, 1, 0) (1, 0, 0, 1) (1, , 1, 0) (1, , 0, 0)(1, , 0, 1) (1, , 1, 0) t3t3 t2t2 t1t1 t3t3 t2t2

Petri Net28 Unsolvable Problems Subset problem - given 2 marked Petri nets, is the reachability of one net a subset of the reachability of the other net undecidable (Hack)...... Complexity reachability problem is exponential time-hard and exponential space-hard.

Similar presentations