Marlon Dumas marlon.dumas ät ut . ee

Slides:



Advertisements
Similar presentations
McGraw-Hill/Irwin Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved. A PowerPoint Presentation Package to Accompany Applied Statistics.
Advertisements

Marlon Dumas marlon.dumas ät ut . ee
Capacity Setting and Queuing Theory
Marlon Dumas marlon.dumas ät ut . ee
Nur Aini Masruroh Queuing Theory. Outlines IntroductionBirth-death processSingle server modelMulti server model.
Queuing Analysis Based on noted from Appendix A of Stallings Operating System text 6/10/20151.
Performance analysis for high speed switches Lecture 6.
Chapter 13 Queuing Theory
1 Performance Evaluation of Computer Networks Objectives  Introduction to Queuing Theory  Little’s Theorem  Standard Notation of Queuing Systems  Poisson.
1 Queuing Theory 2 Queuing theory is the study of waiting in lines or queues. Server Pool of potential customers Rear of queue Front of queue Line (or.
Data Communication and Networks Lecture 13 Performance December 9, 2004 Joseph Conron Computer Science Department New York University
1 Validation and Verification of Simulation Models.
14-1. Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill/Irwin 14 Capacity Planning and Queuing Models.
To accompany Quantitative Analysis for Management, 9e by Render/Stair/Hanna 14-1 © 2003 by Prentice Hall, Inc. Upper Saddle River, NJ Chapter 14.
Queuing Theory. Queuing theory is the study of waiting in lines or queues. Server Pool of potential customers Rear of queue Front of queue Line (or queue)
BCOR 1020 Business Statistics Lecture 11 – February 21, 2008.
Chapter 9: Queuing Models
Lecture 14 – Queuing Systems
Spreadsheet Modeling & Decision Analysis
Introduction to Management Science
1 Performance Evaluation of Computer Networks: Part II Objectives r Simulation Modeling r Classification of Simulation Modeling r Discrete-Event Simulation.
Copyright ©: Nahrstedt, Angrave, Abdelzaher, Caccamo1 Queueing Systems.
Introduction to Queueing Theory
Marlon Dumas marlon.dumas ät ut . ee
Marlon Dumas marlon.dumas ät ut . ee
NETE4631:Capacity Planning (2)- Lecture 10 Suronapee Phoomvuthisarn, Ph.D. /
Structure of a Waiting Line System Queuing theory is the study of waiting lines Four characteristics of a queuing system: –The manner in which customers.
Queuing Theory Basic properties, Markovian models, Networks of queues, General service time distributions, Finite source models, Multiserver queues Chapter.
IE 429, Parisay, January 2010 What you need to know from Probability and Statistics: Experiment outcome: constant, random variable Random variable: discrete,
Chapter 16 Capacity Planning and Queuing Models
1 Chapters 8 Overview of Queuing Analysis. Chapter 8 Overview of Queuing Analysis 2 Projected vs. Actual Response Time.
1 ISE 195 Introduction to Industrial & Systems Engineering.
CSCI1600: Embedded and Real Time Software Lecture 19: Queuing Theory Steven Reiss, Fall 2015.
Waiting Lines and Queuing Theory Models
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Copyright ©: Nahrstedt, Angrave, Abdelzaher, Caccamo1 Queueing Systems.
OPSM 301: Operations Management Session 13-14: Queue management Koç University Graduate School of Business MBA Program Zeynep Aksin
© 2015 McGraw-Hill Education. All rights reserved. Chapter 17 Queueing Theory.
Queuing Models.
1 BIS 3106: Business Process Management (BPM) Lecture Nine: Quantitative Process Analysis (2) Makerere University School of Computing and Informatics Technology.
MTAT Business Process Management Lecture 6 – Quantitative Process Analysis II Marlon Dumas marlon.dumas ät ut. ee 1.
Managerial Decision Making Chapter 13 Queuing Models.
Marlon Dumas marlon.dumas ät ut . ee
Managing Waiting Lines & Queuing Systems
Monte Carlo Simulation Random Number Generation
OPERATING SYSTEMS CS 3502 Fall 2017
Lecture 14 – Queuing Networks
Prepared by Lloyd R. Jaisingh
Models of Traffic Flow 1.
Queuing Theory Non-Markov Systems
Chapter 9: Queuing Models
Chapter 10 Verification and Validation of Simulation Models
Chapter 7: Quantitative Process Analysis
Demo on Queuing Concepts
CSCI1600: Embedded and Real Time Software
Delays Deterministic Stochastic Assumes “error free” type case
System Performance: Queuing
COMP60611 Fundamentals of Parallel and Distributed Systems
Marlon Dumas marlon.dumas ät ut . ee
Variability 8/24/04 Paul A. Jensen
COMP60611 Fundamentals of Parallel and Distributed Systems
Queuing Analysis Two analytical techniques can be employed to study queuing processes: Shock wave analysis Demand-capacity process is deterministic Suited.
Queuing Models and Capacity Planning
Delays Deterministic Stochastic Assumes “error free” type case
COMP60621 Designing for Parallelism
Queueing Theory 2008.
Chapter 4: Simulation Designs
CSE 550 Computer Network Design
Queuing Models J. Mercy Arokia Rani Assistant Professor
Course Description Queuing Analysis This queuing course
Presentation transcript:

Marlon Dumas marlon.dumas ät ut . ee MTAT.03.231 Business Process Management Lecture 7 – Quantitative Process Analysis II Marlon Dumas marlon.dumas ät ut . ee

Process Analysis

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

Introduction Process Identification Essential Process Modeling Advanced Process Modeling Process Discovery Qualitative Process Analysis Quantitative Process Analysis Process Redesign Process Automation Process Intelligence

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

Queuing Analysis Capacity problems are common and a key driver 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 If arrivals are regular or sufficiently spaced apart, no queuing delay occurs Deterministic traffic Queuing occurs every time user demand exceeds server capacity. Delays are due to several reasons. Let’s examine some of them… Variable but spaced apart traffic © Dimitri P. Bertsekas

Burstiness Causes Interference Queuing results from variability in processing times and/or interarrival intervals What does “bursty traffic” mean? © Dimitri P. Bertsekas

Job Size Variation Causes Interference Deterministic arrivals, variable job sizes Arrivals are deterministic (e.g. the intervals between 2 consecutive arrivals are always the same), however some jobs are longer than others © 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 Delay probability is higher under heavy loading conditions than when the traffic is light © 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) A useful queuing model represents a real-life system with sufficient accuracy and is analytically tractable. A queuing model based on the Poisson process often meets these two requirements. A Poisson process models random events (such as a customer arrival, a request for action from a web server, or the completion of the actions requested of a web server) as emanating from a memoryless process. That is, the length of the time interval from the current time to the occurrence of the next event does not depend upon the time of occurrence of the last event Independent increments: the numbers of occurrences counted in disjoint intervals are independent from each other Stationary increments: the probability distribution of the number of occurrences counted in any time interval only depends on the length of the interval Closed under Addiction and Subtraction © Laguna & Marklund

