19.04.2013 Views

Modelos de Filas - deetc

Modelos de Filas - deetc

Modelos de Filas - deetc

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

■ Um mo<strong>de</strong>lo <strong>de</strong> filas representa um sistema ao qual os utentes chegam para<br />

receberem um <strong>de</strong>terminado serviço.<br />

■ Quando todos os servidores do sistema estiverem ocupados, os novos utentes que<br />

cheguem ao sistema terão <strong>de</strong> esperar pelo atendimento, numa fila.<br />

■ Um típico mo<strong>de</strong>lo <strong>de</strong> filas é constituído pelos seguintes elementos:<br />

Nuno Cota - 2000<br />

◆ Utentes<br />

◆ Servidores<br />

◆ Re<strong>de</strong>s <strong>de</strong> filas<br />

Utente<br />

Utente<br />

Utente<br />

Utente<br />

Utente<br />

Utente<br />

Servidor<br />

Servidor<br />

Servidor<br />

Servidor<br />

Servidor<br />

Servidor<br />

MF-1


ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Características<br />

Nuno Cota - 2000<br />

População<br />

◆ A população po<strong>de</strong>rá ser finita ou infinita<br />

◆ Em sistemas com populações gran<strong>de</strong>s, normalmente assume-se população infinita<br />

◆ A diferença entre o tipo <strong>de</strong> população resi<strong>de</strong> no ritmo <strong>de</strong> chegadas:<br />

⎯ População infinita: O ritmo <strong>de</strong> chegadas <strong>de</strong> utentes ao sistema não é afectado pelo<br />

número <strong>de</strong> utentes no sistema<br />

⎯ População finita: O ritmo <strong>de</strong> chegadas será inversamente proporcional ao número <strong>de</strong><br />

utentes no sistema.<br />

Capacida<strong>de</strong> do sistema<br />

◆ Número máximo <strong>de</strong> utentes permitido no sistema.<br />

⎯ Por exemplo, uma cabine telefónica. A capacida<strong>de</strong> do sistema, neste caso, é 1.<br />

MF-2


ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Características<br />

Nuno Cota - 2000<br />

Processo <strong>de</strong> Chegada<br />

População infinita<br />

◆ Tempo entre chegadas caracterizado por uma distribuição aleatória, por exemplo,<br />

distribuição <strong>de</strong> Poisson<br />

População finita<br />

◆ Define-se normalmente os utentes como estando pen<strong>de</strong>ntes, quando estão for a do<br />

sistema.<br />

◆ O ritmo <strong>de</strong> chegadas é função do número <strong>de</strong> utentes pen<strong>de</strong>ntes na população.<br />

Comportamento<br />

◆ Os utentes <strong>de</strong>ixam o sistema quando vêm que a fila está <strong>de</strong>masiado longa<br />

◆ Utentes abandonam o sistema quando verificam que a fila está a andar muito<br />

lentamente<br />

◆ Utentes <strong>de</strong>slocam-se entre filas, assim que acham que outra fila é mais rápida.<br />

MF-3


ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Características<br />

Nuno Cota - 2000<br />

Disciplina da fila<br />

Como é que os utentes são atendidos na fila:<br />

◆ FIFO : First-In-First-Out<br />

Primeiro utente a chegar à fila será o primeiro a ser atendido<br />

◆ LIFO : Last-In-First-Out<br />

O último utente a chegar à fila é o primeiro a ser atendido<br />

◆ SIRO : Service-In-Random-Or<strong>de</strong>r<br />

O atendimento dos utentes faz-se por or<strong>de</strong>m aleatória<br />

◆ SPT : Shortest-Processing-Time first<br />

O utente a ser atendido em primeiro lugar será aquele cujo tempo <strong>de</strong><br />

atendimento é menor<br />

◆ PR : Priority Rules<br />

O atendimento faz-se <strong>de</strong> acordo com as regras <strong>de</strong> priorida<strong>de</strong>s pré estabelecida.<br />

MF-4


Nuno Cota - 2000<br />

ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Notação<br />

A notação mais utilizada universalmente para mo<strong>de</strong>los <strong>de</strong> filas é:<br />

em que:<br />

A representa o processo <strong>de</strong> chegadas.<br />

A / B / c / K / m / d<br />

B representa o processo <strong>de</strong> atendimento<br />

