Marlon Dumas marlon.dumas ät ut . ee

Slides:



Advertisements
Similar presentations
Marlon Dumas marlon.dumas ät ut . ee
Advertisements

1 Analysis of workflows : Verification, validation, and performance analysis. Wil van der Aalst Eindhoven University of Technology Faculty of Technology.
IE 429, Parisay, January 2003 Review of Probability and Statistics: Experiment outcome: constant, random variable Random variable: discrete, continuous.
Capacity Setting and Queuing Theory
Lab Assignment 1 COP 4600: Operating Systems Principles Dr. Sumi Helal Professor Computer & Information Science & Engineering Department University of.
Marlon Dumas marlon.dumas ät ut . ee
CS 241 Spring 2007 System Programming 1 Queuing Framework for Process Management Evaluation Lecture 20 Klara Nahrstedt.
Queuing Analysis Based on noted from Appendix A of Stallings Operating System text 6/10/20151.
Chap. 20, page 1051 Queuing Theory Arrival process Service process Queue Discipline Method to join queue IE 417, Chap 20, Jan 99.
Waiting Line Models And Service Improvement
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.
Queueing Theory Chapter 17.
Lecture 11 Queueing Models. 2 Queueing System  Queueing System:  A system in which items (or customers) arrive at a station, wait in a line (or queue),
1 Service A Queuing System Arrival Rate (  Average Number in Queue ( L q ) Avg Time in System ( W ) Avg Number in System ( L ) Average Wait in Queue.
MGTSC 352 Lecture 23: Congestion Management Introduction: Asgard Bank example Simulating a queue Types of congested systems, queueing template Ride’n’Collide.
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)
Introduction to Queuing Theory. 2 Queuing theory definitions  (Kleinrock) “We study the phenomena of standing, waiting, and serving, and we call this.
Lecture 14 – Queuing Systems
Marlon Dumas marlon.dumas ät ut . ee
Queuing Models and Capacity Planning
Marlon Dumas University of Tartu
Spreadsheet Modeling & Decision Analysis
Copyright 2006 John Wiley & Sons, Inc. Beni Asllani University of Tennessee at Chattanooga Waiting Line Analysis for Service Improvement Operations Management.
Network Analysis A brief introduction on queues, delays, and tokens Lin Gu, Computer Networking: A Top Down Approach 6 th edition. Jim Kurose.
Introduction to Queuing Theory
Introduction to Queueing Theory
Introduction to Operations Research
Marlon Dumas marlon.dumas ät ut . ee
Marlon Dumas marlon.dumas ät ut . ee
Lecture 14 – Queuing Networks Topics Description of Jackson networks Equations for computing internal arrival rates Examples: computation center, job shop.
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.
Introduction to Queueing Theory
IE 429, Parisay, January 2010 What you need to know from Probability and Statistics: Experiment outcome: constant, random variable Random variable: discrete,
1 Systems Analysis Methods Dr. Jerrell T. Stracener, SAE Fellow SMU EMIS 5300/7300 NTU SY-521-N NTU SY-521-N SMU EMIS 5300/7300 Queuing Modeling and Analysis.
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.
Queuing Theory and Traffic Analysis Based on Slides by Richard Martin.
CS352 - Introduction to Queuing Theory Rutgers University.
CSCI1600: Embedded and Real Time Software Lecture 19: Queuing Theory Steven Reiss, Fall 2015.
Copyright 2006 John Wiley & Sons, Inc. Beni Asllani University of Tennessee at Chattanooga Waiting Line Analysis for Service Improvement Operations Management.
Marlon Dumas University of Tartu
OPERATING SYSTEMS CS 3530 Summer 2014 Systems and Models Chapter 03.
Chapter 6 Queueing Models
Dr. Anis Koubâa CS433 Modeling and Simulation
1 Queuing Delay and Queuing Analysis. RECALL: Delays in Packet Switched (e.g. IP) Networks End-to-end delay (simplified) = End-to-end delay (simplified)
MTAT Business Process Management (BPM) (for Masters of ETM) Lecture 2: Process Analysis & Re-Design Marlon Dumas marlon.dumas ät ut. ee.
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.
Queuing Theory Simulation & Modeling.
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.
Module D Waiting Line Models.
Marlon Dumas marlon.dumas ät ut . ee
Marlon Dumas marlon.dumas ät ut . ee
Models of Traffic Flow 1.
Chapter 7: Quantitative Process Analysis
Demo on Queuing Concepts
Wil van der Aalst Eindhoven University of Technology
System Performance: Queuing
Marlon Dumas marlon.dumas ät ut . ee
Variability 8/24/04 Paul A. Jensen
مهندسی مجدد فرآیندهای تجاری
Queueing Theory 2008.
Presentation transcript:

Marlon Dumas marlon.dumas ät ut . ee MTAT.03.231 Business Process Management (BPM) Lecture 6 Quantitative Process Analysis (Queuing & Simulation) Marlon Dumas marlon.dumas ät ut . ee

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 Queuing occurs every time user demand exceeds server capacity. Delays are due to several reasons. Let’s examine some of them… 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 What does “bursty traffic” mean? © Dimitri P. Bertsekas

Job Size Variation Causes Interference Arrivals are deterministic (e.g. the intervals between 2 consecutive arrivals are always the same), however some jobs are longer than others 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 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 numberof 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 : 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 l 1 m Assumptions: time between arrivals and service time follow a negative exponential distribution 1 server (c = 1) FIFO L=/(1- ) Lq= 2/(1- ) = L- W=L/=1/(- ) Wq=Lq/=  /( (- )) © Laguna & Marklund

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://apps.business.ualberta.ca/aingolfsson/qtp/ http://www.stat.auckland.ac.nz/~stats255/qsim/qsim.html

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

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 Model the process (e.g. BPMN) Enhance the process model with simulation info  simulation model Based on assumptions or better based on data (logs) Run the simulation Analyze the simulation outputs Process duration and cost stats and histograms Waiting times (per activity) Resource utilization (per resource) 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 Per activity or per activity-resource pair Costs Per activity and/or per activity-resource pair Arrival rate of process instances Conditional branching probabilities (XOR gateways)

Simulation Example – BPMN model

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 Check completeness Clerk 30 mins 10 mins Perform checks 2 hours 1 hour Request info 1 min Receive info (Event) 48 hours 24 hours Make decision Manager Notify rejection Time out (Time) 72 hours Receive review request (Event) 12 hours Notify acceptance Deliver Credit card 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) 0.3 0.5 0.7 0.8 0.5 0.2 Alternative: instead of branching probabilities one can assign “conditional expressions” to the branches based on input data

Simulation output: KPIs

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

Tools for Process Simulation Not exhaustive, listed in no specific order: ITP Commerce Process Modeler for Visio Bizagi Process Modeler Progress Savvion Process Modeler ARIS Oracle BPA ProSim BIMP

Simple Online Simulator BIMP: http://bimp.cs.ut.ee/ Accepts standard BPMN 2.0 as input Link from Signavio Academic Edition to BIMP Open a model in Signavio and push it to BIMP using the flask icon

BIMP Demo