Negative Exponential Distribution

Queuing theory: basic concepts service waiting arrivals l c m 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 © Wil van der Aalst

Queuing theory concepts (cont.) l c m Wq,Lq W,L Given l , m and c, we can calculate : r = resource utilization Wq = average time a job spends in queue (i.e. waiting time) W = average time in the “system” (i.e. cycle time) Lq = average number of jobs in queue (i.e. length of queue) L = average number of jobs in system (i.e. Work-in-Progress) © Wil van der Aalst

M/M/1 queue l 1 m Assumptions: time between arrivals and processing time follow a negative exponential distribution 1 server (c = 1) FIFO L=/(1- ) Lq= 2/(1- ) = L- W=L/=1/(- ) Wq=Lq/=  /( (- )) © Laguna & Marklund

Little’s Formula  Wq=Lq/ Little’s Formula  L=W M/M/c queue Now there are c servers in parallel, so the expected capacity per time unit is then c* Little’s Formula  Wq=Lq/ W=Wq+(1/) Little’s Formula  L=W © Laguna & Marklund

Tool Support For M/M/c systems, the exact computation of Lq is rather complex… Consider using a tool, e.g. http://www.supositorio.com/rcalc/rcalclite.htm (very simple) http://queueingtoolpak.org/ (more sophisticated, Excel add-on)

Example – ER at County Hospital Situation Patients arrive according to a Poisson process with intensity  ( the time between arrivals is exp() distributed. The service time (the doctor’s examination and treatment time of a patient) follows an exponential distribution with mean 1/ (=exp() distributed) The ER can be modeled as an M/M/c system where c = the number of doctors Data gathering  = 2 patients per hour  = 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) Is it warranted to hire a second doctor ? Characteristic One doctor (c=1) Two Doctors (c=2)  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 © Laguna & Marklund

Your turn Textbook, Chapter 7, exercise 7.12 We consider a Level-2 IT service desk with two staff members. Each staff member can handle one service request in 4 working hours on average. Service times are exponentially distributed. Requests arrive at a mean rate of one request every 3 hours according to a Poisson process. What is the average time between the moment a service request arrives at this desk and the moment it is fulfilled? …Now consider the scenario where the number of requests becomes one per hour. How many level-2 staff are required to be able to start serving a request on average within two working hours of it being received?

