Análisis de flujo y teorías de colas

Download Report

Transcript Análisis de flujo y teorías de colas

Análisis de flujo, teorías
de colas y simulación
Gestión de Procesos y Servicios
Análisis de flujo
Análisis de flujo es una familia de técnicas que
nos permiten estimar el rendimiento total de un
proceso dado algún conocimiento sobre el
rendimiento de sus actividades
Tiempo
Coste
Ratio errores
…
¿Cuánto tarda en media el proceso completo?
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
En un proceso secuencial, el tiempo medio de
duración es igual a la suma de los tiempos
medios de duración de sus actividades
¿Y ahora?
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Y ahora?
50%
50%
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Y ahora?
90%
10%
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
XOR gateways
p1
p2
pn
T1
T2
...
TN
n
CT = p1T1+p2T2+…+pnTn =
åpT
i i
i=1
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Y ahora?
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
AND gateways
T
1
T
2
...
T
N
CTparallel = Max{T1, T2,…, TM}
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Cuál es la duración media del proceso?
Actividad
Duración media
Check completeness
1 día
Check credit history
1 día
Check income sources
3 días
Assess application
3 días
Make credit offer
1 día
Notify rejection
2 días
Hay un 60% de casos en los que se concede el crédito
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Cuál es la duración media de este proceso?
• Todas las actividades tardan 1 hora de media en hacerse
• En el 40% de los casos los pedidos tienen sólo productos
de Amsterdam
• En el 40% de los casos tienen sólo productos de
Hamburgo
• En el 20% de los casos tienen de ambos almacenes
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Cuál sería la regla general para los OR
gateways?
¿Cuál es la duración media del proceso?
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Ciclos
CT = T/(1-r)
Serie geométrica
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
¿Cuál es la duración media del proceso?
Actividad
Duración media
Check completeness
1 día
Check credit history
1 día
Check income sources
3 días
Assess application
3 días
Make credit offer
1 día
Notify rejection
2 días
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
En un 60% de los casos se concede
el crédito
En un 20% de los casos la solicitud
está incompleta
El ratio de llegada (arrival rate, λ) de un
proceso es el número medio de nuevas
instancias del proceso que se crean por unidad
de tiempo
El Work-In-Process (WIP) es el número medio
de instancias de un proceso que están activas
(no han terminado) en un instante de tiempo.
Ley de Little
WIP = λ x CT
Se cumple para cualquier proceso estable.
Es decir, un proceso en el que su número de instancias
activas no crezca de forma incontrolada
Tiempo medio de duración del
proceso (Cycle Time)
Calcular los tiempos medios de duración del proceso
• Calcula cuál es el tiempo medio de duración del proceso
de las solicitudes de crédito en base a los siguientes datos.
• El año tiene 250 días laborables.
• El último año se procesaron 2500 solicitudes de crédito
• Hemos preguntado cada dos semanas cuántas solicitudes
había abiertas en ese momento y la media ha sido de 200
Calcular los tiempos medios de duración del proceso
• Un restaurante recibe de media 1200 clientes al día (entre
10:00 y 22:00). En horas punta (De 13:00 a 16:00 y de
20:00 a 23:00), el restaurante recibe unos 900 clientes en
total y, de media, hay 90 clientes a la vez en el restaurante.
En horas no punta, el restaurante recibe 300 clientes en
total y, de media hay 30 clientes simultáneos en el
restaurante.
– ¿Cuál es el tiempo medio que un cliente pasa en un restaurante
en horas punta? ¿Y en horas no punta?
– La capacidad máxima del restaurante es de 110 clientes y, a
veces se alcanza en horas punta. El encargado del restaurante
espera además que aumente ligeramente el número de clientes
en los próximos meses. ¿Qué se puede hacer sin aumentar el
número de sitios disponibles?
Otras aplicaciones del análisis de flujo
• Calcular el coste medio por instancia de proceso
• Calcular ratios de error por proceso
• Estimar capacidades
Cuidado que las fórmulas no son exactamente
iguales en todos los casos
Calcula el coste medio por proceso
Actividad
Clerk
Credit officer
Duración
Check completeness
R
2 horas
Check credit history
R
30 minutos
Check income sources
R
3 horas
Assess application
R
2 horas
Make credit offer
R
2 horas
Notify rejection
R
30 minutos
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
En el 20% de los casos la solicitud
está incompleta.
En el 60% de los casos se concede
el crédito.
El coste del Clerk es de 25€/hora y el
del Credit officer es de 50€/hora.
El banco carga 1€ por consultar el
historial de crédito de una persona
Limitación 1: No todos los procesos son estructurados
• La solución es usar otras ecuaciones más complejas que si
se pueden utilizar para procesos no estructurados
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Limitación 2: Requiren estimar la duración media de
todas las actividades del proceso
• La solución es conseguir la información por medio de:
– Entrevistas u observación
– Usar logs de los sistemas de información usados en el proceso
Limitación 3: No tienen en cuenta que los procesos se
comportan de forma distinta en función de la carga
• Asumen una carga fija y una capacidad de recursos fija
• No consideran los tiempos de espera debidos a conflictos
de recursos (resource contention), que ocurre cuando hay
más trabajo por hacer que recursos disponibles para hacer
el trabajo.
• La única solución es usar otra técnica como análisis de
colas o simulación.
Análisis de flujo
Teoría de colas
La teoría de colas es una colección de técnicas
matemáticas para analizar sistemas que tiene
contención de recursos.
Conceptos de teoría de colas
• Un sistema de colas consiste en una o múltiples colas y
un servicio que es provisto por uno o más servidores. Los
elementos en la cola son trabajos o clientes, según el
contexto
Ejemplo 1: Sistema multi-cola (Supermercado)
Clientes
Cajero 1
Colas
Cajero 2
Cajero 3
Servidores
Ejemplo 2: Sistema cola única (Banco)
Clientes
Cajero 1
Cajero 2
Cajero 3
Cola
Servidores
Vamos a estudiar dos modelos para sistemas de
cola única
Ratio de llegada
• Ratio de llegada: λ
– Ej: Los clientes llegan al banco con un ratio medio de 20 por hora
• Tiempo entre llegada: 1/λ
– Ej: El tiempo medio entre la llegada de dos clientes es de 5
minutos (1/20 horas).
Cuidado: Los tiempos son medias, no
representan exactamente la realidad
Proceso de Poisson: Distribución exponencial negativa
Slide taken from http://fundamentals-of-bpm.org/lectures/
Proceso de Poisson
• Describen una amplia categoría de procesos de llegada y
es muy común para modelar el proceso de llegada de
clientes en procesos de negocio.
• Siempre hay que asegurarse que los casos llegan
siguiendo esa distribución. Para ello se puede medir
tiempos entre llegadas durante un período de tiempo y
usar un paquete estadístico como R o EasyFit.
Tiempo de procesamiento de una actividad
• Igual que en el caso anterior, el tiempo de procesamiento
de una actividad puede variar mucho de un caso a otro.
• Actividades que requiren una diagnosis, una verificación no
trivial o una toma de decisiones no trivial, muy a menudo
siguen también una distribución exponencial negativa.
• Igual que antes, es necesario comprobar que esta
hipótesis es cierta.
Modelos de colas M/M/1 y M/M/c
• Cola única
• Tiempo entre llegada siguen una distribución exponencial
(M)
• Tiempo de procesamiento siguen una distribución
exponencial (M)
• Los clientes se atienden en orden de llegada
• Los clientes no dejan la cola
• Hay 1 (M/M/1) o c (M/M/c) servidores
En modelos de colas M/M/1 y M/M/c, dado:
• λ: El ratio medio de llegada de clientes por unidad de
tiempo
• μ: El número medio de clientes que pueden ser atendidos
por unidad de tiempo (el tiempo medio de procesamiento
de cliente es por tanto, 1/μ).
• En el caso de M/M/c, el número de servidores c
service
waiting
arrivals
l
c
© Wil van der Aalst
m
Podemos calcular:
• Ratio de ocupación: r
• Wq = Tiempo medio de un cliente en la cola
• W = Tiempo medio de un cliente en el sistema (tiempo medio
del proceso)
• Lq = Número medio de clientes en la cola
• L = Número medio de clientes en el sistema (Work-in-Progress)
l
c
Wq,Lq
W,L
© Wil van der Aalst
m
Cola M/M/1
l
1
m
Capacity Demand λ
ρ

