introduc¸˜ao`a teoria das filas

Propaganda
INTRODUÇÃO À TEORIA DAS FILAS
Uma fila é caracterizada por:
• Processo de chegada dos fregueses à fila
• Tempo de serviço dedicado pelo servidor a cada freguês
• Número de servidores
• Espaço disponı́vel para espera na fila
• Polı́tica de atendimento da fila
Caso o espaço seja finito, fregueses que chegam e não encontram
lugar na fila de espera são perdidos. Se o espaço for infinito, não
há perda de fregueses.
NCE/UFRJ
Teoria das Filas
tfila1.tex
A Fila M/G/1
A primeira letra M caracteriza o processo Poisson de chegada.
A letra M vem de Markov.
O processo Poisson é um caso particular de um Processo de Markov.
A segunda letra G caracteriza o processo geral de serviço.
O número 1 indica que temos somente um servidor.
• Processo de chegada é Poisson (ou seja, o tempo entre chegadas
é exponencial) com taxa λ.
• Distribuição do tempo de serviço é geral
A pdf do tempo de serviço é dada por bX (x), com X ∗(s).
′
O tempo médio de serviço é então dado por E[X] = −X ∗ (0).
• Possui somente um servidor
NCE/UFRJ
Teoria das Filas
tfilaMG1.tex
Métricas da Fila M/G/1
• W =⇒ tempo gasto na fila de espera
• Nq =⇒ número de pessoas na fila de espera
• X =⇒ tempo de serviço
• Ns =⇒ número de pessoas no servidor
• T = W + X =⇒ tempo total gasto na fila
• N =⇒ número de pessoas na fila, incluindo o serviço
NCE/UFRJ
Teoria das Filas
tfilaMG1b.tex
Resultado de Little
• Seja um sistema em equilı́brio, no qual os fregueses chegam e
saem a uma taxa média de λ( f regueses
)
s
• O sistema estando em equilı́brio significa que o número médio
de pessoas no sistema N é finito, que a taxa média de saı́da é
igual à taxa média de entrada e também que o tempo médio T
gasto dentro do sistema é finito.
regueses
)⇒
λ( fsegundo
N fregueses
regueses
)
⇒ λ( fsegundo
A expressão conhecida como Resultado de Little
(Little’s Result) afirma que:
E[N ] = λE[T ].
Este resultado é valido qualquer que seja o sistema em consideração.
NCE/UFRJ
Teoria das Filas
tfila2.tex
Análise da Fila M/G/1
Aplicando Little e considerando
• Toda a fila:
E[N ] = λE[T ] = λ(E[W ] + E[X]) = λE[W ] + λE[X]
• Apenas a fila de espera: E[Nq ] = λE[W ]
• Apenas o servidor: E[Ns ] = λE[X].
• A grandeza λX = λ/µ é chamada ρ e representa a utilização do
sistema.
P{ sistema está ocupado} = P{ pelo menos uma pessoa no sistema}
= P{ servidor ocupado }
= % do tempo que o servidor está ocupado
= ρ,
P{ sistema está vazio} = % do tempo que o servidor está vazio
= 1 − ρ.
NCE/UFRJ
Teoria das Filas
tfilaMG1a.tex
Chegadas Poisson Correspondem a
Amostragem Aleatória
• Sabemos que chegadas Poisson correspondem a uma amostragem
aleatória do sistema de filas ( este resultado pode ser deduzido
matematicamente)
Em inglês, Poisson Arrivals See Time Averages (PASTA)
• Podemos então afirmar que um freguês genérico encontrará a
fila ocupada com probabilidade ρ, e com probabilidade 1 − ρ
encontrará a fila vazia.
• Lembre-se que a fila passa por estados alternados de ociosidade
e ocupação, e uma amostragem aleatória cai num intervalo ocupado com probabilidade ρ e num intervalo vazio com probabilidade 1 − ρ.
NCE/UFRJ
Teoria das Filas
tfila14.tex
Como Calcular W para M/G/1?
Para um freguês genérico chegando à fila, o seu tempo médio de
espera W será o tempo médio para servir os fregueses que são encontrados em espera na fila mais o tempo médio para terminar o serviço
(serviço residual = E[Xr ]) do freguês eventualmente encontrado em
serviço (com probabilidade ρ). Assim:
E[W ] = E[Nq ]E[X] + E[Ns]E[Xr ]
= λE[W ]E[X] + λE[X]E[Xr ] = ρE[W ] + ρE[Xr ]
λE[X 2 ]
r]
= ρE[X
=
1−ρ
2(1−ρ)
Com E[T ] = E[W ] + E[X], E[N ] = λE[T ] e E[Nq ] = λE[W ].
• Para M/D/1 (serviço determinı́stico)
X = E[X] = 1/µ e E[X 2] = 1/µ2.
Então:
ρ
λ
=
E[WM/D/1] = 2
2µ (1 − ρ) 2µ(1 − ρ)
• Para M/M/1, com E[X] = 1/µ, temos
ρ
E[WM/M/1] =
µ(1 − ρ)
Resultados válidos para qualquer ordem de atendimento que não seja
dependente do tempo de serviço.
NCE/UFRJ
Teoria das Filas
tfila23a.tex
Vida Residual de uma Distribuição Qualquer
Amostre aleatoriamente uma fila durante seu perı́odo ocupado.
Seja Xs o intervalo do serviço selecionado, Xr a vida residual do intervalo selecionado e Xi a idade do intervalo selecionado.
Temos, Xs = Xi + Xr .
Por simetria e reversibilidade do tempo, Xi e Xr têm igual pdf.
Seja fXs (t) a pdf de Xs.
Intervalos maiores terão maior probabilidade de serem selecionados
e, então, intuitivamente, espera-se que P {t ≤ Xs ≤ t + dt} seja
diretamente proporcional a t vezes a probabilidade de ocorrência de
intervalos deste tamanho P {t ≤ X ≤ t + dt}. Assim,
P {t ≤ Xs ≤ t + dt} =
t
P {t
m
≤ X ≤ t + dt}, ou fXs (t) =
t
f (t).
m X
A constante m serve para normalização e 0∞ fXs (t)dt = 1 implica
X (t)
em m = E[X]. Consequentemente, fXs (t) = tfE[X]
e
R
E[Xs] =
Z
∞
0
tfXs (t)dt =
R∞
0
t2fX (t)dt E[X 2]
=
E[X]
E[X]
Como E[Xs] = 2E[Xr ], temos E[Xr ] =
NCE/UFRJ
E[X 2 ]
.
2E[X]
Teoria das Filas
tfila221.tex
Densidade e Distribuição da Vida Residual
P {Xr ≤ y} =
Z
∞
P {Xr ≤ y|x < Xs ≤ x + dx}P {x < Xs ≤ x + dx}, mas
x=0
Observando que a amostragem aleatória cai uniformemente em qualquer
ponto do intervalo Xs , podemos então afirmar que:
P {Xr ≤ y|x < Xs ≤ x + dx} =
(
1
para x < y
para 0 ≤ y ≤ x
y
x
Substituindo o valor da probabilidade condicional, e lembrando que a pdf do
X (x)
, obtemos:
intervalo escolhido fXs (x) = xfE[X]
P {Xr ≤ y} =
Z
y
P {x < Xs ≤ x + dx} +
0
=
=
=
=
y
Z
∞
y
y
P {x < Xs ≤ x + dx}
x
y
fXs (x)dx +
fX (x)dx
x s
0
y
Z ∞
yfX (x)
dx
FXs (y) +
E[X]
y
Z ∞
y
FXs (y) +
fX (x)dx
E[X] y
y
FXs (y) +
(1 − FX (y))
E[X]
Z
Z
∞
fXr (y) é obtida derivando P {Xr ≤ y} em relação a y. Lembrando que
X (y)
, temos:
fXs (y) = yfE[X]
fXr (y) =
dP {Xr ≤ y}
yfX (y) 1 − FX (y) yfX (y)
=
+
−
dy
E[X]
E[X]
E[X]
1 − FX (y)
=
E[X]
NCE/UFRJ
Teoria das Filas
tfila222.tex
Transformada de Laplace da Densidade da
Vida Residual
Pode-se facilmente mostrar que:
f (t), t ≥ 0 ⇐⇒ F ∗(s),
Rt
F ∗ (s)
f
(y)dy
⇐⇒
0
s .
Usando esta propriedade e o fato de u−1(t) = 1, t ≥ 0 ⇐⇒ 1s ,
∗
X (t)
podemos inverter fXr (t) = 1−F
E[X] e obter diretamente Xr (s). Assim,
X ∗(s)
1 − X ∗(s)
1
∗
−
=
Xr (s) =
sE[X] sE[X]
sE[X]
onde fX (t) ⇐⇒ X ∗(s) é a T. L. da pdf do tempo de serviço X.
Deduzindo diretamente:
Xr∗ (s)
=
=
=
=
=
e−st (1 − FX (t))dt
E[X]
0
Z t
Z ∞
Z ∞ −st
1
e dt
fX (y)dydt
e−st dt
−
E[X]
E[X] 0
0
0
Z ∞ Z ∞
1
1
−st
−
e dt fX (y)dy
sE[X] E[X] y=0 t=y
Z ∞ Z ∞
1
1
1
−st
se dt fX (y)dy
−
sE[X] E[X] y=0 s t=y
Z ∞
1
1 − X ∗ (s)
1
e−sy fX (y)dy =
−
sE[X] sE[X] y=0
sE[X]
Z
∞
NCE/UFRJ
Teoria das Filas
tfila223.tex
Como Modelar um Canal de Comunicação de
Capacidade C bps?
• Suponha pacotes de dados de tamanho exponencial, com tamanho
médio igual a 1/µ bits. O tempo médio de transmissão de um
pacote será
E[X] = E[Xr ] =
1/µ
C
=
1
.
µC
• Modelando o canal como uma fila M/M/1, obtemos:
E[T ] =
•ρ=
E[X]
1−ρ
=
1
µC−λ
λ
µC .
NCE/UFRJ
Teoria das Filas
tfila16.tex
Suposição de Independência (Kleinrock 64)
• Num nó, os pacotes considerados para transmissão num determinado canal de comunicação podem ser pacotes locais originados
de aplicações no próprio nó ou serem pacotes em trânsito pelo
nó e oriundos de nós vizinhos.
• A análise matemática exata de um sistema complexo em que
pacotes de diferentes tamanhos circulam por uma rede de comunicação é em muitos casos intratável.
• Para que haja tratabilidade nos sistemas de comunicação de dados e simplicidade das expressões matemáticas, o princı́pio da
independência assume que:
o pacote perde a sua identidade ao se propagar pela
rede de comunicação, e que um novo tamanho é escolhido em cada nó intermediário (normalmente segundo uma distribuição exponencial) para efeito de
modelagem.
• Esta suposição de independência foi validada através de simulações e medidas feitas em sistemas reais têm demonstrado a
eficácia da aproximação.
NCE/UFRJ
Teoria das Filas
tfila17.tex
Exemplo: Concentrador de Comunicação
• Suponha um nó concentrador que recebe 4 fluxos Poisson de 4800
bps com taxa λi = 2 pacotes/s e transmite-os em um único canal
de 9600 bps.
Assuma que o tamanho médio de pacote é E[L] = 1000 bits e
que a distribuição é exponencial com taxa µ = 1/1000.
A taxa total é λt = 4λi = 8 pacotes/s.
• Calculando E[T ] obtemos:
1
1
= 9,6−8
= 0, 625
E[T ] = µC−λ
Tempo médio total no concentrador = 0,625 s
• Número médio de pacotes no concentrador = E[N ] = λt E[T ]
= 8 × 0, 625
= 5.
• Utilização da linha = ρ =
λ
µC
=
8
9,6
≈ 83 %.
A linha é vista como servidor, e o tempo de serviço é o tempo de
transmissão do pacote.
NCE/UFRJ
Teoria das Filas
tfila18.tex
Quantos Buffers Devo Manter no
Concentrador?
E[N ] não indica o número máximo de pacotes que podem se enfileirar no
concentrador, mas veremos que serve como uma indicação.
Na prática o # de buffers teria um valor B, tal que a probabilidade de encontrar o sistema com B ou mais pacotes fosse menor que um valor determinado
α, ou de forma equivalente, a probabilidade de encontrar o sistema com menos
de B buffers ocupados seria igual ou maior que 1 − α.
Para M/M/1, Pk = prob. de encontrar a fila com k pacotes = (1 − ρ)ρk .
Modelando o sistema como uma fila M/M/1,
Então,
PB−1
k=0 Pk
= 1 − ρB ≥ 1 − α.
ρB ≤ α =⇒ Blog ρ ≤ log α
, mas como log ρ < 0, resulta
B≥
log α
log ρ
α
ρ N B≥
0,01 0,83 5
26
0,01 0,90 9
44
0,01 0,95 19 90
Assim, um # de buffers da ordem de pelo menos 5 vezes o número médio de
pacotes no sistema seria razoável, como uma primeira aproximação.
NCE/UFRJ
Teoria das Filas
tfila19.tex
Dedicado versus Compartilhado
Suponha que tenhamos uma linha de 64 Kbps e oito sessões abertas nesta linha.
Se cada sessão tem tráfego de pacotes Poisson com taxa λs = 2
pacotes/s e tamanho médio L = 1/µ = 2000 bits, divido a linha
em 8 fatias (usando TDM ou FDM), ou tento compartilhar usando
ATDM? Ambas as soluções têm a mesma utilização nas filas.
• Usando TDM ou FDM
Temos: λs = 2 e capacidade do canal dedicado = Cs = 8 Kbps.
1
= 12 = 500 ms.
Logo: Ts = µC−λ
• Compartilhando
Temos: λc = 8λs = 16 pacotes/s e Cc = 64 Kbps.
Logo: Tc = µCc1−λc = 62, 5 ms
e portanto o sistema compartilhado é 8 vezes melhor.
NCE/UFRJ
Teoria das Filas
tfila20.tex
Sistemas Maiores São Melhores
Assuma um sistema A que atende a uma população de N pessoas
e usa um canal de comunicação com capacidade de C bps.
Assuma um sistema B que atende a uma população k vezes maior
(kN) e possui um canal também k vezes mais rápido (kC bps), com
a mesma utilização do sistema A.
Do ponto de vista do usuário é melhor ele estar sendo
atendido pelo sistema A ou pelo sistema B?
Seja 1/µ o tamanho médio dos pacotes e vamos modelar os sistemas por uma fila M/M/1. Então:
TA =
1
µC−λ
e
TB =
1
µkC−kλ
=
TA
k .
O sistema B é portanto k vezes melhor!
NCE/UFRJ
Teoria das Filas
tfila21.tex
Download