Download presentation
Presentation is loading. Please wait.
1
Modeling Worldviews Event Scheduling – Event Graphs State Machines Activity Scanning – Event Graphs and Petri Nets Process Interaction – Event Graphs and Block Diagrams
2
Resident Entities Variables describe the state. Focus on cycles. (busy-idle-busy...) Transient Entities Variables describe state and location. Focus on flow paths. System Entities
3
Block Languages Process “World View” Focus on Transient Entity Flow – “JOB DRIVEN”. Preprogrammed blocks of code. Block execution is triggered by a Transient Entity entering a block. Execution Controlled by Job Moves. Common Languages Arena (Siman), AutoMod, GPSS, SLAM (AweSim)
4
Block Languages Common Languages SLAM SIMAN GPSS (fundamental Blocks) Generate - Transactions enter model Queue - Transactions wait for facility Seize - Transactions take resource Depart - Transactions leave queue Advance - Transactions are delayed Release - Transactions release resource Terminate - Transactions leave the model
5
Block Languages Common Languages SLAM SIMAN (fundamental blocks) GPSS Create - Entities enter model Queue - Entities wait for facility Seize - Entities take resource Depart - Transactions leave queue Delay - Entities are delayed Release - Entities release resource (Entities may leave using “Dispose” )
6
Single Queue QUEUE SEIZE DEPART ADVANCE RELEASE GENERATE TERMINATE 1 1 1 1 GPSSSIMAN CREATE DELAY RELEASE 1 QUEUE SEIZE 1 1
7
Main Event Scheduling Algorithm for Process Interaction Cancel Events Initialize Advance Clock to Time of Next Event Execute Event Remove Event From List and move “tokens” until blocked or delayed State Event List Change State Schedule Events Summary Statistics Stop Yes No
8
Loading Unloading Processing Time Labor Modeling “Machine Interference” tool1 Oper. tool2 Loading Processing Unloading
9
QUEUE SEIZE GENERATE TERMINATE 1 1 SEIZE 2 DEPART Load RELEASE 1 1 Cycle RELEASE 2 SEIZE 1 RELEASE 1 Unload Semiautomatic Machine Worker is Resource 1 Machine is Resource 2
10
Single Queue with Failures SIMAN CREATE DELAY RELEASE 1 QUEUE SEIZE 1 1 CREATE DELAY RELEASE 1 QUEUE SEIZE 1 1 (Job Processing) (Failure Processing) TTR TBF Proc. time IA time HIGH PRIORITY JOB
15
Siman Blocks View (File/Template/Attach/Blocks) This is what the Arena Processes view generates.. Eventually you will need to understand this to use Arena In a real problem...
16
Bank Queue with Jockeying
18
; ***************************** ; * Mechanical Failures * ; *************************** CREATE; ASSIGN: J = 0; DUPLICATE:NumSegs-1; !create entity for each segment ASSIGN: J = J + 1: !increment counter SegNum = J; !set segment number MechLoop DELAY: ED(MTBF(SegNum)); !delay for mean time btwn failures QUEUE, MechFail1_Q; !wait for machine SEIZE: Mach(SegNum); !seize machine ASSIGN: MStat(SegNum) = 6: !segment status to mech fail State = 0; BRANCH,2: IF,TR_Policy.EQ.2.OR.TR_Policy.EQ.3,PM: ALWAYS,M_Rep; M_Rep ASSIGN: DTime = ED(MTR(SegNum)); !assign mean time to repair TALLY: MechFail_1 + SegNum - 1, DTime; DELAY: DTime; !delay for mean time to repair BRANCH,1: IF,TR_Policy.EQ.2.OR.TR_Policy.EQ.3,PM_GetR: ELSE,MF_Done; MF_Done ASSIGN: MStat(SegNum) = 2; !segment status to starved RELEASE: Mach(SegNum): !release machine NEXT(MechLoop);
19
Block Languages Process World View: +Transient Entity Focus Helps Animation +Easy to Use for Simple Applications -Limited to Pre-programmed blocks -Difficult to Model Complex Logic -Difficult to Model Resource Failure or (say, on amount of time worked.) -Hard to Learn Well -Simulation Slows (or stops) as the System Becomes Congested ! ! !
20
Block Languages Why the simulation slows (or stops) as the system becomes congested. A record of each active transient entity must be maintained during a run. e.g.: Process Flow in a semi-conductor fabrication facility. A resident entity model will run hundreds of times faster.
21
Block Languages Resident Entity models are required to have practical simulations of any system with many active transient entities. e.g. Communications Networks Large Scale Manufacturing Systems and Continuous Flow Processes
22
Screen Capture of ARENA Output: Svc Time = 1.85 Ref: Kim Branch and Jay Gillespie
23
Maximum of 100 Entities Exceeded! (Svc Time = 18.5) What is the effect on Bias of ignoring runs that did not terminate correctly?
24
Resource/Job Driven Simulations
25
RunTime Ratios
26
Speed comparisons with Automod ASAP
27
Little Slowdown from using PUT/GET
28
Using Activity Scanning to Develop Process Models “Color” tokens that represent Transient Entities - - track these tokens’ paths. Parse Activities into “SEIZE”, “DELAY” and “RELEASE” Blocks. SEIZE DELAY RELEASE Idle Resources Queue
29
Process -> EG Mapping Process World View: Automated SLAM to Event Graphs (Woodward and Mackulak, ASU) Resource deadlock detection SIMAN to Event Graphs (Barton and Gonzalez, PSU) Premature run termination
30
Notes: 1.Model "footprint" is "number of servers" not "size of queue" - insensitive to congestion – complexity grows with resources! 2. Q statistics are O.K. but what about Delays? - ambiguity of the mystery blocks - Use Little's Law or transient entity (PUT/GET) method. (S>0) (Q>0) T A GEN 1 QUEUE DEPART T S SEIZE RELEASE yes TERM yes TERM 1 1 1
31
Conventional EG Model SEIZERelease {Q=Q+1}{R=R-1, Q=Q-1} {R=R+1} (R>0) (Q>0) QUEUE TaTa TsTs
34
NOTE: Can change Distns.dat while model is running! //CREATE block 1 - interval.5*TRI{.5} //DELAY block 1 - duration 2*TRI{.5} //DELAY block 2 -duration 2+3*BET{.5;.5}
35
Run (S[0],S[1]) Enter { I=(Q[0]>10), Q[I]++ } Start (I) Finish (I) I ~ (Q[I]) tStS tAtA {Q[I]--, S[I]--} { S[I]++ } I ~ (S[I])
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.