c representa o número <strong>de</strong> servidores<br />

K <strong>de</strong>nota a capacida<strong>de</strong> do sistema<br />

m representa a população<br />

d <strong>de</strong>nota a disciplina da fila<br />

A e<br />

e<br />

B <strong>de</strong>notam-se<br />

<strong>de</strong>notam-se<br />

principalmente<br />

principalmente<br />

como:<br />

como:<br />

⎯ M para<br />

para<br />

distribuições<br />

distribuições<br />

exponenciais<br />

exponenciais<br />

⎯ D para<br />

para<br />

valores<br />

valores<br />

<strong>de</strong>terminísticos<br />

<strong>de</strong>terminísticos<br />

⎯ G para<br />

para<br />

caracterizar<br />

caracterizar<br />

distribuições<br />

distribuições<br />

em<br />

em<br />

geral<br />

geral<br />

Quando K, ou m, é omitido, significa que toma o valor <strong>de</strong> infinito. Quando d é omitido<br />

significa que a disciplina é do tipo FIFO. O caso mais normal, <strong>de</strong>notamos assim:<br />

A / B / c<br />

MF-5


ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Lei <strong>de</strong> Little<br />

Nuno Cota - 2000<br />

O mais importante resultado da teoria das filas <strong>de</strong> espera é conhecido como a<br />

Lei <strong>de</strong> Little, que diz:<br />

Número médio<br />

<strong>de</strong> utentes no<br />

sistema<br />

Esta condição só se verifica se:<br />

= Ritmo <strong>de</strong> Chegada X<br />

◆ O sistema <strong>de</strong> filas estiver estável, ou seja, o número <strong>de</strong> utentes no sistema não<br />

cresce significativamente<br />

◆ Não são “criados” ou “removidos” utentes pelo sistema, ou seja, apenas são<br />

servidos os utentes que entram no sistema.<br />

A performance <strong>de</strong> um sistema composto por filas é quantificada por:<br />

➣ Número médio <strong>de</strong> utentes no sistema ( L ) e na fila ( L Q )<br />

➣ Tempo médio <strong>de</strong> permanência no sistema ( W ) e na fila ( W Q )<br />

Sendo assim, po<strong>de</strong>mos escrever a Lei <strong>de</strong> Little como:<br />

Tempo médio<br />

<strong>de</strong> espera no<br />

sistema<br />

L =<br />

W<br />

MF-6


Nuno Cota - 2000<br />

ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Expressões úteis<br />

Para além das medidas <strong>de</strong> performance <strong>de</strong> sistemas <strong>de</strong> filas <strong>de</strong> espera vistas anteriormente, na<br />

análise <strong>de</strong>stes sistemas, iremos utilizar a seguinte notação:<br />

S Tempo médio <strong>de</strong> atendimento, ou serviço<br />

A Intensida<strong>de</strong> <strong>de</strong> Tráfego<br />

c Número <strong>de</strong> servidores<br />

S<br />

=<br />

A =<br />

ρ =<br />

1<br />

μ<br />

λ<br />

μ<br />

A<br />

c<br />

Ritmo médio <strong>de</strong> chegadas<br />

Ritmo médio <strong>de</strong> atendimentos<br />

Utilização média do processador<br />

Em consequência da lei <strong>de</strong> Little, e analisando os princípios dos processos <strong>de</strong><br />

Poisson, obteremos as seguintes relações:<br />

W =<br />

W<br />

L<br />

L<br />

Q<br />

=<br />

L<br />

Q<br />

Q<br />

+<br />

L = λW<br />

= λW<br />

+ S<br />

Q<br />

A<br />

MF-7


Nuno Cota - 2000<br />

ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Mo<strong>de</strong>lo <strong>de</strong> Markov<br />

Na condição <strong>de</strong> equilíbrio, verifica-se que<br />

resolvendo esta expressão, para os diversos valores <strong>de</strong> k, obteremos,<br />

pelo que teremos:<br />

0<br />

λ0 1<br />

λ1 2 ... k-1<br />

λk-1 k<br />

λk k+1 ...<br />

μ1 μ2 μk μk+1 1−λ 0<br />

p<br />

1<br />

λ<br />

1−λ 1 −μ 1<br />

k −1<br />

