Petri Nets, Hybrid Functional Petri Nets - PowerPoint PPT Presentation

1 / 66
About This Presentation
Title:

Petri Nets, Hybrid Functional Petri Nets

Description:

When e occurs , s ceases to hold and s' begins to hold. This can be generalized in many ways! ... begin to hold. CS6280 Lecture 2. 24.08.09. 12. 12. Transitions ... – PowerPoint PPT presentation

Number of Views:241
Avg rating:3.0/5.0
Slides: 67
Provided by: geoffr89
Category:

less

Transcript and Presenter's Notes

Title: Petri Nets, Hybrid Functional Petri Nets


1
Petri Nets, Hybrid Functional Petri Nets
  • CS 6280 Lecture 2
  • P.S. Thiagarajan

CS6280 Lecture 2
1
2
Petri nets
  • A well-established system model in CS.
  • distributed discrete event systems.
  • Has an appealing graphical representation (for
    small models!).
  • Many variants
  • Has been studied for a long time
  • Applied in many settings
  • http//www.informatik.uni-hamburg.de/TGI/PetriNets
    /

2
3
CS6280 Lecture 2
24.08.09
4
System Biology Applications.
  • Many !
  • Ordinary Petri nets
  • Metabolic pathway analysis
  • Hybrid Functional Petri nets.
  • signaling pathways
  • Supported by the tool Cell Illustrator
  • Stochastic Petri nets, Colored Petri nets,

4
CS6280 Lecture 2
24.08.09
5
Petri Nets
  • Finite State Machines (FSMs)
  • (Global) states
  • (Global) transitions
  • Also called (finite) transition systems.
  • Petri nets
  • Local states
  • Local transitions.

5
CS6280 Lecture 2
24.08.09
6
FSM
Turn-on
Off
On
Turn-off
6
CS6280 Lecture 2
24.08.09
7
State
a/a
Action Input/output
b/b
c
d
Transition
Initial state
7
CS6280 Lecture 2
24.08.09
8
Key_on / Strt_Timer
wait
end_timer / alarm_on
Key_off OR belt_on / reset_timer
alarm
off
Alarm_10 OR belt_on OR key_off / alarm_off
8
CS6280 Lecture 2
24.08.09
9
Petri Nets Local States and Transitions
a
s
s
a
s
s
9
CS6280 Lecture 2
24.08.09
10
Local States and Transitions
s
e
The (local) state s currently holds. The event e
(labeled a) can occur when s holds. When e occurs
, s ceases to hold and s begins to hold. This
can be generalized in many ways!
10
CS6280 Lecture 2
24.08.09
11
Transitions in Petri nets
b3
b1
b4
e
b2
b5
  • e can occur when b1 and b2 hold.
  • When e occurs b1 and b2 cease to hold b3, b4
    and b5
  • begin to hold.

11
CS6280 Lecture 2
24.08.09
12
Transitions in Petri nets
b3
b1
b4
e
b2
b5
  • e can occur when b1 and b2 hold.
  • When e occurs b1 and b2 cease to hold b3, b4
    and b5
  • begin to hold.

12
CS6280 Lecture 2
24.08.09
13
Transitions in a Petri net.
b3
b1
b4
e
b2
b5
  • e can occur when b1 and b2 hold.
  • When e occurs b1 and b2 cease to hold b3, b4
    and b5
  • begin to hold.

13
CS6280 Lecture 2
24.08.09
14
Conflict
b3
b1
b4
e
b2
b5
e
b6
b7
  • Both e and e are enabled.
  • But only one of them can occur (due to the
    shared b2)
  • Conflict!

14
CS6280 Lecture 2
24.08.09
15
Conflict
b3
b1
b4
e
b2
b5
e
b6
b7
  • Both e and e are enabled.
  • But only one of them can occur (due to the
    shared b2)
  • Conflict!

15
CS6280 Lecture 2
24.08.09
16
Conflict
b3
b1
b4
e
b2
b5
e
b6
b7
  • Both e and e are enabled.
  • But only one of them can occur (due to the
    shared b2)
  • Conflict!

16
CS6280 Lecture 2
24.08.09
17
Conflict
b3
b1
b4
e
b2
b5
e
b6
b7
  • Both e and e are enabled.
  • But only one of them can occur (due to the
    shared b2)
  • Conflict!

17
CS6280 Lecture 2
24.08.09
18
Concurrency
  • Both e and e are enabled.
  • They can occur independently (in any order
    with no
  • order,..)
  • Concurrency!

18
CS6280 Lecture 2
24.08.09
19
Markings
b3
b1
b4
e
b2
b5
  • e can occur.

19
CS6280 Lecture 2
24.08.09
20
Markings
b3
b1
b4
e
b2
b5
  • e can occur.

