12/07/2007Jiacun Wang1 SE-561 Math Foundations Petri Nets - II Dr. Jiacun Wang Department of Software Engineering Monmouth University.

Slides:



Advertisements
Similar presentations
Techniques to analyze workflows (design-time)
Advertisements

Discrete Event Control
1 SE-561 Formal Methods in Software Petri Nets - I.
Principles of Engineering System Design Dr T Asokan
1 Analysis of workflows : Verification, validation, and performance analysis. Wil van der Aalst Eindhoven University of Technology Faculty of Technology.
Based on: Petri Nets and Industrial Applications: A Tutorial
Department of Computer Science & Engineering
1 Modeling based on Petri-nets. Lecture 8. 2 High-level Petri nets The classical Petri net was invented by Carl Adam Petri in A lot of research.
IE 469 Manufacturing Systems
Elementary Number Theory and Methods of Proof
Discrete Interaction Design Specification Prof. Dr. Matthias Rauterberg Faculty Industrial Design Technical University of Eindhoven
6.896: Probability and Computation Spring 2011 Constantinos (Costis) Daskalakis lecture 2.
Petri net modeling of biological networks Claudine Chaouiya.
10. Petri Nets Prof. O. Nierstrasz. Roadmap  Definition: —places, transitions, inputs, outputs —firing enabled transitions  Modelling: —concurrency.
CS447/ECE453/SE465 Prof. Alencar University of Waterloo 1 CS447/ECE453/SE465 Software Testing Tutorial Winter 2008 Based on the tutorials by Prof. Kontogiannis,
XML Documentation of Biopathways and Their Simulations in Genomic Object Net Speaker : Hungwei chen.
Lecture 2 Dr Richard Reilly Dept. of Electronic & Electrical Engineering Room 153, Engineering Building To insert your company logo on this slide From.
CP — Concurrent Programming 12. Petri Nets Prof. O. Nierstrasz Wintersemester 2005 / 2006.
Sets 1.
Sets 1.
Mata kuliah :K0362/ Matematika Diskrit Tahun :2008
Petri Nets An Overview IE 680 Presentation April 30, 2007 Renata Kopach- Konrad.
Chapter 3 : Software Process and Other Models Juthawut Chantharamalee Curriculum of Computer Science Faculty of Science and Technology, Suan Dusit University.
Constraint Satisfaction Definition. A constraint is a formula of the form: (x = y) (x  y) (x = red) (x  red) Where x and y are variables that can take.
A Novel Method for Formally Detecting RFID Event Using Petri Nets SEKE 2011.
4.1 Vector Spaces and Subspaces 4.2 Null Spaces, Column Spaces, and Linear Transformations 4.3 Linearly Independent Sets; Bases 4.4 Coordinate systems.
An Introduction to Petri Nets Marjan Sirjani Formal Methods Laboratory University of Tehran.
Functions and their Operations Integrated Math 4 Mrs. Tyrpak.
Warm-Up 1. What is Benford’s Law?
Petri Nets: Their Development and Use in Production Planning Jeffrey E. Short, P.E. December 6, 2000.
Stochastic Activity Networks ( SAN ) Sharif University of Technology,Computer Engineer Department, Winter 2013 Verification of Reactive Systems Mohammad.
Propositional Calculus CS 270: Mathematical Foundations of Computer Science Jeremy Johnson.
Generalized stochastic Petri nets (GSPN)
Petri Nets Lecturer: Roohollah Abdipour. Agenda Introduction Petri Net Modelling with Petri Net Analysis of Petri net 2.
Petri Nets Invented by Carl Adam Petri in 1962 Concurrent systems with timing problems  Synchronization, race problem, deadlock A petri net consists of.
Modelling by Petri nets
Copyright © 2010 Pearson Education, Inc. Unit 4 Chapter 14 From Randomness to Probability.
2.1 Sets 2.2 Set Operations –Set Operations –Venn Diagrams –Set Identities –Union and Intersection of Indexed Collections 2.3 Functions 2.4 Sequences and.
Ch5: Software Specification. 1 Petri Nets  Introduced by C. Adams Petri in  Widely used in the modeling and analysis of computer systems.  Basic.
CSCI1600: Embedded and Real Time Software Lecture 11: Modeling IV: Concurrency Steven Reiss, Fall 2015.
School of Computer Science & Software Engineering
CAP 4800/CAP 5805: Computer Simulation Concepts
Copyright © Cengage Learning. All rights reserved. Fundamental Concepts of Algebra 1.1 Real Numbers.
Strings Basic data type in computational biology A string is an ordered succession of characters or symbols from a finite set called an alphabet Sequence.
/faculteit technologie management PN-1 Petri nets refresher Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology, Faculty of Technology Management,
Based on slides by Patrice Belleville and Steve Wolfman CPSC 121: Models of Computation Unit 11: Sets.
Review n System dynamics : A sequence of state transition n model : A set of rules for state transition System S X Y Discrete event system FSM (Automata)
/faculteit technologie management PN-1 Petri nets refresher Prof.dr.ir. Wil van der Aalst Eindhoven University of Technology, Faculty of Technology Management,
Language Translation Part 2: Finite State Machines.
Petri-Nets and Other Models
CS623: Introduction to Computing with Neural Nets (lecture-7) Pushpak Bhattacharyya Computer Science and Engineering Department IIT Bombay.
Turing Machine Model Are there computations that no “reasonable” computing machine can perform? –the machine should not store the answer to all possible.
Process Mining – Concepts and Algorithms Review of literature on process mining techniques for event log data.
Laurea Triennale in Informatica – Corso di Ingegneria del Software I – A.A. 2006/2007 Andrea Polini VIII. Specifications (II)
Victor Khomenko Newcastle University
Requirements Techniques, cont.
Exercise class 2.
Computer Science 210 Computer Organization
Advantages of FSM Their simplicity make it easy for inexperienced developers to implement with little to no extra knowledge (low entry level)
Unit 2 Boolean Algebra.
CSS 496 Business Process Re-engineering for BS(CS)
Exercise class 1.
Stochastic Activity Networks
Propositional Calculus: Boolean Algebra and Simplification
Workflow Management Systems
Computer Science 210 Computer Organization
Lecture 5 Binary Operation Boolean Logic. Binary Operations Addition Subtraction Multiplication Division.
An Introduction to Petri Nets
Petri Net :Abstract formal model of information flow Major use:
Petri Nets Laurie Frazier.
Presentation transcript:

12/07/2007Jiacun Wang1 SE-561 Math Foundations Petri Nets - II Dr. Jiacun Wang Department of Software Engineering Monmouth University

12/07/2007 Jiacun Wang MF-14 2 Review: Petri Nets A Petri net N is a tuple N = {P, T, I, O, M 0 }, where  P is a finite set of places, graphically represented by circles  T is a finite set of transitions, graphically represented by boxes  Places P and transitions T are disjoint (P ∩ T =  ),  I: P × T  N ( N = {0, 1, 2, …}) is the pre-incidence function representing input arcs,  O: T × P  N ( N = {0, 1, 2, …}) is the post-incidence function representing output arcs,  M 0 : P  N is the initial marking representing the initial distribution of tokens.

12/07/2007 Jiacun Wang MF-14 3 Review: Transition Firing  A transition t is enabled at marking M i if and only if M i ≥ I(t)  Let E(M i ) be the set of all transitions enabled at M i. Then t  E(M i ).  Suppose that the firing of t takes the Petri net from M i to M j. Then M j = M i - I(t) + O(t) Denoted by M i [t>M j  Example p2p1 t3t2 t1 P = {p1, p2} T = {t1, t2, t3} I(t1) = (1, 1), I(t2) = (2, 0), I(t3) = (0, 2) O(t1) = (1, 0), O(t2) = (0, 1), O(t3) = (0, 1) M 0 = (2, 1) E(M 0 ) = {t1, t2} M 0 [t1> M 1 where M 1 = (3, 1)

12/07/2007 Jiacun Wang MF-14 4 High-Level Petri Nets: Motivation  Up to now, we allowed places to be occupied by only “black” tokens.  Traffic light example: Three lights, one color per light, one place for every light.  Suppose we have one light that can be either red or green.  Two attempts at modeling this situation:

12/07/2007 Jiacun Wang MF-14 5 High-Level Petri Nets: Motivation (cont.)  If we had not just black tokens, but colored ones (e.g. red, green), we could construct a more natural model:  More generally, we could allow arbitrary values as tokens, e.g. to model numeric variables: 15 green token red token

12/07/2007 Jiacun Wang MF-14 6 High-Level Petri Nets: Places  A general solution is to assign a type to every place, i.e. a set of token values that are permitted on the place:  In general, a place may contain a multiset of its type.

12/07/2007 Jiacun Wang MF-14 7 High-Level Petri Nets: Transitions  In meaningful models, we need transitions to reason about the values of tokens: Switching the traffic light: Increasing variable:

12/07/2007 Jiacun Wang MF-14 8 High-Level Petri Nets: Transitions (cont.)  Suppose we have two processes competing for a common resource. If both try to access the resource simultaneously, there is a ‘referee’ who decides which process should have priority over the other:

12/07/2007 Jiacun Wang MF-14 9 High-Level Petri Nets: Definition  A high-level Petri net (HL-net) is a tuple N = (P, T, I, O, V, S, C, M 0 ), where  P, T, I, O are as usual;  V is a set of token values;  S: P  2 V is a type assignment for places;  C(t) is the firing condition of transition t (see next slide).  M 0 : P × V  N is the initial marking.

12/07/2007 Jiacun Wang MF Transition Firing Conditions  A firing condition decides which tokens may flow out of the pre- places and into the post-places of a transition.  Formally, if we let t be the sum of the arc weights leading into and out of t, then the signature of Ct is Ct : Vt ! {false, true}.  In figures, we place variable names onto the arcs and equip transitions with boolean expressions over these variables, like this:

12/07/2007 Jiacun Wang MF Transition Firing Conditions (cont.)  If a particular assignment of token values to variables evaluates to true, then the transition may fire under that assignment.  Firing under some assignment is possible if for every pre-place p, p contains the token values assigned to the variables that are on the arc from p to t.  Firing removes those tokens and puts corresponding tokens on the post-places.  The assignment must respect the types; e.g. if v is the variable on the arc from place p to transition t, then v must be assigned to some value from S(p).

12/07/2007 Jiacun Wang MF Example 1  For instance, in the following example, the transition could fire under the assignments (‘x = 1, x’ = 2), (‘x = 2, x’ = 3), (‘x = 3, x’ = 4), (‘x = 4, x’ = 5).  In the given marking, we can remove the 2 token and replace it by a 3 token.

12/07/2007 Jiacun Wang MF Example 2  In the common-resource example, suppose the prioritised process is changed after every access:

12/07/2007 Jiacun Wang MF From High-Level Petri Nets to Ordinary Petri Nets: Places  High-level nets allow easier modeling, but they are equally expressive, provided that the set of token values is finite.  For each high-level place p, create an ordinary place p v for each v  S(p).  If M 0 (p, v) = k, then put k initial tokens on the ordinary place p v.

12/07/2007 Jiacun Wang MF From High-Level Petri Nets to Ordinary Petri Nets: Transitions  For each high-level transition t, create an ordinary transition t a for each assignment under which t may fire.  If (p, t) is a high-level arc with variable x, connect p v to t a in the ordinary net, where v is the value of x in a.  Arcs from transitions to places are treated analogously.

12/07/2007 Jiacun Wang MF Final Exam  Open book, open slides, open …  No laptop  Set theory: Venn diagram  Functions: 1-to-1, onto.  Graph theory: Graph matrix, Euler paths/circuits, Hamilton paths/circuits  Petri nets: Given a Petri net, write its formal definition and list all reachable markings.  Petri nets: Petri net modeling according to specification