1−λ 2 −μ 2 1−λ k−1 −μ k−1 1−λ k −μ k 1−λ k+1 −μ k+1<br />

pk −1<br />

+ μk<br />

+ 1 pk<br />

+ 1 = ( λk<br />

+ μk<br />

) pk<br />

λ<br />

= 0 p0<br />

, , ...<br />

μ<br />

p =<br />

⎛ 0 ⎞⎛<br />

1 ⎞<br />

2 p0⎜<br />

⎟⎜<br />

⎟<br />

1<br />

⎝ μ1<br />

⎠⎝<br />

μ2<br />

⎠<br />

p<br />

k<br />

=<br />

p<br />

∏ − k 1<br />

0<br />

i=<br />

0<br />

λ<br />

i<br />

μ<br />

i+<br />

1<br />

λ<br />

com<br />

λ<br />

p<br />

0<br />

com k ≥ 0<br />

∞ k −1<br />

⎡ λ<br />

= ⎢1+<br />

i ∑∏<br />

⎣<br />

μ<br />

k = 1 i=<br />

0<br />

⎤<br />

+ 1<br />

⎥ i ⎦<br />

−1<br />

MF-8


Nuno Cota - 2000<br />

ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Sistemas M / M / 1<br />

Consi<strong>de</strong>rando que:<br />

Fazendo<br />

e sabendo que<br />

po<strong>de</strong>remos retirar que<br />

Assim,<br />

λ = λ<br />

k<br />

μ = μ<br />

k<br />

0<br />

λ<br />

1<br />

λ<br />

2<br />

λ<br />

...<br />

λ<br />

k-1<br />

λ<br />

k ...<br />

μ μ μ μ μ<br />

1−λ 1−λ −μ 1−λ −μ<br />

1-λ-μ 1-λ-μ<br />

λ<br />

ρ = 0<br />

μ<br />

p p<br />

k<br />

, que representa a intensida<strong>de</strong> <strong>de</strong> tráfego, teremos k = ρ<br />

∞<br />

1 = ∑ pk<br />

∞<br />

k<br />

= p0∑<br />

ρ = p0<br />

k = 0<br />

k = 0<br />

L<br />

L<br />

p<br />

Q<br />

0<br />

=<br />

1<br />

,<br />

1−<br />

ρ<br />

se ρ < 1<br />

k<br />

= 1−<br />

ρ e p = ( 1−<br />

ρ)<br />

ρ , para k > 0<br />

E[<br />

pk<br />

= λW<br />

ρ<br />

] =<br />

1−<br />

ρ<br />

Q<br />

2<br />

ρ<br />

=<br />

1−<br />

ρ<br />

k<br />

W<br />

W Q<br />

L S<br />

= =<br />

λ 1−<br />

ρ<br />

Sρ<br />

= W − S =<br />

1−<br />

ρ<br />

MF-9


Nuno Cota - 2000<br />

ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Sistemas M / G / 1<br />

Para o caso em que não se conhece a distribuição do tempo <strong>de</strong> serviço, po<strong>de</strong>remos<br />

generalizar as expressões anteriores, a partir da conhecida fórmula <strong>de</strong> Pollaczek-<br />

Khintchine:<br />

A partir <strong>de</strong>sta expressão, po<strong>de</strong>remos retirar as restantes gran<strong>de</strong>zas<br />

Sistemas M / D / 1<br />

Assim, teremos:<br />

W Q<br />

W<br />

WQ<br />

2 2 2<br />

λ σ S + ρ<br />

=<br />

2λ(<br />

1−<br />

ρ)<br />

Po<strong>de</strong>mos particularizar para o caso <strong>de</strong> tempo <strong>de</strong> serviço constante.<br />

2<br />

Neste caso, σ<br />

= 0<br />

S<br />

Sρ<br />

=<br />

2( 1−<br />

ρ)<br />

1<br />

= WQ<br />

+<br />

μ<br />

L LQ<br />

+ =<br />

LQ<br />

A<br />

2<br />

ρ<br />

=<br />

2(<br />

1−<br />

ρ)<br />

MF-10


Nuno Cota - 2000<br />

ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Sistemas M / M / 1 / N<br />

Neste caso, o sistema só suportará N<br />

utentes na fila <strong>de</strong> espera.<br />

Utilizando o mesmo principio que anteriormente,<br />

