Início / Pesquisa Operacional / Calculadora de Teoria das Filas
Pesquisa Operacional e Modelos Estocásticos
Calculadora de Teoria das Filas (M/M/1, M/M/c, M/M/1/K)
Em resumo: a teoria das filas converte as taxas de chegada e serviço em métricas de filas de espera. Escolha um modelo e informe as taxas abaixo, e esta ferramenta devolve a utilização, o número médio na fila e no sistema, a espera média, a probabilidade de espera e uma curva mostrando como a fila estoura conforme a utilização sobe.
Calcule métricas de filas de espera
ρ = λ / (c·μ) · M/M/1, M/M/c (Erlang C), M/M/1/K → L, Lq, W, Wq
Média no sistema (L)
4
Informe as taxas para calcular as métricas da fila de espera.
O que a teoria das filas faz
A teoria das filas é a matemática das filas de espera, e responde às perguntas que todo gestor de operações enfrenta quando as chegadas são aleatórias e o serviço leva tempo: quão longa é a fila, quanto as pessoas esperam e quão ocupados estão os servidores.
A partir de três entradas, a taxa com que os clientes chegam, a taxa com que cada servidor trabalha e o número de servidores, ela deriva as médias de longo prazo que descrevem o sistema: o número em espera, o número no sistema, o tempo de espera e a utilização dos servidores.
Esses números convertem a sensação vaga de que “a fila está longa demais” em uma base quantificada para decidir quantos servidores, cadeiras ou canais um sistema precisa.
A lição central e muitas vezes contraintuitiva do campo é que as filas se formam muito antes de um sistema estar totalmente carregado, porque as chegadas e os tempos de serviço variam.
Um caixa que em princípio poderia atender cada cliente se eles chegassem uniformemente ainda forma fila, porque na realidade os clientes se agrupam e alguns serviços se alongam. Conforme a utilização sobe rumo ao máximo, a espera média não cresce suavemente, mas dispara, e por isso um sistema operado a pleno é um sistema com uma fila enorme.
Entender essa relação não linear, e planejar capacidade sobrando deliberada por causa dela, é o que separa uma operação de serviço bem conduzida de uma perpetuamente atrasada.
Esta calculadora implementa os três modelos que um engenheiro encontra primeiro, escritos na notação padrão de Kendall. M/M/1 é um único servidor com chegadas aleatórias (Poisson) e serviço variável (exponencial). M/M/c estende isso a vários servidores que compartilham uma fila, com a fórmula de Erlang C no coração do dimensionamento de centrais de atendimento.
M/M/1/K acrescenta uma capacidade finita, então as chegadas são recusadas quando o sistema está cheio. Escolha um modelo, informe as taxas e a ferramenta devolve a utilização, o número médio na fila e no sistema, a espera e o tempo médio no sistema, a probabilidade de uma chegada ter que esperar e, para o modelo finito, a probabilidade de bloqueio.
Também plota como a fila cresce com a utilização e marca o caso instável onde a fila cresceria sem limite. Tudo roda no seu navegador e nada do que você informa é armazenado.
Como esta calculadora funciona, passo a passo
Comece escolhendo o modelo. Use M/M/1 para um único servidor, M/M/c quando vários servidores compartilham uma fila de espera e M/M/1/K quando o sistema só pode conter um número limitado de clientes e recusa o resto. Os campos de entrada se ajustam ao modelo: o número de servidores aparece para M/M/c, e a capacidade aparece para M/M/1/K. A calculadora abre com um exemplo M/M/1 para que você veja um resultado completo e correto antes de mudar qualquer coisa.
Depois informe as duas taxas em unidades consistentes. A taxa de chegada lambda é quantos clientes chegam por unidade de tempo, e a taxa de serviço mu é quantos um servidor poderia completar por unidade de tempo se nunca ficasse ocioso. Ambas devem usar a mesma unidade de tempo, por hora, por minuto, por dia, e os resultados voltam nessa unidade: uma espera calculada com taxas por hora está em horas. Para M/M/c informe também o número de servidores, e para M/M/1/K o máximo que o sistema pode conter. A ferramenta recalcula ao vivo enquanto você digita.
O painel de resultados encabeça com o número médio no sistema e lista o conjunto completo de métricas: a utilização, o número médio na fila e no sistema, a espera média na fila e o tempo total no sistema, a probabilidade de o sistema estar vazio e a probabilidade de uma chegada ter que esperar. Para o modelo finito acrescenta a probabilidade de bloqueio e a taxa de chegada efetiva, a parcela realmente admitida.
O gráfico mostra como o comprimento médio da fila sobe conforme a utilização aumenta, com o seu ponto de operação atual marcado, para que o estouro não linear perto da utilização plena seja visível num relance. Se você informar taxas que sobrecarregam um sistema de capacidade infinita, a ferramenta o reporta como instável em vez de devolver um número sem sentido.
Baixe um PDF ou CSV ou compartilhe o resultado; tudo acontece localmente.
A notação de Kendall e os três modelos
Os modelos de filas são rotulados em notação de Kendall, um código compacto da forma A/B/c/K onde A é o processo de chegadas, B é a distribuição do tempo de serviço, c é o número de servidores e um K opcional é a capacidade do sistema. A letra M, de markoviano ou sem memória, denota chegadas de Poisson na primeira posição e tempos de serviço exponenciais na segunda; esses são os pressupostos que tornam os modelos resolúveis em forma fechada, e representam um nível específico e bastante alto de variabilidade. Ler a notação diz de imediato o que um modelo pressupõe, por isso vale a pena conhecê-la mesmo que você só use os três casos mais comuns.
M/M/1, um servidor, é o ponto de partida e o modelo por trás de grande parte da intuição: a partir da simples razão entre a taxa de chegada e a de serviço dá cada métrica em formas fechadas simples.
M/M/c generaliza para vários servidores idênticos que retiram de uma única fila compartilhada, o arranjo de uma central de atendimento ou uma fila de caixa, e a sua fórmula de Erlang C captura a eficiência crucial do agrupamento: uma fila compartilhada alimentando muitos servidores espera muito menos que os mesmos servidores cada um com a sua fila privada.
M/M/1/K limita o número no sistema, modelando uma sala de espera ou um buffer limitado, e como pode recusar chegadas introduz uma probabilidade de bloqueio e permanece estável mesmo sob carga alta. Juntos esses três cobrem a grande maioria das perguntas de capacidade de primeira instância, e esta calculadora alterna entre eles a partir de um único controle.
Cinco exemplos resolvidos que você pode seguir
Exemplo 1: o padrão de um servidor
A calculadora abre em M/M/1 com uma taxa de chegada de 8 e uma taxa de serviço de 10 por unidade de tempo. A utilização é 0,8, então o único servidor está ocupado 80 por cento do tempo. O número médio no sistema é 4, com 3,2 deles esperando na fila; o tempo médio no sistema é 0,5 unidade de tempo, das quais 0,4 são passadas esperando. Note que a 80 por cento de utilização o servidor já carrega uma fila de mais de três, consequência direta da variabilidade, e o gráfico mostra quanto mais íngreme a subida fica logo depois desse ponto.
Exemplo 2: acrescentar um segundo servidor
Mude para M/M/c e coloque dois servidores com as mesmas taxas, chegada 8 e serviço 10 cada. A capacidade total agora é 20 contra uma carga de 8, então a utilização cai para 0,4 e a fila quase desaparece: a espera média cai para uma pequena fração de uma unidade de tempo. Este é o efeito de agrupamento em ação, e ilustra por que a pergunta certa raramente é “um servidor dá conta da média?” mas “quantos servidores mantêm a espera aceitável?”, já que o segundo servidor rende muito mais do que custa uma vez contado o custo de esperar.
Exemplo 3: a armadilha da utilização
Mantenha M/M/1 e aumente a taxa de chegada de 8 para 9 com a taxa de serviço ainda em 10. A utilização sobe apenas de 0,8 para 0,9, uma modesta mudança de dez por cento na carga, mas o número médio no sistema salta de 4 para 9 e a espera mais que dobra. Esta é a armadilha não linear no coração do assunto: perto da utilização plena, um pequeno aumento da demanda produz um grande aumento do atraso. É a razão de sistemas que parecem bem a 80 por cento desmoronarem a 90, e de a capacidade sobrando não ser desperdício mas seguro.
Exemplo 4: uma sala de espera finita
Mude para M/M/1/K com chegada 8, serviço 10 e uma capacidade de 5. Agora no máximo cinco clientes podem estar no sistema e quem chega quando está cheio é recusado. A ferramenta reporta uma probabilidade de bloqueio, a fração de chegadas perdidas, e uma taxa de chegada efetiva, a fração realmente admitida, e calcula as métricas de fila para quem entra. Ao contrário do modelo infinito, este permanece estável mesmo se você empurrar a taxa de chegada acima da de serviço, porque o teto impede a fila de crescer sem limite; o preço da estabilidade são clientes recusados.
Exemplo 5: um sistema instável
Volte a M/M/1 e coloque a taxa de chegada em 10 com uma taxa de serviço de 8. Agora a demanda supera a capacidade, a utilização é 1,25 e não há estado estacionário: a fila cresce para sempre. A calculadora reporta isso como instável em vez de devolver um número, porque qualquer resposta finita seria falsa. A correção é uma de três alavancas, acrescentar um servidor, acelerar o serviço ou limitar o sistema com o modelo finito, e ver a ferramenta se recusar a inventar um número é em si a lição de que você não pode atender mais do que a sua capacidade permite.
Três dicas de especialista para dimensionar a capacidade
Agrupe as filas onde puder
Uma única fila alimentando vários servidores espera muito menos que os mesmos servidores com filas separadas. Modele como M/M/c, não como vários M/M/1, e projete o sistema real do mesmo jeito.
Nunca planeje para a utilização plena
Como o atraso dispara perto de ρ = 1, um sistema dimensionado para a carga média exata terá uma fila enorme. Construa capacidade sobrando de propósito; é seguro contra a variabilidade, não desperdício.
Iguale as unidades de tempo
As taxas de chegada e de serviço devem compartilhar uma unidade de tempo, e todo resultado de tempo volta nela. Misturar taxas por hora e por minuto é o erro mais comum e corrompe a espera em silêncio.
Por que filas se formam abaixo da capacidade plena
A ideia individual mais importante da teoria das filas é a forma da curva que relaciona o atraso à utilização, e é a razão de o campo existir. Conforme a utilização rho sobe a partir de valores baixos, a fila média cresce devagar no início, depois se dobra bruscamente para cima, tendendo ao infinito quando rho se aproxima de um.
Para o modelo de um servidor o número médio em espera é proporcional a rho ao quadrado dividido por um menos rho, e é esse um-menos-rho no denominador que impulsiona o estouro: a oitenta por cento de utilização o denominador é 0,2, a noventa é 0,1, a noventa e cinco é 0,05, então cada passo rumo à carga plena aproximadamente dobra a espera de novo.
A calculadora desenha essa curva para o seu modelo e marca onde você está nela, o que muitas vezes persuade mais que qualquer número isolado.
As consequências práticas são grandes e frequentemente ignoradas. Um gestor que vê um servidor ocupado oitenta por cento do tempo pode raciocinar que há vinte por cento de folga e empurrar mais trabalho, só para achar a fila triplicando quando a utilização passa a noventa. O modelo mental correto é o oposto: os últimos incrementos de utilização são extraordinariamente caros em atraso, então a faixa útil de operação termina muito antes da carga plena.
Por isso as centrais de atendimento dimensionam o pessoal para uma meta de espera em vez de para o ponto de equilíbrio de utilização, por isso as rodovias congestionam num fluxo bem abaixo do máximo teórico, e por isso uma fábrica operada a cem por cento de capacidade acumula um enorme trabalho em processo. A capacidade sobrando é o preço das filas curtas, e a curva mostra exatamente quanta você deve manter para ter a espera onde a quer.
Ler a curva, não só a média, é o que converte a teoria das filas de um conjunto de fórmulas em uma disciplina de planejamento.
A Lei de Little: a identidade que une tudo
Sob todas essas métricas subjaz uma relação única e notavelmente geral conhecida como a Lei de Little: o número médio de itens em um sistema estável é igual à taxa de chegada média multiplicada pelo tempo médio que um item passa no sistema, escrito L = lambda vezes W, com a mesma relação Lq = lambda vezes Wq para a fila sozinha. O que a torna poderosa é a sua generalidade: vale para essencialmente qualquer sistema de filas estável, independentemente do padrão de chegadas, da distribuição de serviço, do número de servidores ou da disciplina de fila. Não é uma propriedade dos pressupostos M/M; é uma lei de conservação sobre o fluxo.
A lei é a razão de esta calculadora poder se mover com tanta liberdade entre contagens e tempos, e de você só precisar conhecer um par das quantidades para recuperar o resto. Se você pode observar quantos clientes há em um sistema em média e com que rapidez chegam, pode inferir o tempo médio que passam sem cronometrar ninguém diretamente, um truque usado constantemente na prática para medir lead times difíceis de observar.
Também conecta a teoria das filas ao resto de operações: a mesma identidade, expressa como estoque igual a vazão vezes tempo de fluxo, governa o trabalho em processo em um chão de fábrica e é a espinha dorsal das ferramentas lean e de cadeia de suprimentos em outras partes desta rede.
Reconhecer que as métricas de filas de espera e as de estoque são a mesma lei com outra roupa é uma das ideias unificadoras da gestão de operações, e significa que uma intuição construída aqui se transfere direto para esses outros domínios.
Dimensionar servidores: dimensionar o pessoal para uma meta de serviço
O uso real mais comum destas fórmulas é decidir quantos servidores prover, e o método é calcular uma medida de serviço para vários números de servidores e escolher o menor que cumpre uma meta.
A meta costuma ser expressa como uma promessa de tempo de espera ou uma probabilidade de espera, por exemplo que a espera média fique abaixo de um minuto, ou que não mais de vinte por cento das chegadas tenham que esperar.
Como a probabilidade de espera de Erlang C e a espera média caem ambas de forma íngreme ao acrescentar servidores perto da alta utilização, o cálculo tipicamente produz uma resposta clara em vez de uma troca no fio da navalha: um servidor é inservível, outro é confortável e um terceiro rende pouco.
Dois refinamentos importam na prática. Primeiro, a demanda raramente é constante: as taxas de chegada oscilam por hora do dia e estação, então o pessoal certo é uma escala que acompanha a curva de chegadas, calculada aplicando o modelo a cada período em vez de a uma média diária, já que fazer a média esconde os picos onde as filas se formam.
Segundo, a decisão é em última instância econômica: cada servidor tem um custo, e esperar também tem um custo, seja em clientes perdidos, máquinas ociosas ou tempo pago, e o melhor pessoal minimiza a soma dos dois. O modelo de filas fornece o lado da espera dessa equação para qualquer nível de pessoal, então você pode contrapor o custo dos servidores ao custo do atraso e escolher o mínimo.
É exatamente assim que centrais de atendimento, prontos-socorros e equipes de manutenção são dimensionados, e o mesmo modelo M/M/c que esta calculadora roda é o motor dentro das ferramentas especializadas de gestão de pessoal que o fazem em escala.
Onde os pressupostos sem memória mordem
Os modelos M/M repousam em dois pressupostos que vale a pena entender antes de confiar nos seus números. As chegadas de Poisson significam que os clientes chegam de forma independente ao acaso, com a propriedade sem memória de que a chance de uma chegada no próximo instante não depende de quanto tempo passou desde a última.
Isso se ajusta bem a muitas situações, chamadas para uma grande central, clientes para uma loja movimentada, falhas em uma grande frota de máquinas, porque o agregado de muitas fontes independentes se aproxima de Poisson.
Ajusta-se mal quando as chegadas são agendadas, em lotes ou fortemente correlacionadas, como um sistema de consultas ou um transporte que despeja um monte de uma vez, onde o padrão real de chegadas é muito mais regular ou muito mais agrupado que Poisson.
Os tempos de serviço exponenciais são o pressuposto mais grosseiro. A propriedade sem memória implica que um serviço já em andamento não tem mais probabilidade de terminar logo que um recém-começado, e que serviços curtos são comuns enquanto alguns ocasionais se alongam muito. O serviço real costuma ser mais consistente que isso, uma leitura, uma transação, uma etapa de usinagem que leva quase o mesmo tempo toda vez, e quando o serviço é mais regular que exponencial a fila verdadeira é mais curta do que o modelo M/M prevê.
Isso significa que o resultado M/M é em geral conservador: tende a superestimar a fila quando o serviço é regular, então usá-lo para dimensionar capacidade erra pelo lado seguro. Quando a precisão importa, o modelo M/G/1 relaxa a distribuição de serviço para qualquer uma com média e variância conhecidas, e a fórmula de Pollaczek-Khinchine mostra a fila encolhendo conforme a variabilidade do serviço cai, chegando a cerca da metade da fila M/M quando o serviço é perfeitamente constante.
Para um dimensionamento inicial os modelos M/M que esta calculadora fornece são a ferramenta padrão e geralmente suficiente, e saber que eles pendem para o conservador é parte de usá-los bem.
Erros comuns a evitar
Um punhado de erros se repete e distorce as decisões de filas de espera. Fique atento a eles.
- Unidades de tempo incompatíveis. As taxas de chegada e de serviço devem compartilhar uma unidade de tempo. Misturar cifras por hora e por minuto produz em silêncio uma espera muito errada.
- Modelar servidores compartilhados como filas separadas. Vários servidores em uma fila (M/M/c) esperam muito menos que os mesmos servidores cada um com a sua fila. Separá-los joga fora o benefício de agrupamento.
- Planejar para a utilização plena. Como o atraso dispara perto de ρ = 1, dimensionar para a carga média exata garante uma fila longa. Dimensione o pessoal para uma meta de espera com capacidade sobrando.
- Usar uma média diária para um dia com picos. Fazer a média das chegadas ao longo de um dia esconde os picos onde as filas de fato se formam. Aplique o modelo a cada período movimentado separadamente.
- Confiar em um número de um sistema instável. Se a utilização está em ou acima de um em um modelo infinito, não há estado estacionário e qualquer cifra finita é falsa. Acrescente capacidade ou use o modelo finito.
- Esquecer o tempo de serviço em W. O tempo total no sistema inclui o próprio serviço, não só a espera. Confundir W com Wq subestima ou superestima conforme qual você precisa.
- Supor serviço exponencial sem verificar. Se o serviço é muito mais regular que exponencial, a fila real é mais curta; a estimativa M/M é conservadora, segura para dimensionar mas pessimista para definir expectativas.
Onde este modelo se encaixa nas ferramentas
A teoria das filas responde às perguntas de capacidade e espera que outras ferramentas de operações dão por certas. O hub de Pesquisa Operacional a agrupa com os demais modelos estocásticos e de otimização por essa razão.
Onde a calculadora de programação linear otimiza uma alocação sob restrições fixas, a teoria das filas diz o quanto uma dessas restrições, a capacidade de serviço, precisa realmente ser para manter a espera aceitável, então as duas são complementares: as filas dimensionam o recurso, a otimização o aloca.
Quando um sistema se move entre estados discretos ao longo do tempo em vez de apenas formar uma fila, o modelo de cadeias de Markov generaliza o mesmo raciocínio probabilístico.
Além deste silo, as métricas de filas de espera conectam direto com as ferramentas de fluxo e estoque pela Lei de Little, que é a mesma identidade quer conte clientes em uma fila quer trabalho em processo em uma linha.
As ideias de lead time e vazão nos silos lean e de cadeia de suprimentos são ideias de filas em outro vocabulário, e a variabilidade que impulsiona as filas é a mesma que o estoque de segurança amortece.
Em um sentido amplo, qualquer lugar onde o trabalho espera, chamadas em espera, pacientes em uma sala, trabalhos diante de uma máquina, peças diante da montagem, é uma fila, e os modelos aqui são o núcleo quantitativo de gerenciá-los todos. Volte ao hub de Pesquisa Operacional para o conjunto completo de modelos.
Erlang e a origem do campo
A teoria das filas tem um lugar de nascimento preciso: a Companhia Telefônica de Copenhague nos anos por volta de 1909, onde um jovem engenheiro dinamarquês chamado Agner Krarup Erlang se propôs a responder quantos circuitos uma central telefônica precisava para que quem ligasse raramente encontrasse todas as linhas ocupadas.
A sua análise de chamadas chegando ao acaso e retendo linhas por tempos variáveis produziu as primeiras fórmulas de filas, incluindo as de perda e atraso que ainda levam o seu nome, e fundou uma disciplina inteira.
A unidade de tráfego oferecido, o erlang, leva o seu nome, assim como a fórmula de Erlang C que esta calculadora usa para o atraso multisservidor e a fórmula de Erlang B para sistemas que bloqueiam em vez de enfileirar.
O campo cresceu daquela origem telefônica para uma teoria geral do congestionamento aplicável muito além das comunicações. A mesma matemática que dimensionava centrais agora dimensiona o pessoal de centrais de atendimento e hospitais, dimensiona redes de computação e fazendas de servidores, distribui caixas e praças de pedágio, e programa a manutenção de máquinas, porque todas compartilham a estrutura de chegadas aleatórias encontrando serviço limitado.
A teoria das filas se situa dentro do campo mais amplo dos processos estocásticos e conecta com as cadeias de Markov, das quais os modelos M/M são um caso especial, mas o seu apelo duradouro é prático: com três números converte a experiência universal de esperar em algo que você pode prever e projetar.
Que as fórmulas centenárias de Erlang continuem sendo as ferramentas de trabalho do planejamento de capacidade em tantas indústrias é um testemunho de quão bem a abstração captura a coisa real.
Das observações a um modelo: medir as suas taxas
Um modelo é tão bom quanto as duas taxas que você lhe dá, e acertá-las é o trabalho prático que cerca a aritmética. A taxa de chegada é a mais fácil das duas: conte as chegadas durante um trecho de tempo representativo e divida pela sua duração, tomando cuidado para que o trecho de fato seja representativo e não uma média que misture uma manhã tranquila com um meio-dia frenético. Como as filas se formam nos picos, não na média diária, a prática correta é dividir o dia em períodos onde a taxa de chegada seja mais ou menos estável, uma hora ou meia hora, e modelar cada um separadamente; uma única média diária subestimará muito as filas de pico e o levará a prover de menos justo quando dói.
A taxa de serviço exige mais cuidado, porque deve ser a taxa que um servidor alcança enquanto de fato trabalha, não a vazão de todo o sistema nem diluída pelo tempo ocioso ou pelas pausas.
Cronometre uma amostra de serviços do momento em que o trabalho começa até quando termina, faça a média dessas durações e inverta: um tempo de serviço médio de seis minutos é uma taxa de serviço de dez por hora. Mantenha as unidades idênticas à taxa de chegada.
Vale a pena cronometrar serviços suficientes para ver a sua dispersão, porque essa dispersão é o que o pressuposto exponencial está substituindo, e se você achar que o serviço é notavelmente consistente sabe que a estimativa M/M correrá conservadora e a fila real será um pouco mais curta.
Duas verificações previnem a maioria dos erros de modelagem. Primeiro, confirme que o sistema é genuinamente estável antes de confiar em qualquer número do modelo infinito: a capacidade total de serviço, a taxa de serviço vezes o número de servidores, deve superar a taxa de chegada, ou a ferramenta com razão reportará o sistema como instável.
Segundo, contraste o resultado com a realidade se você puder observá-la: se o modelo diz que a fila média é dois mas você rotineiramente vê dez, ou as taxas estão mal medidas, ou as chegadas são muito mais agrupadas que Poisson, ou um período de sobrecarga está sendo diluído na média. O modelo é uma lente, não um oráculo, e comparar a sua previsão com o que você de fato pode ver é como você aprende se os seus pressupostos se ajustam ao seu sistema o bastante para planejar sobre ele.
Um piloto curto, medir taxas por uma semana, modelar cada período e depois contrastar a fila prevista com a observada, é tempo bem investido antes de qualquer decisão de capacidade depender dos números.
Formato de entrada e referência rápida
Escolha um modelo, depois informe a taxa de chegada e a taxa de serviço por servidor na mesma unidade de tempo; acrescente o número de servidores para M/M/c ou a capacidade para M/M/1/K. Todo resultado baseado em tempo volta na unidade que você usou para as taxas. A referência abaixo resume as métricas que a calculadora devolve.
| Símbolo | Significado |
|---|---|
| ρ (rho) | Utilização: fração da capacidade de servidores em uso; deve ser menor que 1 nos modelos infinitos |
| L | Número médio de clientes no sistema (esperando mais em serviço) |
| Lq | Número médio esperando na fila, ainda não atendidos |
| W | Tempo total médio no sistema (espera mais serviço) |
| Wq | Tempo médio esperando na fila |
| P0 | Probabilidade de o sistema estar vazio |
| Prob. de espera | Probabilidade de uma chegada ter que esperar (Erlang C para M/M/c) |
| Bloqueio (Pk) | Só M/M/1/K: probabilidade de uma chegada encontrar o sistema cheio e ser recusada |
Perguntas frequentes
O que é teoria das filas?
A teoria das filas é o estudo matemático das filas de espera: como se formam, quanto crescem e quanto pessoas ou trabalhos esperam nelas. Modela um sistema por um processo de chegadas (como os clientes aparecem), um processo de serviço (com que rapidez são atendidos) e o número de servidores, e então deriva as médias de longo prazo como o número em espera, o número no sistema e a espera média. É usada para dimensionar o pessoal de uma central de atendimento, a capacidade hospitalar, os caixas, as equipes de reparo e os sistemas de computação, onde quer que as chegadas sejam aleatórias e o serviço leve tempo.
O que significam as letras em M/M/1?
M/M/1 é a notação de Kendall. A primeira letra é o processo de chegadas, a segunda é a distribuição do tempo de serviço e o número é quantos servidores há. O M significa markoviano: as chegadas seguem um processo de Poisson e os tempos de serviço são exponenciais, os pressupostos sem memória que tornam o modelo tratável. Assim, M/M/1 é um único servidor com chegadas de Poisson e serviço exponencial; M/M/c é o mesmo com c servidores em paralelo que compartilham uma fila; e M/M/1/K acrescenta uma capacidade máxima do sistema de K, além da qual as chegadas são recusadas.
O que é a utilização e por que importa tanto?
A utilização, escrita ρ (rho), é a fração da capacidade dos servidores que o trabalho que chega demanda: para um único servidor é a taxa de chegada dividida pela taxa de serviço, e para c servidores é a taxa de chegada dividida por c vezes a taxa de serviço. Importa porque o tempo de espera e o comprimento da fila crescem de forma não linear quando ρ se aproxima de 1: um sistema a 90 por cento de utilização tem muito mais que o dobro da fila de um a 80 por cento. Quando ρ atinge ou supera 1 em um modelo de capacidade infinita, a fila cresce sem limite e não existe estado estacionário, o que esta calculadora marca como instável.
Qual a diferença entre Lq e L, ou Wq e W?
Lq é o número médio de clientes esperando na fila, ainda não atendidos; L é o número médio em todo o sistema, incluindo os que estão em serviço, então L é sempre maior. Da mesma forma, Wq é o tempo médio que um cliente passa esperando antes de o serviço começar, e W é o tempo total no sistema, espera mais serviço, então W é igual a Wq mais o tempo de serviço médio. Qual você quer depende da pergunta: Lq e Wq descrevem a experiência de espera, enquanto L e W descrevem a carga total e o tempo no sistema.
Quando devo usar M/M/c em vez de M/M/1?
Use M/M/c sempre que vários servidores retiram de uma única fila compartilhada, que é o arranjo usual das centrais de atendimento, das filas de caixa e das mesas de ajuda. É importante não modelar c servidores como c sistemas M/M/1 separados, porque uma fila compartilhada é muito mais eficiente que repartir as chegadas entre filas separadas: uma única fila alimentando vários servidores espera muito menos que várias filas independentes com a mesma capacidade total. O modelo M/M/c, com a fórmula de Erlang C, captura esse benefício de agrupamento, uma ideia central da teoria das filas.
O que é a fórmula de Erlang C?
Erlang C é a fórmula que dá a probabilidade de um cliente que chega ter que esperar em um sistema M/M/c, ou seja, a probabilidade de todos os c servidores estarem ocupados. É o núcleo das filas multisservidor e a base do dimensionamento de centrais de atendimento: a partir dela a calculadora deriva o comprimento médio da fila, o tempo de espera e as demais métricas. Leva o nome de Agner Krarup Erlang, o engenheiro dinamarquês que fundou a teoria das filas no início do século vinte estudando centrais telefônicas, razão pela qual a unidade de carga oferecida se chama erlang.
O que o modelo M/M/1/K acrescenta?
O modelo M/M/1/K acrescenta uma capacidade finita do sistema K: no máximo K clientes podem estar no sistema, e quem chega enquanto está cheio é recusado, ou bloqueado. Isso o torna o modelo certo para uma sala de espera com cadeiras limitadas, um buffer de tamanho limitado ou um sistema de chamadas com um máximo de chamadas em espera. Como as chegadas são perdidas quando está cheio, ele reporta uma probabilidade de bloqueio e uma taxa de chegada efetiva (a taxa realmente admitida), e ao contrário dos modelos infinitos sempre tem estado estacionário mesmo quando a taxa de chegada supera a de serviço, porque a fila não pode crescer além de K.
Por que filas se formam mesmo quando o servidor não está totalmente ocupado?
Porque as chegadas e os tempos de serviço variam. Se os clientes chegassem de forma perfeitamente uniforme e cada serviço levasse exatamente o mesmo tempo, um servidor com qualquer capacidade sobrando nunca formaria fila.
As chegadas reais se agrupam e os tempos de serviço reais diferem, então mesmo com utilização moderada uma sequência de chegadas rápidas ou serviços lentos cria um acúmulo temporário que leva tempo para se esvaziar.
A teoria das filas quantifica isso: a fila média depende não só da utilização mas dessa variabilidade, e os pressupostos sem memória M/M representam um nível específico e alto dela. A lição prática é que você deve planejar capacidade sobrando, porque um sistema dimensionado exatamente para a sua carga média terá filas longas.
O que é a Lei de Little e como se relaciona?
A Lei de Little é a identidade simples e poderosa de que o número médio em um sistema é igual à taxa de chegada média vezes o tempo médio passado no sistema: L = λ W, e igualmente Lq = λ Wq. Vale para quase qualquer sistema de filas estável independentemente da distribuição de chegadas ou de serviço, por isso esta calculadora pode converter entre contagens e tempos com tanta liberdade. Significa que, se você conhece duas das três quantidades, contagem, taxa e tempo, pode achar a terceira, e liga as métricas de filas às ideias de vazão e lead time usadas em outras partes de operações.
Os pressupostos de Poisson e exponencial são realistas?
Costumam ser uma primeira aproximação razoável e às vezes exatos. As chegadas de Poisson descrevem muitos clientes independentes chegando ao acaso, o que se ajusta bem a chamadas para uma grande central ou clientes para uma loja movimentada.
Os tempos de serviço exponenciais, com a sua propriedade sem memória, ajustam-se de forma mais grosseira, porque o serviço real costuma variar menos do que a exponencial prevê. Quando os tempos de serviço são muito mais regulares, a fila verdadeira é mais curta do que o modelo M/M diz, então o resultado M/M é uma estimativa conservadora, um pouco pessimista.
Para um dimensionamento inicial isso costuma ser aceitável; quando a precisão importa, modelos como M/G/1, que permitem uma distribuição de serviço geral, o refinam.
As fórmulas de filas me dizem quantos servidores eu preciso?
Sim, de forma indireta, e esse é um dos seus principais usos. Ao calcular o tempo de espera ou a probabilidade de espera para diferentes números de servidores, você acha o menor número de servidores que cumpre uma meta de serviço, como “noventa por cento das pessoas esperam menos de trinta segundos”. Como acrescentar um servidor derruba muito a espera perto da alta utilização, costuma haver um número certo claro em vez de uma troca marginal. Pese o custo de mais um servidor contra o custo de esperar, dimensione o pessoal para a meta e reveja conforme a taxa de chegada muda por hora ou estação.
Estas calculadoras armazenam os números que eu informo?
Não. Esta calculadora funciona inteiramente no seu navegador. As taxas que você informa nunca são enviadas aos nossos servidores, armazenadas ou compartilhadas. Você pode baixar um PDF ou CSV dos seus resultados localmente, e nada sai do seu dispositivo. Consulte a nossa Política de Privacidade para mais detalhes.
A calculadora de teoria das filas é gratuita?
Sim. A calculadora de teoria das filas e filas de espera é totalmente gratuita, sem conta, cadastro ou paywall, e sem limite de uso. Devolve a utilização, o número médio na fila e no sistema, a espera e o tempo médio no sistema, a probabilidade de espera e, para o modelo finito, a probabilidade de bloqueio, com uma curva de utilização e exportação para PDF e CSV sem custo.
Calculadoras relacionadas de pesquisa operacional
Mais ferramentas neste silo. Volte ao hub de Pesquisa Operacional para o conjunto completo.
Fontes, aviso legal e transparência editorial
Esta calculadora implementa as fórmulas padrão de filas M/M/1, M/M/c (Erlang C) e M/M/1/K da teoria de processos estocásticos fundada por A. K. Erlang. Esta calculadora e este guia são criados e revisados pela equipe da OpsCalculators; consulte a nossa Política Editorial para saber como cada ferramenta é pesquisada, construída e testada.
Os resultados são estimativas precisas para planejamento e educação, não consultoria de engenharia certificada, e pressupõem chegadas de Poisson e serviço exponencial; quando o serviço é marcadamente mais regular que exponencial a fila verdadeira é mais curta, então trate os números como conservadores. Valide contra os seus próprios dados antes de comprometer capacidade. Consulte o nosso Aviso Legal completo. OpsCalculators.com é operado pela MAFHH INTERNATIONAL LTD. Os seus dados são processados no seu navegador e nunca são guardados; consulte a nossa Política de Privacidade.