Modelização do Sistema Produtivo Teoria das Filas de Espera http://www.fe.up.pt/maspwww Licenciatura em Engenharia Electrotécnica e de Computadores Gil M. Gonçalves Gil.Goncalves@fe.up.pt 2004/2005 Outline Introdução Desempenho Dinâmica Análise 2
Introdução 3 Principal Objectivo Determinar desempenho em determinadas condições de operação e não Determinar as condições de operação de modo a melhorar o desempenho 4
Especificação do modelo Modelos estocásticos Y k tempo entre chegadas - A(t) = P[Y t] E[Y] = 1/λ Z k tempo de serviço - B(t) = P[Y t] E[Z] = 1/μ Parâmetros estruturais K capacidade da fila de espera m número de servidores... Cliente chega Políticas operacionais Classes de clientes Técnicas de sequeciamento Disciplinas de fila Políticas de aceitação / prioritização A(t) Fila B(t) Servidor Cliente parte 5 Notação A / B / m / K / N A distribuição probabilística do intervalo entre chegadas B distribuição probabilísticas do tempo de serviço m número de servidores K comprimento máximo da fila N população finita (sistema fechado) Sistemas Abertos e Fechados Sistema aberto para uma população infinita de clientes Sistema fechado, com uma população finita de clientes 6
Desempenho 7 Desempenho de um sistema de Filas de Espera Variáveis Y k, Z k A k tempo de chegada do k-ésimo cliente D k tempo de partida do k-ésimo cliente W k tempo de espera do k-ésimo cliente (chegada até serviço) S k tempo no sistema do k-ésimo cliente (chegada até partida) (tempo de resposta ou atraso) S k = D k A k = W k + Z k D k = A k + W k + Z k X(t) comprimento da fila de espera no instante t (estado) U(t) carga no sistema no instante t (trabalho por terminar) 8
Regime permanente (equilíbrio) O sistema já funcionou por um período alargado de tempo O número de clientes atendidos já é suficientemene grande { W k } fornece info importante sobre desempenho f.d.p W k depende de k, P[W k t] (regime permanente) lim k P[W k t] = P[W t] W tempo de espera em regime permanente E[W] tempo médio de espera em regime permanente X(t), U(t) quando t X comprimento da fila em regime permanente E[X] comprimento médio da fila em regime permanente U carga no sistema em regime permanente E[U] carga média no sistema em regime permanente π n, n=0,1,.. probabilidade do comprimento da fila π n = P[x=n], n=0,1,.. 9 Desempenho em regime permanente min tempo de espera Vs. max taxa de utilização dos servidores Medidas de desempenho (regime permanente) E[W] E[S] E[X] (min) taxa de utilização taxa de saída (max) Equilíbrio: fluxo entrada clientes = fluxo de saída de clientes Intensidade de tráfego [intensidade de tráfego] = [taxa média de chegada]/[taxa média de serviço] (ρ = λ / μ ou ρ = λ / μm) Fracção do tempo que o servidor está ocupado [utilização] 1 - π 0 Taxa de partida dos clientes após o serviço [taxa de saída] (throughput) μ (1 - π 0 ) Em equilíbrio (regime permanente) λ = μ (1 - π 0 ) (m = 1, ρ = 1 - π 0 ) 10
Dinâmica 11 Dinâmica (k-ésimo cliente) W k = max{ 0, D k-1 A k } D k-1 = W k-1 + Z k-1 + A k-1 A k A k-1 = Y k W k = max{ 0, W k-1 + Z k-1 Y k } S k = W k + Z k S k = max{ 0, S k-1 Y k } + Z k D k = W k + Z k + A k D k = max{ A k, D k-1 } + Z k 12
Análise 13 Lei de Little X(T) = N a (t) N d (t) u(t) - tempo total de todos os clientes no sistema x(t) = λ(t) s(t) = x = u(t)/t s(t) = u(t)/n a (t) λ(t) = n a (t)/t comp. médio da fila tempo de sistema médio tempo de chegada médio Se λ = lim t! 1 λ(t), s = lim t! 1 s(t) então lim t! 1 x(t) = x x = λ s 14
Lei de Little E[X] = λ E[S] Comprimento médio da fila é proporcional ao tempo médio no sistema λ E[X] = λ E[S] E[S] E[X Q ] = λ E[W] (considerando apenas a fila) E[X S ] = λ E[Z] (considerando apenas servidor) 15 Análise Geral de Sistemas de Markov de Espera Simples π n = P[X = n], n = 0, 1,.. distribuição de probabilidade estacionária do comprimento da fila permite calcular a maioria das medidas de desempenho distribuições do tempo entre chegadas e de serviço exponenciais π n = n i=1(λ i-1 /μ i )π 0 π 0 = 1/(1 + 1 n=1 λ i-1 /μ i ) 16
Em geral P[cliente chega em t e X(t) = n] = α n (t) α n (t) P[X(t) = n, em algum t] Teorema: para uma fila de espera com processo de chegada de Poisson independente do processo de serviço, tem-se α n (t) = π n (t) 17 Exemplo: M/M/1 π n = (1 - ρ) ρ n Utilização: ρ = 1 - π 0 Taxa de saída: μ (1 - π 0 ) = λ E[X] = ρ / (1 - ρ) E[S] = (1 / μ) /(1 - ρ) E[w] = ρ / [μ (1 - ρ)] λ μ Exercício: partindo de π n deduza as expressões para as medidas de desempenho 18
Exercício Escolha a taxa de serviço μ para uma máquina que recebe tarefas com uma taxa de λ = 1 tarefa/min de modo que o tempo médio de uma tarefa no sistema não exceda 0.5 min. Chegadas de acordo com um processo de Poisson e tempos de serviço exponencialmente distribuídos Podemos adoptar o modelo M/M/1 19 Redes de filas de Markov Um sistema que consiste em m nós interligados X i comprimento da fila no i-ésimo nó Estado do sistema X = [ X 1, X 2,..., X m ] Objectivo: obter a distribuição de probabilidade estacionária π( n 1, n 2,..., n m ) = P[ X 1 = n 1, X 2 = n 2,..., X m = n m ] Chegadas externas e partidas nos servidores geradas por processos que respeitam a proprieda de Markov (ausência de memória) (distribuições exponenciais) E processos de chegada internos? (compostos por 1 ou mais processos de partida de servidores adjacentes) 20
Exemplo Par de Puxadores PP Par de Puxadores 1 E Espelho 2 ME Muleta Esquerda 1 PE Punho Esquerdo 1 MD Muleta Direita 1 P Pé 1 PD Punho Direito 1 FQ Ferro Quadrado 1 P Pé 1 A Anilha 4 M Mola 1 PD M.P. OP1 OP5 MD P A1 OP9 M.P. OP2 OP6 ME A3 PP PE A2 OP10 A5 OP12 M.P. M.P. OP3 OP7 E OP4 OP8 OP11 A4 21 Resultados parciais auxiliares A: processo de partida para fila M/M/1 ψ k = D k - D k-1 intervalo entre partidas ψ 0 = 0, ψ 1 = D 1 (H) ψ : lim k P[ψ k t] = P[ψ t] (regime permanente) Teorema: M/M/1 estável estacionária com taxa de chegada λ tem um processo de partida de Poisson com taxa λ, (P[ψ t] = 1 e -λt ) 22
Resultados auxiliares parciais B: rede de filas de espera aberta M nós com capacidade de armazenamento infinita 1 só classe de clientes Disciplina de Fila FCFS Tempo de serviço exponencialmente distribuídos μ i Chegadas externas processo Poisson com taxa r i Chegadas internas de outros servidores P ij probabilidade de routing de i para j Taxa de chegada total ao nó i: λ i = r i + M j=1λ j p ji, i=1,..,m 23 Exemplo: M = 2 (sem feedback) X = { X 1, X 2 } ε = { a, d 1, d 2 } Eventos gerados por processos de Markov λ μ 1 μ 2 Exercício: Mostre que π(n 1,n 2 ) = π(n 1 ) π(n 2 ) 24
Efeito da realimentação O processo de sobreposição dos processos da entrada (Poisson de taxa λ) e de feedback da saída não é de Poisson. Contudo o processo de partida é de Poisson. Jackson mostrou que, numa rede com nós com realimentação, embora cada nó individual não tenha Processos de Chegada de Poisson, os Processos de Partida são de Poisson e podem ser tratados como o sistema M/M/1 π(η 1,, η M )= M i=1 π i (η i ), π i (η i ) é a solução de M/M/m i Condições de estabilidade do nó: λ i = r i + M j=1λ j p ji < m i μ i 25 Exemplo Par de Puxadores OP1 OP5 OP9 A1 A1* A3* λ 10,00 λ 9,00 λ 9,00 λ 9,00 λ 9,00 λ 10,00 ρ 83,3% ρ 60,0% ρ 60,0% ρ 60,0% ρ 100,0% ρ 111,1% L 4,17 L 0,90 L 0,90 L 0,90 L #DIV/0! L -11,11 W 0,42 W 0,10 W 0,10 W 0,10 W #DIV/0! W -1,11 9,00 9,00 9,00 9,00 OP2 OP6 OP10 A2 A2* A4* λ 18,00 λ 18,00 λ 9,00 λ 9,00 λ 10,00 λ 10,00 ρ 60,0% ρ 85,7% ρ 60,0% ρ 60,0% ρ 111,1% ρ 111,1% L 0,90 L 5,14 L 0,90 L 0,90 L -11,11 L -11,11 W 0,05 W 0,29 W 0,10 W 0,10 W -1,11 W -1,11 18,00 18,00 9,00 9,00 OP3 OP7 OP11 A3 λ 10,00 λ 10,53 λ 22,22 λ 9,00 ρ 71,4% ρ 70,2% ρ 96,6% ρ 60,0% L 1,79 L 1,65 L 27,61 L 0,90 W 0,18 W 0,16 W 1,24 W 0,10 10,00 10,00 20,00 9,00 OP4 OP8 OP12 A4 A5 A5* λ 20,00 λ 20,00 λ 9,00 λ 9,00 λ 9,47 λ 9,47 ρ 80,0% ρ 66,7% ρ 60,0% ρ 60,0% ρ 63,2% ρ 100,0% L 3,20 L 1,33 L 0,90 L 0,90 L 1,08 L #DIV/0! W 0,16 W 0,07 W 0,10 W 0,10 W 0,11 W #DIV/0! 20,00 20,00 9,00 9,00 26
p 11 p 13 Exercício Calcule o tempo médio no sistema para a seguinte rede λ 3 μ 3 3 r 1 λ 1 μ 1 p 22 1 p 12 λ 2 μ 2 2 p 21 27 To probe further Cassandras, C.G. e S. LaFortune, Introduction to Discrete Event Systems, Kluwer Academic Publishers, Boston, 1999. 28