teremos:<br />

p<br />

k<br />

k<br />

= ρ p0<br />

e, tendo em atenção que o limite superior é<br />

agora N, teremos<br />

assim,<br />

p<br />

0<br />

=<br />

1+<br />

pk<br />

1<br />

N<br />

∑<br />

k = 1<br />

k<br />

ρ<br />

1−<br />

ρ<br />

=<br />

1−<br />

ρ<br />

k<br />

ρ ( 1−<br />

ρ)<br />

= k + 1<br />

1−<br />

ρ<br />

k + 1<br />

0<br />

λ<br />

1<br />

λ<br />

2<br />

λ<br />

...<br />

λ<br />

N-1<br />

λ<br />

μ μ μ μ μ<br />

A probabilida<strong>de</strong> <strong>de</strong> um utente chegar ao sistema e<br />

encontrar a fila completa será<br />

pN<br />

N<br />

ρ ( 1−<br />

ρ)<br />

= N + 1<br />

1−<br />

ρ<br />

O número médio <strong>de</strong> utentes no sistema será:<br />

ρ ( N + 1)<br />

ρ<br />

L = −<br />

N + 1<br />

1−<br />

ρ 1−<br />

ρ<br />

N + 1<br />

Po<strong>de</strong>mos a partir daqui, com a ajuda da lei<br />

<strong>de</strong> Little retirar as restantes gran<strong>de</strong>zas.<br />

N<br />

MF-11


Nuno Cota - 2000<br />

ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Sistemas M / M / c<br />

O sistema dispõe agora<br />

<strong>de</strong> C servidores.<br />

Neste sistema a utilização média <strong>de</strong> cada servidor<br />

será dada por:<br />

A<br />

ρ =<br />

C<br />

Tendo em atenção a figura, teremos<br />

e<br />

p<br />

k<br />

p<br />

k ⎧ A<br />

⎪ p<br />

k!<br />

= ⎨ k<br />

⎪ A<br />

c<br />

⎪⎩<br />

c!<br />

0<br />

⎛<br />

= 1−<br />

⎜<br />

⎝<br />

⎡<br />

= ⎢<br />

⎢⎣<br />

c−1<br />

0<br />

c−k<br />

c−1<br />

k = 1<br />

p<br />

0<br />

k<br />

A<br />

+<br />

k!<br />

k c<br />

A A<br />

+<br />

k!<br />

c!<br />

k= 0 k=<br />

0<br />

λ λ λ λ λ λ λ<br />

0 1 2 ... c -1 c c+1 ...<br />

μ 2μ 3μ (c -1)μ c μ c μ c μ<br />

1−λ 0<br />

se 0 ≤ k ≤ c<br />

∞<br />

∑ ∑<br />

k = c<br />

se k ≥ c<br />

∞<br />

∑ ∑<br />

k<br />

A<br />

c<br />

c!<br />

⎛<br />

⎜<br />

⎝<br />

A ⎞<br />

⎟<br />

c ⎠<br />

c−k<br />

k<br />

⎤<br />

⎥<br />

⎥⎦<br />

⎞<br />

⎟ p<br />

⎠<br />

−1<br />

0<br />

1−λ 1 −μ 1<br />

1−λ 2 −μ 2<br />

ficando com<br />

p<br />

1-λ-(c -1)μ 1-λ-c μ 1-λ-c μ<br />

0<br />

c−1<br />

k c ⎡ A A 1 ⎤<br />

= ⎢∑<br />

+ ⎥<br />

⎣k<br />

= 0 k!<br />

c!<br />

1−<br />

A c⎦<br />

Se preten<strong>de</strong>rmos saber a probabilida<strong>de</strong> <strong>de</strong> um<br />

utente entrar em lista <strong>de</strong> espera, teremos:<br />

C<br />

Esta expressão é conhecida como sendo a<br />

fórmula <strong>de</strong> Erlang-C<br />

−1<br />

A<br />

= 1 k<br />

A<br />

A + c!<br />

( 1−<br />

A )∑ c k!<br />

∞<br />

c<br />

( c,<br />

A)<br />

∑ pk<br />

=<br />

c−<br />

k = c<br />

c<br />

Comprimento médio da fila <strong>de</strong> espera:<br />

A<br />

LQ = C(<br />

c,<br />

A)<br />

