Nesta disciplina, como na anterior, o freguˆes ´e interrompido por uma chegada. Todavia, ao retornar ao servi¸co, um novo servi¸co ´e iniciado, a partir de uma nova amostragem da vari´avel X. Tudo se passa como o servi¸co antes recebido tenha sido perdido totalmente e um novo servi¸co ´e iniciado. Um exemplo deste tipo de rein´ıcio de novo servi¸co ap´os interrup¸c˜ao pode ser observado em sistemas de atendimento ao consumidor feitos por telefone. Em geral, durante o atendimento, fatos s˜ao relatados e o consumidor explica suas raz˜oes pela reclama¸c˜ao. Todavia, caso a liga¸c˜ao caia, todo o processo ter´a que ser reiniciado do zero, com um novo atendente. Somente quando o atendente finaliza e protocola a reclama¸c˜ao do consumidor ´e que o servi¸co pode ser dado por terminado.
Vamos assumir que em nossa fila LCFS o servi¸co ´e dado por X e o processo de chegada seja Poisson com taxa λ. Seja Y uma vari´avel exponencialmente distribu´ıda com taxa λ. Y corresponde ao intervalo entre chegadas Poisson. Seja GLCF S c/int,s/cont o per´ıodo ocupado
nesta fila.
O tempo total de um freguˆes t´ıpico no sistema ser´a representado por TLCF S c/int,s/cont= Y1+ G1+ Y2+ G2+ ... + YN + GN + YN +1
Na express˜ao acima Yi corresponde ao servi¸co recebido at´e ocorrer uma interrup¸c˜ao. Ap´os
a interrup¸c˜ao, o freguˆes t´ıpico ter´a que aguardar o tempo de um per´ıodo ocupado Gi at´e
poder entrar novamente em servi¸co. Estamos assumindo que o n´umero de interrup¸c˜oes ´e uma vari´avel N e que o servi¸co YN +1 ocorre at´e o seu final sem interrup¸c˜oes, quando, ent˜ao,
termina o atendimento ao freguˆes t´ıpico. Devemos observar que Yi, 1 ≤ i ≤ N, ´e o tempo
at´e uma chegada, dado que esta chegada ocorre antes do t´ermino do servi¸co. Por outro lado, YN +1 ´e o tempo de servi¸co, dado que nenhuma chegada ocorre durante este servi¸co.
Usando resultados anteriores do cap´ıtulo de transformadas, temos E[Yi] = E[Y |Y < X] = 1 λ + X∗′ (λ) 1 − X∗(λ), 1 ≤ i ≤ N E[YN +1] = E[X|Y > X] = − X∗′ (λ) X∗(λ)
Sabendo que P (Y < X) = 1 − X∗(λ) e P (Y > X) = X∗(λ), ent˜ao o n´umero N de per´ıodos
ocupados (n´umero m´edio de vezes que o servi¸co ser´a interrompido e reamostrado) ser´a uma v.a. com pmf, T.Z. e m´edia dadas por
P (N = n) = (1 − X∗(λ))nX∗(λ), n ≥ 0 (geom´etrica) N(z) = X∗(λ) 1 − z(1 − X∗(λ)) E[N] = 1 − X∗(λ) X∗(λ) Ent˜ao,
E[TLCF S c/int,s/cont] = E[Y1+ G1+ Y2+ G2+ ... + YN + GN + YN +1]
= E[N](E[Y |Y < X] + E[G]) + E[X|Y > X] = E[N]E[Y |Y < X] + E[X|Y > X] + E[N]E[G] = 1 − X∗(λ) X∗(λ) 1 λ + X∗′ (λ) 1 − X∗(λ) − X∗ ′ (λ) X∗(λ) + E[N]E[G] = 1 − X ∗(λ) λX∗(λ) + E[N]E[G] = E[N] 1 λ + E[GLCF S c/int,s/cont]
O tempo total de um freguˆes t´ıpico neste sistema, como anteriormente visto na disciplina LCFS com interrup¸c˜ao e continuidade, pode ser visto como o tempo de um per´ıodo ocupado iniciado pelo seu pr´oprio servi¸co. O final do servi¸co do freguˆes t´ıpico e sua sa´ıda da fila ir´a coincidir com o t´ermino do per´ıodo ocupado iniciado pelo seu pr´oprio servi¸co. Assim, E[TLCF S c/int,s/cont] = E[GLCF S c/int,s/cont] e ent˜ao
E[TLCF S c/int,s/cont] = E[N] λ + E[N]E[TLCF S c/int,s/cont] implicando que E[TLCF S c/int,s/cont] = E[N] λ(1 − E[N])
Para estabilidade temos que ter E[N] < 1, o que implica em P (N = 0) = X∗(λ) > 1/2,
ou seja, a probabilidade de ocorrer um servi¸co sem ser interrompido deve ser maior que 1/2 para que o per´ıodo ocupado tenha m´edia finita.
15.8
Sistema de Filas com Classes de Usu´arios
Num sistema de filas nem todos os fregueses tˆem as mesmas demandas de servi¸co e nem sempre s˜ao servidos com a mesma prioridade. Vamos assumir um sistema de filas onde os fregueses s˜ao organizados em classes, a i − ´esima classe chegando segundo um processo Poisson com taxa λi e demandando servi¸co Xi, com m´edia E[Xi] e segundo momento E[Xi2]
conhecidos. As vari´aveis Xi s˜ao independentes.
Assumiremos P classes, sendo a classe 1 a mais priorit´aria, ficando a classe P como a menos priorit´aria. Os fregueses s˜ao servidos segundo uma determinada disciplina de atendi- mento para sua classe que poder´a ser FCFS, LCFS ou LCFS com interrup¸c˜ao e continuidade. Uma classe mais priorit´aria ao chegar ao sistema pode ou n˜ao interromper os servi¸cos das classes menos priorit´arias, independente de sua disciplina de atendimento. Assim, fregueses de uma classe podem, ap´os entrar em servi¸co, nunca serem interrompidos, como podem ser interrompidos por chegadas de classes mais priorit´arias ou devido a chegada da pr´opria classe no caso de LCFS com interrup¸c˜ao. As classes menos priorit´arias s´o recebem servi¸co caso n˜ao haja fregueses mais priorit´arios no sistema.
Estamos interessados em obter E[Wi] e E[Ti], respectivamente, o tempo m´edio de espera
na fila e o tempo m´edio total na fila para a classe i. A obten¸c˜ao destas grandezas ser´a feita acompanhando um freguˆes t´ıpico da classe i no sistema e lembrando que chegadas Poisson sempre encontram o sistema com suas m´edias no tempo.
No instante de uma chegada, a classe i estar´a com E[Nqi] = λiE[Wi] fregueses na fila de
espera, usando Little. Aplicando Little ao servidor, o n´umero m´edio de fregueses da classe i encontrado em servi¸co ser´a de E[Nsi] = λiE[Xi] = ρi.
Assumindo o servi¸co como a vari´avel X, λ =PP
i=1λi, ent˜ao podemos afirmar que
X∗(s) = E[e−sX] =
P
X
i=1
E[e−sX|classe i]P (classe i)
= P X i=1 λi λE[e −sXi] = P X i=1 λi λX ∗ i(s) E[X] = P X i=1 λi λE[Xi] = 1 λ P X i=1 ρi E[X2] = P X i=1 λi λE[X 2 i]
No instante de chegada, o servi¸co residual pendente ser´a dado por
E[Ns]E[Xr] = λE[X2]/2 = P X i=1 λiE[Xi2] 2 = P X i=1 ρiE[Xir]
Este servi¸co residual pode ser visto como a soma dos servi¸cos residuais de cada classe en- contrada em servi¸co, lembrando que o n´umero m´edio de fregueses da classe i encontrado em servi¸co ´e dado por ρi e que a vida residual m´edia deste servi¸co ´e dada por E[Xir] = E[X
2 i]
Se uma classe n˜ao sofre interrup¸c˜ao, ent˜ao o procedimento ´e calcular E[Wi] diretamente.
Caso a classe sofra algum tipo de interrup¸c˜ao, deve ser calculado E[Ti] primeiro e depois
obter E[Wi] = E[Ti] − E[Xi].
Metodologia para o c´alculo de E[Wi], para classe que n˜ao sofre interrup¸c˜ao de servi¸co:
1. Calcular E[W0i] , servi¸co pendente encontrado ao chegar e que ter´a que ser executado
antes do freguˆes t´ıpico entrar em servi¸co. Se assum´ıssemos que nenhuma outra chegada ocorreria ap´os o fregues t´ıpico, este valor seria o tempo m´edio de espera para a classe i.
2. Como o freguˆes t´ıpico pode ser atrasado ainda pelas chegadas da classe j que ocorrem enquanto ele ainda est´a na fila de espera, j podendo ser sua pr´opria classe como alguma classe mais priorit´aria, calculamos σi = P∀jρj, onde a soma ´e feita sobre todas as
classes cujos fregueses chegam depois e s˜ao servidos antes do fregues t´ıpico. Ent˜ao, pensando no per´ıodo ocupado modificado iniciado por E[W0i] e que termina quando o
freguˆes t´ıpico entra em servi¸co, podemos escrever E[Wi] =
E[W0i]
1 − σi
Pela express˜ao de E[Wi] ´e poss´ıvel determinar as condi¸c˜oes para que a classe sofra
atrasos m´edios de espera finitos. A condi¸c˜ao necess´aria ´e σi < 1. Pode acontecer do
termo da direita da express˜ao acima envolver direta ou indiretamente a vari´avel E[Wi].
Neste caso, ´e necess´ario isolar E[Wi] para obter as condi¸c˜oes corretas de estabilidade
para a classe. Obtido E[Wi], obt´em-se E[Ti] = E[Wi] + E[Xi]
Metodologia para o c´alculo de E[Ti], para classe que sofre interrup¸c˜ao de servi¸co com
continuidade:
1. Calcular E[T0i] = E[W0i] + E[Xi] , soma do servi¸co pendente encontrado ao chegar e
que ter´a que ser executado antes do freguˆes t´ıpico entrar em servi¸co com o tempo de servi¸co m´edio do freguˆes t´ıpico. Se assum´ıssemos que nenhuma outra chegada ocorreria ap´os o fregues t´ıpico, este valor seria o tempo m´edio no sistema para a classe i. 2. Como o freguˆes t´ıpico pode ainda ser atrasado pelas chegadas da classe j que ocorrem
enquanto ele ainda est´a no sistema, j podendo ser sua pr´opria classe como alguma classe mais priorit´aria, calculamos σi = P∀jρj, onde a soma ´e feita sobre todas as
classes cujos fregueses chegam depois e s˜ao servidos antes do fregues t´ıpico deixar o sistema. Ent˜ao, pensando no per´ıodo ocupado modificado iniciado por E[T0i] e que
termina quando o freguˆes t´ıpico deixa o sistema, podemos escrever E[Ti] =
E[T0i]
1 − σi
Pela express˜ao de E[Ti] ´e poss´ıvel determinar as condi¸c˜oes para que a classe sofra
atrasos m´edios finitos. ´E comum que o termo da direita da express˜ao acima envolva direta ou indiretamente a vari´avel E[Ti]. Caso isso ocorra, ´e necess´ario isolar E[Ti]
para obter as condi¸c˜oes corretas de estabilidade para a classe. Obtido E[Ti], obt´em-se
*
Aplica¸c˜ao: HOL ou Head-of-Line Assuma um sistema com P classes, sendo a classe i alimentada por um processo Poisson com taxa λi e servi¸co Xi, com Xi∗(s), E[Xi] e E[Xi2]
conhecidos. As classes s˜ao servidas FCFS, sem interrup¸c˜ao entre classes, P ´e a classe menos priorit´aria, com 1 sendo a mais priorit´aria. Este sistema ´e chamado de head-of-line ou HOL. Aplicando a metodologia vista acima para uma classe 1 ≤ k ≤ P , e considerando que σk=Pki=1ρi, obtemos facilmente que
E[W0k] = k X i=1 ρiE[Wi] + P X i=1 ρiE[Xir] E[Wk] = E[W0k] 1 − σk−1 = Pk i=1ρiE[Wi] + PP i=1ρiE[Xir] 1 − σk−1 = Pk−1
i=1 ρiE[Wi] +PPi=1ρiE[Xir]
1 − σk
, σk < 1, 1 ≤ k ≤ P
Para obter explicitamente cada E[Wk], podemos resolver inicialmente para k = 1, que ´e o
tempo de espera m´edio apara a fila mais priorit´aria.
E[W1] = PP i=1ρiE[Xir] 1 − σ1 = PP i=1ρiE[Xir] 1 − ρ1 , ρ1 < 1
Tendo E[W1], podemos obter E[W2]. Assim
E[W2] =
ρ1E[W1] +PPi=1ρiE[Xir]
1 − σ2 = ρ1PPi=1ρiE[Xir] 1−ρ1 + PP i=1ρiE[Xir] 1 − σ2 = PP i=1ρiE[Xir] (1 − σ1)(1 − σ2) , σ2 < 1
E assim sucessivamente, podemos mostrar que
E[Wk] = PP i=1ρiE[Xir] (1 − σk)(1 − σk−1) , σk < 1, 1 ≤ k ≤ P *
Exemplo: Classe 1 LCFS, classe 2 FCFS. Classe 1 n˜ao interrompe a classe 2. Classe 1: Como n˜ao sofre interrup¸c˜ao, calcula-se E[W1].
• E[W1] = E[W1−ρ011] = ρ1E[X1r1−ρ]+ρ12E[X2r], ρ1 < 1.
Conv´em observar que chegadas na fila 2 a posteriori n˜ao interferem com a fila 1. E, E[T1] = E[W1] + E[X1].
Classe 2: Como n˜ao sofre interrup¸c˜ao, calcula-se E[W2].
• E[W02] = ρ1E[X1r] + ρ2E[X2r] + E[Nq1]E[X1] + E[Nq2]E[X2]
• E[W2] = E[W1−ρ021] = ρ1E[X1r]+ρ1−ρ2E[X1−ρ2r2]+ρ1E[W1], ρ1+ ρ2 < 1.
Conv´em observar que apenas as chegadas na fila 1 a posteriori interferem. E, E[T2] = E[W2] + E[X2].
*
Exemplo: Classe 1 FCFS, classe 2 LCFS com interrup¸c˜ao na pr´opria classe. Classe 1 interrompe a classe 2. A classe 2 opera sempre com continuidade do servi¸co em caso de qualquer interrup¸c˜ao.
Classe 1: Como n˜ao sofre interrup¸c˜ao, calcula-se E[W1].
• E[W01] = ρ1E[X1r] + E[Nq1]E[X1]
• E[W1] = E[W01] = ρ1E[X1r] + E[W1]ρ1. Portanto, E[W1] = ρ11−ρE[X11r], ρ1 < 1 .
E, E[T1] = E[W1] + E[X1].
Classe 2: Como sofre interrup¸c˜ao na pr´opria classe e da classe 1, calcula-se E[T2].
• E[T02] = ρ1E[X1r] + E[Nq1]E[X1] + E[X2]
• E[T2] = 1−(ρE[T102+ρ]2) = ρ1E[X1r]+ρ1−ρ11E[W−ρ21]+E[X2], ρ1+ ρ2 < 1
E, E[W2] = E[T2] − E[X2].
*
Exemplo: Classes 1 e 2 ambas LCFS com interrup¸c˜ao com continuidade na pr´opria classe. Classe 1 interrompe a classe 2 com continuidade. Classe 1: Como sofre interrup¸c˜ao na pr´opria classe, calcula-se E[T1].
• E[T01] = E[X1]
• E[T1] = E[T1−ρ011] = E[X1−ρ11], ρ1 < 1
Classe 2: Como sofre interrup¸c˜ao na pr´opria classe e da classe 1, calcula-se E[T2].
• E[T02] = ρ1E[X1r] + E[Nq1]E[X1] + E[X2]
• E[T2] = 1−(ρE[T102+ρ]2) = ρ1E[X1r]+ρ1−ρ11E[W−ρ21]+E[X2], ρ1+ ρ2 < 1
E, E[W2] = E[T2] − E[X2].
*
Solu¸c˜oes podem ser apenas aproxima¸c˜oes e funcionar como limitantes do atraso Conv´em salientar que nem sempre a metodologia apresentada d´a resultados exatos, mas apenas um limitante superior nos tempos m´edios. Analise o exemplo em que a classe 1 ´e FCFS e a classe 2 ´e LCFS. Assuma ainda que a classe 1 interrompe a classe 2. A dificuldade surge ao se tentar calcular o tempo m´edio gasto na classe 2.
Como a classe 2 sofre interrup¸c˜ao, temos que calcular E[T2]. Aplicando a metodologia,
escrever´ıamos
E[T02] = ρ1E[X1r] +ρ2E[X2r]+ E[Nq1]E[X1] + E[X2]
Ao colocar o termo ρ2E[X2r] estamos assumindo que o freguˆes da classe 2 encontrado em
servi¸co atrasar´a o freguˆes t´ıpico da classe 2 do tempo residual de servi¸co. Este fregues de classe 2 encontrado em servi¸co pode j´a ter estado outras vezes em servi¸co e seu tempo de servi¸co pendente pode ser inferior a X2 e o uso da vida residual E[X2r] ´e uma aproxima¸c˜ao.
Al´em disso, mesmo que este freguˆes estivesse pela primeira vez em servi¸co, nada garante que ele n˜ao seja interrompido por uma chegada da classe 1. Caso haja uma chegada da classe 1 durante o tempo de vida residual deste freguˆes, ele ser´a retirado do servi¸co e retornado `a fila de espera da classe 2. Todavia, como este freguˆes chegou ao sistema antes do freguˆes t´ıpico, ele n˜ao mais interferir´a com o freguˆes t´ıpico, enquanto este estiver no sistema. Vemos ent˜ao que o atraso do valor da vida residual para o freguˆes de classe 2 encontrado em servi¸co ´e um pior caso por mais de um motivo, de modo que o correto ser´a indicar
E[T02] ≤ ρ1E[X1r] +ρ2E[X2r]+ E[Nq1]E[X1] + E[X2]
O erro de aproximar E[T02] pela igualdade diminui `a medida que a taxa de chegada
da classe 1 diminui. A probabilidade de n˜ao haver chegada da classe 1 durante o servi¸co residual da classe 2 ´e X∗
2r(λ1). Quando maior esta probabilidade menor o erro. Obviamente,
esta probabilidade cresce com a diminui¸c˜ao da vida residual do servi¸co da classe 2 e com a diminui¸c˜ao da taxa de chegada da classe 1.
No passo seguinte, usando a metodologia, a tendˆencia seria de fazer
E[T2] =
E[T02]
1 − (ρ1+ρ2)
Aqui tamb´em temos um problema. O fator do denominador pressup˜oe que todos das classes 1 e 2 que chegam a posteriori ser˜ao servidos enquanto o freguˆes t´ıpico ainda estiver no
sistema. Embora este fato seja verdade para os fregueses da classe 1, ele n˜ao ´e completamente verdadeiro para os fregueses da classe 2. Se acompanhamos o freguˆes t´ıpico da classe 2 no sistema, vemos que ele pode visitar o servidor mais de uma vez, caso seja interrompido pela chegada de fregueses da classe 1 enquanto est´a em servi¸co. Todos os fregueses da classe 2 que chegaram ao sistema a posteriori ter˜ao prioridade sobre ele. Todavia, durante sua ´ultima visita ao servidor, os fregueses da classe 2 que chegarem durante este final de servi¸co n˜ao interferir˜ao com o freguˆes t´ıpico, pois ele n˜ao ser´a interrompido e sair´a do sistema. O fator negativo de ρ2 no denominador assume que todos que chegarem depois sair˜ao antes, o que
mostramos n˜ao ser verdade.
Ent˜ao, deixando o denominador da forma mostrada causa um pior caso. Ent˜ao, por mais esta raz˜ao, o correto ´e considerar E[T2] ≤ 1−(ρE[T102+ρ]2) e assumirmos que temos apenas um
limitante superior para o atraso m´edio da classe 2.
Usar o limite como estimativa do atraso m´edio ser´a t˜ao mais razo´avel quanto maior for a taxa de chegada da classe 1, acarretando maior probabilidade de interrup¸c˜ao do servi¸co residual. Isso ´e o oposto do que vimos no passo anterior, quando o erro aumenta com o aumento da taxa da classe 1.
Embora as duas aproxima¸c˜oes contribuam para um limitante menos preciso, a simplici- dade da metodologia recomenda o uso como primeira aproxima¸c˜ao. Em certos casos, o erro pode ser estimado.