You are on page 1of 10

Universidade Estadual do Cear (UECE) Pr-Reitoria de Ps Graduao e Pesquisa (PROPGPq) Instituto Federal de Educao, Cincia e Tecnologia do Cear (IFCE)

Diretoria de Pesquisa e Ps-Graduao (DIPPG)

Leandro Alves Machado

Teoria das Filas

Agosto, 2011 1. Introduo

um ramo da probabilidade que estuda a formao de filas, atravs de anlises matemticas precisas e propriedades mensurveis das filas. Ela prov modelos para demonstrar previamente o comportamento de um sistema que oferea servios cuja demanda cresce aleatoriamente, tornando possvel dimension-lo de forma a satisfazer os clientes e ser vivel economicamente para o provedor do servio, evitando desperdcios e gargalos. Elas esto presentes em nosso cotidiano, no supermercado, no banco, no trnsito, em qualquer situao em que precisamos esperar por um servio ou oportunidade. O problema da congesto de linhas telefnicas foi um dos primeiros motivos a se estudar filas e foi uma das principais aplicaes da teoria de filas at meados de 1950. A partir da, a literatura comeou a expandir e diversas reas comearam a utilizar os resultados dessa teoria. Alguns exemplos que adotam essa teoria so: controle de trfego areo, transportes e sistemas de estocagem, sistemas de comunicao (telefonia) e sistemas de processamento de informaes. Um sistema de filas pode ser interpretado da seguinte forma: clientes chegam para serem atendidos, mas, quando no h um atendimento imediato, necessrio formar uma fila de espera. Os clientes referidos acima podem ser pessoas que esperam um atendimento, mensagens que esperam ser transmitidas pelos canais de comunicao, carros que esperam num semforo e depois quando chegam, esperam e so atendidos pelos servidores a partir de alguma disciplina, ou seja, ser primeiro atendido aquele que chega primeiro, disciplina conhecida como first in first out FIFO, ou, ser atendido primeiro o que chega por ltimo, conhecida como last in first out LIFO. A disciplina FIFO geralmente utilizada em nosso diaa-dia, j a LIFO tem como um exemplo a busca em discos rgidos. O principal motivo de se estudar filas a melhoria do sistema, o que caracteriza uma melhor utilizao dos servios disponveis, menor tempo de espera e maior rapidez no atendimento.

2. Caractersticas de um sistema de filas Um sistema de filas consiste no processo de chegada, da distribuio do tempo de servio, do nmero de servidores, da capacidade do sistema, da populao de usurios e da disciplina de atendimento. 2.1 Processo de chegada

O processo de chegada indica qual o padro de chegada dos clientes no sistema. Apresenta comportamento estocstico, ou seja, as chegadas ocorrem no tempo e no espao de acordo com as leis da probabilidade, assim preciso conhecer qual a distribuio de probabilidade que descreve os tempos entre as chegadas dos clientes. A distribuio mais comum a de Poisson, que uma distribuio de probabilidade discreta que expressa a probabilidade de uma srie de eventos ocorrer num certo perodo de tempo se estes evento ocorrem independentemente de quando ocorrei o ltimo evento. O padro de chegada de clientes em funo do tempo pode ser: Estacionrio: a distribuio de probabilidade que descreve a chegada no varia com o tempo. No Estacionrio: A distribuio varia com o tempo.

2.2

Distribuio do tempo de servio

Assim como no processo de chegada, tambm necessrio conhecer a distribuio de probabilidade do tempo de servio. Os servios podem ser simples ou batch (em lote). O estado pode ser: Independente: o processo de atendimento no depende do nmero de clientes esperando pelo servio. Dependente: o processo de atendimento muda de acordo com o nmero de clientes na fila.

2.3

Nmero de servidores

Esse componente tambm conhecido como nmero de canais de servio. Indica a quantidade de pontos de atendimento do sistema, de forma a servir aos clientes paralelamente. Quando um sistema possui mais de um servidor (multiservidor ou multicanal), ele pode apresentar duas variaes. Em um sistema de fila nica, existe uma nica fila para todos os servidores, como em um caixa de banco. Em um sistema de mltiplas filas, existe uma fila para cada servidor, como em um caixa de supermercado. 3

