Teora de Colas
TC: Parte de la Investigacio n Operativa que estudia el comportamiento de siste-
mas cuyos elementos incluyen lneas de espera (colas).
IO 07/08 - Teora de Colas 1
Teora de Colas: ejemplos
personas esperando por un servicio (bibliotecas, bancos, gasolineras, urgen-
cias en hospital, . . . ),
maquinas esperando por una reparacion, piezas de un producto esperando a
ser ensambladas,
programas de ordenador esperando a ser ejecutados por un procesador,
informacio n de internet esperando en un nodo para ser transferida a su destino,
aviones esperando a despegar o aterrizar,
IO 07/08 - Teora de Colas 2
Teora de Colas: historia
Se inicio con A. K. Erlang, en la compana telefo nica estatal de Dinamarca (prin-
cipios del siglo XX).
Se analizaron los tiempos de espera de llamadas a centralitas automaticas (con-
gestio n de trafico).
Objetivo: satisfacer la demanda incierta en el sistema telefo nico con el menor
coste para la compana.
IO 07/08 - Teora de Colas 3
Teora de Colas
Introduccio n.
Elementos y relaciones en un sistema.
Modelo M/M/1.
Modelo M/M/s.
Modelo M/M/1/k.
Aplicaciones.
IO 07/08 - Teora de Colas 4
Introduccion
Las lneas de espera generan malestar, ineficiencia, retraso y otros problemas,
lo que origina un coste de tiempo y economico.
Es muy importante evaluar el balance entre el aumento del nivel de servicio y el
tamano de las colas de espera.
Por tanto, es necesario entender la relacio n entre el nu mero de servidores en un
sistema (o eficacia de los mismos) y la cantidad de tiempo gastado en la cola (o
cantidad de clientes en la misma).
En sistemas de colas sencillos dichas relaciones se pueden encontrar analtica-
mente. En sistemas mas complejos se pueden analizar mediante simulacio n.
IO 07/08 - Teora de Colas 5
Introduccion
Elementos mas importantes en un sistema de colas: clientes y servicio.
Los clientes se caracterizan por los intervalos de tiempo que separan sus llega-
das.
El servicio se caracteriza por el tipo y tiempo de servicio, ademas de por el
nu mero de servidores. El tipo de servicio o disciplina representa el orden en el
que los clientes se seleccionan de la cola.
Las llegadas de clientes pueden ser deterministas o aleatorios (en este caso se
modelan mediante una distribucio n estadstica).
Los tiempos de servicio tambien pueden ser deterministas o aleatorios (distribu-
cio n estadstica).
IO 07/08 - Teora de Colas 6
Introduccion: tipos de sistemas
Las variaciones en un sistema de colas pueden ser mu ltiples. So lo se pueden
resolver de forma analtica un conjunto reducido de sistemas.
IO 07/08 - Teora de Colas 7
Elementos de un sistema: Llegadas
Pueden existir una o varias fuentes.
Se suele asumir independencia entre llegadas.
Intervalos entre llegadas: deterministas o aleatorios.
Tasa de llegadas: nu mero medio de clientes que acceden al sistema por
unidad de tiempo.
Tiempo medio entre llegadas: 1 .
IO 07/08 - Teora de Colas 8
Elementos de un sistema: Fuente de entrada
Puede ser infinita o finita (sistemas abiertos o cerrados, respectivamente).
Ejemplo de sistema abierto: un banco, ya que es practicamente imposible que
todos los posibles clientes coincidan en su llegada.
Ejemplo de sistema cerrado: un servidor de internet con un nu mero relati-
vamente pequeno de usuarios autorizados (es posible que en un momento
determinado se conecten todos los usuarios al servidor).
Si la fuente es finita, entonces el nu mero de clientes en la cola afecta al nu me-
ro de clientes fuera del sistema.
La llegada puede ser en bloque o de forma unitaria. Frecuentemente el bloque
se trata como un solo cliente.
IO 07/08 - Teora de Colas 9
Introduccion: Clientes
Pueden ser impacientes.
Por tanto, los clientes se pueden perder, bien porque no entran en el sistema,
bien porque abandonan tras un tiempo en el sistema.
Tambien, los clientes pueden percibir un ritmo mas acelerado en una cola
distinta y por tanto decidir cambiarse.
IO 07/08 - Teora de Colas 10
Elementos de un sistema: Cola o canal de espera
Puede ser de uno o varios canales.
Puede existir interferencia entre canales.
Puede ser de capacidad limitada.
Disciplina de la cola: orden de seleccion en el servicio (FIFO, LIFO, aleato-
rio, orden de prioridad, etc.).
IO 07/08 - Teora de Colas 11
Elementos de un sistema: Servicio
Pueden existir uno o varios servidores.
Se suele asumir independencia entre tiempos de servicio.
Duracio n de los servicios: deterministas o aleatorios.
Tasa de servicio: nu mero medio de clientes que son atendidos por unidad
de tiempo.
1
Tiempo medio de servicio: .
IO 07/08 - Teora de Colas 12
Ana lisis de sistemas de colas
Una vez caracterizado el sistema, se pueden contestar a las siguientes pregun-
tas:
Que proporcio n de tiempo estan los servidores desocupados?.
Cual es el tiempo medio de espera para un cliente?, es este un tiempo
razonable?, se pierden clientes por tiempos de espera largos?.
Es conveniente anadir mas servidores para reducir el tiempo medio de es-
pera?.
Cual es el nu mero medio de clientes en cola?.
Cual es la probabilidad de que la espera sea mayor que una determinada
longitud en un tiempo determinado?.
...
IO 07/08 - Teora de Colas 13
Ana lisis de sistemas de colas
Notacion de Kendall: las caractersticas del sistema se especifican por los
smbolos:
A/B/s/k/t/d/
donde A y B denotan las distribuciones de los tiempos entre llegadas y de ser-
vicio, respectivamente.
s denota el nu mero de servidores en paralelo o canales, k denota la capacidad
del sistema, t denota el tamano de la fuente de entrada, y d es la disciplina de
la cola.
IO 07/08 - Teora de Colas 14
Ana lisis de sistemas de colas
La distribucio n puede ser
M Exponencial
D Constante o determinista
Ek Erlang de parametro k
G Generica e independiente
La disciplina puede ser
FCFS First come, first served
LCFS Last come, first served
SIRO Service in random order
GD General discipline
IO 07/08 - Teora de Colas 15
Ana lisis de sistemas de colas
Por ejemplo, un sistema que se describe como
M/M/1///FCFS
denota un sistema abierto que contiene un u nico servidor con tiempos de lle-
gada y servicio exponenciales, capacidad infinita y disciplina primero que entra,
primero que se sirve.
So lo un nu mero pequeno de sistemas se puede resolver analticamente.
Modelos sencillos: M/M/1/, M/M/s/, M/M/1/k.
IO 07/08 - Teora de Colas 16
Distribuciones
En los sistemas de colas normalmente se asume que tanto las llegadas de clien-
tes como los tiempos de servicio son aleatorios.
Es usual suponer que los tiempos entre llegadas y los de servicio se distribuyan
de forma exponencial. En este caso, la probabilidad instantanea de ocurrencia
de un suceso en las siguientes t unidades de tiempo es:
f (t) = et para t 0,
donde denota la tasa de llegadas.
Esta distribucio n es u til ya que tiene la propiedad de falta de memoria y esta-
cionariedad (el sistema se comporta, transcurrido un plazo, de forma estable e
independientemente de las condiciones iniciales).
IO 07/08 - Teora de Colas 17
Distribuciones
Una distribucio n exponencial de los tiempos entre llegadas implica una distribu-
cio n de Poisson para las llegadas, es decir, el nu mero de llegadas en el intervalo
(0, t] es una Poisson. Una distribucio n de Poisson describe la probabilidad de
que lleguen n clientes en las siguientes t unidades de tiempo:
n
t (t)
P (Xt = n) = e para n = 0, 1, . . .
n!
En la practica, se habla de llegadas Poisson y tiempos de servicio exponencial.
En general se supone que el sistema se encuentra en estado estacionario (es-
tabilidad independiente del tiempo).
IO 07/08 - Teora de Colas 18
Notacion universal
Objetivo: dados los siguientes parametros (se suelen estimar estadsticamen-
te)
tasa de llegadas.
tasa de servicio.
s nu mero de servidores.
IO 07/08 - Teora de Colas 19
Notacion universal
se calcula
= s factor de utilizacio n del sistema o intensidad de trafico (proporcio n
de tiempo esperado en el que los servidores estan ocupados). Si < 1 enton-
ces el sistema se estabiliza. En otro caso el nu mero de clientes en el sistema
se incrementa sin lmite.
L valor esperado del nu mero de clientes en el sistema (la variable se denota
por N ).
Lq valor esperado del nu mero de clientes en cola (la variable se denota por
Nq ).
IO 07/08 - Teora de Colas 20
Notacion universal
W tiempo medio de espera en el sistema (la variable se denota por T ).
Wq tiempo medio de espera en la cola (la variable se denota por Tq ).
pn probabilidad de que n clientes esten en el sistema (en estado estacio-
nario).
c nu mero medio de clientes en servicio.
IO 07/08 - Teora de Colas 21
Relaciones ba sicas: Modelo general
Fo rmula de Little: L = W y Lq = Wq .
Ademas, W = Wq + 1.
De estas tres formulas se deduce: L = Lq + .
IO 07/08 - Teora de Colas 22
Relaciones ba sicas: Modelo general
Se dice que el sistema se encuentra en el estado n si existen exactamente n
clientes en el mismo.
Ecuaciones de balance de flujo (la tasa esperada de llegada al estado n es
igual a la tasa esperada de salida del estado n en estado estacionario):
p00 = p11
p00 + p22 = p11 + p11
p11 + p33 = p22 + p22
=
pn1n1 + pn+1n+1 = pnn + pnn
=
IO 07/08 - Teora de Colas 23
Relaciones ba sicas: Modelo general
Si resolvemos las ecuaciones anteriores para pi se obtiene
0
p1 = p0
1
1 0
p2 = p
2 1 0
2 1 0
p3 = p
3 2 1 0
=
n1
1 0
pn = p0 .
n 2 1
Para calcular p0 (prob. de que el sistema este vaco), se utiliza:
p0 + p1 + p2 + + pn + = 1.
IO 07/08 - Teora de Colas 24
Modelo M/M/1
En este caso, n = , n = , = < 1 para todo n. Entonces,
pn = n p0 , p0 = 1 ,
por lo que pn = n (1 ).
Por tanto,
X
L = E(N ) = npn = (ejercicio).
n=0
1
y de la misma forma,
X 2
Lq = E(Nq ) = (n 1)pn = (ejercicio).
n=1
1
IO 07/08 - Teora de Colas 25
Modelo M/M/1
Por la formula de Little:
L 1
W = E(T ) = =
(1 )
1
Wq = E(Tq ) = W = .
(1 )
Ademas, c = L Lq = .
La probabilidad de que haya mas de k clientes en el sistema es:
k1
X k1
X
P (N k) = 1 pk = 1 n (1 ) = 1 (1 )(1 k )/(1 ) = k .
n=0 n=0
Por tanto,
P (N < k) = 1 k .
IO 07/08 - Teora de Colas 26
Modelo M/M/1: Ejemplo
La tasa de llegadas de estudiantes al mostrador de una biblioteca es de 10
por hora. En el mostrador existe una sola persona y atiende con una tasa de 5
minutos por persona. Cuales son las medidas de comportamiento del sistema?
Datos: = 10 (tasa de llegadas), = 60/5 = 12 (tasa de servicio), s =
1
(nu mero de servidores). Se suponen distribuciones exponenciales.
Resultados:
L 5 p0 0.16
Lq 4.16 p1 0.14
W 0.5 p2 0.11
Wq 0.42 p3 0.09
0.83 p4 0.08
IO 07/08 - Teora de Colas 27
Modelo M/M/s
En sistemas con mu ltiples servidores (s > 1), la tasa de servicio depende del
nu mero de clientes en el sistema. En este caso, = s < 1, y se puede probar
que
1
p0 = Ps1 (/)n (/)s
n=0 n! + s!(1)
y
(/)np0
pn = , si 0 n s
n!
(/)np0
pn = , si n > s.
s!sns
IO 07/08 - Teora de Colas 28
Modelo M/M/s
Ademas,
(/)s p0
Lq =
s! (1 )2
Lq
Wq =
1
W = Wq +
L = W = Lq + .
Prob. de que un nuevo cliente tenga que esperar: pw = ( )s p0
s! (1) .
IO 07/08 - Teora de Colas 29
Modelo M/M/s: Ejemplo
Un banco dispone de 3 ventanillas de atencion. Los clientes llegan al banco con
tasa de 1 por minuto. El tiempo de servicio es de 2 minutos por persona.
Datos: = 60 (tasa de llegadas), = 60/2 = 30 (tasa de servicio), s =
3
(nu mero de servidores).
Resultados:
L 2.89 p0 0.11
Lq 0.89 p1 0.22
W 0.049 p2 0.22
Wq 0.015 p3 0.15
0.67 p4 0.10
IO 07/08 - Teora de Colas 30
Modelo M/M/1/k
En este caso, si el sistema esta lleno (la capacidad es k) no se permite la en-
trada de nuevos clientes al sistema. Por tanto, la tasa de llegada efectiva no es
constante y vara con el tiempo (en funcio n de si el sistema esta lleno o no):
ef = (1 pk ).
En este caso,
pn = n p0 , para n = 0, 1, . . . , k
y no existe estado k + 1.
Por tanto,
p0 + p1 + p2 + + pk = 1.
IO 07/08 - Teora de Colas 31
Modelo M/M/1/k
De la anterior expresion se deduce que
1
p0 = , si =
1 k+1
1
p0 = , si = .
1+k
y siempre existe una distribucio n estacionaria (aunque > ).
IO 07/08 - Teora de Colas 32
Modelo M/M/1/k
Ademas, se obtienen las siguientes relaciones:
(1 (k + 1) k +k+1
k )
L= , si =
(1 )(1 k+1)
k
L = , si = .
2
y
Lq = L (1 p0)
L
W =
ef
1
Wq = W .
IO 07/08 - Teora de Colas 33
Limitaciones de los sistemas de colas
La resolucion analtica de los sistemas se complica a medida que los sistemas
se hacen mas complejos. De hecho, para muchos sistemas no existe resolucion
analtica.
Ejemplo: un sistema de servidores en paralelo y en serie con mu ltiples canales
y distribuciones generales.
En sistemas de colas complejos conviene utilizar simulaciones para estudiar
su comportamiento.
IO 07/08 - Teora de Colas 34
Aplicaciones de Teora de Colas
Se pueden usar los resultados de Teora de Colas para la toma de decisiones:
Cuantos servidores emplear en el sistema?
Es mejor usar un u nico servidor rapido o muchos servidores mas lentos?
Es mejor usar servidores identicos o servidores especficos?
Objetivo: minimizar el coste total = coste de servicio + coste de espera.
IO 07/08 - Teora de Colas 35
Aplicaciones de Teora de Colas
Coste de servicio: coste al aumentar la capacidad de servicio.
La capacidad del servicio se puede aumentar anadiendo mas servidores, s %,
o haciendo servidores mas eficientes, %, etc.
Habitualmente, la funcio n de coste de servicio viene dada por Cs s, donde Cs
representa el coste por unidad de tiempo y servidor.
Tambien se utiliza C, donde C representa el coste por unidad de tiempo y
unidad de tasa de servicio.
IO 07/08 - Teora de Colas 36
Aplicaciones de Teora de Colas
Coste de espera: coste asociado a la espera de los clientes.
La espera de clientes genera tiempo perdido, pe rdida de los mismos, etc.
Habitualmente, la funcio n de coste de espera viene dada por Cl L(s), donde Cl
denota el coste de espera por unidad de tiempo y cliente y L(s) es el valor
esperado del nu mero de clientes en el sistema para s servidores.
Tambien se utiliza Cw W (), donde Cw denota el coste de espera por unidad de
tiempo y cliente y W () es el valor esperado del tiempo medio de espera en el
sistema para una tasa de servicio de unidades.
IO 07/08 - Teora de Colas 37
Aplicaciones de Teora de Colas
La siguiente figura representa un modelo tpico de costes (en euros por unidad
de tiempo):
El coste del servicio aumenta con el incremento en el nivel del servicio pero el
coste por espera disminuye con el nivel.
Hay que buscar el nivel de servicio que minimiza el coste total.
IO 07/08 - Teora de Colas 38
Ejemplo: cuantos servidores utilizar?
Un banco dispone de 3 ventanillas de atencion. Los clientes llegan al banco a
una tasa de 40 por hora. El tiempo de servicio es de 3 minutos por persona.
El banco se plantea si le conviene aumentar el nu mero de ventanillas para sa-
tisfacer mejor a los clientes.
El coste que le supone abrir una nueva ventanilla es de 6 euros la hora. El coste
horario de espera se ha estimado en 18 euros por cliente.
Datos: = 40 (tasa de llegadas), = 60/3 = 20 (tasa de servicio), s =
3
(nu mero de servidores), Cs = 6, Cl = 18.
IO 07/08 - Teora de Colas 39
Ejemplo: cuantos servidores utilizar?
Resultados:
s=3 s=4 s=5
L 2.88889 2.17391 2.03980
Coste de servicio 18.00 24.00 30.00
Coste de espera 52.00 39.13 36.72
Coste total 70.00 63.13 66.72
Por tanto, al banco le interesa abrir solo una ventanilla mas.
IO 07/08 - Teora de Colas 40
Ejemplo: un servidor rapido o muchos lentos?
En un servidor de Internet existen 3 nodos que atienden peticiones a razo n de
50 por minuto. El tiempo medio de servicio de cada nodo es de 3 segundos por
peticio n.
En el servidor se plantean la posibilidad de instalar un u nico nodo con tiempo de
servicio de 1 segundo por peticio n. Es conveniente esta opcio n para reducir el
tiempo medio de espera en el sistema?
Datos: = 50 (tasa de llegadas), = 20 (tasa de servicio) con s = 3 (nu mero
de servidores), y = 60 con s = 1.
IO 07/08 - Teora de Colas 41
Ejemplo: un servidor rapido o muchos lentos?
Resultados:
s=3 s=1
W 0.1202 0.1000
Por tanto, es mas conveniente utilizar un ordenador mas rapido.
IO 07/08 - Teora de Colas 42