20
CS6280 Lecture 2
24.08.09
21
Markings
b3
b1
b4
e
b2
b5
e
b6
b7
  • Both e and e are enabled.
  • Both of them can occur one after another or
    simultaneously with no order.

21
CS6280 Lecture 2
24.08.09
22
Markings
b3
b1
b4
e
b2
b5
e
b6
b7
  • Both e and e are enabled.
  • Both of them can occur one after another or
    simultaneously with no order.

22
CS6280 Lecture 2
24.08.09
23
Markings
b3
b1
b4
e
b2
b5
e
b6
b7
  • Both e and e are enabled.
  • Both of them can occur one after another or
    simultaneously with no order.

23
CS6280 Lecture 2
24.08.09
24
Self Loops
Producer
consumer
24
CS6280 Lecture 2
24.08.09
25
Self Loops
Producer
consumer
25
CS6280 Lecture 2
24.08.09
26
Self Loops
Producer
consumer
26
CS6280 Lecture 2
24.08.09
27
Self Loops
Producer
consumer
27
CS6280 Lecture 2
24.08.09
28
Arc Multiplicities
  • t can occur whenever p1 contains at least 2
    tokens and p2 contains at least one token
  • When t occurs (fires) 2 tokens are removed from
    p1, 1 token from p2 3 tokens are added to p3, 1
    tokens to p4, and 2 tokens to p5

24.08.2009
CS6280 Lecture 2
28
29
Arc Multiplicities
24.08.2009
CS6280 Lecture 2
29
30
Arc Multiplicities
24.08.2009
CS6280 Lecture 2
30
31
Petri nets
  • PN (P, T, F, Min)
  • P, Places ------
  • T, Transitions ---
  • F, Flow Relations -
  • Min P ? N 0,1,2,... initial marking (state)

24.08.2009
CS6280 Lecture 2
31
32
An example
V2
V3
V1
S1
2S2
V4
S3
V3
S3
32
CS6280 Lecture 2
24.08.09
33
An example
V2
V3
V1
S1
2S2
V4
S3
V3
S3
33
CS6280 Lecture 2
24.08.09
34
An example
V2
V3
V1
S1
2S2
V4
S3
V3
S3
34
CS6280 Lecture 2
24.08.09
35
An example
V2
V3
V1
S1
2S2
V4
S3
V3
S3
35
CS6280 Lecture 2
24.08.09
36
An example
V2
V3
V1
S1
2S2
V4
S3
V3
S3
36
CS6280 Lecture 2
24.08.09
37
An example
V2
V3
V1
S1
2S2
V4
S3
V3
S3
37
CS6280 Lecture 2
24.08.09
38
An example
V2
V3
V1
S1
2S2
V4
S3
V3
S3
38
CS6280 Lecture 2
24.08.09
39
An example
V2
V3
V1
S1
2S2
V4
S3
V3
S3
39
CS6280 Lecture 2
24.08.09
40
  • A Calcium (Ca2) channel is an ion channel which
    displays selective permeabiltiy to calcium ions.
  • Inositol triphosphate (IP3) can open a Ca2
    channel on ER and help pumping Ca2 from outside
    to the cytosol. 

CS6280 Lecture 2
24.08.09
41
CS6280 Lecture 2
24.08.09
42
Upside
  • Concurrency modeling is important for producing
    succinct descriptions..
  • Petri nets are simple, expressive and capture the
    basic concepts of causality, conflict and
    concurrency elegantly.
  • They have an attractive visual representation
  • A picture is worth a thousand words.
  • But..

42
CS6280 Lecture 2
24.08.09
43
Downside
  • Petri net do not handle data abstractions well.
  • Colored Petri nets.
  • They do not support hierarchical structures well.
  • Crucial for scaling up!
  • These features can be added but
  • Must preserve quantitative analysis methods!

43
CS6280 Lecture 2
24.08.09
44
Additional Features
  • Inhibitory arcs
  • Read-only arcs
  • Priorities
  • Places/transitions/tokens with time.

44
CS6280 Lecture 2
24.08.09
45
Inhibitory Arcs
2
Inhibitory arcs increase the modeling
power! Useful for pathway modeling Gene regulation
2
45
CS6280 Lecture 2
24.08.09
46
Read (only) Arcs
2
2
Inhibitory arcs increase the modeling
power! Useful for pathway modeling (Enzymes!)
2
46
CS6280 Lecture 2
24.08.09
47
Hybrid Functional Petri Nets
  • HFPNs considerably extend the features of Petri
    nets
  • Increased modeling power/decreased analysis
    prospects.
  • Front end of Cell Illustrator
  • Easy to translate structural (cartoon) diagrams
    of bio-pathways to an HFPN model.

CS6280 Lecture 2
24.08.09
48
Hybrid Functional Petri Nets
CS6280 Lecture 2
24.08.09
49
Hybrid Functional Petri Nets
  • Input Arcs (place to transition)
  • normal
  • From a discrete place to a discrete transition
  • Continuous place to a discrete transition