Figura 1: Multiservidor com fila nica.

Figura 2: Servidor paralelo. Quando existirem infinitos servidores, ou seja, todo cliente que chega atendido imediatamente, temos um caso especial conhecido como Central de atraso. 2.4 Capacidade do sistema

Representa o nmero mximo de clientes que o sistema suporta, incluindo os que esto em espera e os que esto sendo atendidos. A capacidade pode ser infinita ou finita. Se a capacidade for finita, quando o sistema estiver lotado nenhum cliente pode entrar at que um cliente saia do sistema, liberando espao. 2.5 Populao de usurios

Esse componente indica o nmero potencial de clientes que podem chegar a um sistema. Pode ser finita ou infinita. 2.6 Disciplina de atendimento

Descreve a forma como os clientes saem da fila de espera para serem atendidos. Algumas disciplinas so: FIFO: First in First out (primeiro a chegar, o primeiro a sair).

Exemplo: Controladores de disco usam FIFO como um algoritmo de escalonamento para determinar a ordem de servio de solicitaes de E/S. Exemplo: Switches e roteadores usados em redes de computadores usam FIFO para manter os pacotes de dados em rota para seu prximo destino. LIFO: Last in First out (ultimo a chegar, o primeiro a sair). Exemplo: Aplicvel em sistemas em que o item mais recente mais fcil de ser recuperado, exemplo em sistemas de controle de estoque. Round-robin: Cada cliente recebe uma fatia de tempo do servidor, dentro da qual atendido. Aps o termino do tempo, se atividade no foi completada, o cliente retirado e outro passa a ser atendido. Posteriormente, o cliente que foi interrompido retorna ao servidor e continua a sua atividade. Exemplo: Escalonamento de processos da CPU, que uma atividade organizacional que possibilita executar os processos mais viveis e concorrentes, priorizando determinados tipos de processos. Fila com prioridade: Cada cliente recebe uma prioridade e os clientes com maior prioridade tm preferncia no atendimento. Filas com prioridade podem ser de dois tipos: o Preemptivo: o cliente com maior prioridade atendido imediatamente, interrompendo o atendimento ao cliente com menor prioridade. Ao terminar, o cliente de menor prioridade volta a ser atendido, podendo continuar o processo de onde parou ou ento reinici-lo. No-preemptivo: cliente de maior prioridade colocado no inicio da fila, sendo atendido somente quando o cliente em atendimento sai do sistema, mesmo ele tendo uma prioridade mais baixa.

Exemplo: Atendimento em um hospital.

3. Notao Kendall A notao Kendall utilizada para descrever as principais caractersticas do sistema de fila. Ela possui este nome, pois foi proposta pelo matemtico ingls David George Kendall (5 de janeiro 1918 - 23 outubro 2007) em 1953.

Figura 3: David George Kendall. Sua notao da seguinte forma: A/S/m/K/N/Q Em que: A: Distribuio dos tempos entre as chegadas (Processo de chegada) S: Distribuio dos tempos de servio M: Nmero de servidores K: Capacidade do sistema N: Tamanho da populao Q: Disciplina de atendimento

Exemplo de sistemas de fila: M/G/4/50/2000/FIFO M: Processo de Chegada exponencial (Markoviano) G: Distribuio dos tempos de servio arbitrria (Geral) 6

4: Quatro servidores 50: Capacidade para cinqenta clientes 2000: Populao de dois mil clientes FIFO: Disciplina de atendimento Primeiro a Chegar, Primeiro a Sair

