SlideShare a Scribd company logo
Discrete-Event Simulation Advanced
Modeling
BANA7030
Denise L. White, PhD MBA
What We’ll Do ...
• New functionality in a call center model
• Explore sets and outputs in Arena
• Learn process analyzer
• Approaches for steady-state models
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
CALL CENTER MODEL
Develop basic production process
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Call Center Model Setup
• One phone number for customers to call in to
– 26 trunk lines, one needed for each call (incoming or outgoing, talking or on
hold)
– Arriving call finding no free trunk lines gets busy signal, goes away
• Count number of such rejected calls
• Calls arrive with interarrivals ~ EXPO (0.857) min.
– First call arrives at time 0
• Three incoming call types
– Initial recording to decide ~ UNIF (0.1, 0.6) min.
– Tech support (76%), sales (16%), order status (8%)
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Call Center Model Setup
• Tech-support calls
– For product type 1 (25%), 2 (34%), or 3 (41%)
– Needs qualified tech-support person
• Two for type 1, three for type 2, three for type 3
– No crossover to another type
• Separate FIFO queues for each type
• Conversation time ~ TRIA (3, 6, 18) min. for all types
– Then leaves system
• Sales calls
– All the same
– Four sales staff, all the same
• One FIFO queue feeding all sales staff
– Conversation time ~ TRIA (4, 15, 45)
– Then leaves system
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Call Center Model Setup
• Order-status calls
– All the same
– Handled automatically by phone system
• No limit on number in process at a time, except for trunk-line limit
– “Conversation” time ~ TRIA (2, 3, 4)
– After “conversation,” 15% of callers opt to talk to a person
• Routed to sales staff
• Sales calls have higher priority (non-preemptive)
• Center receives calls 8am – 6pm
– Must terminate arrival process at 6pm
– Operate past 6pm, if necessary, to “flush out” all calls
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Call Center Model Setup
• Output performance measures
– Number of calls attempted, rejected, completed
– By call type – total time in system
– By resource – time on hold, number of calls on hold
– Resource utilization – personnel, trunk lines
• Terminating or steady-state
– Time frame of interest for each replication
• Terminating – specific starting, stopping conditions (this model)
– Stopping conditions could be of several forms – fixed time, count, condition (here)
• Steady-state – output performance measures are a limit as simulated time  
• Choice usually depends on intent of study, not on model logic
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Simple Call Center Data Structure
• Re-use data in several places
– Define once, global to whole model
– Redefine once – modeling generality, user efficiency
• Arena Variables
– Store numbers (not formulas)
– Define, initialize in Variable data module (Data Definition)
– Can change during run (Assign module, other ways)
– Scalar, 1-d array (vector), 2-d array (matrix)
• Arena Expressions – generalize Variables
– Store formulas (as well as numbers)
• Use math ops, numbers, random variates, Attributes, Variables, ...
– Define in Expression data module (Data Definition)
– Scalar, 1-d array (vector), 2-d array (matrix)
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Arrivals
• Create attempted calls
– Entity type Incoming Call, change later
– Max Arrivals = MaxCalls, Variable initialized to 999999
• At 6pm (time 600 minutes) change this to 1 to cut off arrivals ... later
• Entity data module
– Incoming Call Entity Type already there
– For Initial Picture, select Picture.Blue Ball
• Record module for an attempted call
– Add 1 to Counter Name Attempted Calls
– Results – Category Overview report, User Specified
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Arrivals
• Decide module – Trunk Line Available?
– Type = 2-way by Condition
• Select (logical) Expression for “If”
– NR() is number of units of that resource that are busy now
– MR() is number of units of that resource that exist now
– False – Record rejected call counter, Dispose
– True:
• Seize a unit of Trunk Line Resource – Release later
– Resources data module for Trunk Line and other Resource levels
• Increment Variable Total WIP for number of active calls
– Used in stopping rule at or after 6pm to sense if system is empty
• Store module to enable entity animation during next Delay module
– Add Storage animation separately, identify with this logical storage by name
– Storage data module – entry made there by Store module
• Delay module to listen to initial recording, make selection
– Could have used Process module, but this is simpler, faster
• Unstore module to make entity animation disappear
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Arrivals to Service
• Decide module – Determine Call Type
– Three-sided coin flip – Type = N-way by Chance
• Add button for more sides of coin
• Get new exit point for each Add, plus one for Else
• Note that probabilities are entered as percentages (0-100, not 0-1)
• Last entry is “else”
• Direct call to one of tech support, sales, or order-status areas
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Tech-Support Calls
• Assign module
– Change Entity Type for separating out in results
– Change Entity Picture for animation
• Store – Delay – Unstore for recording, product type selection
• Decide module for product type
– Different three-sided coin flip
– Direct to appropriate Process module for that product type
• Process modules for tech-support service
– Seize-Delay-Release
– Seize a unit from appropriate multi-unit Resource
– Use Tech Time defined in Expression data module
• Proceed to system exit logic ... later
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Sales Calls
• Assign module – change Entity Type, Picture
• Process module
– Seize-Delay-Release
– Seize a unit of Sales Resource
• Sales calls priority over order-status calls that seek a person?
– Queue data module, Process Sales Call.Queue
• Type = Lowest Attribute Value
– Attribute Name = Sales Call Priority
– Undefined for sales calls, so has value 0 ... will set to 1 for order-status calls that seek a person,
putting sales calls ahead in the queue
• Shared queue (with order-status calls seeking a person)
• Proceed to system-exit logic
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Order-Status Call
• Assign module – change Entity Type, Picture
• Use store and delay for automated processing
• Decide module
– No sales person required – go directly to system-exit logic
– Sales person required:
• Assign module – set Sales Call Priority Attribute to 1 so these will have lower
priority than real sales calls
• Seize module for a unit of Sales resource
– Define Queue Name = Process Sales Call.Queue – shared with sales calls
– Process module does not allow for specifying a shared queue, so can’t use here
• Delay for conversation with sales person
• Release the unit of Sales resource
• Proceed to system-exit logic
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
System Exit
• All calls of all types come here when finished
• Release module – release the unit of Trunk Line
resource seized upstream
• Assign module – decrement Total WIP variable
• Record module – increment Completed Calls counter
• Dispose of call
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Arrival Cutoff Logic
• Used to “choke off” arrival stream at 6pm
• Create a single “logical” entity at time 600 min. (6pm)
– Overkill on making sure just one is created
• Time Between Arrivals = 999999 min., Max Arrivals = 1
• Assign module to set Variable MaxCalls to 1
– Recall use of MaxCalls for Max Arrivals in Create module for attempted calls
• Dispose of this single logical entity
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Call Center Setup
• Replication Parameters tab (other tabs as usual)
• Base Time Units = Minutes
• Replication Length = Infinite (the default)
• Terminating Condition field:
TNOW >= 600.0 && Total WIP == 0
Arena
clock
Variable
Greater than
or equal to 600
minutes, (6pm)
Logical
“and”
Variable we
maintained
in model
Equality
test for
zero
Base Time Units
It’s 6pm or later and there are no calls in the system.
Call Center Animation
• Place three Storage animations
– Initial Recording Delay, Tech Call Recording Delay, Order Status Delay
– Select proper Identifier in each from pull-down list
– Graphic behaves like Queue animations
• Four Queue animations
– Three tech-support call product types, sales
– Came with four Process modules specifying Seize
• Resource animations for three tech-support types, sales Resources
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
ENHANCED CALL CENTER
Enhanced Processing
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Call Center Changes
• Incoming calls’ arrival rate varies over day
– Probabilistic model – Nonstationary Poisson process
• More in Section 12.3
– Instead of a constant rate (= 1 / mean interarrival time), specify a rate function
• Arena supports piecewise-constant rate function – “step” functions
– Easy to specify, strong theoretical support
• Rate-function specification:
In Arena, rates
MUST be in arrivals
per HOUR,
regardless of base
time units or time
intervals
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Call Center Changes
Sales-staff size varies over day
Data in text, Schedule data
module, Sales Schedule
Tech-support staff are partially
cross-trained, work complicated
schedule:
Will use Arena
Sets concept to
implement this
cross training
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Call Center Changes
• 4% of tech-support calls cannot be handled during the call, need offline back-office
research
– Original call ends, same original talk-time distribution, gives up its trunk line, but not counted
(yet) as completed
– Case sent to back office (outside model boundaries), takes EXPO (60) minutes to resolve
• Offline research may be carried over night, completed on a later day
– Answer goes back to same tech-support person who took original call, with higher priority
than incoming calls, but still might have to queue for this person
– This tech-support person requests a trunk line for outgoing call, higher priority than incoming
calls, but still might have to queue, talks for TRIA (2 ,4 ,9) min., call is now completed
– Track number of each product type after research is done
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Data Structure
• Resource, Schedule data modules
– Trunk Line – fixed capacity at 26
– Sales – on Schedule Sales Schedule
– 11 individual tech-support people on individual schedules
• Caution – must fill out each schedule to all 22 half-hour periods, with leading/trailing 0’s if
necessary
• Ignore option to avoid shifting back schedule over multiple days
• Include costing data for people in Resource data module
– Define nonstationary arrival-rate function in Schedule module – Arrival Schedule
• Enter trailing 0’s in schedule editor
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Data Structure
• Sets – collect same-type items together
– Set data modules (Data Definition Panel)
• Refer to items in set by original name, or index (subscript) in set
– Resource set for each tech-support product type
• Members are those tech-support resources qualified
• Individual resources already defined – Resource data module
• Overlapping membership – some resources in multiple sets
• Sets are ordered – here, put most versatile tech-support people at bottom, to “save” them for other
calls ... Preferred Order in Seize
• Will Seize from a set in model
– Counter set – one for each hour
• Count number of rejected calls in each hour
• Individual counters already defined – Data Definitions Set module
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Create Arrival Schedule
• Create Arrival Schedule
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Create Resource Schedules
• Add Resource for each
person
• Create individual schedule
for each person
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Create Resource Sets
• Go to Data Definition / Set
• Create a set of resources
for each product based on
the products they have
been trained to support
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Arrivals and Termination
• Create module
– Type = Schedule, Schedule Name =
Arrival Schedule
– Max Arrivals = Infinite
• Delete the entire arrival-cutoff
section from Model
– Arrival Schedule cuts off arrivals
at 6pm, via 0 rate
• Delete Total WIP variable used to
terminate model
– Use built-in NR(Trunk Line)
instead in Terminating Condition
– Delete Assign modules used to
manage Total WIP
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Arrivals and Terminations
• Record module for rejected
calls
– Index into Counter Set
Rejected Calls with index
AINT((TNOW/60) + 1)
which is 1 for first hour, 2 for
second hour, etc. (AINT
truncates decimals toward zero)
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Model Modifications
• Tech-support calls
– Same through Determine Product Type
Decide
– Add Assign modules for each product
type thereafter
• Entity Type to distinguish product
type in reports
• Entity Picture to distinguish product
type in animation
• Attribute Tech Call Type (1, 2, or 3
by product type) for routing
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Model Modifications
• Tech-support calls
– Process modules, Resources subdialogs
• Type = Set
• Set Name = Product 1, etc.
• Selection Rule = Preferred Order, to select earlier
entries in set first
– Recall – we put more versatile tech-support people lower in
the set list
• Save Attribute = Tech Agent Index
– Entity attribute, carried along, in case of back-office research
to send back to this same tech-support person for return call
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
New Backoffice Process
• Back office, returned tech-support calls – all new
– Entry via True branch (4%) in Decide module
Backoffice Research and Return Call?
– Release this call’s trunk line – going offline now
– Delay (with storage) for EXPO (60) back-office research
– Increment Tech Return WIP(Tech Call Type)
• 1-dim. Variable array – defined in Variable data module
• Tech Call Type is 1, 2, or 3, assigned in earlier Assign
module
– Decide module Product Type? based on Entity Type
– Seize the same tech-support person – higher priority
– Then seize a trunk line (higher priority), make return call
– Then release this trunk line, tech-support person
– Decrement Tech Return WIP(Tech Call Type)
– Send entity to final Record, after trunk-line release there
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
New Backoffice Process
• Input Output Time Persistent data module
– Ten Counter-type statistics, discussed earlier
– Four Time-Persistent statistics to track expressions
• Backoffice Research WIP to track total number of cases in research, via
NSTO(Backoffice Research Storage)
• Create a statistic to track the total WIP for each Technician Type.
– Create an expression for each of the 3 techs using the formula
» Process Product Type 1 Tech Call.WIP + Tech Return WIP(1), etc.
– In the Input/Output area. Add a Time-Persistent Statistic for each of the 3 types of technicians.
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
Animation Updates
• Delete Tech 1, Tech 2, and Tech 3 resource animations
• Change variables in three tech-support WIP displays to track total
number of tech-support calls of that type present
• New back-office storage animation, variable animation for number
present
• A new queue for each tech-support product type for return calls
waiting for service
• Added a resource animation for each individual tech-support person
Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
PROCESS ANALYZER
Evaluate several model scenarios together
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
Analysis of Multiple Scenarios
• With many scenarios to compare in our model, two problems are
– Simple mechanics of making many parameter changes, making many runs,
keeping track of many output files
– Statistical methods for drawing reliable, useful conclusions
• Process Analyzer (PAN) addresses these
• PAN operates on program (.p) files – produced when .doe file is run (or just
checked)
• Start PAN from Arena (Tools > Process Analyzer) or via Windows
• PAN runs on its own, separate from Arena
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
PAN Scenarios
• A scenario in PAN is a combination of:
– A program (.p) file
– Set of input controls that you choose
• Chosen from Variables and Resource capacities – think ahead
• You fill in specific numerical values
– Set of output responses that you choose
• Chosen from automatic Arena outputs or your own Variables
• Values initially empty … to be filled in after run(s)
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
PAN Scenarios
• To create a new scenario in PAN, double-click where
indicated, get Scenario Properties dialog
– Specify Name, Tool Tip Text, .p file, controls, responses
– Values of controls initially as in the model, but you can
change them in PAN – this is the real utility of PAN
– Duplicate (right-click, Duplicate) scenarios, then edit for a
new one
• Think of a scenario as a row
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
PAN Scenario for Call Center
• Noticed high utilization and long wait time for Sales calls
• Noticed many rejected calls between hours 5 and 8
• Want to consider the following:
– Adding more Sales associates
– Adding more Trunk Lines
– Adding more technicians of each type (who work during hours 5-8)
• Type 1 agent with schedule like Charity
• Type 2 agent with schedule like Tierney
• Type 3 agent with schedule like Shelley
• All Types with a schedule like Anna
• Want to evaluate the following measures: Rejected Call per hour, Utilization of Sales resources, Waiting time
for Sales call, Trunk Line Utilization
• How many runs of the model would this require? What if we wanted to combine scenarios?
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
Creating PAN
• Go to File -> New
• Double Click to add a
new scenario
• Give it a name (Base
Model) and point it to
your .p file from the
Enhanced Call Center
model.
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
Adding Controls
• Need to add Controls.
– These are the things that you
want to change in the model
with a scenario
– Must be resources, system
values or user specified
values from your model.
• To add a Control, go to the Insert
tab and select Control from the
dropdown.
• Add controls for the things we
identified for consideration
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
Adding Controls
Will be able to run scenarios that
change the number of each of these
Controls.
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
Adding Responses
• Need to add Responses.
– These are the outputs of the
simulation that you would like to
evaluate for each scenario that you
run.
– Many response values available for
Entities, Queues, Resources, System
and User-Specified
• To add a Response, go to the Insert tab
and select Response from the dropdown.
• Add responses for the things we identified
for evaluation
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
Adding Responses
Responses will populate for each
scenario that we identify and run.
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
Creating Scenarios
• Recommend duplicating the base scenario to provide consistent
output for analysis.
• Right click on the line and select Duplicate Scenario
• Duplicate your Base Model 6 times and give meaningful names to
each one. Update 1 or more of the control values to reflect the
scenario name.
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
Running PAN
• Can run one or more scenarios at the
same time.
• Select the scenarios tor run, go to Run Tab
and select Go.
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
PAN Results
Evaluate results. Determine if additional scenarios
are needed, modify controls and rerun the analysis
Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations

