Teoria de Filas
Referencia principal:
Freitas, P. J. Introduo Modelagem e Simulao de Sistemas, 2 Ed., Visual Books, 2008, Cap. 8.
Fila Simples
Entidade Chegando Fila Entidade Servida Servidores
Entidade Chegando
Fila
Entidade Servida
Entidade Servida
Servidor
Entidade Servida
A especificao de um modelo de fila normalmente requer que as seis caractersticas (parmetros) sejam declarados. A notao mais conhecida chamada de notao de Kendall que possui a forma A/S/m/B/K/SD, onde:
9 9 9 9 9 9 9 9
A: Distribuio do tempo de chegada; S: Distribuio do tempo de servio; m: Nmero de servidores; B: Capacidade do sistema (tamanho da fila); K: Tamanho da populao; SD: Disciplina de servio. Se no especificado B e K so considerados infinitos e o tipo de disciplina de servio definido com FIFO. As chegadas so individuais.
Simulao Discreta de Sistemas - Prof. Paulo Freitas - UFSC/CTC/INE 3
tipos de distribuio para tempos de chegada e de servio, costumam ser representados pela seguinte nomenclatura:
9 9 9 9 9
M: Ek: Hk : D: G:
Exponencial (M de memoryless); Erlang com parmetro k; Hiperexponencial com parmetro k; Determinstica; Geral..
Exemplo 1
Considere
9 9 9 9
a especificao M/M/1///FIFO:
(M) tempos entre chegadas com distribuio exponencial; (M) tempo de servio com distribuio exponencial; (1) um nico servidor; () capacidade do sistema (tamanho da fila) sem limitaes; () populao tambm ilimitada (FIFO) disciplina de servio Forma reduzida. Se os 3 ltimos parmetros so //FIFO ento a notao ficaria M/M/1.
Simulao Discreta de Sistemas - Prof. Paulo Freitas - UFSC/CTC/INE 5
9 9 9
Exemplo 2
Um
9 9 9 9
sistema de fila que foi retratado com o emprego da notao de Kendall como M/G/4/50/2000/LIFO.
M: tempos entre chegadas com distribuio exponencial; G: tempos de servio distribudos de forma arbitrria; 4: quatro servidores; 50: capacidade do sistema (tamanho da fila) limitada a 50 clientes (4 sendo servidos e no mximo 46 aguardando na fila); 2000: a fonte de origem dos clientes com capacidade tambm limitada para 2000 clientes. LIFO: a disciplina de servio do tipo ltimo a chegar o primeiro a ser atendido.
Simulao Discreta de Sistemas - Prof. Paulo Freitas - UFSC/CTC/INE 6
9 9
9 9 9
Relacionamentos entre e que se aplicam em modelos de fila do tipo G/G/m (MM1 um caso especial do G/G/m).
1.
Condio de Estabilidade < m. Isto , que taxa mdia de chegadas () seja menor que a taxa mdia de servio (), considerando m servidores, onde m = 1, 2, 3.... Nmero no Sistema versus Nmero na Fila o nmero de clientes no sistema (n) = soma do nmero de clientes na fila (nq) + o nmero de clientes sendo servidos (ns).
2.
Nmero versus Tempo duas relaes so importantes para a compreenso do comportamento geral de um sistema de filas. A condio fundamental que se considere que clientes no so perdidos (deixam o sistema) por falta de capacidade da fila de espera. N mdio de clientes no sistema = = taxa de chegadas X tempo mdio no sistema N mdio de clientes na fila = = taxa de chegadas X tempo mdio de espera
Tempo no Sistema versus Tempo na Fila o tempo despendido por um cliente (ou o tempo de residncia de um cliente) num sistema de fila (r) igual soma do tempo de espera (w) com o tempo recebendo servio (s): r = w + s.
10
Modelo M/M/1
o modelo de fila mais empregado; Processos ou sistemas com um nico servidor podem ser representados por este modelo. TEC e TS bem descritos por uma Exponencial (processos de Poisson). Sem limitaes para o tamanho da fila Disciplina de gerenciamento do tipo FIFO. Parmetros necessrios para sua anlise so:
9 9
Taxa de chegada de clientes por unidade de tempo , Taxa de demanda de servio do servidor por unidade de tempo .
11
Modelo M/M/1
Estado do sistema determinado pelo nmero de clientes que se encontram no mesmo em determinado momento (na fila e no servio).
0 1 2 J-1 j J+1
...
...
Nmero no sistema
12
= /
Condio de estabilidade (requisito necessrio < 1, isto , < para que a fila no cresa indefinidamente) Probabilidade de zero clientes no sistema Probabilidade de n clientes no sistema p0 = 1 pn = (1 ).n, n = 0,1,...,
Probabilidade de n ou mais clientes no P(n ou mais) = n sistema Nmero mdio de clientes no sistema Varincia do nmero de clientes no sistema Probabilidade de k clientes na fila E[n] = / (1 ) Var[n] = / (1 )2
2 k =0 1 , P (nq = k ) = k +1 (1 ). , k > 0
12 Varincia do tempo no sistema (ou de Var[r ] = 1 / 2 (1 ) 2 resposta) 13 Tempo mdio de espera 14 Varincia do tempo de espera
E[ w] = .(1 / ) (1 )
Exemplo 8.1
Medies feitas em um roteador mostram que pacotes de dados chegam para serem roteados com uma taxa mdia de 1250 pacotes por segundo (pps) e so encaminhados (processados) com uma mdia de um pacote a cada 0,5 ms.
9
Qual a probabilidade de haver uma sobrecarga no buffer do roteador se este dispe de espao para apenas 35 pacotes? Qual o tamanho de buffer necessrio para que a taxa de perda de pacotes seja inferior a 1 pacote por milho.
Dados: Taxa de chegada = 1.250 pps Taxa de servio = 1/0,0005 = 2.000 pps
14
Probabilidade de estouro do buffer: P (n 35) = 35 = 0.62535 = 7,2 x 10-8 72 pacotes para cada bilho de pacotes
roteados.
Tamanho do buffer para que a probabilidade deste estourar seja 10-6. O que se deseja que n 10-6.
log (n) log (10-6) n.log () log (10-6) n > log (10-6)/log () n > log (10-6) / log (0.625) -5/-0,204 > 24,5. Ou n 25.
Com um buffer de tamanho 25, a taxa de perda menor que 1 pacote por milho de pacotes roteados.
15
Exemplo 8.2
Verifica-se que o tempo entre requisies a um servidor Web pode ser modelado por meio de uma distribuio exponencial com parmetro para sua mdia igual a 8 ms. O tempo mdio para o servidor processar cada requisio tambm pode ser descrito como uma exponencial com tempo mdio de aproximadamente 5 ms. Com base nestas medies solicita-se:
9 9
Qual o tempo mdio de resposta experimentado pelos usurios? Quanto mais rpido deveria ser um novo servidor para que o tempo de resposta caia para a metade do tempo atual? Qual deve ser o tamanho do buffer de entrada do servidor para que a perda de requisies seja de, no mximo, 1 a cada bilho de requisies?
16
Dados:
O tempo mdio entre chegadas de requisies (req) de uma a cada 8 ms. Logo a taxa de requisies = 1 req/8 ms = 0,125 req/ms. O tempo de processamento de 5 ms/req. Logo a taxa de servio = 1 req/5 ms = 0,2 req/ms
Soluo:
Taxa de utilizao do servidor = / = 0,125/0,2 = 0,625 de sua capacidade mxima. E[r] = (1/)/(1- ) = (1/0,2)/(1 0,625) = 13,333 ms; ou 62,5 %
(a) Tempo mdio de resposta (ou valor esperado para o tempo de resposta):
17
18
Modelo M/M/m
utilizado para a modelagem de sistemas que apresentam uma nica fila diante de vrios dispositivos (servidores) idnticos, ou sistemas multiprocessados. Como o M/M/1, TEC e TS so Exponenciais (processos de Poisson). Sem limitaes para o tamanho da fila Disciplina de gerenciamento do tipo FIFO. Parmetros necessrios para sua anlise so:
9 9 9
Taxa de chegada de clientes por unidade de tempo , Taxa de servio de cada um dos servidores por unidade de tempo Quantidade de servidores disponveis m.
Simulao Discreta de Sistemas - Prof. Paulo Freitas - UFSC/CTC/INE 20
Modelo M/M/m
Assim como no modelo anterior, o estado do sistema tambm determinado pelo nmero n de clientes que ali se encontrem em determinado momento (na fila e nos servidores).
0 1 2 2 3 m-1 (m 1) m m m m+1 m
...
...
21
1 2 3
(m ) n p0 , n = 1,2,..., m 1 n! pn = n m m p , n = m, m + 1,..., 0 m!
Probabilidade de enfileiramento ( = probabilidade de m ou mais clientes no sistema) Nmero mdio de clientes no sistema
= P( m clientes) =
(m ) m p0 m!(1 )
6 7 8 9
E[n] = m + . / (1 - )
Varincia do nmero de clientes no 1 + . Var[n] = m + . + m sistema 2 (1 ) Nmero mdio de clientes na fila: Varincia do nmero de clientes na fila E[nq] = . / (1 ) Var[nq] = .(1 + - ) / (1 - )2
E[r ] =
1 1+ m(1 )
11 Varincia do tempo no sistema (ou de (2 ) 1 Var[r ] = 2 1 + 2 resposta) m (1 ) 2 12 Tempo mdio de espera 13 Varincia do tempo de espera
E[ w] = E (nq ) / = /[m (1 )]
Var[ w] = (2 ) / m 2 2 (1 ) 2
]
22
14 Taxa de utilizao mdia de cada U = / m = servidor; Simulao Discreta de Sistemas - Prof. Paulo Freitas - UFSC/CTC/INE
Exemplo 8.4
Para o mesmo sistema citado no exemplo 8.2, considere uma nova configurao no servidor Web. Agora, o nmero de processadores igual a quatro. Com esta nova configurao, at quatro requisies podem ser simultaneamente atendidas. Neste caso, considerando a mesma demanda, qual seria o tempo mdio de resposta experimentado pelos usurios? Dados:
9O
tempo mdio entre chegadas de requisies (req) de uma a cada 8 ms. a taxa de requisies = 1 req/8 ms = 0,125 req/ms. Taxa de servio = 1 req/5 ms = 0,2 req/ms de servidores m = 4.
Simulao Discreta de Sistemas - Prof. Paulo Freitas - UFSC/CTC/INE 23
9Logo 9O
9Logo,
9Nmero
Portanto, pode-se esperar que um aumento de quatro vezes na capacidade nominal de processamento do servidor provoque uma reduo de aproximadamente 60% no tempo de resposta, isto , de 13,33 ms para 5,01 ms.
Simulao Discreta de Sistemas - Prof. Paulo Freitas - UFSC/CTC/INE 24
Exemplo 8.5
Uma companhia area pretende disponibilizar 5 terminais de autoatendimento em um aeroporto. A gerencia de atendimento da companhia est em dvida entre duas alternativas:
9(a) 9(b)
distribu-los individualmente em vrios locais do aeroporto, considerando, neste caso, que a demanda se distribua igualmente entre os locais onde se encontrarem os 5 terminais.
Para apoiar futura deciso, a gerencia solicita ao departamento tcnico uma anlise para prever o comportamento das duas alternativas, principalmente em relao a expectativa do tempo mdio despendido pelos clientes no sistema. Os dados fornecidos pelo gerente so os seguintes:
Simulao Discreta de Sistemas - Prof. Paulo Freitas - UFSC/CTC/INE 25
Dados:
9Estima-se 9Cada
Soluo
O sistema poder ser avaliado considerando
(a) (b)
Empregando-se um modelo M/M/1 (neste caso com a demanda reduzida a 1/5 da demanda original).
26
Modelo M/M/5
27
Modelo M/M/1
28
Modelo M/M/m/B
O modelo M/M/m/B apresenta fila com mltiplos servidores e tamanho limitado para rea de espera. Se a capacidade da rea de espera ser alcanada, todos os novos clientes so perdidos. B deve ser maior ou igual a m. Como o M/M/1, TEC e TS so Exponenciais (processos de Poisson) e o gerenciamento da fila do tipo FIFO. Parmetros necessrios para sua anlise so:
9 9 9 9
Taxa de chegada de clientes por unidade de tempo , Taxa de servio de cada um dos servidores por unidade de tempo Quantidade de servidores disponveis m. O tamanho mximo da fila B
Simulao Discreta de Sistemas - Prof. Paulo Freitas - UFSC/CTC/INE 29
Modelo M/M/m/B
Assim como no modelo anterior, o estado do sistema tambm determinado pelo nmero n de clientes que ali se encontrem em determinado momento (na fila e nos servidores). H agora uma limitao em B.
0 1
m-1 m m
m+1 m
...
3
...
m m
(m 1)
30
1 2 3
= /(m.) <
(1 B m+1 )( m ) m m1 ( m ) n p 0 = 1 + + m!(1 ) n! n =1
1
1 ( m ) n p0 , 0 n < m n! pn = m n m p , m n B 0 m! E[ n ] = npn
n =1 B
5 6 7 8 9
Nmero mdio de clientes no sistema Nmero mdio de clientes na fila Taxa efetiva de chegada no sistema Tempo mdio no sistema (ou de resposta) Tempo mdio de espera
E [nq ] =
B1
n =m +1
( n m) p
' = p n = (1 pB )
n =0
E[ r ] = E[n ] / ' = E[ n] /[ (1 PB )] E ( w) = E (r ) 1 / = E [n q ] /[ (1 p B )]
pB clientes/unidade de tempo
cada U = ' m = (1 p B )
31
Exemplo 8.6
Para o roteador do exemplo 8.1, considere agora que o mesmo tenha seu buffer (rea de espera) limitado a um mximo de 5 pacotes. Medies feitas no roteador mostram que pacotes de dados chegam para serem roteados com uma taxa mdia de 1250 pacotes por segundo (pps) e so encaminhados (processados) numa mdia de um pacote a cada 0,5 ms. Dados:
9 9 9 9
Taxa de chegada = 1.250 pps; Taxa de servio = 1/0,0005 = 2.000 pps; m = 1; B=5
32
34
35
Exerccios
36