Available Capacity μ
Lq= 2/(1- ) = L-
Wq=Lq/l
W=Wq + 1/m
© Laguna & Marklund
L=lW
Cola M/M/c
• Ahora hay c servidores en paralelo, por lo que la capacidad
esperada por unidad de tiempo es c*
Capacity Demand
l


Available Capacity c * m
• Las otras fórmulas son iguales que para M/M/1 salvo Lq,
que es bastante complejo de calcular:
Lq 

 ( n  c) Pn  ... 
n c
(l / m) c 
c!(1  )
P
2 0
 c1 (l / m) n (l / m)c

1

P0   




n
!
c
!
1

(
l
/(
c
m
)
n

0


1
Herramientas
• Como el cálculo en ocasiones puede ser bastante
complejo, se suelen usar herramientas como:
– http://apps.business.ualberta.ca/aingolfsson/qtp/
– http://www.stat.auckland.ac.nz/~stats255/qsim/qsim.html
Ejemplo: Urgencias en un hospital
•
•
•
•
•
Los pacientes llegan en ambulancia o por su propio pie
Hay siempre un único médico atendiendo las urgencias
De media llegan dos pacientes por hora.
Un médico atiende de media a 3 pacientes por hora.
¿Deberíamos contratar un segundo médico?
Ejemplo: Urgencias en un hospital
• Si:
– Los pacientes llegan siguiendo una distribución exponencial ( =
2)
– El tiempo de atención a los pacientes sigue una distribución
exponencial ( = 3)
• Entonces:
– Podemos modelar el sistema como un M/M/c, donde c es el
número de médicos
Ejemplo: Urgencias en un hospital
• Interpretation
– Estar en la cola = estar en la sala de espera
– Estar en el sistema = estar en urgencias (esperando o en el
médico)
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
1h
3/8 h = 22.5 minutes
• Is it warranted to hire a second doctor ?
© Laguna & Marklund
Ejemplo
• Una compañía diseña hardaware electrónico personalizado
para varios clientes. La compañía recibe pedidos para
diseñar un nuevo circuito cada 20 días laborables de
media. Un equipo de ingenieros tarda de media 10 días
laborables en diseñar el hardware. Consideramos que sólo
hay un equipo de ingenieros.
– ¿Cuál es el ratio de ocupación?
– ¿Cuántos pedidos hay en la cola de media?
– ¿Cuánto tarda en media un pedido desde que se realiza hasta
que se finaliza?
Limitación 1
• Problema: Las técnicas que hemos visto sólo sirven para
distribuciones exponenciales negativas. Si los parámetros
siguen otras distribuciones, las fórmulas que hemos visto
no sirven.
• Solución: La teoría de colas ha desarrollado una gran
cantidad de modelos de colas que soportan otro tipo de
distribuciones para los parámetros.
Limitación 2
• Problema: La teoría de colas sólo tratan una actividad a la
vez.
• Solución: Para procesos con varias actividades, eventos y
recursos se pueden usar otras técnicas como redes de
colas.
• Problema: Las redes de colas pueden volverse muy
complejas sobre todo cuando hay paralelismo entre
actividades.
• Solución: Usar simulación
Análisis de flujo
Teoría de colas
Simulación
Un simulador ejecuta un gran número de
instancias hipotéticas de un proceso y registra
los pasos en cada ejecución.
Anatomía de un simulador
Modelo del
proceso
(BPMN)
Simulador
Parámetros
de la
simulación
Log de la
simulación
(y cálculos
derivados
de éste)
Entrada del simulador
• El modelo del proceso incluyendo:
– Eventos, actividades, gateways
– Definición de recursos (como lanes, por ejemplo) y su coste
• Asignación de recursos a actividades
• Coste (por actividad y/o por par actividad-recurso)
• Probabilidades de tomar un camino u otro en XOR
gateways
• Tiempos de procesado (por actividad o por par actividadrecurso)
• Ratio de llegada de instancias del proceso
• Comienzo y finalización de la simulación
Slide taken from http://fundamentals-of-bpm.org/lectures/
Distribuciones de tiempos de procesado
• Fija: El tiempo de procesado de la tarea es el mismo para
todas las ejecuciones de la misma. No son muy frecuentes,
sobre todo cuando intervienen personas en la tarea.
• Exponencial: Aplicable cuando el tiempo de procesado
suele estar en torno a un valor, pero a veces lleva mucho
más tiempo. Se aplica a tareas que requiren una diagnosis,
una verificación no trivial o una toma de decisiones no
trivial.
• Normal: Aplicable cuando el tiempo de procesado de una
tarea está alrededor de una media y su desviación sobre
este valor es simétrica.
Distribución exponencial negativa
Slide taken from http://fundamentals-of-bpm.org/lectures/
Distribución normal
Slide taken from http://fundamentals-of-bpm.org/lectures/
Anatomía de un simulador
Modelo del
proceso
(BPMN)
Simulador
Parámetros
de la
simulación
Log de la
simulación
(y cálculos
derivados
de éste)
Logs de la simulación
• Para cada actividad:
–
–
–
–
El momento en que estaba lista para ser ejecutada
El momento en que empezó a ejecutarse
El momento en que se terminó
Qué recurso ha realizado la actividad
Ejemplo de log
Cálculos derivados del log
© M. Dumas et al. Fundamentals of BPM, Springer-Verlag, 2013
Pasos para evaluar un proceso con simulación
1. Modelar el proceso
2. Extender el modelo con información de simulación
modelo de simulación
– Basado en asunciones o mejor basado en datos (logs)
3. Ejecutar la simulación
4. Analizar las salidas de la simulación
– Duración del proceso y histogramas
– Tiempos de espera (por actividad)
– Utilización de recursos (por recurso)
5. Repetir para escenarios alternativos
Slide taken from http://fundamentals-of-bpm.org/lectures/
Herramientas para simulación
• BIMP: http://bimp.cs.ut.ee/
– Online y acepta BPMN 2.0 estándar como entrada.
• ITP Commerce Process Modeler for Visio
– Models presented earlier are made with ITP
Commerce
•
•
•
•
•
Progress Savvion Process Modeler
IBM Websphere Business Modeler
Oracle BPA
ARIS
ProSim
Warning: Use with caution
• La fiabilidad de la simulación depende en gran medida de
la precisión de los datos usados como entrada.
• Lo ideal es obtener los datos de observaciones reales.
Esto se puede hacer con procesos as-is, pero no siempre
con procesos to-be.
• Se recomienda comprobar las salidas de la simulación con
un experto en el proceso.
Análisis de flujo
Teoría de colas
Simulación
Resumen
Análisis de flujo
Teoría de colas
Simulación
Fundamentals of Business Process Management
• Capítulo 7
• Accesible en: http://0link.springer.com.fama.us.es/b
ook/10.1007/978-3-642-331435/page/1
• Más información en:
http://fundamentals-of-bpm.org/