CS6280 Lecture 2
24.08.09
50
Hybrid Functional Petri Nets
  • Input Arcs (place to transition)
  • Continuous
  • Continuous place to a continuous transition

CS6280 Lecture 2
24.08.09
51
Hybrid Functional Petri Nets
  • Input Arcs (place to transition)
  • Test arc / Inhibition arc
  • From any type of place to any type of transitions
  • Test arc (with weight w) allows firing iff
    content of input place is equal or more than w
  • Inhibitory arc (with weight w) allows firing iff
    content of input place is less than w

Test arcs
Inhibitory arcs
CS6280 Lecture 2
24.08.09
52
Hybrid Functional Petri Nets
  • Output Arcs (transition to place)
  • Discrete
  • From a discrete transition to any kind of place
  • Continuous
  • Continuous transition to a continuous place

CS6280 Lecture 2
24.08.09
53
Firing a discrete transition
  • A Discrete transition T of HFPN
  • Normal/Test input arcs a1,..,ap from places
    P1,,Pp
  • Normal output arcs b1,,bq to places Q1,,Qq
  • m1(t),,mp(t) contents of input places and
  • n1(t),,nq(t) contents of output places
  • Arc weight
  • fi(m1(t),,mp(t)) gt 0 number of tokens to be
    removed from Pi through arc ai
  • gj(m1(t),,mp(t)) gt 0 number of tokens to be
    added to Qj through arc bj

CS6280 Lecture 2
24.08.09
54
Firing a discrete transition
2
1
CS6280 Lecture 2
24.08.09
55
Firing a discrete transition
2
1
CS6280 Lecture 2
24.08.09
56
Firing a discrete transition
  • A Discrete transition T of HFPN
  • Discrete/Test input arcs a1,..,ap from places
    P1,,Pp
  • Discrete output arcs b1,,bq to places Q1,,Qq
  • m1(t),,mp(t) contents of input places
  • n1(t),,nq(t) contents of output places
  • Delay function
  • d(m1(t),,mp(t)) a non-negative integer value
    function
  • Arc weight
  • fi(m1(t),,mp(t)) gt 0 number of tokens to be
    removed from Pi through arc ai
  • gj(m1(t),,mp(t)) gt 0 number of tokens to be
    added to Qj through arc bj

CS6280 Lecture 2
24.08.09
57
Firing a discrete transition
2
1
3
Delay function
CS6280 Lecture 2
24.08.09
58
Firing a discrete transition
After 3 seconds
2
1
3
Delay function
CS6280 Lecture 2
24.08.09
59
Firing a continuous transition
  • A Continuous transition T of HFPN
  • Continuous/Test input arcs a1,..,ap from places
    P1,,Pp
  • Continuous output arcs b1,,bq to places Q1,,Qq
  • m1(t),,mp(t) contents of input places and
  • n1(t),,nq(t) contents of output places
  • Firing condition given by predicate
  • c(m1(t),,mp(t))
  • As long as predicate is true, transition fires
    continuously
  • Firing speed
  • fi(m1(t),,mp(t)) gt 0 speed of consumption from
    Pi through ai
  • gj(m1(t),,mp(t)) gt 0 speed of production to Qj
    through bj

CS6280 Lecture 2
24.08.09
60
Firing a continuous transition
CS6280 Lecture 2
24.08.09
61
Firing Transitions
CS6280 Lecture 2
24.08.09
62
Michaelis-Menton Kinetics
k1
k2
E S
ES
E P
k -1
mass action law model
dS/dt -k1 ES k-1 (ES)
dES/dt k1 E.S (k-1 k2) ES
dE/dt -k1ES (k-1 k2) ES
dP/dt k2 ES
62
CS6280 Lecture 2
24.08.09
63
The HPFN model
E
S
P
k1.SE
ES
k2ES
k-1ES
CS6280 Lecture 2
24.08.09
64
The HPFN model of the Michaelis-Menten
Approximation
CS6280 Lecture 2
24.08.09
65
Hybrid Functional Petri Nets
  • Enhances modeling power
  • Protein concentration changes
  • Discrete transcriptional switches
  • Reduced analytic capabilities
  • Reachability analysis, S-invariants,
    T-invariants etc. become irrelevant.
  • Exposes the structural relationsships, locality
    and flow of information in bio-pathways.

CS6280 Lecture 2
24.08.09
66
Other variants
  • Stochastic Petri nets
  • Transitions occur probabilistically.
  • Will consider them when we deal with stochastic
    simulations (Gillespies algorithm)
  • Colored Petri nets
  • Process algebras.

CS6280 Lecture 2
24.08.09
Write a Comment
User Comments (0)
About PowerShow.com