Process simulation. Enn Õunapuu enn.ounapuu@ttu.ee

Similar documents
MTAT Business Process Management (BPM) Lecture 6 Quantitative Process Analysis (Queuing & Simulation)

Arena 9.0 Basic Modules based on Arena Online Help

Waiting Times Chapter 7

Basic Queuing Relationships

LECTURE 16. Readings: Section 5.1. Lecture outline. Random processes Definition of the Bernoulli process Basic properties of the Bernoulli process

Queuing Theory. Long Term Averages. Assumptions. Interesting Values. Queuing Model

BPMN and Simulation. L. J. Enstone & M. F. Clark The Lanner Group April 2006

CHAPTER 3 CALL CENTER QUEUING MODEL WITH LOGNORMAL SERVICE TIME DISTRIBUTION

UNIT 2 QUEUING THEORY

CALL CENTER PERFORMANCE EVALUATION USING QUEUEING NETWORK AND SIMULATION

TEST 2 STUDY GUIDE. 1. Consider the data shown below.

Modeling Workflow Patterns

IST 301. Class Exercise: Simulating Business Processes

Lecture 8 Performance Measurements and Metrics. Performance Metrics. Outline. Performance Metrics. Performance Metrics Performance Measurements

Queuing Theory II 2006 Samuel L. Baker

Basic Multiplexing models. Computer Networks - Vassilis Tsaoussidis

Simulation and Lean Six Sigma

Chapter 13 Waiting Lines and Queuing Theory Models - Dr. Samir Safi

CHAPTER 5 WLDMA: A NEW LOAD BALANCING STRATEGY FOR WAN ENVIRONMENT

Load Balancing and Switch Scheduling

Simple Queuing Theory Tools You Can Use in Healthcare

Introduction to Business Model Simulation ActiveVOS Designer

Smart Queue Scheduling for QoS Spring 2001 Final Report

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed.

Reducing or increasing the number of people assigned to an activity. A sudden increase of the number of instances flowing through the process.

Justifying Simulation. Why use simulation? Accurate Depiction of Reality. Insightful system evaluations

Deployment of express checkout lines at supermarkets

Case Study I: A Database Service

Chapter 1. Introduction

A capacity planning / queueing theory primer or How far can you go on the back of an envelope? Elementary Tutorial CMG 87

Chapter 3 General Principles in Simulation

Arena Tutorial 1. Installation STUDENT 2. Overall Features of Arena

QUEUING THEORY. 1. Introduction

Chapter 8 Detailed Modeling

Chapter 2. Simulation Examples 2.1. Prof. Dr. Mesut Güneş Ch. 2 Simulation Examples

CRM Sales Opportunity Management

Load Balancing in cloud computing

Programma della seconda parte del corso

CH.1. Lecture # 2. Computer Networks and the Internet. Eng. Wafaa Audah. Islamic University of Gaza. Faculty of Engineering

White Paper Business Process Modeling and Simulation

VoIP Network Dimensioning using Delay and Loss Bounds for Voice and Data Applications

User s Guide for ContactCenters Simulation Library

Stochastic Processes and Queueing Theory used in Cloud Computer Performance Simulations

A MODEL OF OPERATIONS CAPACITY PLANNING AND MANAGEMENT FOR ADMINISTRATIVE SERVICE CENTERS

Quantitative Analysis of Cloud-based Streaming Services

4 Internet QoS Management

BPMN by example. Bizagi Suite. Copyright 2014 Bizagi

UNITY CALL CENTER REPORTING. Version 1.0

How To Model A System

HSR HOCHSCHULE FÜR TECHNIK RA PPERSW I L

Comparative Analysis of Congestion Control Algorithms Using ns-2

Performance Testing Process A Whitepaper

Process Modeling Notations and Workflow Patterns

A Case Study in Software Enhancements as Six Sigma Process Improvements: Simulating Productivity Savings

MA 1125 Lecture 14 - Expected Values. Friday, February 28, Objectives: Introduce expected values.

1: B asic S imu lati on Modeling

A SIMULATION MODEL FOR RESOURCE CONSTRAINED SCHEDULING OF MULTIPLE PROJECTS

Design and analysis of flow aware load balancing mechanisms for multi-service networks

AMS 5 CHANCE VARIABILITY

M/M/1 and M/M/m Queueing Systems

Minimize Wait Time and Improve the Waiting Experience

A Policy-Based Admission Control Scheme for Voice over IP Networks

Quick Reference Guide Interactive PDF Project Management Processes for a Project

modeling Network Traffic

Network Design Performance Evaluation, and Simulation #6