More Related Content

PPTX
BANA7030_DES_Detailed_Modeling.pptx Simulation
PDF
Arena tutorial
PDF
4_5821003798000177081.pdf
PPT
Chapter 07 Slides Simulations with Arena
PPTX
Presentation on arena software
PPT
arena_basics.ppt
PPT
Lecture 2.pptMOELING AND SIMULATION BS SOFTWARE ENGNEERING
PPTX
Topic 3 - Measuring Simulation Performance.pptx
BANA7030_DES_Detailed_Modeling.pptx Simulation
Arena tutorial
4_5821003798000177081.pdf
Chapter 07 Slides Simulations with Arena
Presentation on arena software
arena_basics.ppt
Lecture 2.pptMOELING AND SIMULATION BS SOFTWARE ENGNEERING
Topic 3 - Measuring Simulation Performance.pptx

Similar to BANA7030_DES_Advanced_Modeling.pptx Simulation (20)

PDF
grocery_store_model_1_help_file__1_.pptx.pdf
PDF
Module05 arena
PPT
Queuing theory for modelling and sumilation.ppt
PPT
Ch10
PPT
Prueba
PPT
Prueba
PPT
Prueba
PDF
Guia de usuario arena
PPT
PDF
APPLICATION OF COMPUTER AGENT MODELING FOR OPTIMIZATION OF THE ASSEMBLY PROC...
PDF
Creating queuing system simulations with enterprise architect sysml parametri...
PPT
ch08-Modeling & Simulation.ppt
PPTX
Manufacturing systems Design presentation.
PDF
Hi Maturity in the CMMI Services Context
PPTX
Time Simulation Discrete Event (time) Simulation.pptx
DOC
143297502 cc-review
PPT
Simulation with ARENA Chapter 1: What is Simulation?
PPTX
Simulation-System Modeling and Simulation
PPT
Lecture16_Process Analyzer and OPTQUEST.ppt
PPTX
Dmm 170900713008 2721314_bhavya
grocery_store_model_1_help_file__1_.pptx.pdf
Module05 arena
Queuing theory for modelling and sumilation.ppt
Ch10
Prueba
Prueba
Prueba
Guia de usuario arena
APPLICATION OF COMPUTER AGENT MODELING FOR OPTIMIZATION OF THE ASSEMBLY PROC...
Creating queuing system simulations with enterprise architect sysml parametri...
ch08-Modeling & Simulation.ppt
Manufacturing systems Design presentation.
Hi Maturity in the CMMI Services Context
Time Simulation Discrete Event (time) Simulation.pptx
143297502 cc-review
Simulation with ARENA Chapter 1: What is Simulation?
Simulation-System Modeling and Simulation
Lecture16_Process Analyzer and OPTQUEST.ppt
Dmm 170900713008 2721314_bhavya
Ad