c − A<br />

k = 0<br />

MF-12


Nuno Cota - 2000<br />

ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Sistemas M / M / c / c<br />

O sistema dispõe agora <strong>de</strong> C servidores e C<br />

lugares na fila <strong>de</strong> espera. Os utentes que<br />

encontrem os servidores ocupados, serão<br />

imediatamente rejeitados<br />

Neste caso, o limite superior será c, tendo<br />

assim:<br />

k<br />

p<br />

k<br />

A probabilida<strong>de</strong> <strong>de</strong> um utente não ser atendido<br />

é dada pela probabilida<strong>de</strong> <strong>de</strong> estarem c<br />

servidores ocupados, tendo assim:<br />

B(<br />

c,<br />

A)<br />

A<br />

= c<br />

∑ i=<br />

0<br />

=<br />

p<br />

c<br />

k!<br />

i<br />

A i!<br />

=<br />

A<br />

c<br />

c!<br />

A<br />

k<br />

c<br />

∑ k=<br />

0 k!<br />

Computacionalmente é mais eficiente a utilização<br />

da expressão <strong>de</strong> Erlang B, na sua forma recursiva:<br />

em que<br />

...<br />

λ λ<br />

k-1 k c<br />

kμ c μ<br />

1−λ−(k-1)μ 1−λ−kμ 1−λ N −μ χ<br />

AB(<br />

c −1,<br />

A)<br />

B(<br />

c,<br />

A)<br />

=<br />

c + AB(<br />

c −1,<br />

A)<br />

B(<br />

0,<br />

A)<br />

= 1<br />

Esta expressão é conhecida como a<br />

fórmula <strong>de</strong> Erlang-B<br />

MF-13


Nuno Cota - 2000<br />

ISEL - DEEC - SST<br />

<strong>Mo<strong>de</strong>los</strong> e Simulação em Sistemas <strong>de</strong> Telecomunicações<br />

<strong>Mo<strong>de</strong>los</strong> <strong>de</strong> <strong>Filas</strong><br />

Sistemas M / M / c / c / m<br />

É um sistema equivalente ao anterior,<br />

existindo agora a particularida<strong>de</strong> <strong>de</strong> a<br />

população não ser infinita. Neste caso o ritmo<br />

<strong>de</strong> chegadas <strong>de</strong>pen<strong>de</strong>rá da população.<br />

Como, o ritmo <strong>de</strong> chegadas não será<br />

constante, teremos:<br />

e<br />

k<br />

m!<br />

A ⎛m<br />

⎞<br />

pk = p0<br />

= p0⎜<br />

⎟A<br />

k!<br />

( m − k)!<br />

⎝ k ⎠<br />

p<br />

0<br />

⎛<br />

= ⎜<br />

∑<br />

⎝<br />

c<br />

⎛m<br />

⎞<br />

⎝ i ⎠<br />

⎞<br />

= 0 ⎟ i<br />

⎜ ⎟A<br />

i<br />

⎠<br />

−1<br />

k<br />

0<br />

mλ<br />

1<br />

(m-1)λ (m-2)λ (m-c+1)λ<br />

2 ... c-1<br />

(m-c)λ<br />

μ 2μ 3μ (c−1)μ cμ<br />

Assim, teremos<br />

⎛m<br />

⎞ k<br />

⎜ ⎟A<br />

⎝ k ⎠<br />

⎛m<br />

⎞<br />

⎜ ⎟A<br />

⎝ i ⎠<br />

c<br />

∑ i=<br />

0<br />

Se preten<strong>de</strong>rmos saber a probabilida<strong>de</strong> <strong>de</strong> um<br />

utente não encontrar o sistema completo,<br />

teremos:<br />

B<br />

=<br />

⎛m<br />

⎞ c<br />

⎜ ⎟A<br />

⎝ c ⎠<br />

⎛m<br />

⎞<br />

⎜ ⎟A<br />

⎝ i ⎠<br />

c<br />

∑ i=<br />

0<br />

i<br />

p<br />

k<br />

=<br />

Esta é a fórmula <strong>de</strong><br />

Engset, normalmente<br />

utilizada em re<strong>de</strong>s <strong>de</strong><br />

telecomunicações<br />

privadas<br />

i<br />

c<br />

MF-14

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!