EXPERIMENTAL STUDY FOR QUALITY OF SERVICE IN VOICE OVER IP

Chapter 3 ATM and Multimedia Traffic

Sensitivity Analysis of Safety Measures for Railway Tunnel Fire Accident

Performance Analysis of a Telephone System with both Patient and Impatient Customers

Understanding ACD and SMDR

Multi-service Load Balancing in a Heterogeneous Network with Vertical Handover

Understanding Task Scheduler FIGURE Task Scheduler. The error reporting screen.

The problem with waiting time

How To Manage A Call Center

Business Process Modelling with BPMN. Monique Snoeck Management Information Systems Group FEB KU Leuven

Business Process Modeling

Congestion Control Review Computer Networking. Resource Management Approaches. Traffic and Resource Management. What is congestion control?

LPV model identification for power management of Web service systems Mara Tanelli, Danilo Ardagna, Marco Lovera

CALL CENTER REPORTS GUIDE

An Approach to Load Balancing In Cloud Computing

LOAD BALANCING AND ADMISSION CONTROL OF A PARLAY X APPLICATION SERVER

Job Reference Guide. SLAMD Distributed Load Generation Engine. Version 1.8.2

Chapter 4. Probability Distributions

Modeling Stochastic Inventory Policy with Simulation

Manufacturing Systems Modeling and Analysis

DISCRETE EVENT SIMULATION HELPDESK MODEL IN SIMPROCESS

Web Server Software Architectures

Examining Self-Similarity Network Traffic intervals

TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP)

Introduction. Continue to Step 1: Creating a Process Simulator Model. Goal: 40 units/week of new component. Process Simulator Tutorial

Internet Traffic Variability (Long Range Dependency Effects) Dheeraj Reddy CS8803 Fall 2003

Transcription:

Process simulation Enn Õunapuu enn.ounapuu@ttu.ee

Content Problem How? Example

Simulation Definition Modeling and simulation functionality allows for preexecution what-if modeling and simulation. Postexecution optimization is available based on the analysis of actual as-performed metrics.

Process Analysis Techniques Quantitative Analysis Quantitative Flow Analysis Queuing Theory Process Simulation Qualitative analysis Value-Added Analysis Root-Cause Analysis Pareto Analysis Issue Register

Why flow analysis is not enough? Flow analysis does not consider waiting times due to resource contention Queuing analysis and simulation address these limitations and have a broader applicability

Why is Queuing Analysis Important? Capacity problems are very common in industry and one of the main drivers of process redesign Need to balance the cost of increased capacity against the gains of increased productivity and service Queuing and waiting time analysis is particularly important in service systems Large costs of waiting and/or lost sales due to waiting Prototype Example ER at a Hospital Patients arrive by ambulance or by their own accord One doctor is always on duty More patients seeks help longer waiting times Question: Should another MD position be instated? Laguna & Marklund

Delay is Caused by Job Interference Deterministic traffic Variable but spaced apart traffic If arrivals are regular or sufficiently spaced apart, no queuing delay occurs Dimitri P. Bertsekas

Burstiness Causes Interference Queuing results from variability in service times and/or interarrival intervals Dimitri P. Bertsekas

Job Size Variation Causes Interference Deterministic arrivals, variable job sizes Dimitri P. Bertsekas

High Utilization Exacerbates Interference The queuing probability increases as the load increases Utilization close to 100% is unsustainable too long queuing times Dimitri P. Bertsekas

The Poisson Process Common arrival assumption in many queuing and simulation models The times between arrivals are independent, identically distributed and exponential P (arrival < t) = 1 e -λt Key property: The fact that a certain event has not happened tells us nothing about how long it will take before it happens e.g., P(X > 40 X >= 30) = P (X > 10) Laguna & Marklund

Negative Exponential Distribution

Queuing theory: basic concepts arrivals waiting service l Basic characteristics: l (mean arrival rate) = average number of arrivals per time unit m (mean service rate) = average number of jobs that can be handled by one server per time unit: c = number of servers c m Wil van der Aalst

Queuing theory concepts (cont.) l Wq,Lq c m W,L Given l, m and c, we can calculate : occupation rate: r Wq = average time in queue W = average system in system (i.e. cycle time) Lq = average number in queue (i.e. length of queue) L = average number in system average (i.e. Work-in-Progress) Wil van der Aalst

M/M/1 queue Assumptions: l time between arrivals and service time follow a negative exponential distribution 1 server (c = 1) FIFO L=r/(1- r) 1 ρ W=L/l=1/(m- l) m Capacity Demand Available Capacity λ μ L q = r 2 /(1- r) = L-r Wq=Lq/l= l /( m(m- l)) Laguna & Marklund