Recently uploaded (20)

PDF
Introduction to the R Programming Language
PPTX
The THESIS FINAL-DEFENSE-PRESENTATION.pptx
PPTX
AI Strategy room jwfjksfksfjsjsjsjsjfsjfsj
PDF
[EN] Industrial Machine Downtime Prediction
PPTX
Supervised vs unsupervised machine learning algorithms
PDF
Recruitment and Placement PPT.pdfbjfibjdfbjfobj
PPTX
Qualitative Qantitative and Mixed Methods.pptx
PPTX
DISORDERS OF THE LIVER, GALLBLADDER AND PANCREASE (1).pptx
PPTX
Computer network topology notes for revision
PPTX
1_Introduction to advance data techniques.pptx
PPTX
Microsoft-Fabric-Unifying-Analytics-for-the-Modern-Enterprise Solution.pptx
PPTX
Market Analysis -202507- Wind-Solar+Hybrid+Street+Lights+for+the+North+Amer...
PPT
Miokarditis (Inflamasi pada Otot Jantung)
PPTX
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
PDF
annual-report-2024-2025 original latest.
PPTX
climate analysis of Dhaka ,Banglades.pptx
PPTX
Introduction-to-Cloud-ComputingFinal.pptx
PPTX
mbdjdhjjodule 5-1 rhfhhfjtjjhafbrhfnfbbfnb
PPT
Reliability_Chapter_ presentation 1221.5784
PPTX
Introduction to machine learning and Linear Models
Introduction to the R Programming Language
The THESIS FINAL-DEFENSE-PRESENTATION.pptx
AI Strategy room jwfjksfksfjsjsjsjsjfsjfsj
[EN] Industrial Machine Downtime Prediction
Supervised vs unsupervised machine learning algorithms
Recruitment and Placement PPT.pdfbjfibjdfbjfobj
Qualitative Qantitative and Mixed Methods.pptx
DISORDERS OF THE LIVER, GALLBLADDER AND PANCREASE (1).pptx
Computer network topology notes for revision
1_Introduction to advance data techniques.pptx
Microsoft-Fabric-Unifying-Analytics-for-the-Modern-Enterprise Solution.pptx
Market Analysis -202507- Wind-Solar+Hybrid+Street+Lights+for+the+North+Amer...
Miokarditis (Inflamasi pada Otot Jantung)
ALIMENTARY AND BILIARY CONDITIONS 3-1.pptx
annual-report-2024-2025 original latest.
climate analysis of Dhaka ,Banglades.pptx
Introduction-to-Cloud-ComputingFinal.pptx
mbdjdhjjodule 5-1 rhfhhfjtjjhafbrhfnfbbfnb
Reliability_Chapter_ presentation 1221.5784
Introduction to machine learning and Linear Models
Ad