D/M/1///RR D: Processo de chegada determinstico M: Distribuio dos tempos de servio exponencial (Markoviano) 1: Um servidor : Capacidade ilimitada : Populao infinita RR: Disciplina de atendimento Round-robin Muitas vezes, os trs ltimos smbolos so omitidos. Nestes casos, assumese capacidade ilimitada, populao infinita e disciplina de atendimento FIFO 4. Distribuies de probabilidade Determinista (D): Tempo entre as chegadas e o tempo de servio so constantes Exponencial (M): O intervalo entre uma chegada e a prxima completamente independente do perodo anterior, e para o tempo de servio independente do tempo de servio anterior Arbitrria ou Geral (G): No especificada uma distribuio de probabilidade para os tempos de chegada e servio. Resultados so validos para todas as distribuies.

5. Leis Operacionais So relaes simples que no necessitam de nenhuma hiptese sobre as distribuies dos tempos de servio ou dos intervalos entre chegadas. Foram identificadas inicialmente por Buzen em 1976 e posteriormente estendidas por Denning e Buzen em 1978. A palavra operacional significa que pode ser medida diretamente. Baseiam-se em seis leis: Lei da Utilizao, Lei do Fluxo Forado, Lei da Demanda de Servio, Lei de Little, Lei do Tempo de resposta, Lei do Tempo de Resposta Interativo. Quantidades Operacionais so quantidades que podem ser medidas diretamente durante um perodo finito de observao. Essas quantidades 7

so variveis que podem mudar de um perodo de observao para outro. As relaes, porem, continuam vlidas. Perodo de observao: T Nmero de chegadas (arrivals): Ai Nmero de trminos (completions): Ci Tempo ocupado (busy time): Bi Taxa de chegada: i = Ai / T Vazo: Xi = Ci / T Fator de utilizao: Ui = Bi / T Tempo mdio de servio: Si = Bi / Ci

5.1

Lei da Utilizao

Exemplo 1 Um segmento de rede transmite 1.000 pacotes/seg. Cada pacote possui um tempo mdio de transmisso (S) de 0,15 mseg. Qual a utilizao mdia deste segmento de rede? Throughput (Taxa de transferncia) = X = 1000 pacotes/seg , S = 0,15 mseg Fazendo uso da lei da utilizao, teremos: Utilizao do segmento de LAN = Ui = Xi . Si 8

Ui = 1000 x 0,00015 = 0,15 = 15% Exemplo 2 Durante um intervalo de observao, um servidor de Banco de Dados monitorado executa 45 transaes de pesquisa (search) por segundo. Cada transao leva, em mdia, 0,019 seg para ser executada. Qual a utilizao mdia do servidor durante este perodo? Throughput (Taxa de transferncia) = X = 45 tps S = 0,019 seg Usando a Lei da Utilizao, teremos: Utilizao do servidor BD = 45 tps . 0,019 seg = 0,855 = 85,5%

5.2

Lei de Little

Desenvolvida por John Little no inicio dos anos 60, um dos mais poderosos relacionamentos em teoria das filas, Little relacionou o tamanho mdio do sistema em estado de equilbrio com o tempo mdio de espera dos clientes, tambm em estado de equilbrio. Qi = i . Ri

5.3

Lei do Fluxo Forado

Relaciona o throughput (taxa de transferncia) global do sistema com o throughput dos dispositivos individuais. Por exemplo, considere um servidor que possui dois recursos: uma CPU e um Disco. Uma transao recebida pelo servidor pode passar inmeras vezes pela CPU e pelo Disco para ser integralmente processada e realizar operaes de IO.

Defini-se Vi como o nmero de visitas realizadas por uma transao ao recurso i. Se X transaes so realizadas por unidade de tempo, Vi . X transaes visitaro o sistema de fila i por unidade de tempo, desta forma, o throughput mdio do sistema de fila i (Xi), ser: Xi = Vi . X 9

Esta lei aplicvel sempre que a hiptese do sistema em equilbrio for verdadeira. Exemplo 1 O servidor de base de dados de um sistema realiza uma mdia de 4,5 operaes de I/O por transao que recebe. O servidor foi monitorado durante uma hora, perodo em que executou 7.200 transaes, com base nestas informaes, responda: Qual o throughput mdio do disco do servidor? Se cada I/O realizado no disco gasta na mdia 20 mseg, qual a utilizao mdia do disco? O throughput do DB, X = 7200 / 3600

10