M/M/c queue Now there are c servers in parallel, so the expected capacity per time unit is then c*m r Capacity Demand Available Capacity l c* m Little s Formula Wq=Lq/l W=Wq+(1/m) Little s Formula L=lW Laguna & Marklund

Tool Support For M/M/c systems, the exact computation of Lq is rather complex Consider using a tool, e.g. http://apps.business.ualberta.ca/aingolfsson/qtp/ http://www.stat.auckland.ac.nz/~stats255/qsim/qsim.html 0 2 c c n n q P ) c!(1 ) / (... c)p (n L r r m l 1 c 1 c 0 n n 0 ) /(c ( 1 1 c! ) / ( n! ) / ( P m l m l m l

Situation Example ER at County Hospital Patients arrive according to a Poisson process with intensity l ( the time between arrivals is exp(l) distributed. The service time (the doctor s examination and treatment time of a patient) follows an exponential distribution with mean 1/m (=exp(m) distributed) The ER can be modeled as an M/M/c system where c=the number of doctors Data gathering l = 2 patients per hour m = 3 patients per hour Question Should the capacity be increased from 1 to 2 doctors? Laguna & Marklund

Queuing Analysis Hospital Scenario Interpretation To be in the queue = to be in the waiting room To be in the system = to be in the ER (waiting or under treatment) Characteristic One doctor (c=1) Two Doctors (c=2) r 2/3 1/3 Lq 4/3 patients 1/12 patients L 2 patients 3/4 patients Wq 2/3 h = 40 minutes 1/24 h = 2.5 minutes W 1 h 3/8 h = 22.5 minutes Is it warranted to hire a second doctor? Laguna & Marklund

Process Simulation Drawbacks of queuing theory: Generally not applicable when system includes parallel activities Requires case-by-case mathematical analysis Assumes steady-state (valid only for long-term analysis) Process simulation is more versatile (also more popular) Process simulation = run a large number of process instances, gather data (cost, duration, resource usage) and calculate statistics from the output

Process Simulation Steps in evaluating a process with simulation 1. Model the process (e.g. BPMN) 2. Enhance the process model with simulation info simulation model Based on assumptions or better based on data (logs) 3. Run the simulation 4. Analyze the simulation outputs 1. Process duration and cost stats and histograms 2. Waiting times (per activity) 3. Resource utilization (per resource) 5. Repeat for alternative scenarios

Elements of a simulation model The process model including: Events, activities, control-flow relations (flows, gateways) Resource classes (i.e. lanes) Resource assignment Mapping from activities to resource classes Processing times Costs Per activity or per activity-resource pair Per activity and/or per activity-resource pair Arrival rate of process instances Conditional branching probabilities (XOR gateways)

Simulation Example BPMN model Receive info Request info No accept Deliver card Start Check for completeness complete? Yes Perform checks Make decision Decide reject Notify acceptance End Notify rejection review request Time out reviiew Receive review request

Resource Pools (Roles) Two options to define resource pools Define individual resources of type clerk Or assign a number of anonymous resources all with the same cost E.g. 3 anonymous clerks with cost of 10 per hour, 8 hours per day 2 individually named clerks Jim: 12.4 per hour Mike: 14.8 per hour 1 manager John at 20 per hour, 8 hours per day

Resource pools and execution times Task Role Execution Time Normal distribution: mean and std deviation Receive application system 0 0 Check completeness Clerk 30 mins 10 mins Perform checks Clerk 2 hours 1 hour Request info system 1 min 0 Receive info (Event) system 48 hours 24 hours Make decision Manager 1 hour 30 mins Notify rejection system 1 min 0 Time out (Time) system 72 hours 0 Receive review request (Event) system 48 hours 12 hours Notify acceptance system 1 min 0 Deliver Credit card system 1 hour 0 Alternative: assign execution times to the tasks only (like in cycle time analysis)

Reminder: Normal Distribution

Arrival rate and branching probabilities 10 applications per hour (one at a time) Poisson arrival process (negative exponential) No Receive info Request info 0.3 0.5 accept Deliver card Start Receive review request Check for completeness complete? Yes 0.7 Perform checks reviiew Make decision 0.2 Decide 0.5 reject Notify acceptance Notify rejection 0.8 Time out review request End Alternative: instead of branching probabilities one can assign conditional expressions to the branches based on input data

# PI's Simulation output: KPIs Resource Resource Utilization Cost 100.00% 4,500.00 $ 4,260.95 90.00% 4,000.00 80.00% 3,500.00 70.00% 3,000.00 60.00% 2,500.00 50.00% 2,000.00 40.00% 1,500.00 30.00% 1,000.00 20.00% 12 10 18.82% $ 898.458 50.34% Cycle Time - Histogram 10.00% 500.00 6 $ 5.04% 285.00 0.00% 4 Clerk 2 Manager System 0 0 10 20 30 40 50 60 Days

Simulation output: detailed logs Process Instance # Activities Start End Cycle Time Cycle Time (s) Total Time 6 5 4/06/2007 13:00 4/06/2007 16:26 03:26:44 12403.586 03:26:44 7 5 4/06/2007 14:00 5/06/2007 9:30 19:30:38 70238.376 19:30:38 Process Instance Activity ID Activity Name Activity Type Resource Start End 11 5 4/06/2007 18:00 5/06/2007 12:14 18:14:56 65695.612 18:14:56 6 aed54717-f044-4da1-b543-82a660809ecb Check for completeness Task Manager 4/06/2007 13:00 4/06/2007 13:53 13 5 4/06/2007 20:00 5/06/2007 13:14 17:14:56 62095.612 17:14:56 6 a270f5c6-7e16-42c1-bfc4-dd10ce8dc835 Perform checks Task Clerk 4/06/2007 13:53 4/06/2007 15:25 16 5 4/06/2007 23:00 5/06/2007 15:06 16:06:29 57989.23 16:06:29 6 77511d7c-1eda-40ea-ac7d-886fa03de15b Make decision Task Manager 4/06/2007 15:25 4/06/2007 15:26 22 5 5/06/2007 5:00 6/06/2007 10:01 29:01:39 104498.797 29:01:39 6 099a64eb-1865-4888-86e6-e7de36d348c2 Notify acceptance IntermediateEvent (none) 4/06/2007 15:26 4/06/2007 15:26 27 8 5/06/2007 10:00 6/06/2007 12:33 26:33:21 95600.649 26:33:21 6 0a72cf69-5425-4f31-8c7e-6d093429ab04 Deliver card Task System 4/06/2007 15:26 4/06/2007 16:26 7 aed54717-f044-4da1-b543-82a660809ecb Check for completeness Task Manager 4/06/2007 14:00 4/06/2007 14:31 7 a270f5c6-7e16-42c1-bfc4-dd10ce8dc835 Perform checks Task Clerk 4/06/2007 14:31 5/06/2007 8:30

Bizagi simulation Randomness is simulated by the use of probabilities for sequence flows and token routing and also by using statistical distributions to reflect variability in process times of activities etc. To make sure results are valid, the simulation needs be run for long enough to yield random behavior without chance (consider the scenario of tossing a coin or rolling a dice multiple times). Provision should be made to compare results from the same scenario, but different run lengths or replications.the required run length to yield usable outcomes depends on the process model structure, amount of variability and the objective; consequently, a single recommended run length cannot be provided. A replication shares the same scenario configuration and runs for the same length of time, but uses an alternative random stream.

Level 1 - Process Validation Data: It requires estimated percentage splits of sequence flows to provide a basis for routing. It also needs the value of the trigger counter contained in the Start Event shape. Results: The outcomes show all paths activated during the execution and whether all tokens actually finished. Additionally, it evaluates how many tokens passed through each Sequence Flow, Activity and End Event.

Level 2 Time Analysis: Second level of simulation to measure the end-to-end process time. Data: Apart from the data entered in Process Validation, estimated timings (service times) of each activity and the interval time between token generation is required. This data can either be constant or samples from statistical distributions 1. Results: The results show process throughput times for tokens, presented as minimum, maximum, mean and sum (total of all processing times). Similar results can be presented for individual key activities.

Level 3 Resource Analysis: Predicts how the process will perform with different levels of resources. This level of detail provides a reliable estimate of how the process will perform in operation. Data: In addition to the data entered in Time Analysis, this level includes the definition of resources (and/or roles): how many are available and where they are used. Due to the inclusion of resources, the activity times should be adjusted to represent the actual work time; delay due to unavailability of staff will be explicitly indicated. Results: The structure of the results is similar to Time Analysis. Also, the time spent, the time spent busy or idle for each type of resource is presented.

Level 4 Calendar Analysis: Includes calendar information that reflects the process performance over dynamic periods of time, such as shifts, days schedules or weeks. Data: Apart from the data entered in Resource Analysis, it includes the definition of resource calendars. Results: The structure of the results is similar to Resource Analysis.

Questions?