BANA7030_DES_Advanced_Modeling.pptx Simulation

  • 2. What We’ll Do ... • New functionality in a call center model • Explore sets and outputs in Arena • Learn process analyzer • Approaches for steady-state models Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 3. CALL CENTER MODEL Develop basic production process Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 4. Call Center Model Setup • One phone number for customers to call in to – 26 trunk lines, one needed for each call (incoming or outgoing, talking or on hold) – Arriving call finding no free trunk lines gets busy signal, goes away • Count number of such rejected calls • Calls arrive with interarrivals ~ EXPO (0.857) min. – First call arrives at time 0 • Three incoming call types – Initial recording to decide ~ UNIF (0.1, 0.6) min. – Tech support (76%), sales (16%), order status (8%) Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 5. Call Center Model Setup • Tech-support calls – For product type 1 (25%), 2 (34%), or 3 (41%) – Needs qualified tech-support person • Two for type 1, three for type 2, three for type 3 – No crossover to another type • Separate FIFO queues for each type • Conversation time ~ TRIA (3, 6, 18) min. for all types – Then leaves system • Sales calls – All the same – Four sales staff, all the same • One FIFO queue feeding all sales staff – Conversation time ~ TRIA (4, 15, 45) – Then leaves system Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 6. Call Center Model Setup • Order-status calls – All the same – Handled automatically by phone system • No limit on number in process at a time, except for trunk-line limit – “Conversation” time ~ TRIA (2, 3, 4) – After “conversation,” 15% of callers opt to talk to a person • Routed to sales staff • Sales calls have higher priority (non-preemptive) • Center receives calls 8am – 6pm – Must terminate arrival process at 6pm – Operate past 6pm, if necessary, to “flush out” all calls Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 7. Call Center Model Setup • Output performance measures – Number of calls attempted, rejected, completed – By call type – total time in system – By resource – time on hold, number of calls on hold – Resource utilization – personnel, trunk lines • Terminating or steady-state – Time frame of interest for each replication • Terminating – specific starting, stopping conditions (this model) – Stopping conditions could be of several forms – fixed time, count, condition (here) • Steady-state – output performance measures are a limit as simulated time   • Choice usually depends on intent of study, not on model logic Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 8. Simple Call Center Data Structure • Re-use data in several places – Define once, global to whole model – Redefine once – modeling generality, user efficiency • Arena Variables – Store numbers (not formulas) – Define, initialize in Variable data module (Data Definition) – Can change during run (Assign module, other ways) – Scalar, 1-d array (vector), 2-d array (matrix) • Arena Expressions – generalize Variables – Store formulas (as well as numbers) • Use math ops, numbers, random variates, Attributes, Variables, ... – Define in Expression data module (Data Definition) – Scalar, 1-d array (vector), 2-d array (matrix) Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 9. Arrivals • Create attempted calls – Entity type Incoming Call, change later – Max Arrivals = MaxCalls, Variable initialized to 999999 • At 6pm (time 600 minutes) change this to 1 to cut off arrivals ... later • Entity data module – Incoming Call Entity Type already there – For Initial Picture, select Picture.Blue Ball • Record module for an attempted call – Add 1 to Counter Name Attempted Calls – Results – Category Overview report, User Specified Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 10. Arrivals • Decide module – Trunk Line Available? – Type = 2-way by Condition • Select (logical) Expression for “If” – NR() is number of units of that resource that are busy now – MR() is number of units of that resource that exist now – False – Record rejected call counter, Dispose – True: • Seize a unit of Trunk Line Resource – Release later – Resources data module for Trunk Line and other Resource levels • Increment Variable Total WIP for number of active calls – Used in stopping rule at or after 6pm to sense if system is empty • Store module to enable entity animation during next Delay module – Add Storage animation separately, identify with this logical storage by name – Storage data module – entry made there by Store module • Delay module to listen to initial recording, make selection – Could have used Process module, but this is simpler, faster • Unstore module to make entity animation disappear Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 11. Arrivals to Service • Decide module – Determine Call Type – Three-sided coin flip – Type = N-way by Chance • Add button for more sides of coin • Get new exit point for each Add, plus one for Else • Note that probabilities are entered as percentages (0-100, not 0-1) • Last entry is “else” • Direct call to one of tech support, sales, or order-status areas Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 12. Tech-Support Calls • Assign module – Change Entity Type for separating out in results – Change Entity Picture for animation • Store – Delay – Unstore for recording, product type selection • Decide module for product type – Different three-sided coin flip – Direct to appropriate Process module for that product type • Process modules for tech-support service – Seize-Delay-Release – Seize a unit from appropriate multi-unit Resource – Use Tech Time defined in Expression data module • Proceed to system exit logic ... later Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 13. Sales Calls • Assign module – change Entity Type, Picture • Process module – Seize-Delay-Release – Seize a unit of Sales Resource • Sales calls priority over order-status calls that seek a person? – Queue data module, Process Sales Call.Queue • Type = Lowest Attribute Value – Attribute Name = Sales Call Priority – Undefined for sales calls, so has value 0 ... will set to 1 for order-status calls that seek a person, putting sales calls ahead in the queue • Shared queue (with order-status calls seeking a person) • Proceed to system-exit logic Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 14. Order-Status Call • Assign module – change Entity Type, Picture • Use store and delay for automated processing • Decide module – No sales person required – go directly to system-exit logic – Sales person required: • Assign module – set Sales Call Priority Attribute to 1 so these will have lower priority than real sales calls • Seize module for a unit of Sales resource – Define Queue Name = Process Sales Call.Queue – shared with sales calls – Process module does not allow for specifying a shared queue, so can’t use here • Delay for conversation with sales person • Release the unit of Sales resource • Proceed to system-exit logic Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 15. System Exit • All calls of all types come here when finished • Release module – release the unit of Trunk Line resource seized upstream • Assign module – decrement Total WIP variable • Record module – increment Completed Calls counter • Dispose of call Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 16. Arrival Cutoff Logic • Used to “choke off” arrival stream at 6pm • Create a single “logical” entity at time 600 min. (6pm) – Overkill on making sure just one is created • Time Between Arrivals = 999999 min., Max Arrivals = 1 • Assign module to set Variable MaxCalls to 1 – Recall use of MaxCalls for Max Arrivals in Create module for attempted calls • Dispose of this single logical entity Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 17. Call Center Setup • Replication Parameters tab (other tabs as usual) • Base Time Units = Minutes • Replication Length = Infinite (the default) • Terminating Condition field: TNOW >= 600.0 && Total WIP == 0 Arena clock Variable Greater than or equal to 600 minutes, (6pm) Logical “and” Variable we maintained in model Equality test for zero Base Time Units It’s 6pm or later and there are no calls in the system.
  • 18. Call Center Animation • Place three Storage animations – Initial Recording Delay, Tech Call Recording Delay, Order Status Delay – Select proper Identifier in each from pull-down list – Graphic behaves like Queue animations • Four Queue animations – Three tech-support call product types, sales – Came with four Process modules specifying Seize • Resource animations for three tech-support types, sales Resources Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 19. ENHANCED CALL CENTER Enhanced Processing Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 20. Call Center Changes • Incoming calls’ arrival rate varies over day – Probabilistic model – Nonstationary Poisson process • More in Section 12.3 – Instead of a constant rate (= 1 / mean interarrival time), specify a rate function • Arena supports piecewise-constant rate function – “step” functions – Easy to specify, strong theoretical support • Rate-function specification: In Arena, rates MUST be in arrivals per HOUR, regardless of base time units or time intervals Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 21. Call Center Changes Sales-staff size varies over day Data in text, Schedule data module, Sales Schedule Tech-support staff are partially cross-trained, work complicated schedule: Will use Arena Sets concept to implement this cross training Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 22. Call Center Changes • 4% of tech-support calls cannot be handled during the call, need offline back-office research – Original call ends, same original talk-time distribution, gives up its trunk line, but not counted (yet) as completed – Case sent to back office (outside model boundaries), takes EXPO (60) minutes to resolve • Offline research may be carried over night, completed on a later day – Answer goes back to same tech-support person who took original call, with higher priority than incoming calls, but still might have to queue for this person – This tech-support person requests a trunk line for outgoing call, higher priority than incoming calls, but still might have to queue, talks for TRIA (2 ,4 ,9) min., call is now completed – Track number of each product type after research is done Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 23. Data Structure • Resource, Schedule data modules – Trunk Line – fixed capacity at 26 – Sales – on Schedule Sales Schedule – 11 individual tech-support people on individual schedules • Caution – must fill out each schedule to all 22 half-hour periods, with leading/trailing 0’s if necessary • Ignore option to avoid shifting back schedule over multiple days • Include costing data for people in Resource data module – Define nonstationary arrival-rate function in Schedule module – Arrival Schedule • Enter trailing 0’s in schedule editor Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 24. Data Structure • Sets – collect same-type items together – Set data modules (Data Definition Panel) • Refer to items in set by original name, or index (subscript) in set – Resource set for each tech-support product type • Members are those tech-support resources qualified • Individual resources already defined – Resource data module • Overlapping membership – some resources in multiple sets • Sets are ordered – here, put most versatile tech-support people at bottom, to “save” them for other calls ... Preferred Order in Seize • Will Seize from a set in model – Counter set – one for each hour • Count number of rejected calls in each hour • Individual counters already defined – Data Definitions Set module Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 25. Create Arrival Schedule • Create Arrival Schedule Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 26. Create Resource Schedules • Add Resource for each person • Create individual schedule for each person Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 27. Create Resource Sets • Go to Data Definition / Set • Create a set of resources for each product based on the products they have been trained to support Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 28. Arrivals and Termination • Create module – Type = Schedule, Schedule Name = Arrival Schedule – Max Arrivals = Infinite • Delete the entire arrival-cutoff section from Model – Arrival Schedule cuts off arrivals at 6pm, via 0 rate • Delete Total WIP variable used to terminate model – Use built-in NR(Trunk Line) instead in Terminating Condition – Delete Assign modules used to manage Total WIP Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 29. Arrivals and Terminations • Record module for rejected calls – Index into Counter Set Rejected Calls with index AINT((TNOW/60) + 1) which is 1 for first hour, 2 for second hour, etc. (AINT truncates decimals toward zero) Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 30. Model Modifications • Tech-support calls – Same through Determine Product Type Decide – Add Assign modules for each product type thereafter • Entity Type to distinguish product type in reports • Entity Picture to distinguish product type in animation • Attribute Tech Call Type (1, 2, or 3 by product type) for routing Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 31. Model Modifications • Tech-support calls – Process modules, Resources subdialogs • Type = Set • Set Name = Product 1, etc. • Selection Rule = Preferred Order, to select earlier entries in set first – Recall – we put more versatile tech-support people lower in the set list • Save Attribute = Tech Agent Index – Entity attribute, carried along, in case of back-office research to send back to this same tech-support person for return call Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 32. New Backoffice Process • Back office, returned tech-support calls – all new – Entry via True branch (4%) in Decide module Backoffice Research and Return Call? – Release this call’s trunk line – going offline now – Delay (with storage) for EXPO (60) back-office research – Increment Tech Return WIP(Tech Call Type) • 1-dim. Variable array – defined in Variable data module • Tech Call Type is 1, 2, or 3, assigned in earlier Assign module – Decide module Product Type? based on Entity Type – Seize the same tech-support person – higher priority – Then seize a trunk line (higher priority), make return call – Then release this trunk line, tech-support person – Decrement Tech Return WIP(Tech Call Type) – Send entity to final Record, after trunk-line release there Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 33. New Backoffice Process • Input Output Time Persistent data module – Ten Counter-type statistics, discussed earlier – Four Time-Persistent statistics to track expressions • Backoffice Research WIP to track total number of cases in research, via NSTO(Backoffice Research Storage) • Create a statistic to track the total WIP for each Technician Type. – Create an expression for each of the 3 techs using the formula » Process Product Type 1 Tech Call.WIP + Tech Return WIP(1), etc. – In the Input/Output area. Add a Time-Persistent Statistic for each of the 3 types of technicians. Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 34. Animation Updates • Delete Tech 1, Tech 2, and Tech 3 resource animations • Change variables in three tech-support WIP displays to track total number of tech-support calls of that type present • New back-office storage animation, variable animation for number present • A new queue for each tech-support product type for return calls waiting for service • Added a resource animation for each individual tech-support person Simulation with Arena, 4th ed. Chapter 5 – Modeling Detailed Operations
  • 35. PROCESS ANALYZER Evaluate several model scenarios together Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 36. Analysis of Multiple Scenarios • With many scenarios to compare in our model, two problems are – Simple mechanics of making many parameter changes, making many runs, keeping track of many output files – Statistical methods for drawing reliable, useful conclusions • Process Analyzer (PAN) addresses these • PAN operates on program (.p) files – produced when .doe file is run (or just checked) • Start PAN from Arena (Tools > Process Analyzer) or via Windows • PAN runs on its own, separate from Arena Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 37. PAN Scenarios • A scenario in PAN is a combination of: – A program (.p) file – Set of input controls that you choose • Chosen from Variables and Resource capacities – think ahead • You fill in specific numerical values – Set of output responses that you choose • Chosen from automatic Arena outputs or your own Variables • Values initially empty … to be filled in after run(s) Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 38. PAN Scenarios • To create a new scenario in PAN, double-click where indicated, get Scenario Properties dialog – Specify Name, Tool Tip Text, .p file, controls, responses – Values of controls initially as in the model, but you can change them in PAN – this is the real utility of PAN – Duplicate (right-click, Duplicate) scenarios, then edit for a new one • Think of a scenario as a row Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 39. PAN Scenario for Call Center • Noticed high utilization and long wait time for Sales calls • Noticed many rejected calls between hours 5 and 8 • Want to consider the following: – Adding more Sales associates – Adding more Trunk Lines – Adding more technicians of each type (who work during hours 5-8) • Type 1 agent with schedule like Charity • Type 2 agent with schedule like Tierney • Type 3 agent with schedule like Shelley • All Types with a schedule like Anna • Want to evaluate the following measures: Rejected Call per hour, Utilization of Sales resources, Waiting time for Sales call, Trunk Line Utilization • How many runs of the model would this require? What if we wanted to combine scenarios? Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 40. Creating PAN • Go to File -> New • Double Click to add a new scenario • Give it a name (Base Model) and point it to your .p file from the Enhanced Call Center model. Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 41. Adding Controls • Need to add Controls. – These are the things that you want to change in the model with a scenario – Must be resources, system values or user specified values from your model. • To add a Control, go to the Insert tab and select Control from the dropdown. • Add controls for the things we identified for consideration Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 42. Adding Controls Will be able to run scenarios that change the number of each of these Controls. Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 43. Adding Responses • Need to add Responses. – These are the outputs of the simulation that you would like to evaluate for each scenario that you run. – Many response values available for Entities, Queues, Resources, System and User-Specified • To add a Response, go to the Insert tab and select Response from the dropdown. • Add responses for the things we identified for evaluation Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 44. Adding Responses Responses will populate for each scenario that we identify and run. Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 45. Creating Scenarios • Recommend duplicating the base scenario to provide consistent output for analysis. • Right click on the line and select Duplicate Scenario • Duplicate your Base Model 6 times and give meaningful names to each one. Update 1 or more of the control values to reflect the scenario name. Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 46. Running PAN • Can run one or more scenarios at the same time. • Select the scenarios tor run, go to Run Tab and select Go. Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations
  • 47. PAN Results Evaluate results. Determine if additional scenarios are needed, modify controls and rerun the analysis Simulation with Arena, 4th ed. Chapter 6 – Stat. Output Analysis Terminating Simulations