introduction to event graph models definition - the basic building block. model dynamics reading an...
Post on 20-Dec-2015
222 views
TRANSCRIPT
![Page 1: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/1.jpg)
INTRODUCTION TO
EVENT GRAPH MODELS
• Definition - The basic building block.
• Model Dynamics
• Reading an Event Graph
• Event Graph Enrichments
![Page 2: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/2.jpg)
BANK1.MOD
RUN ENTER LEAVESTART(S)
ta
{Q=Q+1}
(S>0)
{S=S-1,Q=Q-1} {S=S+1}
(Q>0)
ts~
~
If want to Close Doors at tc
Quiz: Why won’t this work?
~
(CLK<tc)
![Page 3: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/3.jpg)
1. In REWORK model, we put a rework job back in original queue... What happens?2. Move (REWORK,ENTER) edge back to (REWORK,START). What if LEAVE REWORK and ENTER events are simultaneously scheduled and the LEAVE event is executed next... In what order should all the other events be executed before the next clock advance?
RUN ENTER LEAVESTART
{S=1}
(Q, P)
ta
{Q=Q+1}
(S>0)
{S=0,Q=Q-1} {S=1}
(Q>0)
ts
tr
REWORK
(S>0)(RND<P)~
~
~
~
![Page 4: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/4.jpg)
Distinguishing Features of Simulation
• Time (CLK) DYNAMICfocused on this aspect during the modeling section of the course
• Pseudorandom variables (RND) STOCHASTICwill focus on this aspect in coming weeks
![Page 5: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/5.jpg)
Motivation
Graphical techniques can provide exceptional modeling power
Mappings between representations Permit alternative implementations Enhance logic checking Aid in model communication Translate analytical methods and
conditions
![Page 6: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/6.jpg)
Modeling Paradigms• State Models - Markov Chains, Queues
and Event Relationship Graphs• Petri Nets - Activity Scanning
and Event Relationship Graphs
• Block Flow Diagrams - Process Interaction and Event Relationship Graphs
• Event Graphs – model relationships between the changes in system state or rules.
![Page 7: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/7.jpg)
INTRODUCTION TO
EVENT GRAPH MODELS
• Definitions - The basic building block.
• Model Dynamics
• Reading an Event Graph
• Event Graph Enrichments
![Page 8: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/8.jpg)
Elements of a Discrete Event Simulation
Variables that describe the state
Events that change the state
Relationships between Events
![Page 9: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/9.jpg)
Variables that describe the stateEvents that change the state
Relationships between Events
Elements of a Simulation
A
A B
![Page 10: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/10.jpg)
Relationships between Events
• Scheduling and Cancelling
• Conditions
• Time Delays
![Page 11: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/11.jpg)
A Bt
(i)
Event Graph Modeling
![Page 12: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/12.jpg)
A Bt
(i)
Whenever event A occurs,
Event Graph Modeling
![Page 13: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/13.jpg)
A Bt
Whenever event A occurs, if condition (i) is true,
Event Graph Modeling
(i)
![Page 14: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/14.jpg)
A Bt
(i)
Whenever event A occurs, if condition (i) is true, then event B will be scheduled to occur
Event Graph Modeling
![Page 15: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/15.jpg)
A Bt (i)
Whenever event A occurs, if condition (i) is true, then event B will be scheduled to occur after a delay of t.
Event Graph Modeling
![Page 16: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/16.jpg)
A Bt
(i)
Whenever event A occurs, if condition (i) is true, then event B will be scheduled to occur after a delay of t.
Event Graph Modeling
(often / will be used instead of ~ for arc conditions)
![Page 17: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/17.jpg)
What about simultaneously scheduled events? priorities associated with edges
Indirect state changes that occur when testing edge conditions (the curse of C and Java programmers)
Sequence Issues
![Page 18: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/18.jpg)
A Bt
(i)
1. Execute State Changes for current event.2. Then test conditions for all exiting edges. 3. Finally compute delay times and schedule
destination events for all true edges.
Execution Sequence
![Page 19: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/19.jpg)
EVENT EXECUTION SEQUENCE(may differ slightly for different simulation languages)
1. Evaluate any "parameters" for the event (eg. which machine starts?).
2. Perform all state changes defined for the event.
3. Test ALL conditions for scheduling or canceling other events.
4. For ALL true conditions:
4.1 Cancel ALL events that are to be cancelled
4.2. For ALL events that are to be scheduled
4.2.1. Evaluate the attributes of the event to be scheduled
4.2.2. Evaluate the times that the event will be scheduled
4.2.3. Schedule the event
![Page 20: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/20.jpg)
INTRODUCTION TO
EVENT GRAPH MODELS
• Definition - The basic building block.
• Model Dynamics
• Reading an Event Graph
• Event Graph Enrichments
![Page 21: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/21.jpg)
Single Resource Model• Variables
R = Number of ResourcesR = 0: Resource is busyR > 0: Resource is idle
Q = Number of jobs waiting in line (initially = 6)• Timing Data
ta = interarrivals ts = service times
• Events– Jobs ENTER the system every ta time units– START servicing the job taking ts time units– Jobs LEAVE the system
![Page 22: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/22.jpg)
Single Resource Model
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
![Page 23: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/23.jpg)
Single Resource Model
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
Marking: Tokens at Scheduled Events
![Page 24: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/24.jpg)
Single Resource Model
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 0.0
![Page 25: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/25.jpg)
Single Resource Model
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 0.0
![Page 26: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/26.jpg)
Single Resource Model
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 0.0
![Page 27: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/27.jpg)
Q, The Number of Jobs Waiting
Time
Q=7
67
0
![Page 28: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/28.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 0.0
Time
Q = 7
0
![Page 29: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/29.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 0.0
Time
Q = 7
0
![Page 30: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/30.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 0.0 (Say, for example, that ta = 5.5)
Time
Q = 7
0
0
![Page 31: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/31.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 0.0
5.5 0
Time
Q = 7
0
![Page 32: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/32.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
CLK = 0.0
5.5
Time
Q = 6
0
ts
![Page 33: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/33.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 0.0 (Say, for example, that ts = 2.3)
5.5
Time
Q = 6
0
![Page 34: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/34.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 0.0
5.5 2.3
Time
Q = 6
0
![Page 35: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/35.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 2.3
5.5
Time
Q = 6
0 2.3
![Page 36: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/36.jpg)
Q, The Number of Jobs Waiting
Time
Q=6
67
0
5
2.3
![Page 37: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/37.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 2.3
5.5
Time
Q = 6
0 2.3
2.3
![Page 38: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/38.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
Which Event is Executed Next? When?
5.5 2.3
Time
Q = 6
0 2.3
![Page 39: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/39.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
What is the value of Q after the next event?
5.5 2.3
Time
Q = 6
0 2.3
![Page 40: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/40.jpg)
Time
Q = 5
0 2.3
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
CLK = 2.3
5.5
ts
![Page 41: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/41.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 2.3
5.5
Assume that ts = 1.8. QUIZ: When is the LEAVE scheduled?
Time
Q = 5
0 2.3
![Page 42: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/42.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 2.3
5.5 4.1
Time
Q = 5
0 2.3
LEAVE is scheduled at CLK +1.8 =2.3 +1.8 = 4.1
![Page 43: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/43.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
ENTER
ta
ts
CLK = 4.1
5.5
0
Time
Q = 5
2.3 4.1 (Q>0)
4.1
![Page 44: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/44.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
Quiz: For what range of service times, ts , would Q=5 before Q=3?(i.e., a customer ENTERs before the next service START?)
5.5
CLK = 4.1
0
Time
Q= 4
2.3 4.1
4.1
![Page 45: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/45.jpg)
• Say, for example that the next service time is equal to 1.5.
• Thus the next LEAVE will be scheduled to occur at 4.1 + 1.5 = 5.6.
• The next ENTER event was scheduled at time, 5.5 so it happens next.
• Q will then increase from 4 to 5.
The Service Time Needs to be Greater than 1.4.
![Page 46: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/46.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts5.5
CLK = 4.1
0
Time
Q= 4
2.3 4.1
(Say, for example, now ts = 1.5)
![Page 47: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/47.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts5.5
CLK = 4.1
0
Time
Q= 4
2.3 4.1
5.6
![Page 48: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/48.jpg)
RUN(Q)
START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
CLK = 5.5
0
Time
Q= 5
2.3 4.1 5.5
5.6
![Page 49: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/49.jpg)
Let’s review the sequence of Events and watch how the clock and output changed as the Events occur.
![Page 50: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/50.jpg)
Q = The Number of Jobs Waiting in Line
Time
Q = 6
0
RUN
67
54
3
2
1
![Page 51: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/51.jpg)
Time
Q = 7
0
ENTER
67
54
3
2
1
![Page 52: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/52.jpg)
Time
Q = 6
0
START
67
54
3
2
1
![Page 53: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/53.jpg)
Time
Q = 6
2.30
LEAVE
67
54
3
2
1
![Page 54: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/54.jpg)
Time
Q=5
2.30 4.1
START
67
54
3
2
1
![Page 55: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/55.jpg)
Time
Q=5
2.30 4.1
LEAVE
67
54
3
2
1
![Page 56: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/56.jpg)
Time
Q=4
2.30 4.1
67
54
3
2
1
START
![Page 57: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/57.jpg)
Time
Q=5
2.30 4.1
67
54
3
2
1
ENTER
5.5
![Page 58: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/58.jpg)
Time
2.30 4.1
67
54
3
2
1
Aside: Time Average Statistics
5.5
TAV{Q} = Ave height = area/length
Q
![Page 59: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/59.jpg)
• Easy to Build Simple Models
• Very Restrictive Modeling Assumptions
• Powerful Analytical Development
• Suffers from the “Curse of Dimensionality”
State Machines
![Page 60: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/60.jpg)
State Machine
1 2 3 40
Graph with Vertices Representing State Values
eg: A Single Server Queue
![Page 61: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/61.jpg)
State MachineGraph with Vertices Representing State Values
eg: A Single Server Queue
1 2 3 40
Customer Arrival rate
Customer Departure rate
![Page 62: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/62.jpg)
State MachineGraph with Vertices Representing State Values
Marking: Single Token At Current State (Start at 0)
1 2 3 40
![Page 63: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/63.jpg)
State MachineArrival Event Occurs (State = 1)
1 2 3 40
![Page 64: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/64.jpg)
State MachineAnother Arrival Occurs (State = 2)
1 2 3 40
![Page 65: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/65.jpg)
1 2 3 40
State Machine Departure Event Occurs Next (State again is 1)
![Page 66: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/66.jpg)
State Machine Arrival Occurs (State is 2)
1 2 3 40
![Page 67: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/67.jpg)
Arrival Occurs (State is 3)
State Machine
1 2 3 40
![Page 68: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/68.jpg)
1 2 3 40
State Machine Departure Occurs (State again is 2)
![Page 69: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/69.jpg)
State Diagram (Single Server Queue)
1 2 3 40
![Page 70: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/70.jpg)
Single Resource QueueVertices in State Machine Representing State Values
1 2 3 40
![Page 71: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/71.jpg)
Edges represent Changes in State
Arrive
Depart
1 2 3 40
![Page 72: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/72.jpg)
Reduced Event Graph for Single Server Queue
Q = number in system.
ARRIVE FINISH
{Q=Q+1} {Q=Q-1}
(Q= =1)
(Q>0)
ta tsts
![Page 73: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/73.jpg)
QUIZ: Modify this EG for R Identical Parallel Resources.
ARRIVE FINISH
{Q=Q+1} {Q=Q-1}
(Q= =1)
(Q>0)
ta tsts
![Page 74: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/74.jpg)
What is Reduced EGM for a Multiple (say R) Servers?
Note: Can still model any level of congestion with a single integer variable
ARRIVE FINISH
{Q=Q+1} {Q=Q-1}
(Q= =R)
(Q≥R)
ta tsts
![Page 75: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/75.jpg)
Single Resource Event Graph Condenses into a Single Vertex
DEPART
(Q==0)
(Q>0)
ts
ta+ t
s
{Q = Q - 1 + A}
A = Number of Arrivals During a Service Epoch
![Page 76: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/76.jpg)
Weather Model(Assume independence)
S = Sunny DayS = Sunny Day
C = Cloudy DayC = Cloudy Day
S C
![Page 77: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/77.jpg)
Two Day Weather Patterns
S = Sunny DayS = Sunny Day
C = Cloudy DayC = Cloudy Day
K classes, N-Day Dependence…KN States
SS SC
CS CC
![Page 78: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/78.jpg)
2 classes, 2-Day Dependence
Homework*: How many vertices for aK class, N dependent model?
Change
tS ~ (S) (C) ~
tC
tS = number of Sunny Days
![Page 79: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/79.jpg)
Event Graph Daily Weather Model (any Markov Process)
Day
History
(W)
1
![Page 80: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/80.jpg)
EVENT OCCURANCES
Advance TIME
Change the STATE
![Page 81: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/81.jpg)
EVENT OCCURANCES
Advance TIME - Graph Edges
Change the STATE - Vertices
![Page 82: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/82.jpg)
EVENT OCCURANCES
Advance TIME - Graph Edges
Change the STATE - Vertices
Tied together into a Model by the Event Graph
![Page 83: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/83.jpg)
Minimalist Approach
Discrete Event Simulations model boththe passage of Time and Uncertainty....SIGMA has two basic variables.
• CLK Current simulated clock time. For modeling dynamics.
• RND Randomly chosen number, greater than 0 and less than 1. For modeling randomness.
![Page 84: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/84.jpg)
Figure 2.7: Verbal Event Graph of a Single Server Queue
Initializethe RUN
Customer ENTERSystem
Customer LEAVEsSystem
Customer STARTsService
(Are Customers Waiting?)
(Is Server Idle?)~
ta
~
ts
ta
t s
= Time Between Customer Arrivals (Possibly Random)
= Time to Service a Single Customer (Possibly Random)
![Page 85: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/85.jpg)
Figure 2.4: Simple Event Graph of a Carwash
RUN ENTER LEAVESTART
{Idle=1,Busy=0,Server=Idle}
{Queue=Queue+1} {Server=Busy, Queue=Queue-1}
{Server=Idle}
![Page 86: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/86.jpg)
What actually happens?
Scheduled events are on the Pending Events list, which acts as the “appointment book” for the system.
PENDING EVENTS LIST
Time Event Priority String of Attributes
3.32 Breakdown 2 3,4,6
4.52 Finish 3 3,4,6
5.42 Arrival 1 7
5.42 Finish 3 2,5,1
(Aside: “Future” Events List is a bad name…events are not necessarily in the future – may be now.)
![Page 87: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/87.jpg)
What actually happens?
Scheduled events are on the Pending Events list, which acts as the “appointment book” for the system.
PENDING EVENTS LIST
Time Event Priority String of Attributes
3.32 Breakdown 2 3,4,6
4.52 Finish 3 3,4,6
5.42 Arrival 1 7
5.42 Finish 3 2,5,1
Tool 3, Worker 4, Part 6
Part 7
![Page 88: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/88.jpg)
Figure 2.2: Main Event Scheduling Algorithm
Cancel Events
Initialize
Advance Clock to Time of Next Event
Execute Event
Remove Event From List
State
Event List
Change State
Schedule Events
Summary StatisticsStop YesNo
![Page 89: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/89.jpg)
Table 2.1: Future Events List for a System with Three Machines (Number everything starting with 0...) Time, CLK = 3.00 ARRIVAL event just executed Scheduling the next ARRIVAL at 3.37
Time Event Type Event Attribute (machine)
(Current time) 3.00 ARRIVAL
3.20 FINISH 0
3.35 BREAKDOWN 1
3.37 ARRIVAL
3.40 FINISH 1
3.43 REPAIRED 2
9.01 BREAKDOWN 0 Of the 3 machines – two are busy and one broken – why?
![Page 90: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/90.jpg)
Table 2.2: Future Events List for a System with Three Machines(CLK = 3.20 FINISH event executed, scheduling the
next START event “now”).
Time Event Type Event Attributes
(Current time) 3.20 FINISH 0
3.20 START 0
3.35 BREAKDOWN 1
3.37 ARRIVAL
3.40 FINISH 1
3.43 REPAIRED 2
9.01 BREAKDOWN 0
![Page 91: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/91.jpg)
Table 2.3: Future Events List for a System with Three Machines (CLK = 3.20 START event schedules FINISH at 4.40)
Time Event Type Event Attributes
(Current time) 3.20 START 0
3.35 BREAKDOWN 1
3.37 ARRIVAL
3.40 FINISH 1
3.43 REPAIRED 2
4.40 FINISH 0
9.01 BREAKDOWN 0
![Page 92: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/92.jpg)
Table 2.4: Future Events List for a System with Three Machines (CLK = 3.35 BREAKDOWN 1 cancels FINISH and schedules a REPAIRED event for machine 1)
Time Event Type Event Attributes
(Current time) 3.35 BREAKDOWN 1
3.37 ARRIVAL
3.43 REPAIRED 2
4.40 FINISH 1
8.35 REPAIRED 1
9.01 BREAKDOWN 0
![Page 93: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/93.jpg)
A B
Whenever event A occurs, if condition (i) is true, then cancel the next scheduled event B, if any.
Event Canceling
(i)
![Page 94: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/94.jpg)
Event Cancelling
Event Canceling Options in SIGMA:
1. Next scheduled (FIFO to break ties)
2. All events of this type
3. Only specific events of this type with matching event parameters (more later)
![Page 95: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/95.jpg)
BANK1.MOD
RUN ENTER LEAVESTART(S)
ta
{Q=Q+1}
(S>0)
{S=S-1,Q=Q-1} {S=S+1}
(Q>0)
ts~
~
What if want to Close Doors at tc?
![Page 96: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/96.jpg)
BANK1.MOD
RUN ENTER LEAVESTART(S)
ta
{Q=Q+1}
(S>0)
{S=S-1,Q=Q-1} {S=S+1}
(Q>0)
ts~
~
If want to Close Doors at tc
Quiz: Why won’t this work?
~
(CLK<tc)
![Page 97: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/97.jpg)
ENTER LEAVESTART
ta
{Q=Q+1}
(S>0)
{S=S-1,Q=Q-1} {S=S+1}
(Q>0)
ts~
~
RUN
CLOSE
{S=1}tc
(Q, tc)
Want to Close Doors at tc?
CLOSEIT.MOD
Exercise: Read this Graph
![Page 98: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/98.jpg)
How might we model a Failure/Reject policy where we discard active job when failure occurs?
tF is the time until failure (again, never use TBF, why?)
tR is the time to repair
RUN ENTER LEAVESTART
ta
(S>0)
(Q>0)
ts
~
~
![Page 99: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/99.jpg)
Modeling Fundamental: You need to RESTART any resource cycle you break…
RUN ENTER LEAVESTART
ta
(S>0)
(Q>0)
ts
FIX FAILtF
tR
{S= -1}{S=1}
~
~
![Page 100: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/100.jpg)
RUN ENTER LEAVESTART
ta
(S>0)
(Q>0)
ts
FIX FAIL
tR
(Q>0)
~
~
~tF
Modeling Fundamental: You must initially schedule every strongly connected event graph component.
![Page 101: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/101.jpg)
BRKDN.MOD
RUN ENTER LEAVESTART
{S=1}
(Q)
ta
{Q=Q+1}
(S>0)
{S=0,Q=Q-1}
{S=1}
(Q>0)
ts
FIX FAIL
tF
tR
{S= -1}{S=1}
(Q>0)
~
~
~tF
![Page 102: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/102.jpg)
A Bt
(i)
Whenever event A occurs, if condition (i) is true, then event B will be scheduled to occur after a delay of t.
Reading an Event Graph
Simply read the “exiting” edges of each vertex.
![Page 103: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/103.jpg)
Single Resource Model
RUN START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
A simulation run is started by having the first job enter the system.
![Page 104: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/104.jpg)
Single Resource Model
RUN START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
New jobs enter the system at random intervals.
![Page 105: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/105.jpg)
Single Resource Model
RUN START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
When a job enters, if the resource is available the job can start service.
![Page 106: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/106.jpg)
Single Resource Model
RUN START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
Once a job starts, it will leave after a service time delay.
![Page 107: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/107.jpg)
Single Resource Model
RUN START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
Whenever a job leaves, if there is more work waiting, then service can start on the next job.
![Page 108: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/108.jpg)
Putting the “edge” sentences together...
A simulation run is started by having the first job enter the system. New jobs enter the system at random intervals. When a job enters, if the resource is available the job can start service. Once a job starts, it will leave after a service time delay. Whenever a job leaves, if there is more work waiting, then service can start on the next job.
![Page 109: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/109.jpg)
…we have a concise system description.
A simulation run is started by having the first job enter the system. New jobs enter the system at random intervals. When a job enters, if the resource is available the job can start service. Once a job starts, it will leave after a service time delay. Whenever a job leaves, if there is more work waiting, then service can start on the next job.
![Page 110: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/110.jpg)
Multiple Resource Model?
RUN START LEAVE
{R=1} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
What if there were 5 identical resources ?
![Page 111: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/111.jpg)
RUN START LEAVE
{R=5} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
Five resources are now available to work in parallel.
Multiple Resource Model
![Page 112: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/112.jpg)
Batched Service Model?
RUN START LEAVE
{R=5} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(R>0)
(Q>0)
ENTER
ta
ts
B is the process batch size
![Page 113: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/113.jpg)
Batched Service Model
RUN START LEAVE
{R=5} {Q=Q+1} {R=R-1,Q=Q-B}
{R=R+1}
(R>0&Q>=B)
(Q>=B)
ENTER
ta
ts
B is the process batch size
![Page 114: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/114.jpg)
Flexible Batched Service?
RUN START LEAVE
{R=5} {Q=Q+1} {R=R-1,Q=Q-1}
{R=R+1}
(Q>0)
ENTER
ta
ts
B,b are Max and Min Process Batch Size
(R>0)
![Page 115: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/115.jpg)
RUN START LEAVE
{R=5} {Q=Q+1} {R=R-1,Q=Q-min(B,Q)}
{R=R+1}
(Q>=b)
ENTER
ta
ts
B,b are Max and Min Process Batch Size
(R>0&
Q>=b)
Flexible Batched Service
![Page 116: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/116.jpg)
1. In REWORK model, we put a rework job back in original queue... What happens?2. Move (REWORK,ENTER) edge back to (REWORK,START). What if LEAVE REWORK and ENTER events are simultaneously scheduled and the LEAVE event is executed next... In what order should all the other events be executed before the next clock advance?
RUN ENTER LEAVESTART
{S=1}
(Q, P)
ta
{Q=Q+1}
(S>0)
{S=0,Q=Q-1} {S=1}
(Q>0)
ts
tr
REWORK
(S>0)(RND<P)~
~
~
~
131 Student ID______________________
![Page 117: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/117.jpg)
REWORK1.MOD
RUN ENTER LEAVESTART
{S=1}
(Q, P)
ta
{Q=Q+1}
(S>0)
{S=0,Q=Q-1} {S=1}
(Q>0)
ts
tr
REWORK
{Q=Q+1}(S>0)(RND<P)~~
~
~
![Page 118: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/118.jpg)
SLOFAST0.MOD
RUN
{S[0]=S[0]-1,Q=Q-1} {S[0]=S[0]+1}
LEAVE0START0
(Q>0)
ts[0]
CHECK
(S[0]>0)
ARRIVE
ta
{Q=Q+1}
{S[1]=S[1]-1,Q=Q-1} {S[1]=S[1]+1}
LEAVE1START1
(Q>0)
ts[1]
(S[0]<=0 &S[1]>0)
{S[0]=1, S[1]=1}
~
~
~~
![Page 119: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/119.jpg)
ASSEMKIT.MOD
RUN KIT PACKOPRN3
{S=1}
(P)
(S>0)
{S=0,Q[3]=Q[3]-1} {S=1}
(Q[3]>0)
ts
OPRN1
t1
t2
OPRN2
(Q[2]>=P & Q[1]>0)
{Q[1]=Q[1]+1}
{Q[2]=Q[2]+1}
(Q[2]>=P)
{Q[1]=Q[1]-1,Q[2]=Q[2]-P,Q[3]=Q[3]+1
~
~
~~
![Page 120: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/120.jpg)
PERT Example - Table 5.3: Activity Precedence for a Project
Activity Must Follow Activities
COUNTER[I]
A None 0
B A 1
C None 0
D B and C 2
E B and D 2
F C 1
![Page 121: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/121.jpg)
END_A
END_C
END_D
END_F
END_B END_E
DoneStart
PERT CHART FOR PROJECT Initialize Ni with number of predecessors
State change is Ni=Ni-1, Conditions Ni== 0Generate edge delay times in vertices!!!
![Page 122: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/122.jpg)
A{Z=W}
{Z=Q}
~
~(X>Y)
(XY)
If-Then-Else: Event Graph or Boolean Variables
{Z=(X>Y)*W + (XY)*Q}
A...Or...
![Page 123: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/123.jpg)
BUFFERQ.MOD
RUN
{S=1}
(Q, B)ARRIVE
ta
(Q<B)
{S=0,Q=Q-1} {S=1}
LEAVESTART
(Q>0)
tsENTER
{Q=Q+1}
(S>0)
~ ~
~
![Page 124: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/124.jpg)
BUFFERQ.MOD (Using Boolean Variables)
RUN
{S=1}
(Q, B)
ta
{S=0,Q=Q-1} {S=1}
LEAVESTART
(Q>0)
tsENTER
{Q=Q+(Q<B)}
(S>0)
~
~
![Page 125: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/125.jpg)
Modeling Resource Failures
Most languages offer some method for modeling failure and repair using:
TTF = time to failureTTR = time to repair
Most languages do not offer many options of what to do with the job when a failure occurs.
![Page 126: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/126.jpg)
Notes:
1. Do NOT use exponential TTF with PMs - “lack of memory”
- “infinite tail”
2. Do NOT use TBF = time between failures - this data is often available, but can cause “queued failures” where resources can fail when the are already broken! or worse, Broken Tools Failing !
![Page 127: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/127.jpg)
Basic Questions:
1. Is TTF in “working” time or “clock” time? - clock time is common but nonsense. How do you know it failed if it is idle?
2. What happens to the job being processed when the resource fails?
![Page 128: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/128.jpg)
Basic Questions:
1. Is TTF in “working” time or “clock” time? - clock time is common but nonsense. How do you know it failed if it is idle?
2. What happens to the job being processed when the resource fails?
These are often not even answered in the Language Documentation!
![Page 129: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/129.jpg)
We may...Reject: the part is discardedResume: continue work on the part where left off.Restart: processing is started over.
Some Policies for the Job being Processed
![Page 130: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/130.jpg)
We may...Reject: the part is discardedResume: continue work on the part where left off.Restart: processing is started over.
Perhaps After -Rework: additional work is needed before work on the part can be restarted.
Some Policies for the Job being Processed
![Page 131: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/131.jpg)
We may...Reject: the part is discardedResume: continue work on the part where left off.Restart: processing is started over.
Perhaps After -Rework: additional work needs to be done before work on the part can be restarted....Or...Reroute: Have another resource finish the work.
Some Policies for the Job being Processed
![Page 132: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/132.jpg)
RESOURCE FAILURE WITH RESUME (update PT after TTF)(Note: assumed only one failure per part! min{TF)>max{TP})
START EVENT (with comments){S = 0, / Make server unavailableQ = Q - 1, / Remove job from queuePT = TP, / Generate job processing timeFAIL = (TTF<=PT), / Is there a failure during processing?TTF=(FAIL= =0) *(TTF-PT) / No failure - decrement Time To Failure + (FAIL= =1)*(TF-(PT-TTF)) / Failure - set new Time To Failure
PT = (FAIL= =0)*PT / No failure: process job + (FAIL= =1)*(PT + TR), / Failure: resume processing after repair
{S=1,
TTF = TF}
PT
(Q>0)
{S =1}
(S>0)
{Q=Q+1}
ta
EnterRun Start Finish
(See text)
TP = processing timeTF = time to failureTR = time to repair
![Page 133: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/133.jpg)
Once a Resource Starts a Job, if it does not fail it will Finish in PT
Verbal EG of Resource Cycle
PTFinishStart
...OR...
(Not Fail)~
![Page 134: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/134.jpg)
It Fails in TTF .
(Fail)
TTF
Fail
~PTFinishStart
~
(Not Fail)
![Page 135: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/135.jpg)
It is Repaired
(Fail)
TTF
Fail
PTFinishStart
~
RepairTTR
~(Not Fail)
![Page 136: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/136.jpg)
Job May be Reworked
(Fail)
TTF
Fail
~(Not Fail)PTFinishStart
~
RepairTTR
ReworkTw
(Rework) ~~
NoRework
(NoRework)
![Page 137: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/137.jpg)
Job is then finished or discarded
(Fail)
TTF
Fail
~(Not Fail)
PT-TTF
FinishStart
~
RepairTTR
Reject
Resume
Restart
PT
~
~
~
PT
(Restart)
(Resume)
(Reject)
ReworkTw
(Rework) ~~
NoRework
(NoRework)
![Page 138: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/138.jpg)
Fundamental Idea:Focus only on “interesting” events in the Resident Entity Cycles changes in fundamental state variables.
Here S = resource state = 0/1 = busy/idleQ = number of jobs waiting
![Page 139: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/139.jpg)
Key Idea:Focus only on “interesting” events in the Resident Entity Cycles changes in fundamental state variables
Here S = resource state = 0/1 = busy/idleQ = number of jobs waiting
Eliminate Uninteresting events usingConditional Delays between Interestingevents.
![Page 140: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/140.jpg)
Only the Start and the Finish Events are “Interesting”
(Fail)
TTF
Fail
~(Not Fail)
PT-TTF
FinishStart
~
RepairTTR
Reject
Resume
Restart
PT
~
~
~
PT
(Restart)
(Resume)
(Reject)
ReworkTw
(Rework) ~~
NoRework
(NoRework)
![Page 141: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/141.jpg)
Key Idea:To model Resident Entity Cycle We Need To Compute only the Delay from Start to Finish.
Reduce the event graph!
![Page 142: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/142.jpg)
Key Idea:To model Resident Entity Cycle We Need To Model only the Delay from Start to Finish.
Reduce the event graph!
The Delay time until a Resource becomes free is the Conditional Length of the Path from Start to Finish.
![Page 143: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/143.jpg)
Key Idea:To model Resident Entity Cycle We Need To Model only the Delay from Start to Finish.
Reduce the event graph!
The Delay time until a Resource becomes free is the conditional length (in time) of the path from Start to Finish
Delay = Time*(Boolean Conditions)paths
![Page 144: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/144.jpg)
We define the Boolean, FAIL = (TTFPT)
(Fail)
TTF
Fail
~(Not Fail)
PT-TTF
FinishStart
~
RepairTTR
Reject
Resume
Restart
PT
~
~
~
PT
(Restart)
(Resume)
(Reject)
ReworkTw
(Rework) ~~
NoRework
(NoRework)
![Page 145: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/145.jpg)
(NoRework)
(Fail)
TTF
Fail
~(Not Fail)
PT-TTF
FinishStart
~
RepairTTR
Reject
Resume
Restart
PT
~
~
~
PT
Delay=(FAIL==0)*PT...
(Restart)
(Resume)
(Reject)
ReworkTw
(Rework) ~~
NoRework
![Page 146: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/146.jpg)
(Fail)
TTF
Fail
~(Not Fail)
PT-TTF
FinishStart
~
RepairTTR
Reject
Resume
Restart
PT
~
~
~
PT
Delay=(FAIL==0)*PT+((FAIL)*(TTF+TTR+(Rework)*Tw+...
(Restart)
(Resume)
(Reject)
ReworkTw
(Rework) ~~
NoRework
(NoRework)
![Page 147: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/147.jpg)
PT-TTF
Finish
Reject
Resume
Restart
PT
~
~
~
Delay=(FAIL==0)*PT+((FAIL)*(TTF+TTR+(Rework)*Tw
+(Restart)*PT + (Resume)*(PT-TTF))
(Restart)
(Resume)
(Reject)
(Fail)
TTF
Fail
~
RepairTTR
~(Not Fail)
StartPT
ReworkTw
(Rework) ~~
NoRework
(NoRework)
![Page 148: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/148.jpg)
Define: R = {1,2,3,4}={rework,restart,resume,reject} Q = Number of jobs waiting S = Resource Busy/idle = 0/1 ts = Processing times (random?) tF = Time to failure (random?) tR = Time to repair (random?) tW = Time to rework (random?)
![Page 149: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/149.jpg)
{Q = Q - 1, S = S - 1,
PT = ts,
FAIL=( TTF <= PT ), DELAY = ( FAIL==0 ) * PT +( ( FAIL==1 ) * ( TTF + tR
+(R==1) * ( tW + PT ) +(R==2) * PT +(R==3) * ( PT-TTF ) ) ), TTF = ( FAIL==0 ) * ( TTF - PT ) +( ( FAIL==1 ) *( ( R==1 ) * ( tF - tW - PT ) +( R==2 ) * ( tF - PT )
+( R==3 ) * (tF - (PT-TTF) ) ) )}
FinishStart DELAY
{S = S + 1}
Note: Multiple Resources will have different TTF,TTR, etc. (use event parameters and arrays… more later)
General Resource Failure Model – Modified Start Event
Failure.mod
![Page 150: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/150.jpg)
Messages
1. Identify “Interesting” Events - where basic state variables change (here Q and S).
![Page 151: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/151.jpg)
Messages
1. Identify “Interesting” Events - where basic state variables change (here Q and S).
2. Use Verbal Event Graphs to develop logic for conditional paths between interesting events (here Start and Finish).
![Page 152: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/152.jpg)
Messages
1. Identify “Interesting” Events - where basic state variables change (here Q and S).
2. Use Verbal Event Graphs to develop logic for conditional paths between interesting events (here Start and Finish).
3. Eliminate Uninteresting Events using Conditional Delays
Delay = Time*Conditionpaths
![Page 153: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/153.jpg)
Messages
1. Identify “Interesting” Events - where basic state variables change (here Q and S).
2. Use Verbal Event Graphs to develop logic for conditional paths between interesting events (here Start and Finish).
3. Eliminate Uninteresting Events using Conditional Delays
Delay = Time*Conditionpaths
Boolean
![Page 154: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/154.jpg)
BUILDING VERY LARGEMODELS Using Event
Parameters
What is the difference between a COMPLEX model and a BIG model?
![Page 155: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/155.jpg)
A B
After executing Event A, the expressions, k, are evaluated. Later, before B is executed, the variables, j, are assigned the values previously computed for k.
Event Parameters
( j )k
![Page 156: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/156.jpg)
A B
Rigorous Edge Definition
( j )k
t (i)~
After executing event A, a vector of expressions, k, is
evaluated. If condition (i) is then true, event B will be
scheduled to occur after a delay of t with variable vector, j, initialized to the values of k computed when B was scheduled.
![Page 157: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/157.jpg)
T values of k become the attributes of scheduled events…
PENDING EVENTS LIST (“Future” Events list is not necessarily in future)
Time Event Priority Attributes
3.32 Breakdown 2 3,4,6
4.47 Finish 3 3,4,6
5.64 Arrival 4 7 Part number 7 5.64 Finish 3 2,5,1
Tool 3, worker 4, part 6
![Page 158: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/158.jpg)
T values of k become the attributes of scheduled events…
PENDING EVENTS LIST (“Future” Events list is not necessarily in future)
Time Event Priority Attributes
3.32 Breakdown 2 3,4,6
4.47 Finish 3 3,4,6
5.64 Arrival 4 7 Part number 7 5.64 Finish 3 2,5,1
Tool 3, worker 4, part 6
The “attributes” for the edge that scheduled the Breakdown event are expressions for the values for the “parameters”, (Tool,Worker,Part)
![Page 159: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/159.jpg)
I+1
EVENT (I)
~ (I < 7)
(I = = 7)
~2
Do EVENT: FOR I = 2 to 7
![Page 160: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/160.jpg)
Do EVENT FOR I = 2 to 7 and J = 0 to I
I+1 , 0
EVENT (I,J)
~ ( I < 7 & J = = I )
~
I , J+1
~
( I 7 & J < I )
2 , 0
( I 7 & J I )
![Page 161: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/161.jpg)
CLKA B(j)
10
1
![Page 162: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/162.jpg)
CLKA B(j)
10
1
![Page 163: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/163.jpg)
CLKA B(j)
10
1
What does Future Event List look like at time 13?
![Page 164: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/164.jpg)
![Page 165: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/165.jpg)
Recall SLOFAST0.MOD with two classes of serversWhat is particularly weak about this model? (say, for 1000 classes?)
RUN
{S[0]=S[0]-1,Q=Q-1} {S[0]=S[0]+1}
LEAVE0START0
(Q>0)
ts[0]
CHECK
(S[0]>0)
ARRIVE
ta
{Q=Q+1}
{S[1]=S[1]-1,Q=Q-1} {S[1]=S[1]+1}
LEAVE1START1
(Q>0)
ts[1]
(S[0]<=0 &S[1]>0)
{S[0]=1, S[1]=2}
~
~
~~
![Page 166: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/166.jpg)
Simulating Many Servers of Many Different Types SLOFAST1.MOD
RUN
{S[A]=S[A]-1,Q=Q-1} {S[A]=S[A]+1}
LEAVESTART
(Q>0)
ts(A)CHECK
(S[A]>0)ARRIVE
ta
{Q=Q+1}
A(A) (A) (A)
A+1
S[A]<=0&A<N-1)
~
~
~
{N=,S[1]=,...S[N]=}
1
A
A
`
![Page 167: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/167.jpg)
State for BANK2.MOD
Customers Waiting In Line
16 14 13 1215 11
8
10
6
Customers In Service
NEXT=11ID=15
Pending Events ListTime Type Parameters3.243 Leave 84.210 Enter5.593 Leave 66.478 Leave 10
![Page 168: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/168.jpg)
BANK2.MOD
RUN
{Q=Q-1, S=S-1, NEXT=NEXT+1}
{S=S+1,W[IN]=CLK-W[IN]}
LEAVE
(Q>0)
tsSTART
(S>0)ENTER
ta
{ID=ID+1, Q=Q+1, W[ID]=CLK}
(S) (IN)
NEXT
(IN)ID IN
~
~
![Page 169: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/169.jpg)
BANK2.MOD – can you simplfy? (IN not used in START)
RUN
{Q=Q-1, S=S-1, NEXT=NEXT+1}
{S=S+1,W[IN]=CLK-W[IN]}
LEAVE
(Q>0)
tsSTART
(S>0)ENTER
ta
{ID=ID+1, Q=Q+1, W[ID]=CLK}
(S) (IN)
NEXT
(IN)ID IN
~
~
![Page 170: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/170.jpg)
BANK2.MOD (modifiedWhat about collecting wait in line only?)
RUN
{Q=Q-1, S=S-1, NEXT=NEXT+1}
{S=S+1,W[IN]=CLK-W[IN]}
LEAVE
(Q>0)
tsSTART
(S>0)ENTER
ta
{ID=ID+1, Q=Q+1, W[ID]=CLK}
(S) (IN)
~
~ NEXT
![Page 171: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/171.jpg)
BANK2.MOD (modified – wait in queue only)
RUN
{Q=Q-1, S=S-1, W[IN]=CLK-W[IN],NEXT=NEXT+1}
{S=S+1}
LEAVE
(Q>0)
tsSTART(IN)
(S>0)ENTER
ta
{ID=ID+1, Q=Q+1, W[ID]=CLK}
(S)
~
~
NEXT
ID
![Page 172: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/172.jpg)
BANK2.MOD – LIFO? Error – why?
RUN
{Q=Q-1, S=S-1}
{S=S+1,W[IN]=CLK-W[IN]}
LEAVE
(Q>0)
tsSTART
(S>0)ENTER
ta
{Q=Q+1, W[ID]=CLK}
(S) (IN)(IN)Q+1
~
~
![Page 173: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/173.jpg)
REWORK
RUN ENTER LEAVESTART
{S=1}
(Q,P,LM)
ta
{Q=Q+1}
(S>0)
{S=0,Q=Q-1} {S=1, R=RND}
(Q>0 & (R>P)
ts
tr
REWORK
{Q=Q+1}
(R<=P)
~
~
~~(S>0)
![Page 174: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/174.jpg)
REWORK2.MOD
RUN ENTER LEAVESTART(Q,P,LM)
ta(S>0)
(Q>0 & (R>P | RW>=LM)
ts
tr
REWORK
(R<=P&RW<LM)
(RW)(RW)
1
RW RW+1
~
~
~
(RW)
RW1
LIMITED REWORK: Can rework only LM times
{S=1} {Q=Q+1} {S=0,Q=Q-1} {S=1, R=RND}
{Q=Q+1}
~(S>0)
![Page 175: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/175.jpg)
RUN KIT PACKOPRN3
{S=1}
(P)
(S>0)
{S=0,Q[3]=Q[3]-1} {S=1}
(Q[3]>0)
ts
OPRN1
t1
t2
OPRN2
(Q[2]>=P & Q[1]>0)
{Q[1]=Q[1]+1}
{Q[2]=Q[2]+1}
(Q[2]>=P)
{Q[1]=Q[1]-1,Q[2]=Q[2]-P,Q[3]=Q[3]+1
~
~
~~
Recall ASSEMKIT.MOD with two types of components for assembly, what is particularly weak about this model? (say, for 1000 components?)
![Page 176: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/176.jpg)
Event Parameters with an Assembly Operations
{S=S+1,Q[N]=Q[N]-1}
OPRN
t[I]
{S=1} {Q[I]=Q[I]+1}
I
(I)
{S=S-1}
KIT PACKASSEM(S) ts
(Q[N])(Q[I]>P[I] I<N)
A
{Q[I]=Q[I]-P[I] I<N,Q[N]=Q[N] +1}
A
~~
~
RUN(N,P[I]’s)
1
2
N
…
![Page 177: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/177.jpg)
Tandem Queues
1 2 N
Q1 Q2 QN
•••
![Page 178: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/178.jpg)
N Tandem Queues
START LEAVEENTER
![Page 179: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/179.jpg)
N Tandem Queues
START LEAVEENTER(i) (i)
i i
i
(i)
![Page 180: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/180.jpg)
N Tandem Queues
START LEAVEENTER
(i<N)
i+1
(i) (i) (i)i i
i
![Page 181: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/181.jpg)
N Tandem Queues
START LEAVEENTER
1
(i=1)
(i<N)
i+1
(i) (i) (i)i i
i
![Page 182: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/182.jpg)
N Multiple-Server Tandem Queues
![Page 183: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/183.jpg)
N Multiple-Server Tandem Queues
ii
t
ti
(i<N)
(i==1)
i
LEAVE(i)
START(i)
ENTER(i)
1
i+1
(R[i])
(Q[i])
![Page 184: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/184.jpg)
EG Enrichment: Model Size
N Stage Tandem Process
i+1i
i
t t
(i<N)
(i==1)
i
i
LEAVE(i)
START(i)
ENTER(i)
![Page 185: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/185.jpg)
EG Model Enrichment - Adding to Graph
Example: Tandem Queues
tt
LEAVE(i)
START(i)
ENTER(i)
![Page 186: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/186.jpg)
EG Model Enrichment - Adding to Graph
Example: Tandem Queues with Failures
F = Failure State Flag
tt
t
(Q&!F)
(S&!F) (Q)
(F)
LEAVE(i)
START(i)
ENTER(i)
FAIL(i)
FIX(i)
![Page 187: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/187.jpg)
Start NextM
Enter
NextJ Finish Queue
Exit(m,j)
(m,j)(m)
(j)(j)
(m,j)
Job Shop Event Graph Model
![Page 188: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/188.jpg)
Start NextM
Enter
NextJ Finish Queue
Exit(m,j)
(m,j)(m)
(j)(j)
(m,j)
Jobs Flowing Through System
![Page 189: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/189.jpg)
Start NextM
Enter
NextJ Finish Queue
Exit(m,j)
(m,j)(m)
(j)(j)
(m,j)
Machines Processing Jobs
![Page 190: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/190.jpg)
Start NextM
Enter
NextJ Finish Queue
Exit(m,j)
(m,j)(m)
(j)(j)
(m,j)
j
m,j
m,j
m,j
j
j
m
m,j
~
~~(j done)
Job Shop Verbal Event Graph
~(Q[m])
(j not done& m idle)
( j not done& m busy)
j
![Page 191: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/191.jpg)
Event Graph Summary
General, Minimalist DEDS Modeling.
A Single Modeling Object
Completely General
– Models Turing Machine (Yucesan - Savage)
No event cancellation or parameters
Mappings from other paradigms offer alternative models (logic and efficiency)
Conditions for mappings to other paradigms can be used to establish modeling power
(i)t
![Page 192: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/192.jpg)
A B
Complete Edge Definition
( j )k
t (i)~
After executing event A, a vector of expressions, k, is evaluated. If condition (i) is then true, event B will be scheduled to occur after a delay of t with variable vector, j, equal to those values of k.
![Page 193: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/193.jpg)
What actually happens?
Scheduled events are on the Pending Events list, which acts as the “appointment book” for the system.
PENDING EVENTS LIST
Time Event Priority String of Attributes
3.32 Breakdown 2 3,4,6
4.52 Finish 3 3,4,6
5.42 Arrival 1 7
5.42 Finish 3 2,5,1
(Aside: “Future” Events List is a bad name…events are not necessarily in the future – may be now.)
![Page 194: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/194.jpg)
Figure 2.2: Main Event Scheduling Algorithm
Cancel Events
Initialize
Advance Clock to Time of Next Event
Execute Event
Remove Event From List
State
Event List
Change State
Schedule Events
Summary StatisticsStop YesNo
![Page 195: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/195.jpg)
When to Use Event Graphs
• Very Large Scale Systems
• Complex Model Logic
• Whenever Speed and Flexibility are important
![Page 196: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/196.jpg)
Ease of Use
Power
Tool Development
![Page 197: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/197.jpg)
Ease of Use
Power
Tool Development
Simulators.
Languages
. .Petri Nets
Queueing.
![Page 198: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/198.jpg)
Ease of Use
Power
Tool Development
Simulators.
Languages
. .Petri Nets
Queueing.
![Page 199: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/199.jpg)
Ease of Use
Power
Tool Development
Simulators.
Languages
. .Petri Nets
Turing Machine
Queueing.
![Page 200: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/200.jpg)
Ease of Use
Power
Tool Development
Simulators.
Languages
. .Petri Nets
Turing Machine
Event Graphs(Sigma)
Queueing.
![Page 201: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/201.jpg)
ERG Applications• Teaching Simulation Languages
other languages can be written in SIGMA
• Semiconductor Manufacturing• Robotics• Banking Operations• Pharmaceutical Manufacturing• TV Spot Market Operations• Food Production and Logistics• Disease Control (Human and animal)• Sports (Golf course Management)
• Teaching Simulation Languages other languages can be written in SIGMA
• Semiconductor Manufacturing• Robotics• Banking Operations• Pharmaceutical Manufacturing• TV Spot Market Operations• Food Production and Logistics• Disease Control (Human and animal)• Sports (Golf course Management)
![Page 202: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/202.jpg)
General Design for Cluster Tools
Load Locks: Single or Double
Single Chamber
Batch Chamber
Index Module
Robot(s): Chamber(s), Arm(s), Hand(s).
![Page 203: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/203.jpg)
Process Modules(Chambers)
Transport Module(Robot)
Cassette Module(Load Lock)
Cluster Tool Used In Semiconductor Manufacturing
![Page 204: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/204.jpg)
?
Start
End
Move
Startor
End
Loadlock Events
Robot Events
Chamber Processing Events
Decisions
Event Symbols
![Page 205: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/205.jpg)
Event Graph: Generic Cluster Tool
![Page 206: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/206.jpg)
Generic Cluster Tool Model (ref: Ding and Yi)
used for scheduling robot moves
Decision
Move
Done
tParameters
Parameters
General Electric modeled full factory with only two events
![Page 207: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/207.jpg)
- LSC (delay the wafer with the Later Start from Cassette)
- ESC (delay wafer with the Earlier Start from Cassette)
- LSDM (delay wafer that Later Starts on Deadlock Module)
- FFDM (delay wafer Finishing First on Deadlock Module)
- MD (select wafer with Minimum Delay to break deadlock)
- LRT (select wafer with Least Remaining processing Time)
Some Wafer Delay Rules
![Page 208: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/208.jpg)
Two Systems
System 1 Processing TimeOptimal 691 seconds,LSC/LFDM/LSDM 749 secondsLSC/LFDM 876 seconds
System 2 Processing TimeOptimal 698 secondsLSC/LSDM 708 secondsLSC/LFDM/LSDM 710 seconds
Which system is best?
![Page 209: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/209.jpg)
(ft3)
HO
HR
HI
HCAP
HH (ft3)
HL (ft3)
HI - Hopper Input
HO - Hopper Output
HR - Net Rate
HCAP - Maximum Capacity
HH - High Probe Volume
HL - Low Probe Volume
Hopper Definitions
Bulk Flow Process Simulator
![Page 210: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/210.jpg)
HCLP Cover Low ProbeHULP Uncover Low ProbeHCHP Cover High ProbeHUHP Uncover High Probe
HCLD Cover Low Probe Delay DPM - 1 second, BIB 3 seconds.
HULD Uncover Low Probe Delay DPM - 5 seconds, BIB 3 seconds
HCHD Cover High Probe Delay DPM and BIB - 6 seconds*
HUHD Uncover High Probe Delay DPM - 20 seconds, BIB 30,25,0r 20 sec.
* To allow conveyor to stop sending product
Hopper Events
![Page 211: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/211.jpg)
Objective: Find Capacity - MAXT
![Page 212: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/212.jpg)
A B(i)
Reschedule event B in t time units (from when?)
Event Rescheduling
t
![Page 213: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/213.jpg)
Event Graph of GMI Simulation
RUN ChRate
CLP CHP
UHP
Empty
ConfigStartL
ULP
PUSH
CALL
All double arrows areRescheduling edges
![Page 214: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/214.jpg)
SURGE VOLUME (at MAXT+)
NORTH SURGE vs TIME (190 ft3/min.)
Time
0
1
2
3
4
5
6
7
8
0 3 6 9 12 15 18
SURGE
![Page 215: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/215.jpg)
SURGE VOLUME (at MAXT-)
NORTH SURGE vs TIME (170 ft3/min.)
Time
-1
0
1
2
3
4
5
0 1 2 3 4 5 6 7
SURGE
![Page 216: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/216.jpg)
50% Reliable Line Run at MAXT- rate.
LINEBRK.MOD (SURGE vs Time - 0% starvatuib - 50% up)
Time
0
69
138
207
276
345
414
0 10 20 30 40 50 60 70
SURGE
![Page 217: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/217.jpg)
LINEBRK.MOD (SURGE vs Time - 50% starvation - 50% up)
Time
0
13
26
39
52
65
78
0 10 20 30 40 50 60 70
SURGE
LINEBRK.MOD (SURGE vs Time - 50% starvation - 50% up)
Time
0
13
26
39
52
65
78
0 10 20 30 40 50 60 70
SURGE
Hopper Volume for 50% reliableDPM Line run at 1/2 MAXT rate
![Page 218: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/218.jpg)
Run
Cash
Flow
Term
BONDRATE.MOD
![Page 219: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/219.jpg)
Event Graph Disease Model
Clear
1
Sub-Clinical
1
Cinical
1
1
1
1
1
(S )i
(S )i
(S )i
Si = state of ith
member
H= population, treatments, and member histories
H
H
H
H
H
H
![Page 220: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/220.jpg)
Event Graph EnrichmentsModeling
Event Graph Objects - Buss, Pierce and Nehme Qualitative Event Graphs – Ingalls Hierarchical graphs - Nehme (e.g. delay time = graph)
Analysis State Space and Event Reduction - Som, Sargent Initial Conditions Complexity Analysis - Jacobson, Yucesan Computation (bounds on events lists) Process Deadlock – Woodward and Mackulak Simultaneous Replication and Time Dilation - Hyden Response Sample Path Gradients – Freimer MIP representations
![Page 221: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/221.jpg)
Event Graph Summary
A Simple, Completely General, Minimalist Approach To DEDS Modeling and Analysis.
An Easy Path to Discrete Event Simulation Applications and Education.
![Page 222: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/222.jpg)
Event Graph Summary
General Applications and Education.
Many Simulation texts.
Process Language and Petri Net Emulation
Continuous Dynamics Modeling
Parametric Modeling of Large Scale Systems
![Page 223: INTRODUCTION TO EVENT GRAPH MODELS Definition - The basic building block. Model Dynamics Reading an Event Graph Event Graph Enrichments](https://reader036.vdocuments.mx/reader036/viewer/2022081519/56649d425503460f94a1ccf2/html5/thumbnails/223.jpg)
Modeling Process1. Determine system and model functions.
2. Identify entities and their important attributes.
3. Identify the dynamic attributes and the events that cause their values to change .
4. Draw Event Relationship Graph.