Process Simulation Versatile quantitative analysis method for As-is analysis What-if analysis In a nutshell: Run a large number of process instances Gather performance data (cost, time, resource usage) Calculate statistics from the collected data

Process Simulation Model the process Define a simulation scenario Run the simulation Analyze the simulation outputs Repeat for alternative scenarios

Example

Example

Elements of a simulation scenario Processing times of activities Fixed value Probability distribution

Exponential Distribution

Normal Distribution

Choice of probability distribution Fixed Rare, can be used to approximate case where the activity processing time varies very little Example: a task performed by a software application Normal Repetitive activities Example: “Check completeness of an application” Exponential Complex activities that may involve analysis or decisions Example: “Assess an application”

Simulation Example Normal(10m, 2m) Normal(10m, 2m) 0m Exp(20m)

Elements of a simulation model Processing times of activities Fixed value Probability distribution Conditional branching probabilities Arrival rate of process instances and probability distribution Typically exponential distribution with a given mean inter-arrival time Arrival calendar, e.g. Monday-Friday, 9am-5pm, or 24/7

Branching probability and arrival rate Arrival rate = 2 applications per hour Inter-arrival time = 0.5 hour Negative exponential distribution From Monday-Friday, 9am-5pm 0.3 0.7 0.3 35m 55m 9:00 10:00 11:00 12:00 13:00 13:00

Elements of a simulation model Processing times of activities Fixed value Probability distribution Conditional branching probabilities Arrival rate of process instances Typically exponential distribution with a given mean inter-arrival time Arrival calendar, e.g. Monday-Friday, 9am-5pm, or 24/7 Resource pools Resource pools in this context is not to be confused with pools in BPMN. A resource pool here is simply a set of resources who can perform a given activity. A resource pool for example can be a role or a group. In a way resource pool in the context of simulation is closer to the notion of “lane” in BPMN and typically lanes in BPMN will become resource pools when we simulate the process.

Resource pools Name Size of the resource pool Cost per time unit of a resource in the pool Availability of the pool (working calendar) Examples Clerk Credit Officer € 25 per hour € 25 per hour Monday-Friday, 9am-5pm Monday-Friday, 9am-5pm In some tools, it is possible to define cost and calendar per resource, rather than for entire resource pool To specify a resource pool we need of course to give it a name. We also have to specify the size of the pool, meaning how many resources belong to it. Finally, we

Elements of a simulation model Processing times of activities Fixed value Probability distribution Conditional branching probabilities Arrival rate of process instances and probability distribution Typically exponential distribution with a given mean inter-arrival time Arrival calendar, e.g. Monday-Friday, 9am-5pm, or 24/7 Resource pools Assignment of tasks to resource pools

Resource pool assignment Clerk Officer System Officer Clerk Officer

Process Simulation ✔ ✔ ✔ Model the process Define a simulation scenario Run the simulation Analyze the simulation outputs Repeat for alternative scenarios ✔ ✔ ✔

Output: Performance measures & histograms

Process Simulation ✔ ✔ ✔ ✔ Model the process Define a simulation scenario Run the simulation Analyze the simulation outputs Repeat for alternative scenarios ✔ ✔ ✔ ✔

Tools for Process Simulation ARIS ITP Commerce Process Modeler for Visio Logizian Oracle BPA Progress Savvion Process Modeler ProSim Bizagi Process Modeler Check tutorial at http://tinyurl.com/bizagisimulation Signavio + BIMP http://bimp.cs.ut.ee/

BIMP – bimp.cs.ut.ee Accepts standard BPMN 2.0 as input Simple form-based interface to enter simulation scenario Produces KPIs + simulation logs in MXML format Simulation logs can be imported to the ProM process mining tool

BIMP Demo

Your turn Textbook, Chapter 7, exercise 7.8 (page 240)

Pitfalls of simulation Stochasticity Data quality Simplifying assumptions

Stochasticity Problem Solutions Average results of multiple runs Simulation results may differ from one run to another Solutions Make the simulation timeframe long enough to cover weekly and seasonal variability, where applicable Use multiple simulation runs, average results of multiple runs, compute confidence intervals Multiple simulation runs Average results of multiple runs Compute confidence intervals

Data quality Problem Solutions: Simulation results are only as trustworthy as the input data Solutions: Rely as little as possible on “guesstimates”. Use input analysis where possible: Derive simulation scenario parameters from numbers in the scenario Use statistical tools to check fit the probability distributions Simulate the “as is” scenario and cross-check results against actual observations

Simulation assumptions That the process model is always followed to the letter No deviations No workarounds That resources work constantly and non-stop Every day is the same! No tiredness effects No distractions beyond “stochastic” ones

Next week