Download presentation
Presentation is loading. Please wait.
Published byCaitlin Dickerson Modified over 9 years ago
1
PETRINETS Nipun Devlekar Zauja Lahtau
2
PETRINETS DEFINITION : DEFINITION : PETRINET (place/ transition net): a formal, graphical, executable technique for the specification and analysis of concurrent, discrete- event dynamic systems; a technique undergoing standardization. Petri nets derive their name from the inventor of this tool: Prof. Carl Adam Petri
3
Prof. Carl Adam Petri, Germany
4
Formal Graphical Executable Specification Analysis Concurrent Discreet
5
APPLICATIONS OF PETRINET Software design Workflow management Data Analysis Concurrent Programming Readability Engineering Diagnosis for finding the original error in the line of error -> error state -> visible error
6
A simple PN is a 5-tuple: (P,T,IN,OUT,Mo) P, finite number of Places: {p1,p2….,p} T, finite set of transitions: {t1,t2….tm} Input function: Defines directed arcs from places to transitions. Output function: Defines directed arcs from transition to places Mo : P ->N initial marking
7
Various attributes of PN ► Safeness: Number of tokens in each place cannot exceed one ► Boundedness: The number of tokens in each place cannot exceed some threshold k ► Conservation: Total number of tokens in the system is invariant. ► Dead transition: A transition that can never be fired in future. ► Live Transitions: transitions that can be enabled ► Deadlock: No transition can fire ► Live PN: Every transition is live ► Reachable markings: A marking M obtained by firing a sequence of transitions from initial marking.
8
Graphical Representation
9
FIRING RULES A transition is enabled if each of its input places contains a number of tokens that is greater than or equal to the weight of the arrow connecting the input place to the transition An enabled transition may fire Firing of a transition T removes from each input place Pi the number of token equal to the weight of arrow from Pi to T and then inserts into each output place Pj the number of tokens equal to the weight of arrow from T to Pj
11
FIRING
12
HOW TO USE PETRINET FOR MODELLEING
13
EG1:WAREHOUSE Requirements 1>Truck arrives at a loading dock 2>Paper is processed and inventory chequed 3>Conveyor belts move from the loading dock to the warehouse transporting people 4>Conveyor belt moves back from the warehouse to loading dock with merchandise 5>Goods are loaded in the truck
16
EG2:Differential Equation from Petrinet.
17
V1 = k1xy V2 = k2z dz /dt = V1 – V2 = k1xy – k2z dy /dz = 2V2 – V1 = 2k2z – k1xy dx /dt = -V1 = -k1xy
18
Non-Determinism Any of the enabled transitions may fire Model does not specify which fires, nor when it fires Starvation (i.e., a process never gets a resource) Starvation Deadlock Petri net reaches a state in which no transition is enabled i.e., a Deadlock State
20
How to avoid starvation
21
DeadLock
22
Why Other Types of Petri-Nets? Token of PN’s do not carry information no data concept nor manipulation PN’s for simple systems get very complex loss of usability No hierarchical structures with PN’s reusable modules
23
What is a Colored Petri-nets (CPN)? Combination of Petri-Nets and a programming language Control structures, synchronization, communication and resource sharing described by PN’s Data and data manipulation described by functional programming language
24
Extensions in CPN’s Tokens (Each place contains a set of markers called tokens) carry data value of different types no longer shown as plain blank dots
25
Extensions in CPN’s Places (The ellipses and the circles are called places) Color set: specifies the type of tokens the place can hold Initial Marking: multi-set of token colors Multi-set for identical token colors Token color describe different object
26
Extensions in CPN’s Transitions ( The rectangles are called transitions) Inspect token colors Guard-function decides if transition is enable or not Arcs (The arrows are called arcs) describe how the state of the CP-net changes of the CP-net changes when the transitions occur. when the transitions occur.
27
Why Colored Petri-Nets? CP-nets have a graphical representation CP-nets are very general and can be used to describe a large variety of different systems CP-nets have an explicit description of both states and actions CP-nets have a semantics which builds upon true concurrency, instead of interleaving CP-nets offer hierarchical descriptions CP-nets offer interactive simulations where the results are presented directly on the CPN diagram CP-nets have computer tools supporting their drawing, simulation and formal analysis
28
Stochastic Petri Nets Introduced by the computer science community in the early 1980s. SPNs are a probabilistic extension of the original nets introduced by Carl Adam Petri in his 1962 Ph.D. dissertation.
29
Why SPN? It has the same modelling power as GSMPs. (Generalized semi-Markov process) Graphically oriented (user friendly) Solid mathematical foundation Popular and enduring Useful to describe more or less complex systems
30
Graphical representation of an SPN Places are drawn as circles Immediate transitions as thin bars as thin bars Timed transitions as thick bars thick bars Directed arcs connect transitions to output places and normal input places to transitions; arcs terminating in open dots connect inhibitor input places to transitions. transitions to output places and normal input places to transitions; arcs terminating in open dots connect inhibitor input places to transitions. Tokens are drawn as black dots
31
Continue A transition is enabled whenever there is at least one token in each of its normal input places and no tokens in any of its inhibitor input places; otherwise, it is disabled An enabled transition fires by removing one token per place from a random subset of its normal input places and depositing one token per place in a random subset of its output places. An immediate transition fires the instant it becomes enabled, the instant it becomes enabled, whereas a timed transition fires whereas a timed transition fires after a positive after a positive (and usually random) (and usually random) amount of time amount of time
32
Advantage Graphical format for system design and specification The possibility and existing rich theory for functional analysis with Petri nets The facility to describe synchronization The natural way in which time can be added to determine quantitative properties of the specified system
33
Disadvantage The disappointing thing about SPN’s is that the integration of time changes the behavior of the PN significantly So properties proven for the PN might not hold for the corresponding time-augmented PN E.g., a live PN might become deadlocked or a non-live PN might become live. Using SPN’s to specify the sharing of resources controlled by specific scheduling strategies is very cumbersome
34
Time Petri nets (TPN’s) First introduced by Merlin and Farber TPN is a 6-tuple (P, T, I, O, Mo, SI) (P, T, In, Out, Mo) is a Petri net SI is mapping called static interval SI: T → Q * (Q U ∞) Q is the set of rational numbers
35
Continue In a TPN, two time values are defined for each transition, a and b, where a is the minimum time the transition must wait for after it is enabled and before it is fired, b is the maximum time the transition can wait for before firing if it is still enabled Time a and b, for transition t are relative to the moment at which transition t is enabled Transition t enable at time &, then t, cannot fire before time & + a and must fire before or at time & + b, otherwise disabled
36
Continue
37
Time Petri nets: syntax Places: logical part of the state Tokens: current value of the logical part of the state Transitions: events, actions, … Labels: observable behavior Arcs: Pre and Post (logical) conditions of events occurrence Time (closed) intervals: temporal conditions of events occurrence
38
Time Petri nets: transitions occurrence Logical part The logical part of a state is a marking, i.e. a number of tokensper place. A transition is enabled if the tokens required by the pre conditions are present in the marking. Timed part There is an implicit clock per enabled transition and its value defines the timed part of the state. An enabled transition is fireable if its clock value lies in its interval.
39
Time Petri nets: changes of state Time elapsing The marking is unchanged. Time may elapse (with updates of clocks) if every clock value does not go beyond the corresponding interval. Transition firing Tokens required by the pre condition are consumed and tokens specified by the post condition are produced. Clocks values of newly enabled transitions are reset.
40
Why Time Petri Nets? Basic Petri nets lack a temporal description and fail to represent any timing constraints for time-dependent systems. Time Petri nets (TPN) is a concise model for managing simultaneously concurrency and time TPNs are most widely used for real-time system specification and verification
41
References http://en.wikipedia.org/wiki/Petri_net http://en.wikipedia.org/wiki/Petri_net http://www.cs.arizona.edu/ http://www.cs.arizona.edu/ http://www.ento.vt.edu/~sharov/PopEcol/lec1/petrinet.ht ml http://www.ento.vt.edu/~sharov/PopEcol/lec1/petrinet.ht ml http://www.ento.vt.edu/~sharov/PopEcol/lec1/petrinet.ht ml http://ieeexplore.ieee.org/iel5/3477/18734/00865173.pdf ?arnumber=865173 http://ieeexplore.ieee.org/iel5/3477/18734/00865173.pdf ?arnumber=865173 http://ieeexplore.ieee.org/iel5/3477/18734/00865173.pdf ?arnumber=865173 http://www.mfn.unipmn.it/~bobbio/BIBLIO/PAPERS/ANNO90/kluwer petrinet.pdf http://www.mfn.unipmn.it/~bobbio/BIBLIO/PAPERS/ANNO90/kluwer petrinet.pdf http://www.mfn.unipmn.it/~bobbio/BIBLIO/PAPERS/ANNO90/kluwer petrinet.pdf http://www.informs-sim.org/wsc04papers/013.pdf http://www.informs-sim.org/wsc04papers/013.pdf http://www.daimi.au.dk/CPnets/intro http://www.daimi.au.dk/CPnets/intro
42
Thank You.. Thank You..
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.