Presentation is loading. Please wait.

Presentation is loading. Please wait.

Petri Nets An Overview IE 680 Presentation April 30, 2007 Renata Kopach- Konrad.

Similar presentations


Presentation on theme: "Petri Nets An Overview IE 680 Presentation April 30, 2007 Renata Kopach- Konrad."— Presentation transcript:

1 Petri Nets An Overview IE 680 Presentation April 30, 2007 Renata Kopach- Konrad

2 Overview The building blocks of Petri Nets An example Analysis tools Extensions Elements of steady-state simulation theory for SPNs

3 What are Petri Nets? Mathematical modeling tools that capture operational dynamics of discrete event systems Graphical Representation Modeling Language State-transition mechanism Event Scheduling mechanism Not this kind of Petri!

4 Applications Software design Workflow management Data Analysis Reliability Engineering

5 Suitable for Modeling Concurrency Synchronization Precedence Priority Bottom up and top-down modeling

6 Modeling Tool: Petri Nets Supports modularity and abstraction Supports system simulation Supports formal analysis for operational properties such as boundedness, liveness, reachabiltiy, etc. Petri Nets have a rich research literature

7 What is a Petri Net?

8 System State: Tokens and Net Marking

9 Initial State: (1,1,2,1) t2 is enabled

10 Fire t2, New State: (1,0,3,2)

11 Fire t3, New State: (2,0,2,2)

12 Fire t1, New State: (1,2,2,2)

13 Fire t4, New State: (1,3,2,0)

14 In the context of DES Marking of the SPN = state of the system Firing of a transition = occurrence of an event

15 Notation… A Petri net is a 5-tuple, where S is a set of places T is a set of transitions F is a set of arcs s.t. M 0 is an initial marking W is the set of arc weights/transition matrix/incidence matrix

16 …allows for many things The state of a net is an M vector so State equations are possible Where is how many times each transition fires W T state transition matrix

17 S={p 1,p 2,p 3,p 4 } T={t 1,t 2,t 3,t 4 } F={(p 1,t 1 ) (p 2,t 2 ) (p 3,t 3 ) (p 4,t 4 ) (t 1,p 2 )(t 2,p 3 )(t 2 p 4 ) (t 3,p 1 ) (t 4,p 2 )} W M 0 Initial state (1,1,2,1) σ Firing sequence (t2 t3 t1 t4) M n Final state (1,3,2,0)

18 Analysis Techniques Reachability: used to find erroneous state (Karp and Miller, Hack) Liveness: related to deadlock Boundedness: if the # of tokens in any place cannot exceed k. (Covering) Fairness: will there be an infinite sequence?

19 Reachability How do we get there? What sequence of event firings will get us to the final state? Final State Starting State (Initial Marking)

20 Reachability Example Obtain the min sequence of events (transition firings) from an initial state to a final state MIP Problem: solved multiple times Constraints: State Equations Objective Function: minimize the difference between the final and the intermediate state

21 An example

22 Part 1: Min number of events – Finding the Parikh Vector Min + S.t. X j>= 0 j Є J, Є Z where, α i >= 0 initial marking (given) i Є I y i >= 0 final marking (given) i Є I, Z Ф ij - coefficient on the Incidence Matrix for place i, transition j; i Є I, j Є J, x is the number of times transition j fires j Є J =

23 Part 2: Identifying the Sequence of Events using MIP Constraint (i) state equation Constraint (ii) limits the transitions per sequence to 1. Constraint (iii) enforces the total number of times a transition can fire across all sequences to be equal to the PV

24 Many extensions are possible Coloured Hierarchy Prioritized Timed Petri Nets Stochastic

25 The Stochastic Element Clocks X(t) is the marking process of an SPN Ref: Haas, 2004 page 102

26 A Queuing Example The SPN of the model is Ref: Haas, 2004 page 103 2 Service Centers N(>2) jobs p: rework at Center 1

27 Stability and Simulation Interested in performance characteristics Typically interested in terms of the marking process Can apply Regenerative Simulation Method

28 Expected value of data collected in regenerative interval Expected number of data Concerns: How do you find regenerative point in an SPN?

29 Key Assumptions There exists a marking set of transitions Such that the marking process probability restarts whenever the marking is and the transitions in fire simultaneously.

30 Regenerative method for the Marking Process 1.Select a sequence of regeneration points for the process 2.Simulate the process and observe a fixed number n of cycles defined by the random times 3.Compute the length of the kth cycle and the quantity 4.Form the strongly consistent point estimate (e.g. using jackknife method) 5.Haas (2004) provides the theorem for defining the sequence of regeneration points for a marking process

31 Challenges Difficult to identify regeneration points in practice Can be long intervals/ high utilization Haas suggests using Standardized Time Series

32 Software STNPlay CPNTools (Colored PNs) Petri Net Kernel (in Java) YASPER (workflow analysis)

33 Summary Petri Nets are a powerful modeling tool Many extensions are possible Allows for rigorous formulalism

34 References J. Peterson. Petri Net Theory and the Modeling of Systems. Prentice Hall. 1981 T. Murata, “Petri nets: Properties, Analysis And Applications”, Proc. Of The IEEE, Vol. 77 No.4, pp. 541-580, April 1989. C. Cassandras. Discrete Event Systems: Modeling and Performance Analysis. Homewood, IL: Richard D. Irwin, Inc., and Aksen Associates, Inc., 1993. P. Haas, “Stochastic Petri Nets for Modelling and Simulation,” Proc. Of the 2004 Winter Simulation Conference, Washington, D.C, pp. 101-112, December 2004.


Download ppt "Petri Nets An Overview IE 680 Presentation April 30, 2007 Renata Kopach- Konrad."

Similar presentations


Ads by Google