Teor Ia de Colas Modelo M/M/S: Grau de Matem ' Atiques Treball Final de Grau
Teor Ia de Colas Modelo M/M/S: Grau de Matem ' Atiques Treball Final de Grau
Teor Ia de Colas Modelo M/M/S: Grau de Matem ' Atiques Treball Final de Grau
TEORÍA DE COLAS
Modelo M/M/s
In this Final Degree Project, the Queuing Theory is developed around its best known
model: the M/M/s. To do this, two previous theory sections necessary for this model are
presented.
The first of these sections is about the Poisson process, where definitions and results on
the exponential distribution are included and then the Poisson process itself is presented.
The Poisson process helps us determine the distribution of customer arrivals in M/M/s
queuing systems.
The second of these sections is about continuous time Markov chains. This section
plays a central role in M/M/s queuing systems, since these are a particular case of birth
and death processes, which are nothing more than a specific type of continuous-time
Markov chain.
With this, section number 4 focuses on the development of M/M/s queuing systems
with the objective of knowing measures of effectiveness in relation to these queues and
knowing the most appropriate number of servers for a M/M/s queue. To this end, birth
and death processes, the concept of stationary distribution and Little’s formulas are in-
troduced earlier.
To give practical sense to the theoretical abstraction, in section number 6 a real case
of application of the M/M/s model is presented, before presenting in section number 5
the basic theory of queuing networks.
Resumen
i
Agradecimientos
Al doctor José Manuel Corcuera Valverde por aceptar tutorizar este trabajo.
A mis seres queridos y amigos por acompañarme durante el largo viaje del Grado en
Matemáticas.
ii
Índice
1. Introducción 1
2. Proceso de Poisson 5
2.1. Distribución exponencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2. Definiciones del proceso de Poisson . . . . . . . . . . . . . . . . . . . . . . 6
5. Redes de colas 35
5.1. Reversibilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
5.2. Redes de colas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
7. Conclusiones 47
iii
1. Introducción
La Teorı́a de Colas afronta uno de los problemas más cotidianos de la vida moderna:
las esperas, los retrasos y las demoras. Todos nosotros hemos esperado en la cola del
banco, del supermercado o de la carnicerı́a, a la vez que todos hemos tenido que esperar
a ser atendidos en un hospital, que pedir hora con antelación en algún servicio público o
que dedicado horas a hacer algún trámite burocrático. Las colas son tan importantes en
nuestro dı́a a dı́a que son usadas habitualmente como testigo de la buena o mala gestión
de los servicios públicos y, por ende, usadas para el debate polı́tico.
Las colas se forman porque hay más demanda del servicio que capacidad para aten-
derlo, es decir, los recursos son limitados. Por este motivo, la teorı́a de colas no solo tiene
trascendencia matemática, sino que es de gran importancia para la gestión efectiva de
los recursos y para la operativa y logı́stica empresarial. La finitud de los recursos hace
inevitable que tengamos que teorizar para optimizar las colas.
La imagen de una cola dio la vuelta al mundo el año 2019: La cola de la cumbre
del Everest, a ∼ 8848 metros, que causó varios fallecidos y reacciones polı́ticas en Nepal
y en el Tı́bet. La Teorı́a de Colas permite conocer mejor los recursos disponibles, la
capacidad de atención de la demanda y posibles soluciones a los problemas que aparecen
en la gestión de servicios donde no todos los clientes pueden ser atendidos a la vez. El
desarrollo económico y la competitividad nos obligan a administrar cada vez mejor y de
manera más precisa estas colas. Por eso la cola en el Everest nos sirve de ejemplo: era
impensable hace un siglo que un hecho ası́ sucediera, pero ahora es una necesidad aportar
soluciones. Y en este sentido hay que destacar la elevada utilidad práctica que tiene esta
teorı́a. Su aplicación no solo puede mejorar la cuenta de resultados de una empresa, sino
que también aumentar la satisfacción de los clientes, mejorar la administración pública,
incentivar el consumo y estimular la economı́a, reducir los costes de oportunidad por las
esperas y, por encima de todo, como en el caso del Everest, salvar vidas.
La Teorı́a de Colas fue desarrollada por el matemático danés A.K. Erlang en 1904 a
través de su publicación The theory of Probabilities and Telephone Conversations, con el
objetivo de determinar la capacidad necesaria para el sistema telefónico danés. Erlang
se enfrentaba al siguiente problema: querı́a conocer lo grande que debı́a ser una central
telefónica para mantener el número de llamadas en espera lo más bajo posible. Desde
1904 hasta la actualidad, la Teorı́a de Colas se ha ido desarrollando sobre todo a partir
1
de herramientas analı́ticas y teóricas y de simulaciones computacionales. Ası́ esta teorı́a
ha sido aplicada en bancos, aerolı́neas, centros de logı́stica, call centers, sistemas públicos
de emergencia, gestión de centros de salud, etc. Su principal utilidad es identificar los
niveles adecuados de personal y de infraestructura para lograr el rendimiento deseado de
un servicio y, por consiguiente, poder tomar las decisiones. Las principales preguntas que
pretende contestar son: ¿Cuánto tiempo deberá esperar un cliente que se una a la cola?
y ¿cuántas personas ocuparán esta cola?. De esta manera, desde 1904, ha sido aplicada
en múltiples ocasiones satisfactoriamente para mejorar la prestación de servicios en áreas
como el tráfico de personas, de vehı́culos terrestres, de aeronaves y de comunicaciones;
como la planificación de la atención a pacientes en hospitales, de la ejecución de tareas
informáticas, del empleo de máquinas industriales; y como el diseño fı́sico de bancos,
oficinas de correos, parques de atracciones y restaurantes de comida rápida.
A partir de [Green, 2011], [Shortle u. a., 2018] y [Beasley, 2011], introducimos unas
primeras nociones básicas sobre la teorı́a de colas: Una cola (o un retraso, demora, es-
pera,...) es el resultado de la diferencia entre la demanda de un servicio y la capacidad
disponible para atender esta demanda. Esta diferencia acostumbra a ser temporal y varia-
ble, dependiente ésta de los tiempos de la demanda y del tiempo necesario para proveer
el servicio. A la vez, podemos considerar una cola como el conjunto ordenado formado
por los clientes que en su llegada se han encontrado todos los servidores ocupados.
Entendemos por sistema de colas como el modelo de un servicio donde los clientes
llegan a un banco de servidores y requieren de una prestación (o prestaciones) de uno
(o varios) de los servidores. Un cliente es cualquier identidad requiriendo de un servicio.
Un servidor es una identidad que provee el servicio. Notemos que tanto los clientes como
los servidores pueden ser personas o cosas.
Para estructurar bien un sistema de colas necesitamos información acerca de:
El proceso de llegada:
El servicio:
2
cama, etc.). Observamos que todo sistema de colas puede ser descompuesto en
subsistemas individuales de colas en lı́nea simple [Beasley, 2011].
• Distinguimos si son con derecho preferente o no, es decir, si es posible que un
cliente con una prioridad muy alta, al llegar, interrumpa el servicio dado a otro
cliente.
Caracterı́sticas de la cola:
3
Red de ordenadores. Donde el cliente es una tarea informática a ejecutar y el servidor
es un ordenador conectado al sistema con capacidad para ejecutarla. La prestación
es la ejecución de la tarea. La cola podrı́a ser tanto simple, en paralelo o en red, y
es invisible. La disciplina es arbitraria según se diseñe el sistema.
Continuando con el último ejemplo, los pacientes demandan el servicio sin cita previa, de
manera impredecible y requiriendo servicios muy distintos (desde un tratamiento para la
gripe como la identificación de sı́ntomas de infarto). Es un sistema con alta variabilidad
de servicios, donde destaca la impredecible llegada de la demanda, por tanto es compli-
cado determinar los niveles de congestión provocados por las colas y cuál es la capacidad
necesaria para satisfacer la demanda en determinados momentos. Hay que añadir a estas
consideraciones la complejidad del propio servicio: cada consulta requerirá de diferentes
camas, quirófanos, especialistas, enfermeras, equipos médicos, camillas, asistentes, ambu-
lancias, etc. Además se contrapone la realidad presupuestaria de los servicios de salud y
a su imperativo de mantener las cuentas, también, saneadas. Por eso, lograr el equilibrio
entre utilización del servicio, capacidad media total, tiempos de espera y coste económico
es uno de los retos de la Teorı́a de Colas.
A diferencia de metodologı́as que usan las simulaciones, los modelos de colas ne-
cesitan pocos datos y se presentan de una manera más simple y barata de utilizar. Hay
muchos modelos de colas diferentes. El más conocido y aplicado, por su sencillez y utili-
dad, y en el que se basa este trabajo, es el modelo M/M/s, que definimos y desarrollamos
en la sección 4. Las dos M en el nombre son por las dos suposiciones Markovianas: los
clientes llegan de manera independiente entre ellos y siguiendo un proceso de Poisson con
un parámetro constante; y las duraciones de los servicios son independientes entre sı́ y
tienen una distribución exponencial. s denota el número de servidores, que en este modelo
tienen que ser idénticos y capaces de realizar un solo servicio a la vez. Tiene una única
cola y una sala de espera infinita. Otros conocidos modelos son:
M/G/1. En este modelo las llegadas son Markovianas, es decir, son independientes
entre sı́ y siguen un proceso de Poisson, pero los tiempos de servicio siguen una
distribución arbitraria (o general) que cumple que son iid e independientes de las
llegadas. Hay un único servidor.
G/M/1. Como en el anterior, pero las llegadas siguen una distribución arbitraria (o
4
general) cumpliendo las mismas condiciones y los tiempos de servicio son Marko-
vianos. Hay un único servidor.
2. Proceso de Poisson
Definición 2.1. Una variable aleatoria T positiva tiene una distribución exponencial
con parámetro λ si
P(T ≤ t) = 1 − e−λt
para t ≥ 0. Escribimos T ∼ exp(λ).
5
Teorema 2.4. Sean t1 , t2 , ..., tn variables aleatorias independientes con distribución exp(λ).
La suma t1 + ... + tn tiene distribución gamma(n, λ).
Proposición 2.5. Sean t1 , t2 , ..., tn n variables aleatorias con distribución exp(λi ) res-
pectivamente. Entonces:
n
Y n
Y
P(min(t1 , ..., tn ) > t) = P(t1 > t, ..., tn > t) = P(ti > t) = e−λi t = e−(λ1 +...+λn )t
i=1 i=1
Por lo que min(t1 , ..., tn ) tiene distribución exponencial con parámetro λ1 + ... + λn
Definición 2.6. Una variable aleatoria discreta T tiene una distribución de Poisson
con parámetro λ, P oisson(λ), si T tiene función de probabilidad:
e−λ λk
P(T = k) = para k ∈ Z+
k!
Definición 2.7. Sean t1 , t2 , ... variables aleatorias independientes con distribución exp(λ).
Sean Tn = t1 + ... + tn con n ≥ 1, siendo T0 = 0. Consideramos Ns = max{n : Tn ≤ s}.
Ns es llamado el proceso de Poisson de parámetro λ.
Observación 2.9. Podemos pensar los tn como el tiempo entre llegadas de un cliente a
un servidor. Por lo que, Tn = t1 + ... + tn es el tiempo en el que ha llegado el cliente n y
Ns es el número de llegadas hasta el tiempo s.
Para justificar estas definiciones y entender la relación que tienen entre sı́, destacamos
los siguientes resultados:
Lema 2.10. Sea Ns según establece la definición 2.7, entonces Ns tiene una distribución
de Poisson de parámetro λs.
Demostración. Observamos que N (s) = n si, y solo si, Tn ≤ sTn−1 , es decir, el cliente n
llega antes del tiempo s, pero el cliente n + 1 llega después de s. Además, vemos que si
6
Tn = t, siendo Tn+1 > s, entonces tn+1 > s − t. Con tn+1 independiente de Tn . Con todo
esto tenemos que, usando el teorema 2.4:
Z s Z s
P (N (s) = n) = P (Tn = t)P (Tn+1 > s|Tn = t)dt = P (Tn = t)P (tn+1 > s − t)dt =
0 0
Z s n−1 Z s
−λt (λt) −λ(s−t) λn −λs
= λe e dt = e tn−1 dt =
0 (n − 1)! (n − 1)! 0
n
−λs (λs)
=e
n!
Siendo ésta la función de probabilidad de la distribución de Poisson de parámetro λs.
Lema 2.11. Supongamos que Nt es un proceso de Poisson según la definición 2.7. En-
tonces:
2. Si t0 < t1 < ... < tn , entonces Ntk − N tk−1 son independientes para k = 1, ..., n (Ns
tiene incrementos independientes).
Demostración. Ya hemos visto, mediante los lemas 2.10 y 2.11, la primera implicación:
2.7 ⇒ 2.8.
Ahora vemos que 2.7 ⇐ 2.8. Sea Tn el tiempo en el que el último cliente ha llegado.
Entonces vemos que:
2. Para T2 = t1 + t2 ⇔ t2 = T2 − T1 ,
7
Para simplificar los modelos de estos sistemas, debemos hacer ciertas suposiciones sobre
la distribución de probabilidad de la llegada de clientes y de la duración de los servicios.
Las suposiciones más comunes y en ocasiones, como vemos más adelante, más ajustadas
corresponden a las Markovianas. Esto se traduce en asumir que el número de llegadas
hasta un momento determinado viene dado por una distribución de Poisson y que
la duración del servicio viene dado por una distribución exponencial. Con ello se
construye el modelo M/M/s que veremos en detalle más adelante.
Observaremos que las suposiciones Markovianas son correspondidas por una gran parte
de los sistemas de colas, y además ası́ ha sido contrastado empı́ricamente múltiples veces
según [Green, 2011]. Esto, unido a su sencillez, hace que el modelo M/M/s sea el más
usado para la modelización de sistemas de colas. Tomamos un ejemplo para ilustrar lo
dicho en este último párrafo:
Ejemplo 2.13. Consideremos un restaurante, el servidor, y un conjunto de n potencia-
les clientes. Estos clientes de manera independiente deciden acudir al restaurante entre
12:00 y 13:00 con una probabilidad de nλ y que, si lo hacen, acuden a una hora escogida
aleatoriamente entre el intervalo. La distribución binomial nos da la probabilidad de que
exactamente k clientes acudan al servidor:
n(n − 1) · · · (n − k + 1) λ k λ n−k
1−
k! n n
Que es igual a:
n −k
λk n(n − 1) · · · (n − k + 1)
λ λ
1− 1− (2.1)
k! nk n n
Entonces vemos que:
λk
1. El elemento k! no depende de n;
2. En el segundo término hay k elementos en el numerador y k elementos en el deno-
minador. Por lo que lo podemos escribir como:
nn−1 n−k+1
···
n n n
Vemos fácilmente que si n → ∞ entonces todo el segundo término converge a 1.
n
3. Es sabido que 1 − nλ converge a e−λ si n → ∞
−k
4. Por el mismo razonamiento que en 2., 1 − nλ converge a 1 si n → ∞
Esta sección es desarrollada a partir de [Durret, 1999]. Antes de empezar con el cuerpo
de esta sección, queremos recordar la definición de cadena de Markov a tiempo discreto:
8
Definición 3.1 (Propiedad de Markov). Sean {Xn }n≥0 una sucesión de variables alea-
torias con valores en {1, 2, ..., N } y con n ∈ Z+ . Decimos que {Xn }n tiene la propiedad
de Markov si:
De manera que, dado el estado actual, los estados pasados son irrelevantes para predecir
el futuro.
A diferencia del caso discreto, en las cadenas de Markov en tiempo continuo no pode-
mos definir una probabilidad de transición única.
Definición 3.3 (Probabilidad de transición). La probabilidad de transición de una
cadena de Markov en tiempo continuo se define para cada t > 0 y se escribe:
P(Xs+t =j,Xs =k,X0 =i) P(Xs+t =j|Xs =k,X0 =i)P(Xs =k,X0 =i)
Habiendo usado que P(X0 =i) = P(X0 =i) en la segunda
igualdad.
9
La proposición 3.4 nos sugiere que si conocemos pt (i, j) para todo t < t0 , con un t0 > 0
arbitrario, entonces podemos deducir pt (i, j) para todo t. En efecto, a continuación vemos
como podemos reconstruir pt (i, j) para todo t a partir de su derivada en 0:
ph (i,j)
Definición 3.5 (Intensidad de transición). Si el lı́mite lı́mh→0 h existe, entonces
definimos intensidad de transición de i a j como:
ph (i, j)
q(i, j) = lı́m
h→0 h
Definición 3.6. Sea q(i, j) la intensidad
P de transición de i a j de una cadena de Markov a
tiempo continuo Xt . Definimos λi = j6=i q(i, j), el parámetro con el que Xt abandona el
estado i. Entonces, suponiendo que 0 < λi < ∞ (el caso λi = ∞ implica que se abandona
el estado i inmediatamente y el caso λi = 0 que nunca abandonará), definimos la matriz
con elementos
q(i, j)
r(i, j) = ,
λi
llamada la matriz de ruta de Xt .
Proposición 3.7. Dadas las intensidades de transición q(i, j) podemos construir una
cadena de Markov a tiempo continuo que tiene estas intensidades de transición
Demostración. Supongamos para simplificar que λi > 0 para todo i. Sea Yn una cadena de
Markov a tiempo discreto con probabilidad de transición r(i, j), donde r(i, j) es la matriz
de ruta definida en la definición anterior. Esta cadena de Markov a tiempo discreto Yn
nos marcará el camino para determinar la cadena de Markov Xt en tiempo continuo que
queremos. Para determinar cuánto tiempo el proceso permanece en cada estado, sean
τ0 , τ1 , τ2 , ... variables aleatorias independientes con distribución exp(1). Distinguimos:
En t = 0, el proceso se encuentra en el estado X0 . Permanece en este estado una cantidad
de tiempo que es exp(λX0 ). Ası́, definimos el tiempo que el proceso estará en X0 como
t1 = λτX0
0
En un tiempo t = t1 , el proceso salta a X1 , estado en el que permanece durante un tiempo
con parámetro λX1 . Ası́, definimos el tiempo que el proceso estará en X1 como t2 = λτX1 .
1
De igual manera, en el tiempo T2 = t1 + t2 el proceso salta al estado X2 , estado en el
que permanece durante un tiempo con parámetro λX2 . Ası́, definimos el tiempo que el
proceso estará en X2 como t3 = λτX2 .
2
Ası́ sucesivamente, definimos que la cantidad de tiempo que el proceso permanece en Xn−1
como tn = λτXn−1 . Por lo que el proceso cambia al estado Xn en el tiempo
n−1
Tn = t1 + · · · + tn
Xt = Yn para Tn ≤ t ≤ Tn+1
10
Ejemplo 3.8 (Modelo de colas como cadena de Markov). Sea un sistema de colas con n
servidores que atienden a clientes que esperan en una única cola, en el caso de encontrar
todos los servidores ocupados. Asumimos que los clientes llegan conforme a un proceso
de Poisson con parámetro λ y que los tiempos de servicio de los servidores corresponden
a variables aleatorias independientes con distribución exp(µ).
Sea Xt una cadena de Markov que indica el número de clientes en el sistema (en la cola
o siendo atendidos por los servidores) con intensidades de transición q(i, j).
Buscamos q(i, j) para las llegadas, es decir, buscamos q(i, i + 1) para todo estado i.
Tenemos que la probabilidad de que se dé una llegada es igual a 1 menos la probabilidad
de que haya 0 llegadas. Entonces, ph (i, i + 1) = 1 − e−λh . Ası́ podemos escribir:
∞ ∞
X (−λh)n X (−λh)n
ph (i, i + 1) = 1 − e−λh = 1 − =− = λh + o(h)
n! n!
n=0 n=1
Donde o(h) representa a los términos de orden mayor que h. Por tanto, siguiendo la
definición 3.5,
ph (i, i + 1)
q(i, i + 1) = lı́m =λ
h→0 h
Entonces, q(k, k + 1) = λ , para todo k ≥ 0.
Ahora buscamos q(i, j) para las salidas, es decir, buscamos q(i, i − 1) para todo estado i.
Suponemos que hay k servidores ocupados, con tiempos de servicio siguiendo exponen-
ciales de parámetro µ. Considerando la propiedad 2.5 del mı́nimo de exponenciales, esta
salida se producirá con ratio kµ. Ası́ pues:
(
kµ si 0 ≤ k ≤ n;
q(k, k − 1) = (3.1)
nµ si k ≥ n
11
λ
dado que la probabilidad de que el siguiente cliente encuentre 1 servidor ocupado es λ+µ
µ
y la probabilidad de que el siguiente cliente encuentre 0 servidores ocupados es λ+µ .
En general, para Yk , si hay k servidores ocupados, tenemos k + 1 exponenciales inde-
pendientes: k exp(µ), para indicar el tiempo que queda para acabar los k servicios aun
activos, y una exp(λ) para el tiempo que tarda el siguiente cliente en llegar. Debemos
dilucidar que sucede primero. Usamos la proposición 2.5 para ver que el mı́nimo de las
k exp(µ) tienen distribución exp(kµ). Entonces, la probabilidad de que un servicio se
complete antes de la llegada del siguiente cliente es la probabilidad de que una variable
aleatoria exp(kµ) sea más pequeña que una variable aleatoria exp(λ). Esta probabilidad
kµ
es: (kµ+λ) . También, la probabilidad de que suceda la llegada antes que finalice un servicio
λ
es (kµ+λ) .
Además, si sucede antes la llegada del cliente: Yk = k. En cambio, si sucede antes la
finalización de un servicio: Yk = Yk−1 . En efecto, dada la propiedad 2.2 de memoryless
de la distribución exponencial: una vez suponemos que ha sucedido la finalización de un
primer servicio antes que la llegada del cliente, para considerar la probabilidad de que se
complete otro servicio antes de la llegada del cliente se reinicia la cuenta y se parte de
Yk−1 , y ası́ sucesivamente. Por tanto, tenemos
kµ λ
Yk = Yk−1 +k
kµ + λ kµ + λ
Para encontrar Yn para cualquier n ≥ 2 necesitamos resolver la recursión de la ecuación
anterior. Ası́, primero vemos que
2µ 2λ λ 2µ 2λ
Y2 = Y1 + = +
2µ + λ 2µ + λ µ+λ 2µ + λ 2µ + λ
y que
3µ 3λ
Y3 = Y2 + =
3µ + λ 3µ + λ
λ 2µ 3µ 2λ 3µ 3λ
= + +
µ+λ 2µ + λ 3µ + λ 2µ + λ 3µ + λ 3µ + λ
Ası́, a partir de los patrones que podemos observar, tenemos que
n−1 n
nλ X iλ Y jµ
Yn = +
nµ + λ iµ + λ jµ + λ
i=1 j=i+1
1. Cuando hay i < n servidores ocupados, hay i + 1 relojes que siguen una distri-
bución exponencial independiente corriendo, siendo i de ellos de parámetro µ y 1
con parámetro λ. De esta manera, el tiempo por el que el proceso cambia al estado
siguiente sigue una distribución exponencial de parámetro iµ + λ. Si los n servido-
res están ocupados, entonces hay n distribuciones exponenciales corriendo y, ası́, el
tiempo por el que sucede un cambio de estado sigue una distribución exponencial
de parámetro nµ.
12
3. Cuando el proceso se encuentra en i y cambia de estado, empiezan a correr de nuevo
todos los relojes de las distribuciones que correspondan al nuevo estado.
A partir de esta descripción y usando las definiciones de este apartado, vemos que hemos
hallado en {Xn }n una cadena de Markov a tiempo continuo.
El resultado más relevante del anterior apartado es la proposición 3.7 por la que hemos
visto que, dadas las intensidades de transición q(i, j), podemos construir una cadena de
Markov en tiempo continuo que tiene estas intensidades de transición. A partir de [Durret,
1999], [Norris, 1997] y [Corcuera, 2019a], vemos el principal resultado de este apartado:
las ecuaciones hacia delante y hacia atrás, tanto en el caso finito como en el infinito.
Empezamos este apartado presentando la relación entre las matrices de intensidades
y las cadenas de Markov en tiempo continuo.
Definición 3.10 (Matriz de intensidades). Sea I un conjunto numerable. Una matriz
de intensidades en I es una matriz Q = (q(i, j)|i, j ∈ I) que satisface:
Observación 3.11. La suma de todos los elementos, excepto el diagonal, de cada fila es
finita: X
q(i) = q(i, j) < ∞
j6=i
y el elemento de la diagonal q(i, i) es −q(i). Haciendo ası́ que la suma de toda la fila sea
cero.
Definición 3.12 (Matriz estocástica). Una matriz P = (p(i, j)|i, j ∈ I) es estocástica si
cumple:
Observación 3.13. Si una matriz P (t) = (pt (i, j)|i, j ∈ I) tiene como elementos las
probabilidades de transición de una cadena de Markov en tiempo continuo, entonces P (t)
es una matriz estocástica.
Si una matriz Q = (q(i, j)|i, j ∈ I) tiene como elementos las intensidades de transición
definidas en 3.5, entonces Q es una matriz de intensidades.
Observación 3.14. Sabemos que para una matriz Q = (q(i, j)|i, j ∈ I), la serie:
∞
X Qk
k!
k=0
13
Teorema 3.15. Una matriz Q en un conjunto finito I es una matriz de intensidades si,
y solo si, P (t) = etQ es una matriz estocástica para todo t ≥ 0.
Teorema 3.16. Sea Q una matriz en un conjunto finito I. Definimos P (t) = etQ . En-
tonces, el proceso (P (t), t ≥ 0) tiene las siguientes propiedades:
Esta serie de potencias de matrices tiene un radio de convergencia infinito. Por lo que
podemos derivar la serie componente a componente:
∞ k−1 k
X t Q
P 0 (t) = = P (t)Q = QP (t)
(k − 1)!
k=1
Probando ası́ las ecuaciones diferenciales de Kolmogorov hacia delante y hacia atrás. Si
repitiéramos la derivación componente a componente, llegarı́amos, de la misma manera,
a demostrar el punto cuatro del teorema.
Falta por demostrar que P (t) es la única solución de las ecuaciones hacia delante y ha-
cia atrás. Supongamos que M (t) es otra matriz que satisface la ecuación hacia delante,
entonces
d d d −tQ
(M (t)e−tQ ) = M (t) e−tQ + M (t) e =
dt dt dt
= M (t)Qe−tQ + M (t)(−Q)e−tQ = 0
De esta manera, M (t)e−tQ es constante y, por tanto, M (t) = P (t). De la misma manera
podemos ver que P (t) es la única solución de la ecuación hacia atrás.
14
Teorema 3.17. Sea I un conjunto finito. Dadas las probabilidades de transición pt (i, j)
con i, j ∈ I, podemos definir la matriz de intensidades Q, entonces podemos construir
una cadena de Markov en tiempo continuo con un conjunto finito I de posibles estados y
matriz de probabilidades de transición P (t) = (pt (i, j)|i, j ∈ I). Entonces ésta cumple la
ecuación diferencial de Kolmogorov hacia delante:
ph (i, i) − 1 X ph (i, k) X
lı́m = − lı́m =− q(i, k) = −λ,
h→0 h h→0 h
k∈I,k6=i k∈I,k6=i
P
usando que 1 − ph (i, i) = k∈I,k6=i ph (i, k). Entonces:
ph (i, i) − 1
lı́m pt (i, j) = −λi pt (i, j) (3.8)
h→0 h
Finalmente usando las ecuaciones 3.6, 3.7 y 3.8, tenemos:
0
X
pt (i, j) = q(i, k)pt (k, j) − λi pt (i, j) = Qpt (i, j)
k6=i
15
A partir de este teorema, el teorema 3.16 para I finito nos sirve para ver que la ecuación
hacia delante y la ecuación hacia atrás tienen la misma solución. Por tanto, la matriz de
probabilidades de transición P (t) = (pt (i, j)|i, j ∈ I) también es solución de la ecuación
hacia atrás:
P 0 (t) = P (t)Q
tiene una solución no negativa (P (t)|t ≥ 0) y esta solución forma un semigrupo matricial,
ya que cumple:
P (s)P (t) = P (s + t)
para cualquier s, t ≥ 0.
Definición 3.19 (Semigrupo de una matriz de intensidades). Siguiendo el teorema an-
terior, llamamos a (P (t)|t ≥ 0) el semigrupo asociado a una matriz de intensidades
Q.
Teorema 3.20. Sea {Xt }t una cadena de Markov a tiempo continuo con valores en I. Sea
Q su matriz de intensidades y P (t) su matriz de probabilidades de transición. Entonces,
P (t) satisface la ecuación (3.9) y es el semigrupo de Q.
1. Vemos que P (t) cumple la ecuación hacia delante. Supongamos que X0 = i. Traba-
jamos a partir de un lema, cuya demostración encontramos en [Norris, 1997]:
Lema 3.21. Sea {Xt }t una cadena de Markov con probabilidades de transición
pt (i, j) = P(Xt = j|X0 = i) y sea Q su matriz de intensidades. Usamos la notación:
(
q(i, k) 1 si i = j
q(i) = −q(i, i); m(i, k) = ; δi,j =
qi 0 si i 6= j
Entonces
XZ t
pt (i, j) = e−q(i)t δij + q(i)e−q(i)s m(i, k)pt−s (k, j)ds (3.10)
k6=i 0
y Z tX
q(i)t
e pt (i, j) = δij + q(i)eq(i)u m(i, k)pu (k, j)du (3.11)
0 k6=i
16
A partir de este lema y su ecuación (3.11), sabemos que pt (i, j) es continua en t por
todo i, j, el integrando es una suma de funciones uniformemente convergente, por
tanto, continua y pt (i, j) es diferenciable en t y cumple
0
X
eq(i)t (q(i)pt (i, j) + pt (i, j)) = q(i)eq(i)t m(i, k)pt (k, j)
k6=i
Con la notación que hemos venido usando hasta ahora. De esta manera, podemos
escribir
0
X
pt (i, j) = q(i, k)pt (k, j)
k∈I
Acabamos de ver la ecuación hacia atrás en el caso infinito. Nos falta ver la ecuación
hacia delante.
Entonces Z tX
−q(i)t
pt (i, j) = δij e + k 6= jpt−s (i, k)q(k, j)e−q(j)s ds (3.12)
0
y Z tX
pt (i, j)eq(j)t = λij + pu (i, k)q(k, j)eq(j)u du (3.13)
0 k6=j
Del lema 3.21 de la demostración anterior, tenemos que eP q(i)t p (i, k) es creciente para
t
todo estado i, k. Por tanto, existen dos posibilidades:
P o bien, k6 =j pu (i, k)q(k, j) converge
uniformemente para todo u ∈ [0, t]; o bien, k6=j pu (i, k)q(k, j) = ∞ para todo u ≥ t. La
última opción contradice a la ecuación (3.13) del lema anterior, dado que su componente
17
izquierda es finita para cualquier t.
De la demostración de 3.18 sabemos que pt (i, j) es continua para todo estado i, j. De esta
manera, dada la convergencia uniforme, el integrando de la ecuación (3.13) es continuo y,
por tanto, podemos diferenciarlo para obtener
0
X
pt (i, j) + pt (i, j)q(j) = pt (i, k)q(k, j)
k6=j
Por tanto, vemos que P (t) cumple la ecuación hacia delante. Tal y como querı́amos de-
mostrar.
En este apartado, siguiendo las ideas de [Norris, 1997] y [Durret, 1999], presentamos
definiciones y resultados básicos que nos servirán para modelizar colas a partir de las
cadenas de Markov en tiempo continuo.
Definimos el fenómeno por el que una cadena de Markov en tiempo continuo llega a
recorrer un número infinito de estados durante un periodo finito de tiempo.
ζ = supn Jn
Definición 3.26. Decimos que una cadena de Markov en tiempo continuo {Xt }t es ex-
plosiva si para algún estado i ∈ I cumple:
Pi (ζ < ∞) > 0
Proposición 3.27. Sea {Xt }t una cadena de Markov en tiempo continuo, en un conjunto
I y con matriz de intensidades Q. Entonces {Xt }t no explota si cumple alguna de las
siguientes condiciones:
1. I es finito.
P
2. i∈I q(i) < ∞, donde q(i) = −q(i, i).
18
Vemos que la recurrencia y la transitoriedad de la cadena de Markov en tiempo con-
tinuo {Xt }t están determinadas por un subconjunto en tiempo discreto de {Xt }t .
Proposición 3.28. Sea {Xt }t una cadena de Markov en tiempo continuo. Sea h > 0 y
consideremos la cadena en tiempo discreto Zn = Xnh . Entonces:
Definición 3.29 (Tiempo de parada). Sea {Xt }t una cadena de Markov en tiempo con-
tinuo. Sea T una variable aleatoria que toma valores en [0, ∞) ∪ {∞}. T es un tiempo de
parada de {Xt }t , si el evento {T ≤ t} depende solo de (Xs |s ≤ t), para todo t ∈ [0, ∞).
Teorema 3.30 (Propiedad fuerte de Markov). Sea {Xt }t una cadena de Markov a tiempo
continuo con matriz de intensidades Q y sea T un tiempo de parada de esta cadena.
Entonces, {XT +t }t , condicionada a T < ∞ y XT = i, es una cadena de Markov a tiempo
continuo con matriz de intensidades Q e independiente de (Xs |s ≤ T ).
Definición 3.31 (Irreductibilidad). Sea {Xt }t una cadena de Markov en tiempo continuo.
Decimos que X es irreducible si por cualquier estado x e y es posible ir de x a y en un
número finito de transiciones. Es decir, si para cada pareja de estados x e y, existe una
sucesión de estados x0 = x, x1 , ..., xn = y tal que q(xm−1 , xm ) > 0 para 1 ≤ m ≤ n
Definición 3.32. El vector de probabilidades π es la distribución estacionaria de una
cadena de Markov a tiempo continuo Xt , si πP (t) = π para todo t > 0.
El siguiente resultado nos permite averiguar con más facilidad si un vector de proba-
bilidades π es distribución estacionaria:
Teorema 3.33. Sea Q la matriz de intensidades de una cadena de Markov en tiempo
continuo {Xt }t recurrente e irreducible. π es una distribución estacionaria si, y solo si,
πQ = 0.
19
con I, conjunto de estados posibles, finito. Suponemos que πpt = π. Observamos que en
la expresión de la izquierda de la última ecuación tenemos
!
d X d
π(i)pt (i, j) = π(j) = 0.
dt dt
t∈I
P
En la expresión de la derecha tenemos que, usando i∈I π(i)pt (i, k) = π(k),
X
0= π(k)Q(k, j) = (πQ)j
k∈I
Siendo (πQ)j el elemento j-ésimo del vector πQ. Entonces, ası́ hemos visto que πQ = 0
en el caso finito.
Queda por ver el caso I infinito, dado que el intercambio de la derivada con el sumatorio
en general no es posible en casos no finitos. Dado que Q es recurrente también es no
explosiva, debida la proposición 3.27. A la vez, por la proposición 3.28, tenemos que P (t)
es recurrente. Por tanto, un π satisfaciendo πQ = 0 o πP (t) = π es único, excepto por
escalares múltiples.
Fijamos un estado i y definimos el vector µ = (µj |j ∈ I) con
Z Ti
µj = E 1{Xt =j} dt
0
Por tanto, tenemos que µQ = 0. Ası́ pues, si vemos que µP (t) = µ, dada la unicidad
salvo múltiples, habremos acabado la demostración. Por la propiedad fuerte de Markov
(teorema 3.30) en Ti , podemos escribir
Z s Z Ti +s
Ei 1{Xt =j} dt = Ei 1{Xt =j} dt
0 Ti
Finalmente por el teorema de Fubini, que nos permite calcular el valor de una integral
múltiple, tenemos
Z s+Ti Z ∞
µj = Ei 1{Xt =j} dt = Pi (Xs+t = j, t < Ti )dt =
s 0
Z ∞X X Z Ti
1{Xt =k} dt ps (k, j) =
X
= Pi (Xt = k, t < Ti )ps (k, j)dt = Ei µk ps (k, j)
0 k∈I k∈I 0 k∈I
P
Entonces, k∈I µk ps (k, j) = µj . Dado que µ = (µj |j ∈ I), tenemos µP (t) = µ. Como
querı́amos demostrar.
20
Demostración. Podemos encontrar una demostración de este teorema en la sección quinta
de [Whitt, 2013].
Definición 3.37. La ecuación (3.14) del teorema anterior se llama condición de equi-
librio.
Este apartado está fundamentado a partir de [Shortle u. a., 2018] y [Durret, 1999]. Un
proceso de nacimiento y muerte es un tipo especı́fico de cadena de Markov a tiempo
continuo. Su estudio nos permite encontrar con facilidad la distribución estacionaria de
modelos de colas pertenecientes a procesos de nacimiento y muerte. Algunos de estos mo-
delos son los M/M/s, con los que nos centraremos en el siguiente apartado.
Un proceso de nacimiento y muerte consiste en un conjunto de estados {0, 1, 2, ...}, nor-
malmente llamados población. Cuando se produce un nacimiento en el estado n, el proceso
pasa del estado n al estado n + 1; y si se produce una muerte, al estado n − 1. Siguiendo la
lı́nea de todo el trabajo, supondremos que los nacimientos se producen siguiendo una dis-
tribución exponencial de parámetro λn > 0 y las muertes una exponencial de parámetro
µn > 0, para cada n. En la teorı́a de colas, usamos estos procesos para hablar de llegadas
de clientes en vez de nacimiento y de salidas de clientes en vez de muertes, considerando
λn = λ y µ = µn para todo n.
Si escribimos la condición de equilibrio tenemos:
λn−1
π(n) = π(n − 1)
µn
λn−2
π(n − 1) = π(n − 2)
µn−1
Por lo que
λn−1 λn−2
π(n) = · · π(n − 2)
µn µn−1
21
Ası́, repitiendo el proceso, tenemos que:
n
λn−1 · λn−2 · · · λ0 Y λi−1
π(n) = π(0) = π(0) (4.1)
µn · µn−1 · · · µ1 µi
i=1
∞ n
!!−1
X Y λi−1
π(0) = 1+ (4.2)
µi
n=1 i=1
Las ecuaciones (4.1) y (4.2) y la condición (4.3) son de gran utilidad para el estudio de
sistemas de colas tal y como podemos ver en la siguiente sección.
1. Hay s servidores idénticos, cada uno capaz de realizar un solo servicio a la vez;
22
Las dos últimas suposiciones son llamadas Markovianas y el número de servidores se suele
denotar con s, por eso las dos M y la s en el nombre del modelo.
Suponemos durante toda la sección que el parámetro del proceso de Poisson de las llegadas
es λ y que el parámetro de la distribución exponencial de los tiempos de servicio es µ.
Ejemplo 4.1 (Modelo M/M/1). Siguiendo las suposiciones y el ejemplo 3.8, tenemos que
las intensidades de transición son:
q(n, n + 1) = λ si n ≥ 0
q(n, n − 1) = µ si n ≥ 1
Como hemos señalado en el apartado anterior, estamos en un caso particular de las cade-
nas de nacimiento y muerte, puesto que representa que la intensidad del nacimiento de
individuos es λ > 0 y la intensidad de la muerte de individuos es µ > 0. A partir de los
pasos del apartado anterior de Procesos de nacimiento y muerte y dado que en el caso
que estamos trabajando λn = λ y µn = µ para todo n:
n
λ
π(n) = π(0)
µ
Nos falta encontrar el valor de π(0). Para ello, necesitamos suponer que λ < µ ⇒ µλ < 1.
Ası́
∞ ∞ n
X X λ π(0)
π(n) = π(0) =
µ 1 − (λ/µ)
n=0 n=0
P∞
por lo que, para tener n=0 π(n) = 1, tenemos que tomar π(0) = 1 − µλ . Concluimos
entonces que la distribución estacionaria es:
n
λ λ
π(n) = 1 − para n ≥ 0
µ µ
En el caso de λ > µ, tenemos que no podemos encontrar ningún valor de π(0) para hacer
la suma 1. En este caso, no hay una distribución estacionaria para nuestro modelo y
decimos que se trata de un modelo transitorio.
Ejemplo 4.2. Siguiendo con el escenario planteado por el ejemplo anterior, nos pregun-
tamos: ¿cuál es la distribución de probabilidad del tiempo de espera W de un cliente?
En el caso que nos ocupa, estamos ante una ley de probabilidad mixta, con masa de pro-
babilidad en el caso W = 0 y con función de densidad en W ∈ (0, +∞). Tenemos que para
que el tiempo de espera sea 0, necesitamos que en la cola haya Q = 0 personas esperando.
Entonces escribimos:
λ
P(W = 0) = P(Q = 0) = 1 −
µ
En el caso de que ya haya alguien esperando en la cola, escribimos fW (x) para referirnos a
la función de densidad del tiempo de espera W en (0, ∞). Si hay n personas esperando en
la cola, por lo visto en el teorema 2.4, el tiempo de espera tiene una densidad gamma(n, µ)
y
∞ n
X 1 λ µn xn−1
fW (x) = 1− e−µx
µ µ (n − 1)!
n=1
Finalmente, haciendo un cambio de variables m = n − 1:
∞
λ −µx X λm xm
λ
= 1− e λ = (µ − λ)e−(µ−λ)x
µ m! µ
m=0
23
Ası́ pues, podemos afirmar que la función de distribución de W , condicionada a W > 0,
es exponencial con parámetro µ − λ.
Ejemplo 4.3 (Modelo M/M/1 con una sala de espera finita). En este caso, además,
suponemos que la sala de espera tiene una capacidad finita de N clientes y un cliente
encontrándose ≥ N clientes en la cola desiste y abandona. Ası́ tenemos las siguientes
intensidades de transición:
q(n, n + 1) = λ si 0 ≤ n < N
q(n, n − 1) = µ si 0 < n ≤ N
PN n 1−θN +1
Dado que para N < ∞ y θ 6= 1, n=0 θ = 1−θ , si suponemos que λ 6= µ, para que la
1−λ/µ
suma de 4.4 dé 1 necesitamos tomar π(0) = 1−(λ/µ)N +1 . Ası́ pues, finalmente:
n
1 − λ/µ λ
π(n) = para 0 ≤ n ≤ N
1 − (λ/µ)N +1 µ
PN n 1
Para el caso λ = µ, como n=0 1 = N + 1, tenemos que tomar π(0) = N +1 , ası́ pues:
1
π(n) = para 0 ≤ n ≤ N
N +1
Ejemplo 4.4 (Modelo M/M/s). En este caso, a diferencia con el primer ejemplo, tenemos
s ≥ 2 servidores. No hay limitación de la capacidad de la cola. En este caso, claramente
observamos que las intensidades de transición son:
q(n, n + 1) = λ
(
µn si n ≤ s
q(n, n − 1) =
µs si n ≥ s
La diferencia con los anteriores ejemplos es que hasta un máximo de s clientes pueden ser
atendidos a la vez.
De la misma manera que en el caso M/M/1, a partir de los pasos del apartado anterior
de Procesos de nacimiento y muerte y dado que en el caso actual
(
µn si n ≤ s
λn = λ y µn = q(n, n − 1) =
µs si n ≥ s
24
para todo n:
λn
(
n!µn π(0) para 0 ≤ n < s
π(n) = λn
sn−s s!µn
π(0) para n ≥ s
Para encontrar π(0), usamos la condición de que la suma de probabilidades debe dar 1 y
seguimos la fórmula 4.2 del Proceso de nacimiento y muerte:
s−1 ∞
!−1
X λn X λn
π(0) = +
n!µn n=s sn−s s!µn
n=0
n−s m
λn (λ/µ)s P∞ (λ/µ)s P∞ s
Viendo que ∞ λ/µ λ/µ
= (λ/µ) 1
P
n=s s n−s s!µn = s! n=s s = s! m=0 s s! λ/µ
1− s
podemos escribir:
s−1
!−1
(λ/µ)s 1 X λn
π(0) = · +
s! 1 − sµ n=0 n!µn
λ
De la última ecuación podemos llegar a la conclusión que busca este ejemplo. Si λ < sµ
λ
⇒ sµ < 1, entonces es posible tomar un π(0) tal que la suma fuera 1 (como lo que hemos
hecho en los ejemplos anteriores). Podemos afirmar pues:
Acabamos esta sección con un ejemplo que nos sirve para ilustrar otras propiedades
del modelo M/M/s. Suponemos que s = ∞, modelo que sirve, por ejemplo, para estudiar
el tráfico telefónico y determinar cuántas lı́neas necesitamos para tener la mayor parte
del tiempo suficiente capacidad.
Ejemplo 4.5 (Modelo M/M/∞). En este modelo suponemos que hay infinitos servidores
disponibles, por lo que nunca se forma cola y cada cliente es atendido inmediatamente.
Claramente tenemos:
q(n, n + 1) = λ si n ≥ 0
q(n, n − 1) = µn si n ≥ 1
Ası́, a partir del primer ejemplo de esta sección y la fórmula 4.1 tenemos que:
λn−1 · · · λ0 λn (λ/µ)n
π(n) = · π(0) = n · π(0) = · π(0)
µn · · · µ1 µ · n · (n − 1) · · · 2 · 1 n!
P∞ (λ/µ)n
Para determinar el valor de π(0) buscamos el que hace que la suma ∞
P
n=0 π(n) = n=0 n! ·
P∞ (λ/µ)n
π(0) sea 1. Dado que n=0 n! = eλ/µ , π(0) debe ser π(0) = e−λ/µ . Por tanto, la dis-
tribución estacionaria queda:
(λ/µ)n
π(n) = e−λ/µ para n ≥ 0
n!
25
4.3. Fórmulas de Little
L = λW
y
Lq = λWq
Definición 4.7. Si indexamos a los clientes con n ∈ N, su ausencia o presencia en el
sistema para cualquier ω ∈ Ω puede ser indicado por la siguiente variable aleatoria:
(
1, si el cliente n está en el sistema en el momento t
In (t) =
0, en caso contrario
3. {Wnβ , n ∈ N}, para cada β ≥ 0 donde Wnβ es el tiempo con un factor exponencial
que definimos ası́: Z ∞
β
Wn = e−βt In (t)dt
0
Observación 4.9. Dadas las definiciones anteriores observamos que para cualquier ω ∈
Ω:
1. L(t) = ∞
P
n=1 In (t) para t ≥ 0.
R∞
2. Wn = 0 In (t)dt para n ∈ N.
R∞
Teorema 4.10. Para cualquier ω ∈ Ω y β > 0, la integral 0 e−βt L(t) existe, aunque su
valor puede ser infinito. Además
Z ∞ ∞
X
e−βt L(t)dt = Wnβ (4.5)
0 n=1
26
Demostración. A partir de las definiciones de L(t) y Wnβ , del hecho que In (t) es siempre
no negativa y que, fijado ω ∈ Ω, es Borel − medible respecto a t ≥ 0, esta demostración
es inmediata por el teorema de Fubini.
N (t) tn 1
lı́m = λ̂ ⇔ lı́m =
t→∞ t n→∞ n λ̂
27
n ∈ N, 1/λ̂ = lı́mn→∞ tn /n = 0 y lı́mt→∞ N (t)/t = ∞ = λ̂. En cambio, si N (t) < ∞ para
todo t ≥ 0, entonces tenemos la siguiente desigualdad tN (t) ≤ t ≤ tN (t)+1 . Por tanto,
tN (t) tN (t)+1
t N (t) + 1
≤ ≤ (4.6)
N (t) N (t) N (t) + 1 N (t)
WN WN N
Demostración. Para cualquier N ∈ N, tenemos tN = N tN . Entonces,
PN PN −1
WN n=1 Wn − n=1 Wn
= ≤
N N
PN ! PN −1 ! (4.7)
n=1 W n n=1 W n
≤ −
N N
WN
lı́m =0
N →∞ tN
L̂ = λ̂ · Ŵ
PN (t)
Demostración. Definimos U (t) = n=1 Wn para todo t ≥ 0. Primero, observamos que
como tn es finito y bien definido para cualquier n ∈ N, entonces N (T ) → ∞ cuando
PN (T )
T → ∞ y, por tanto, Ŵ = lı́mT →∞ n=1 NW(Tn ) . Esto implica que, cuando λ̂ < ∞ y
cuando Ŵ < ∞,
N (T )
N (T ) 1 X
λ̂ · Ŵ = lı́m Wn =
T →∞ T N (T )
n=1
N (T )
1 X U (T )
= lı́m Wn = lı́m
T →∞ T T →∞ T
n=1
28
También tenemos que lı́mT →∞ U (T )/T < ∞, ya que λ̂ y Ŵ son finitos. Entonces
Z ∞
e−βt dU (t) < ∞
0
R∞
para cualquier β > 0. Por tanto, ya que 0 e−βt dU (t) = ∞ −βtn W y a partir de un
P
n=1 e n
teorema abeliano que encontramos en la sección XIII.5 de [Feller, 1966], tenemos
∞
U (T ) X
λ̂ · Ŵ = lı́m = lı́m β e−βtn Wn
T →∞ T β→0+
n=1
R∞ −βtn Wn e−βt dt para
Además, por el corolario 4.11, tenemos que 0 e−βt L(t)dt = ∞
P R
n=1 e 0
RW −βWn
todo β > 0, entonces como 0 n e−βt dt = 1−e β < Wn , tenemos
Z ∞ ∞
X Z Wn ∞
X
e−βt L(t)dt = e−βtn e−βt dt ≤ e−βtn Wn < ∞
0 n=1 0 n=1
R∞
Ası́ pues, en caso de existir el lı́mite lı́mβ→0+ β 0 e−βt L(t)dt y, también, a partir de un
teorema tauberiano que encontramos en la sección XIII.5 de [Feller, 1966], tenemos
Z ∞
1 T
Z
L̂ = lı́m L(t)dt = lı́m β e−βt L(t)dt ≤
T →∞ T 0 β→0+ 0
X∞
≤ lı́m β e−βtn Wn = λ̂ · Ŵ < ∞
β→0+
n=1
En este punto, hemos probado que para demostrar el resultado del teorema es suficiente
probar que
∞
X
lı́m β e−β(tn +Wn ) Wn = λ̂ · Ŵ
β→0+
n=1
Fijamos un > 0 arbitrario. Dado el lema 4.13, existe un N ∈ N tal que Wn /tn < para
todo n > N . Entonces, podemos escribir para cualquier β > 0
∞
X ∞
X
β e−βtn Wn ≥ β e−β(tn +Wn ) Wn >
n=1 n=1
N
X X
>β e−β(tn +Wn ) Wn + β e−βtn (1+) Wn =
n=1 n>N
N N ∞
X
−β(tn +Wn ) 1 X 1 X
=β e Wn − β̂ e−β̂tn Wn + β̂ e−β̂tn Wn
1+ 1+
n=1 n=1 n=1
29
2. El tercer término de la última parte de la desigualdad tiende a λ̂ · Ŵ /(1 + ).
En este punto, hemos demostrado que los lı́mites de la media de los procesos estocásti-
cos vinculados a L, λ y W cumplen que para todo ω ∈ Ω, L̂ = λ̂Ŵ . De esta manera,
tenemos que L = λW casi seguramente. Y ası́ podemos dar por probada la primera fórmu-
la de Little. Podemos encontrar más detalles acerca de las justificaciones probabilı́sticas
para las hipótesis anteriores de los lemas en [Stidham, 1972].
De la misma manera que los resultados anteriores se han desarrollado a partir de L̂, λ̂ y
Ŵ , respecto a los clientes que se encuentran en el sistema (en la cola o siendo atendidos),
se puede desarrollar respecto a los clientes que se encuentran en la cola para obtener el
resultado L̂q = λ̂q Ŵq y probar la segunda fórmula de Little Lq = λWq .
Este apartado está fundamentado a partir de [Shortle u. a., 2018]. A partir de las dis-
tribuciones estacionarias encontradas en el apartado anterior, podemos encontrar medidas
que nos permiten evaluar la efectividad de un sistema de colas. Nos preocupamos de en-
contrar el esperado número de clientes dentro del sistema y el número esperado de clientes
en la cola, en ambos casos encontrándose el sistema en el estado estacionario. Siguiendo
con las suposiciones realizadas hasta ahora: asumimos que estamos en modelos de colas
donde las llegadas siguen un proceso de Poisson con parámetro λ y que los tiempos de
servicio siguen una distribución exponencial con parámetro µ. Introducimos el sı́mbolo ρ
en la notación para designar la intensidad de uso, es decir, ρ = λ/sµ en el caso de sistemas
con s ≥ 1 servidores (posible ya que λ, µ > 0). También continuamos con las notaciones
de Tq , T , Wq y W del apartado anterior. Empezamos viendo dos resultados útiles para
este apartado:
Proposición 4.16.
L − Lq = ρ
Demostración. Dado que T = Tq +S, tenemos que E[T ] = E[Tq ]+E[S] o, equivalentemen-
te, W = Wq + 1/µ (dado que S es una variable aleatoria con distribución exponencial).
De esta manera, es directa la demostración a partir de las fórmulas de Little:
30
Vemos primero las medidas de efectividad en el modelo M/M/1.
Ejemplo 4.17 (Medidas de efectividad en el modelo M/M/1). Recordemos que por el
apartado anterior:
π(n) = (1 − ρ)ρn
En este caso, ρ = λ/µ y trabajamos en la hipótesis que ρ < 1, pues como hemos visto en
el ejemplo 4.1 es condición necesaria para que exista distribución estacionaria. Entonces,
∞
X ∞
X
L = E[N ] = nπ(n) = (1 − ρ) nρn
n=0 n=0
P∞
ρ ∞
P∞ P∞ n
Observando que n=0 nρn = P n−1 y que n−1 es la derivada de
P
n=1 nρ n=1 nρ n=0 ρ .
Finalmente, dado que ρ < 1, ∞
n=0 ρ n = 1 . Entonces:
1−ρ
∞ ∞
X
n−1 1 X ρ
nρ = 2
⇒ nρn =
(1 − ρ) (1 − ρ)2
n=1 n=0
Ası́ pues
ρ λ
L= =
1−ρ µ−λ
es el valor esperado de clientes en el sistema en el estado estacionario.
Busquemos ahora el valor esperado de clientes en la cola en el estado estacionario (notar
que anteriormente se trataba de los clientes en el sistema, es decir siendo atendidos o
esperando en la cola). Por la proposición 4.16, Lq = L − ρ, entonces:
ρ ρ2 λ2
Lq = L − ρ = −ρ= =
1−ρ 1−ρ µ(µ − λ)
Para acabar, buscamos el valor de W y Wq , el tiempo esperado (o media del tiempo) que
un cliente pasará en el sistema y en la cola, respectivamente. A partir de la fórmula de
Little en el teorema 4.6, directamente obtenemos que:
L ρ 1
W = = =
λ λ(1 − ρ) µ−λ
y
Lq ρ ρ
Wq = = =
λ µ(1 − ρ) µ−λ
1. Para mantener el número de clientes dentro del sistema (y en la cola) bajo nos
interesa tener un ρ lejano a 1, pues si ρ → 1 ⇒ L → ∞, que significa que las esperas
son muy largas.
2. A la vez, al tratarse ρ = λ/µ de la intensidad de uso del sistema, sabemos que cuan
más cercano a 1 más ocupados estarán los servidores y, por tanto, más alta será la
productividad.
31
3. Se trata de encontrar un equilibrio entre ocupación del sistema y productividad.
Ejemplo 4.19 (Medidas de efectividad en el modelo M/M/s). Continuamos con las su-
posiciones anteriores: las llegadas de clientes siguen un proceso de Poisson con parámetro
λ y los tiempos de servicio una distribución exponencial de parámetro µ. Suponemos que
tenemos s > 1 servidores. En este caso, ρ = λ/sµ < 1, ya que estamos en el estado
estacionario. Recordemos que por el apartado anterior:
( n
λ
n π(0) para 0 ≤ n < s
π(n) = n!µλn
sn−s s!µn
π(0) para n ≥ s
con !−1
s−1
(λ/µ)s 1 X λn
π(0) = · + (4.8)
s! 1−ρ n!µn
n=0
Primero nos ocupamos de encontrar Lq . Dado que estamos en el caso de que hay cola en
el sistema, suponemos que n ≥ s + 1. Ası́ pues
∞ ∞
X X λn
Lq = E[Nq ] = (n − s)π(n) = (n − s) π(0) =
sn−s s!µn
n=s+1 n=s+1
∞ ∞ ∞
(λ/µ)s π(0) X (λ/µ)s π(0) X (λ/µ)s π(0)ρ X
= (n − s)ρn−s = mρm = mρm−1
s! s! s!
n=s+1 m=1 m=1
P∞ P∞
m−1 = d m d 1 1
Y usando que m=1 mρ dρ ( m=1 ρ ) = dρ 1−ρ −1 = (1−ρ)2
tenemos:
(λ/µ)s ρ
Lq = π(0)
s!(1 − ρ)2
(λ/µ)s
Lq
Wq = = π(0)
λ s!(sµ)(1 − ρ)2
(λ/µ)s
1
W = + π(0)
µ s!(sµ)(1 − ρ)2
(λ/µ)s ρ
λ
L= + π(0)
µ s!(1 − ρ)2
32
4.5. El número de servidores
c=r+4
siendo 4 > 0 el número de servidores adicionales añadidos a r para llegar a c. Ası́ para
hallar c, debemos hallar 4.
Debemos empezar este apartado introduciendo una fórmula que nos será útil. A partir de
las notaciones del apartado anterior, consideremos Wq (0) como la probabilidad de que un
cliente tenga 0 espera antes de recibir el servicio. Por ende, 1 − Wq (0) es la probabilidad
que un cliente tenga que esperar en la cola antes de ser atendido.
Proposición 4.20 (Fórmula C-Erlang). La probabilidad que un cliente tenga que esperar
un tiempo mayor que cero en la cola es determinado por la fórmula:
rc
c!(1−ρ)
C(c, r) = 1 − Wq (0) =
rc Pc−1 rn
c!(1−ρ) + n=0 n!
c−1 n
X r 1 rc
= −
n! π(0) c!(1 − ρ)
n=0
rc rc π(0)
1
Wq (0) = π(0) − =1−
π(0) c!(1 − ρ) c!(1 − ρ)
33
Y ası́, tomando 4.8, tenemos:
rc
c!(1−ρ)
1 − Wq (0) =
rc Pc−1 rn
c!(1−ρ) + n=0 n!
Volviendo al problema que quiere tratar este apartado, distinguimos tres enfoques para
encontrar el número de servidores adecuado:
r
c=
ρ
2. Enfoque de eficiencia. El objetivo es reducir los costes aunque suponga una reduc-
ción de la calidad del servicio. Para esto, debemos fijar un 4 deseado y mantenerlo
constante respecto las variaciones de r. De esta manera, si r → ∞, entonces ρ → 1
y 1 − Wq (0) → 1.
c=r+4
Demostración. Puesto que fijamos 4, ante las variaciones de r, solo nos queda
aplicar la fórmula (4.5) para conocer c.
3. Enfoque de calidad y eficiencia, con las siglas QED en inglés. Busca el equilibrio
entre los enfoques de calidad y de eficiencia. El objetivo es mantener constante
la calidad del sistema, es decir, mantener α := 1 − Wq (0) constante respecto las
variaciones de r.
34
para β > 0. Donde C(c, r) es la C-Fórmula de Erlang introducida en la proposición
4.20 y donde α y β son constantes relacionadas entre sı́:
φ(β)
α= (4.11)
φ(β) + βΦ(β)
Donde φ y Φ son la función de densidad y la función de distribución de la distribu-
ción normal estándar.
5. Redes de colas
A partir de [Durret, 1999], desarrollamos esta sección sobre sistemas con más de una
cola. Continuamos con la notación usada en la sección anterior y en el supuesto que las
llegadas de clientes siguen un proceso de Poisson de parámetro λ y que los tiempos de
servicio siguen una distribución exponencial de parámetro µ.
35
5.1. Reversibilidad
Teorema 5.1. Si λ < µs, la salida de clientes en un sistema de colas M/M/s en estado
estacionario sigue un proceso de Poisson con parámetro λ. Este resultado también se
cumple en el caso de tener µ dependiente del número n de clientes presentes en el sistema,
µ = µ(n).
Lema 5.2. Sea {Xt }t una cadena de Markov a tiempo continuo con intensidades de
transición q(i, j) y probabilidades de transición pt (i, j) con la distribución estacionaria
como distribución inicial, es decir, P(X0 = i) = π(i). Si fijamos un tiempo t y definimos
Ys = Xt−s para 0 ≤ s ≤ t. Entonces, recorrer Ys es recorrer Xt pero en dirección contraria
y tiene probabilidad de transición:
π(j)pt (j, i)
p̂t (i, j) =
π(i)
π(j)p(j, i)
p̂(i, j) = P(Ym+1 = j|Ym = i) =
π(i)
Ası́ hemos visto que Ym es una cadena de Markov en tiempo discreto con la probabilidad
de transición indicada.
Vemos que la fórmula p̂(i, j) = π(j)p(j,i)
π(i) tiene sentido: puesto que πp = π, tenemos
X X π(j)p(j, i) π(i)
p̂(i, j) = = =1
π(i) π(i)
j j
36
Por último, comprobamos que si π satisface la condición de equilibrio, entonces Ys tiene
probabilidad de transición pt (i, j). Cuando π satisface la condición de equilibrio, cumple
π(i)p(i, j) = π(j)p(j, i)
Demostración. Demostramos el teorema 5.1. Tal y como hemos visto en la sección ante-
rior, en un sistema de cola M/M/s si λ < µs, entonces la cola es un proceso de nacimiento
y muerte con una distribución estacionaria π que satisface la condición de equilibrio (3.14).
Si tomamos la cadena de Markov vinculada a esta cola M/M/s con distribución inicial la
estacionaria, a partir del lema anterior, si damos la vuelta a los tiempos (si vamos hacia
atrás), las llegadas se convierten en salidas. Por tanto, las salidas siguen un proceso de
Poisson de parámetro λ.
Teorema 5.3. Consideremos N (t) como el número de salidas en una cola M/M/1 y
consideremos X(t) como la longitud de esta cola, desde t = 0 hasta t = n. Teniendo la
distribución estacionaria como distribución inicial. Entonces, {N (s)|0 ≤ s ≤ t} y X(t)
son independientes.
En este apartado, estudiamos dos ejemplos de redes de colas. Una red de colas es un
sistema de colas que contiene más de una cola, por lo que en el sistema hay diferentes
tiempos de servicio µ y el tiempo de llegada de los clientes a cada cola depende del orden
de éstas. Un ejemplo canónico de red de colas serı́a el del servicio de urgencias de un
hospital, donde una vez superada la cola del triaje, el cliente tiene que esperar en una
segunda cola para ser atendido por el especialista pertinente. Hay muchos ejemplos de
redes de colas muy complejas, pero en este apartado nos centramos en las redes de colas
en tándem.
Ejemplo 5.4 (Red de dos servidores en tándem). Como hemos supuesto en el inicio de
la sección, los clientes llegan al servidor 1 siguiendo un proceso de Poisson de parámetro
λ, donde son atendidos con un tiempo de servicio que sigue una distribución exponencial
de parámetro µ1 . Una vez el servicio en este servidor 1 es completado, se unen a la cola
para acceder al servidor 2 y son atendidos en éste con un tiempo de servicio que sigue
37
una distribución exponencial de parámetro µ2 .
Como hemos visto en la sección 4.2. de este texto, la primera cola, al no verse afectada
por la segunda, para tener distribución estacionaria debe cumplir que λ < µ1 . Entonces,
la distribución del número de clientes Nt1 en la primera cola, viene dado por:
m
λ λ
P(Nt1 = m) = 1−
µ1 µ1
Ahora, a partir del teorema 5.1, sabemos que en estado estacionario la salida de los clientes
del servidor 1 sigue un proceso de Poisson de parámetro λ. Entonces, el número de clientes
Nt2 de la segunda cola es una cola M/M/1 con parámetro de llegada λ y parámetro de
servicio µ2 . De nuevo, a partir de la sección 4.2.:
n
2 λ λ
P(Nt = n) = 1−
µ2 µ2
Para acabar de especificar la distribución estacionaria de esta red de colas, necesitamos
dar la distribución de Nt1 y Nt2 conjuntamente. Dado el teorema 5.3, el número de salidas
hasta el momento t es independiente de Nt1 . Entonces, dado que Nt2 está determinado por
el proceso de salida de los clientes de la cola 1, éste es independiente de Nt1 , resultando
que Nt2 y Nt1 lo son para t ≥ 0. Ası́ pues
m n
1 2 λ λ λ λ
P(Nt = m, Nt = n) = 1− 1−
µ1 µ1 µ2 µ2
Por lo que podemos escribir
λm+n
π(m, n) = c
(µm n
1 µ2 )
con c = (1 − λ/µ1 )(1 − λ/µ2 ).
Desde julio del 2019 trabajo en una empresa llamada Giesecke+Devrient Mobile Se-
curity Iberica, que es parte de la multinacional alemana Giesecke+Devrient, con más de
11.300 empleados en 32 paı́ses2 . Formo parte del departamento de R&D desempeñando
el rol de Test Mánager, por el que soy uno de los encargados de la calidad del producto
que desarrollamos: sistemas operativos para tarjetas inteligentes, o smartcards, destinadas
a teléfonos inteligentes, smartwatches, tarjetas bancarias, tarjetas sanitarias, tarjetas de
2
Más información en: https://www.gi-de.com/es/es/mobile-security/?informaci %C3 %B3n %C2 %BB=
38
transporte, coches con conectividad, etc. La seguridad de estos productos es esencial y
por ello el proceso de certificación de calidad es muy importante.
Esta certificación de calidad se realiza de dos maneras distintas:
Cada tarea de test tiene asignada una etiqueta que indica en qué tarjeta se ejecutará.
Hay 3 tarjetas diferentes en el sistema. Estas tareas de test, antes de su ejecución de-
ben pasar por una fase previa donde se lleva a cabo el build o compilación del sistema
operativo y de los test que se ejecutarán. El build se lleva a cabo en ordenadores del
sistema, los servidores de build, y tiene una cola común para todas las ejecuciones. En
la siguiente fase, donde hay la ejecución del test, cada servidor de ejecución tiene una
tarjeta concreta, siendo posible que más de un servidor tenga el mismo tipo de tarjeta.
Cada ejecución se incorpora a la cola perteneciente a los servidores que coinciden con su
39
tarjeta. Al haber 3 tarjetas, hay un total de 3 colas de ejecución de test. De esta manera,
el build actúa como cuello de botella al impedir que ejecuciones de test con tarjetas con
baja ocupación tengan que completar la cola de los build, antes de acceder a la cola de
ejecución. Múltiples tareas de test suelen ser lanzadas en el mismo tiempo en forma de
paquetes, por lo que varias decenas de tareas se unen de golpe a la cola.
El objetivo de esta sección es, a partir de la descripción proporcionada, hacer un plan-
teamiento teórico que sirva para construir un modelo suficientemente representativo de
la cola y, con ello, calcular las medidas de efectividad y el número de servidores más
adecuado, mediante la recopilación de datos que nos proporciona el propio sistema de
integración continua.
1. Una primera cola M/M/s perteneciente a la cola que se forma para el build del
producto y de los test. Para ello necesitamos encontrar el parámetro λ0 del proceso
de Poisson que sigue la llegada de clientes (o de tareas de test) y encontrar el
parámetro µ0 de la distribución exponencial que sigue el tiempo de los servicios. En
este punto, debemos ver que λ0 < µ0 s para probar que esta cola es estable y tiene
distribución estacionaria, siendo s el número de servidores de build.
2. Siguiendo el teorema 5.1 y el apartado 5.2, tenemos que la salida de clientes de esta
primera cola se produce siguiendo un proceso de Poisson de parámetro λ0 , dado que
trabajamos en el caso λ0 < µ0 s. Como cada servidor de ejecución tiene un solo tipo
de tarjeta y hay 3 tarjetas distintas en el sistema, se forman 3 colas distintas en la
fase de ejecución de test y cada una de estas colas tiene si servidores de ejecución
con i = 1, 2, 3. De esta manera, se forman 3 sistemas de colas M/M/si con λi
(dependiente de λ) como parámetro del proceso de Poisson que sigue la llegada de
clientes a cada cola y con µ1 , como parámetro de la distribución exponencial que
siguen los tiempos de servicio (el tiempo de servicio es independiente de la tarjeta
donde se ejecute el test). Sabiendo con qué probabilidad pi una tarea de test tiene
asignada la tarjeta i (siendo p1 + p2 + p3 = 1), entonces λi = λpi . De esta manera,
faltarı́a por conocer µ1 .
40
En caso de ser estimadores sesgados, tomaremos el estimador máximo verosı́mil corre-
gido.
El estimador λ̄ ya es insesgado.
6.3. Cálculos
179,7977 al dı́a
0,1249 al minuto
Por tanto
λ¯0 = 0,1249
41
De esta manera, dado que λ̄0 = 0,1249 es el promedio total de salidas al minuto y
por lo visto en el apartado anterior, tenemos
λ¯1 = λ¯0 · 0,41 = 0,0512
λ¯2 = λ¯0 · 0,26 = 0,0325
λ¯3 = λ¯0 · 0,33 = 0,0412
42
b) Respecto la cola de la tarjeta 1. En la fase de ejecución con esta tarjeta
tenemos un total de s = 17 servidores. Empezamos calculando ρ1 :
λ1
ρ1 = = 0,9154
sµ1
Dado que ρ1 < 1, la cola es estable y tiene distribución estacionaria. Por lo que
podemos calcular las medidas de efectividad.
Seguimos con π(0):
s−1
!−1
(λ1 /µ1 )s 1 X λn1
π(0) = · + =
s! 1 − ρ1 n!µn1
n=0
16
!−1
(0,0512/0,00329)17 1 X 0,0512n
= · + =
17! 1 − 0,9154 n!0,00329n
n=0
1
= (517833,9932 · 11,8203 + 3495082,501)−1 = = 0,000000103
9616035,651
De aquı́, calculamos Lq :
(λ1 /µ1 )s ρ1 (0,0512/0,00329)17 0,9154
Lq = π(0) = · 0,000000103 =
s!(1 − ρ1 )2 17!(1 − 0,9154)2
= 66230912,45 · 0,000000103 = 6,8875
Ası́ Wq , por la fórmula de Litlle:
Lq 6,8875
Wq = = = 134,5215
λ1 0,0512
Como W = Wq + 1/µ1 ,
1
W = 134,5215 + = 438,4728
0,00329
Finalmente, por la fórmula de Little,
L = λ1 · W = 0,0512 · 438,4728 = 22,4498
Con todo tenemos
Lq = 6,8875; L = 22,4498; Wq = 134,5215; W = 438,4728
43
De aquı́, calculamos Lq :
Lq 0,0173
Wq = = = 0,5322
λ2 0,0325
Como W = Wq + 1/µ1 ,
1
W = 0,5322 + = 304,4836
0,00329
Finalmente, por la fórmula de Little,
s−1
!−1
(λ3 /µ1 )s 1 X λn
3
π(0) = · + =
s! 1 − ρ3 n!µn1
n=0
12
!−1
(0,0412/0,00329)13 1 X 0,0412n
= · + =
13! 1 − 0,9633 n!0,00329n
n=0
1
= (29911,4054 · 27,2476 + 141763,3056)−1 = = 0,000001045
956777,3154
De aquı́, calculamos Lq :
Lq 22,3554
Wq = = = 542,6069
λ3 0,0412
44
Como W = Wq + 1/µ1 ,
1
W = 542,6069 + = 846,5583
0,00329
Finalmente, por la fórmula de Little,
β = 1,0615
ya que
φ(β) 0,2271
α= = = 0,2
φ(β) + βΦ(β) 0,2271 + 1,0615 · 0,8558
Recordemos que con r notamos r = λ/µ.
Para conseguir que el nivel de calidad α sea 0,2, el número de servidores deberı́a
ser
√ p
s = r + β r = 11,6729 + 1,0615 · 11,6729 = 11,6729 + 3,6266812 = 15,2996
45
Para conseguir que el nivel de calidad α sea 0,2, el número de servidores deberı́a
ser
√ p
s = r + β r = 15,5623 + 1,0615 · 15,5623 = 15,5623 + 4,1875 = 19,7498
Para conseguir que el nivel de calidad α sea 0,2, el número de servidores deberı́a
ser
√ p
s = r + β r = 9,8784 + 1,0615 · 9,8784 = 9,8784 + 3,3363 = 13,2147
Para conseguir que el nivel de calidad α sea 0,2, el número de servidores deberı́a
ser
√ p
s = r + β r = 12,5228 + 1,0615 · 12,5228 = 12,5228 + 3,7564 = 16,2792
1. Hemos visto que las 4 colas estudiadas son estables y tienen distribución estaciona-
ria, por lo que el sistema es funcional y cumple su objetivo.
2. Tanto la cola de los build, como las colas de la tarjeta 1 y 3 tienen niveles de
ocupación y tiempos de espera superiores a los deseados. En cambio, la cola de la
tarjeta 2 tiene mucha menos intensidad de uso, con un tiempo medio de espera en
la cola de 0,5 minutos.
46
3. En el caso de la cola de los build, a partir de las medidas de efectividad calculadas,
constatamos el hecho de que esta cola supone un cuello de botella para colas menos
ocupadas, como es la de la tarjeta 2.
4. Una mejor distribución de los ordenadores dedicados a cada cola mejorarı́a el ren-
dimiento y calidad de éstas: la cola de la tarjeta 2 podrı́a tener hasta 5 ordenadores
menos; en cambio, la cola de los build y las de las tarjetas 1 y 3 necesitarı́an cada
una entre 2 y 3 ordenadores dedicados más
7. Conclusiones
Durante este trabajo hemos tratado las principales ideas en relación con el proceso
de Poisson y con las cadenas de Markov en tiempo continuo para desarrollar el objetivo
principal: los sistemas de colas M/M/s. A partir de más de 19 fuentes bibliográficas hemos
logrado introducir al lector los conceptos más básicos de la Teorı́a de Colas y presentar una
realidad empresarial, a modo de ejemplo práctico, donde esta teorı́a es de gran utilidad.
Hemos empezado este texto con la metáfora de la cola en el monte Everest el año
2019. La rescatamos para ratificar la idea, constatada en este trabajo, que la Teorı́a
de Colas tiene una enorme aplicación práctica y ayuda a resolver problemas actuales
y compartidos por todos. Uno puede acudir a las numerosas conferencias y artı́culos
publicados, como por ejemplo los que podemos encontrar en la Real Sociedad Matemática
Española3 o la Royal Society 4 , para percatarse del extraordinario papel que cada vez
más están realizando las Matemáticas para mejorar la vida de la gente. Es mi parecer
pensar que hemos de potenciar el poder que muchas áreas de las Matemáticas tienen para
incrementar el bienestar de la sociedad. Sin duda, la Teorı́a de Colas están entre estas
áreas, ya que bienestar también es que una empresa funcione más eficientemente gracias a
la modelización de sus colas, es que un hospital atienda mejor y más rápido a sus pacientes
o que las infraestructuras y servicios públicos sean fluidos y absorban a toda la demanda.
A fecha de redacción de este trabajo, está sucediendo un extraordinario y devastador
evento global: la pandemia del Covid-19. Ya hemos mencionado el papel importante que
juega la Teorı́a de Colas en los sistemas de salud. Por ejemplo, en un artı́culo del doctor
Adolfo Crespo de la Universidad de Sevilla 5 se hace hincapié en la relevancia que tienen
modelos analı́ticos de sistemas de colas para afrontar epidemias, permitiendo tomar de-
cisiones óptimas a la hora de destinar los recursos sanitarios, calcular la capacidad que
un sistema sanitario tiene para afrontar ciertos niveles de infección y analizar con detalle
3
Real Sociedad Matemática Española: rsme.es
4
Royal Society: royalsociety.org
5
Tı́tulo del artı́culo: A COVID-19 Recovery Strategy Based on the Health System Capacity Modeling.
Implications on Citizen Self-Management. Enlace: https://idus.us.es/handle/11441/95407
47
las fortalezas y debilidades de cada organización sanitaria regional. Sin olvidar también
la gestión de las colas que se forman para realizar pruebas PCR o para procesar éstas
en los laboratorios. Hay muchos otros estudios sobre la aplicación de la Teorı́a de Colas
en las pandemias vı́ricas. Queremos destacar uno de la Universidad Vrije de Amsterdam6
sobre la relación entre la transmisión de enfermedades infecciosas y los modelos M/G/1
de colas y otro de la Universidad Tecnológica de Malasia7 sobre la modelización y el
análisis del virus del Ébola a partir de la Teorı́a de Colas con la que, afirma, reduce el
coste computacional y mejora la predicción frente a otro tipo de métodos como los que
usan ecuaciones diferenciales ordinarias. Es decir, la Teorı́a de Colas no solo es útil para
la gestión de los recursos necesarios, sino que también para estudiar propiamente la pan-
demia y ser capaces de explicar la transmisión y las posibilidades que hay de controlarla.
Como hemos vivido todos nosotros, una mejor gestión de una pandemia no solo supone
proteger la salud de los ciudadanos, sino que también asegurar que las libertades consti-
tucionales no han de ser restringidas para evitar una saturación del sistema. Creo pues
que ésta es una prueba definitiva del valor útil de la Teorı́a de Colas. Esta conclusión hace
que me sienta muy satisfecho de haber escogido este tema para el trabajo.
Durante la realización del trabajo he tenido que afrontar retos que hasta ahora no
me habı́a encontrado (o no tanto) en el Grado en Matemáticas. La redacción de resul-
tados matemáticos y sus demostraciones de manera rigurosa, la recopilación de fuentes
bibliográficas en la biblioteca y por la red, la sı́ntesis de la diferente información, el uso
de nuevas herramientas como Tex, el trabajo coordinado y sostenido con el tutor y el
contraste entre fuentes bibliográficas de distinto valor, serı́an un ejemplo de ellos. A lo
largo del trabajo, he ido cometiendo incorrecciones por la falta de experiencia y de co-
nocimiento, de los cuales me ha ido advirtiendo el tutor o me he dado cuenta yo mismo
al ir avanzando. De esta manera, el proceso me ha permitido aprender a través de los
errores y asimilar no solo los conocimientos teóricos propios del tema del trabajo, sino
que otras muchas enseñanzas como: capacidad de análisis y de resolución de problemas
en el ámbito académico, organización del calendario para cumplir con la entrega, capa-
cidad de interpretación y sı́ntesis de fuentes bibliográficas, herramientas para el lenguaje
matemático para enunciar resultados y demostrarlos, asimilación del rigor matemático
y, sobre todo, experiencia para poder llevar a cabo otros futuros trabajos académicos.
De esta manera, hago un balance muy positivo del Trabajo Final de Grado: todos estos
aprendizajes junto con la implicación personal y la curiosidad sobre la materia, además
del vı́nculo profesional con el caso práctico, han hecho que me haya sentido muy realizado
y acabe satisfecho con los aprendizajes y conocimientos obtenidos.
Pese a no ser fácil y suponer todo un reto, creo que he cumplido los objetivos de
este trabajo. Entre ellos, especialmente el relacionado con mi actividad profesional en
Giesecke+Devrient Mobile Security Iberica, por el que he podido conectar la parte más
abstracta con una realidad que observo dı́a tras dı́a. Trasladaré las conclusiones prácticas
de este trabajo a mis compañeros para ası́ aplicar in situ los resultados.
Con todo, este Trabajo Final de Grado cierra una importante etapa en el Grado en
Matemáticas, pero será también la cabecera de las nuevas etapas que están por venir.
6
A useful relationship between epidemiology and queueing theory: The distribu-
tion of the number of infectives at the moment of the first detection. Enlace:
http://www.few.vu.nl/∼rplanque/resources/PapersForProject/trapman.pdf
7
Queueing theory based model and network analysis for predicting the transmission and control of Ebo-
la virus desease. Enlace: http://eprints.utm.my/id/eprint/79267/1/ChinyereOgochukwuDikePFS2018.pdf
48
Referencias
[Beasley 2011] Beasley, JE: Operations Research notes. Queuing theory. 2011. – URL
http://people.brunel.ac.uk/ mastjjb/jeb/or/contents.html. – Department of
Mathematical Sciencies, Brunel University. West London, Reino Unido.
[Feller 1966] Feller, William: An Introduction to Probability Theory and Its Appli-
cations. Volume II. Second edition. 1966. – Department of Mathematics. Princenton
University. Nueva Jersei, Estados Unidos.
[Green 2011] Green, Linda: Queuing theory and modeling. Graduate School of Busi-
ness, Columbia University, New York, New York. : Yuehwern Yih, 2011
[Kolesar und Green 1998] Kolesar, Peter ; Green, Linda: Insights on service system
design from a normal approximation to Erlang’s delay formula. 1998. – Graduate
School of Business, Columbia University. New York, New York, Estados Unidos.
[Norris 1997] Norris, J.R.: Markov Chains. 1997. – Cambridge Series in Statistical
and Probabilistic Mathematics. Cambridge, Reino Unido.
[Omahen und Marathe 1975] Omahen, K. ; Marathe, V.: Analysis and Applications
of the Delay Cycle for the M/M/c Queueing System. 1975. – Department of Computer
Science. Purdue University, Indiana, Estados Unidos.
[Roch 2012] Roch, Sebastien: Lecture 22: Strong Markov Property. 2012. – URL
https://www.math.wisc.edu/ roch/teaching files/275b.1.12w/lect22-web.pdf.
– Department of Mathematics. University of Wisconsin-Madison. Wisconsin, Estados
Unidos.
[Shlomo und Whitt 1981] Shlomo, Halfin ; Whitt, Ward: Heavy-Traffic Limits for
Queues with Many Exponential Servers. Operations Research. 1981. – Bell Laboratories.
Holmdel, New Jersey, Estados Unidos
49
[Shortle u. a. 2018] Shortle, J. F. ; Thompson, J. M. ; Gross, D. ; Harris, C. M.:
Fundamentals of queueing theory (Vol. 399). 2018. – John Wiley and Sons. Hoboken,
New Jersey, Estados Unidos.
[Stidham 1972] Stidham, Jr. S.: L = λW : A discounted analogue and a New Proof.
1972. – Institute for Operations Research and the Management Sciences (INFORMS).
Maryland, Estados Unidos.
50