Geração de Números Aleatórios e Simulação



Documentos relacionados
Simulação Estocástica

Modelos de Filas de Espera

2. Método de Monte Carlo

Processo de chegada: o Chegadas em grupo ocorrem segundo um processo Poisson com taxa. O tamanho do grupo é uma variável aleatória discreta

Aula 11 Esperança e variância de variáveis aleatórias discretas

Balanceamento de uma Linha de Produção

Universidade Federal do Paraná Departamento de Informática. Reconhecimento de Padrões. Revisão de Probabilidade e Estatística

2 Modelo Clássico de Cramér-Lundberg

Avaliação de Desempenho

Departamento de Informática. Análise de Decisão. Métodos Quantitativos LEI 2006/2007. Susana Nascimento

Planeamento de um Posto de Abastecimento de Combustível

Probabilidade. Distribuição Exponencial

Modelos de Filas de Espera

Simulação Industrial

DISTRIBUIÇÕES DE PROBABILIDADE

Introdução à Simulação

Processos Estocásticos

3 Método de Monte Carlo

Probabilidade. Distribuição Exponencial

Métodos de Monte Carlo

UNIVERSIDADE DE SÃO PAULO. Faculdade de Arquitetura e Urbanismo

Distribuição Uniforme Discreta. Modelos de distribuições discretas. Distribuição de Bernoulli. Distribuição Uniforme Discreta

Cláudio Tadeu Cristino 1. Julho, 2014

Logo, para estar entre os 1% mais caros, o preço do carro deve ser IGUAL OU SUPERIOR A:

Variáveis Aleatórias Contínuas e Distribuição de Probabilidad

Simulação de Evento Discreto

Universidade da Beira Interior Departamento de Informática (6619, 11543, 11552) Programação I

PE-MEEC 1S 09/ Capítulo 4 - Variáveis aleatórias e. 4.1 Variáveis. densidade de probabilidade 4.2 Valor esperado,

MÓDULO 6 INTRODUÇÃO À PROBABILIDADE

BC-0005 Bases Computacionais da Ciência. Modelagem e simulação

Avaliando o que foi Aprendido

6 Construção de Cenários

Ferramentas de Modelação e Análise de Sistemas baseadas em Redes de Petri (RdP)

MODELOS PROBABILÍSTICOS MAIS COMUNS VARIÁVEIS ALEATÓRIAS DISCRETAS

Empresa de Pesquisa Energética (EPE) Analista de Projetos da Geração de Energia

AV2 - MA (a) De quantos modos diferentes posso empilhá-los de modo que todos os CDs de rock fiquem juntos?

Geração de variáveis aleatórias

MAT 461 Tópicos de Matemática II Aula 3: Resumo de Probabilidade

Descreve de uma forma adequada o

Versão /Set/ WeDo Soluções para Contact Center Consultorias

Programação III / Estruturas de Dados. Enunciado do Trabalho Prático

Uma distribuição de probabilidade é um modelo matemático que relaciona um certo valor da variável em estudo com a sua probabilidade de ocorrência.

Cálculo das Probabilidades e Estatística I

CAPÍTULO 5 - Exercícios

Aspecto Fluidez no Estudo de Interseção Semaforizada e não Semaforizada

Módulo VIII. Probabilidade: Espaço Amostral e Evento

'DGRVGH(QWUDGD SDUD D6LPXODomR

Exercícios Resolvidos da Distribuição de Poisson

O que é a estatística?

Modelos, em escala reduzida, de pontes e barragens. Simuladores de voo (ou de condução), com os quais se treinam pilotos (ou condutores).

DISTRIBUIÇÃO NORMAL 1

CAP4: Distribuições Contínuas Parte 1 Distribuição Normal

CURSO ON-LINE PROFESSOR GUILHERME NEVES

Momentos de uma variável aleatória

DISTRIBUIÇÃO DE WEIBULL CONCEITOS BÁSICOS APLICAÇÕES

Distribuições de Probabilidade Distribuição Normal

MODELAGEM E SIMULAÇÃO

Premium até 10 S.M a 20 S.M a 30 S.M mais de 30 S.M

LISTA DE EXERCÍCIOS VARIÁVEIS ALEATÓRIAS

Desenvolvimento de Sistema de Software

Problemas de Valor Inicial para Equações Diferenciais Ordinárias

Regra do Evento Raro p/ Inferência Estatística:

SISTEMAS ESPECIALISTAS

Copyright Restinfor, Lda

DISTRIBUIÇÕES DE PROBABILIDADES de variável discreta BERNOULLI E BINOMIAL

A MATEMÁTICA NO ENSINO SUPERIOR POLICIAL 1

Múltiplos Estágios processo com três estágios Inquérito de Satisfação Fase II

Fecho de Ano WEuroGest 2000

CADEX. Consultoria em Logística Interna. Layout de armazém. Objectivos. Popularidade. Semelhança. Tamanho. Características

Manual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco

a) Suponha que na amostra de 20 declarações foram encontrados 15 com dados incorrectos. Construa um

Pipeline. Todos os estágios devem estar prontos ao mesmo tempo para prosseguir.

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação

Análise de Sensibilidade

Lógica e Raciocínio. Decisão sob Risco Probabilidade. Universidade da Madeira.

Modelos Estocásticos. Resolução de alguns exercícios da Colectânea de Exercícios 2005/06 PROCESSOS ESTOCÁSTICOS E FILAS DE ESPERA LEGI

CURSO ON-LINE PROFESSOR: VÍTOR MENEZES. Comentários sobre as provas de estatística e financeira ICMS RJ

Espaço Amostral ( ): conjunto de todos os

Processos Estocásticos

Probabilidade. Definições, Notação, Regra da Adição

Bacharelado em Ciência e Tecnologia Bacharelado em Ciências e Humanidades. Representação Gráfica de Funções

Pesquisa Operacional

Timer e serviços do Timer

MAE116 Noções de Estatística

INE 7002 LISTA DE EXERCÍCIOS MODELOS PROBABILÍSTICOS

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

x0 = 1 x n = 3x n 1 x k x k 1 Quantas são as sequências com n letras, cada uma igual a a, b ou c, de modo que não há duas letras a seguidas?

Tópico 11. Aula Teórica/Prática: O Método dos Mínimos Quadrados e Linearização de Funções

Medidas e Incertezas

UNIVERSIDADE FEDERAL DE UBERLÂNDIA FACULDADE DE MATEMÁTICA 4 a LISTA DE EXERCÍCIOS GBQ12 Professor: Ednaldo Carvalho Guimarães AMOSTRAGEM

ICC Introdução para JavaScript

Probabilidade. Distribuições Uniforme, Geométrica, Hipergeométrica e Multinomial

Aula 2: Variáveis Aleatórias Discretas e Contínuas e suas Principais Distribuições.

PROBABILIDADE, VARIÁVEIS ALEATÓRIAS, DISTRIBUIÇÃO DE PROBABILIDADES E GERAÇÃO ALEATÓRIA

Tecido A B

MODELAGEM E SIMULAÇÃO

Módulo 3936 ASP.NET. Financiado pelo FSE

LISTA DE INTERVALO DE CONFIANÇA E TESTE DE HIPÓTESES

Variáveis Aleatórias Discretas e Distribuições de Probabilidade

Transcrição:

Departamento de Informática Geração de Números Aleatórios e imulação Métodos Quantitativos LEI 26/27 usana Nascimento (snt@di.fct.unl.pt) Advertência Autores João Moura Pires (jmp@di.fct.unl.pt) usana Nascimento (snt@di.fct.unl.pt) Este material pode ser livremente usado para uso pessoal ou académico e sem qualquer autorização prévia do autor desde que acompanhado desta declaração do autor. Para uso comercial (por exemplo em cursos pagos) o uso deste material requer a expressa autorização do autor. 2

imulação Técnica de amostragem estatística controlada, para estimar o desempenho de sistemas estocásticos complexos quando os modelos analíticos são inadequados. Ummodelo de simulação descreve o funcionamento do sistema em termos de eventos individuais de componentes do sistema. Podemos observar o comportamento global do sistema simulado para diferentes configurações e escolher aquela que apresenta um melhor desempenho. imulações de eventos discretos 3 Preparar uma simulação. Definição de um estado de sistema Por exemplo o número de clientes na fila de espera 2. Identificar os possíveis estados que o sistema pode ter 3. Identificar os possíveis eventos que podem ocorrer Por exemplo chegadas de clientes, conclusão de serviços 4. Um relógio do simulador Para simular a passagem do tempo 5. Um ou vários geradores de eventos aleatórios 6. Uma fórmula/método para identificar as transições de estado geradas pelos vários tipos de eventos 4 2

Um exemplo muito simples Lançase repetidamente uma moeda ao ar até que a diferença entre o número vezes que saiu caras e o número de vezes que saiu coroa seja 3. Por cada vez que se atira a moeda é preciso pagar. De cada vez que o jogo pára recebemos 8. Não é possível desistir a meio do jogo Questão de fundo: Valerá a pena jogar? Ganharemos uma partida de cada vez que que ela parar ao fim de 7 lançamentos. Não ganharemos se parar ao fim de 8 lançamentos Perdemos se parar depois de 8 lançamentos. 5 Números aleatórios para simular o lançamento Gerar sequência de números aleatórios inteiros entre e 9 e o número for inferior a 5 saiu cara (c) e o número for superior ou igual a 5 saiu coroa () Exemplo de sequência de números Aleatórios 8 3 7 2 7 6 5 5 9 Faces c c c c Diferença 2 3 6 3

Repetir a experiência: simular Vale a pena Jogar? Jogo 2 3 4 5 6 7 8 9 2 3 4 Lançamentos 5 5 9 7 7 5 3 7 5 5 3 9 7 Número médio de lançamentos 8. 7. 7.5 7.4 7.3 7. 6.5 7.7 7.4 7.2 6.8 7. 7. 3 4 Estima a verdadeira média da distribuição de probabilidades Assim o lucro esperado é de 8 7 =! 7 Repetindo a experiência (5 ensaios) 8 7 6 5 4 3 2 9 8 7 6 5 Número médio de lançamentos 7.6 2 3 4 5 Jogo Assim o lucro esperado é de 8 7.6 =.4! 8 4

Repetindo a experiência (25 ensaios) Número médio de de lançamentos 8 7 6 5 4 3 2 9 8 7 6 5 8.4 5 5 2 25 Jogo Assim o lucro esperado é de 8 8.4 =.4! 9 Não fazer estimativas com base em pequenas amostras N = 4; E(Lanc) = 7 N = 5; E(Lanc) = 7.6 N = 25; E(Lanc) = 8.4 Valor real da média da distribuição (do nº de lançamentos por jogo) é 9! Determinar um intervalo de confiança da média amostral como estimadora da média da distribuição O desvio padrão estimado da média amostral é TDVA(X)/QRT(N) 5

Intervalo de confiança (95%) 2.8.6.4.2.8.6.4.2 5 5 2 25 68.3% 95.4% 25 observações aleatórias de acordo com a distribuição normal com média de e.96 o desvio padrão (σ). Dá o intervalo com 95% de confiança onde a média real da distribuição se encontra imulação: Geração de Números Aleatórios Um gerador de números aleatórios é um gerador que produz sequências de números de acordo com uma distribuição de probabilidadade dada, e que apresenta aleatoriedade. Número aleatório é uma observação aleatória de uma distribuição uniforme (i.e. todos os nºs são igualmente prováveis). Número inteiro aleatório é uma observação aleatória de uma distribuição uniforme discreta sobre um intervalo inteiro n, n +,..., N. As probabilidades para esta distribuição são: P(n) =... = P(N) = /(N n + ). Um caso particular é o intervalo inteiro de a N. 2 6

Geração de Números Aleatórios (cont) Número aleatório uniforme é uma observação aleatória de uma distribuição contínua uniforme sobre um intervalo real [a, b]. A função densidade de probabilidade é: f(x) = /(b a) se a x b e f(x) = para qualquer outro valor de x. Quando a e b não são especificados, assumese: a= e b= Observação aleatória quando for relativa a qualquer outra distribuição de probabilidades 3 Geração de Números Aleatórios (cont) Em geral, os geradores produzem sequências de números inteiros mas podem ser facilmente convertidos para números aleatórios uniformes. Exemplo para um número aleatório uniforme em [, ] Dado um número inteiro aleatório r {,, N}, dividindoo por N obtemos uma boa aproximação se N for grande x = (r + /2) / (N + ) Mínimo = /(2N + 2); Máximo = (N + /2) / (N + ) (r= ) (r= N) 4 7

Geração aleatória de números inteiros Existem vários tipos de geradores de números aleatórios: Método congruencial misto Método congruencial aditivo Método congruencial múltiplicativo. 5 Geração aleatória de números inteiros Método congruencial (misto) gera uma sequência de números inteiros (pseudo) aleatórios no intervalo a m, cada nº é calculado a partir do anterior: X n+ = (a X n + c) (modulo m) e X semente onde a, c e m são números inteiros (a < m, c < m), e em que m representa o nº de valores diferentes a gerar. 6 8

Exemplo de Método congruencial (misto) Por exemplo para a = 5, c = 7 e m = 8 e X = 4. X n+ = (a X n + c) (modulo m) X n X n+ (5X n +7)/8 X 3 (3 + 3/8) X 4 X 2 3 X 7 6 X 4 5 X 5 X 6 7 2 X 7 6 5 7 2 4 (2 + 6/8) (4 + 5/8) (4 + /8) ( + 7/8) (5 + 2/8) (2 + /8) ( + 4/8) X = 4 X 8 X 9 X X X 2 X 3 X 4 X 5 4 3 6 5 7 2 7 Método congruencial (misto) A quantidade de números consecutivos numa sequência antes de se voltar a repetir é designada por período da sequência. O período da sequência do exemplo é 8. Aliás o máximo valor do período é m. e b for o número de bits da representação de inteiros no computador então a escolha usual para m é 2 b. Para este valor de m existem valores de a e c para os quais se assegura que cada número inteiro irá ocorrer uma vez antes de qualquer outro se repetir. Valores de a:, 5, 9, 3,... Valores para c:, 3, 5, 7. 8 9

Método congruencial Multiplicativo e Aditivo Multiplicativo É um caso particular do método misto em que c = ou seja: X n+ = a X n (modulo m) e X semente Embora haja várias combinações de a e m aceitáveis, a combinação mais conhecida é devida a LearmouthLewis: X n+ = 75 X n (módulo 23 ) Aditivo É um caso particular do método misto em que a = e c é um dos números aleatórios que precedem X n na sequência. 9 Geração de observações aleatórias A partir de distribuições de probabilidade Métodos / distribuições Distribuições discretas (método trivial) Para a distribuição Erlang (gama) Distribuição Normal (soma de n uniformes) hiquadrado a partir da normal Método de aceitaçãorejeição 2

Distribuições discretas (método trivial) onsiste simplesmente em atribuir os possíveis valores de um número aleatório a vários números na distribuição de probabilidades na proporção directa das respectivas probabilidades desses números. Exemplo: X = {,, 2}; P(X) = {.25,.25,.5} eja r um número aleatório inteiro entre e 99. e r =,..., 24 > X = ; e r = 25,..., 49 > X = ; e r = 5,..., 99 > X =2 2 Método da transformação inversa É aplicável tanto ao caso das variáveis discretas como contínuas. ejax a variável aleatória e a sua função de distribuição acumulada F(X) = P{X x}. Gerar um número uniforme r no intervalo [, ] 2. Resolver a equação F(x) = r em ordem a x F (r) = x A solução desta equação é a observação aleatória que se pretende. A resolução da equação pode ser analítica, ou numérica. 22

Método da transformação inversa exemplo eja a distribuição exponencial f(x) = e αx A acumulada é F(x) = e αx (para x ) onde /α é a média da distribuição Resolvendo a equação F(x) = r temos x = ln ( r) / α. 23 Distribuição Erlang (gama) A distribuição Erlang com um parâmetro de forma k e média /α, é a soma de k variáveis independentes com distribuição exponencial, cada uma com média = /(kα). ejam r, r 2,..., r k k números aleatórios do intervalo [, ]. Uma observação aleatória da distribuição Erlang é obtida por: k x = ln ( r i ) kα 24 2

Distribuição Normal (soma de n uniformes) De acordo com o teorema do limite central a soma de n números uniformemente distribuidos no intervalo [, ] tem aproximadamente uma distribuição normal com média = n/2 e desvio padrão n. 2 ejam r, r 2,..., r n n números aleatórios do intervalo [, ] então σ n x = r i +µ n σ 2 n/2 n/2 é uma observação aleatória de uma distribuição aproximadamente normal com média µ e desvio padrão σ 25 Método de aceitaçãorejeição É muitas vezes usado para distribuições para as quais não é possível ou não é fácil o uso do método da transformação inversa (i.e. contínuas). O método de aceitaçãorejeição consiste em dois passos (possivelmente repetidos até aceitação). 26 3

Método de aceitaçãorejeição Exemplo f(x) = x se x ; f(x) = (x ) se x 2 f(x) = c.c.8.6.4.2 2 Aceita r 2 =.4.8.6.4.2 2 Rejeita 27 Método de aceitaçãorejeição Exemplo (cont.) O método de aceitaçãorejeição usa os 2 passos para gerar observação aleatória:. Gerar um número aleatório uniforme r no intervalo [, ]; calcular x= 2r (o intervalo de valores possíveis de x é de [, 2]. Aceitar x com probabilidade: p = x se x ; p = (x ) se x 2 em que p corresponde à observação aleatória desejada (já que esta probabilidade é igual a f(x)). aso contrário, rejeitar x e repetir os passos 2. Gerar um número aleatório uniforme r 2 no intervalo [, ]. Aceitar x se r 2 f(x); Rejeitar x se r 2 > f(x); (se x é rejeitado repetir os dois passos). 28 4

Método de aceitaçãorejeição O método de aceitaçãorejeição consiste em dois passos (possivelmente repetidos até aceitação):. Gerar um número aleatório uniforme r no intervalo [, ]. alcular x a partir de r tendo em consideração o domínio de r. 2. Gerar um número aleatório uniforme r 2 no intervalo [, ]. e necessário calcular y a partir de r 2 tendo em consideração o maior valor de f(x). (e o maior valor de f(x) fosse L, menor do que, então seria necessário considerar y = L. r 2. e y f(x) aceita x e a observação aleatória é r 2 ; e y > f(x) rejeita x e repete os dois passos. 29 imulação IO Técnica de amostragem estatística controlada, para estimar o desempenho de sistemas estocásticos complexos quando os modelos analíticos são inadequados. Ummodelo de simulação descreve o funcionamento do sistema em termos de eventos individuais de componentes do sistema. Podemos observar o comportamento global do sistema simulado para diferentes configurações e escolher aquela que apresenta um melhor desempenho. imulações de eventos discretos 3 5

imular o exemplo do Lançamento de moeda O sistema a ser simulado é o lançamento sucessivo de uma moeda. Relógio de simulação regista o número de lançamentos efectuados: t Estado de sistema N(t) = número de caras menos o número de coroas depois de t lançamentos Possíveis eventos que podem ocorrer: sair cara (c) ou sair coroa () Método de geração aleatória dos eventos a partir de um número aleatório uniforme no intervalo [, ]:, até.5 > cara;.5 até. > oroa 3 Formalizar este exemplo simples (cont) Transições de estado geradas pelos vários tipos de eventos: N(t) = N(t) + se o lançamento t foi cara (c); N(t) = N(t) se o lançamento t foi oroa (); Identificar os possíveis estados que o sistema pode ter: cara cara cara cara cara cara 3 2 O 2 3 coroa coroa coroa coroa coroa coroa O jogo pára quando N(t) = ± 3 (diferença entre nº de lançamentos c e é 3) O resultado de um jogo é sempre 8 t (8 é o que se ganha e t é o que se paga) 32 6

Um exemplo de filas de espera M/M/ com λ = 3 por hora; µ = 5 por hora omeçando em o relógio da simulação indica a quantidade de tempo (simulado) que já passou. Estado do sistema, N(t) é o número de clientes no sistema. Os eventos são: chegada de um cliente e a conclusão de um serviço a um cliente. Transição de estado em cada instante t: N(t) = N(t) + se ocorre a chegada de um cliente no instante t N(t) = N(t) se ocorre a saída de um cliente no instante t 33 Avançar o relógio da simulação Incrementos de tempo fixo Incrementar o valor de t de um valor fixo e pequeno Actualizar o sistema: determinar que eventos ocorreram nesse intervalo de tempo e consequentemente qual o estado do sistema. Por exemplo, os eventos que podem ocorrer podem ser uma ou mais chegadas de clientes, uma ou mais conclusão de serviços Incrementos de tempo até ao próximo evento Avançar o tempo (simulado) até ao próximo evento de qualquer tipo: chegada ou saída de cliente Actualizar o sistema: determinar o novo estado resultante do evento; gerar aleatoriamente o tempo até ao próximo evento de qualquer tipo (se não estiver já gerado), segundo a distribuição de probabilidade (i.e. exponencial) 34 7

Avançar o relógio por incrementos de tempo fixo Para um intervalo de tempo arbitrário podem ocorrer vários eventos: hegada de vários clientes onclusão de vários serviços Vamos escolher um intervalo de tempo pequeno para incremento fixo do relógio: eja t =. hora = 6 minutos Probabilidade de que para t =. hora, ocorra uma chegada: P[T t] = e λt = e 3/ =.259 Probabilidade de que para t =. hora, ocorra um serviço: P[T t] = e λt = e 5/ =.393 35 Escolha do incremento de tempo Um valor de t suficientemente pequeno permite tornar desprezível a probabilidade de ocorrência de chegdas múltiplas ou serviços múltiplos. Aproximar como um evento discreto: Distribuição de Poisson P[X(t) > ] = (P[X(t) = ] + P[X(t) = ]) P[X(t) = n] = (αt)n e αt para n =,,... n! P[X(t) > ] t =. (6 min) t =.5 (3 min) t =. (36 seg) λ = 3 3.69%.2%.4% µ = 5 9.2% 2.65%.2% 36 8

imular por incrementos fixos de tempo =.h hegadas de clientes. Gerar um número aleatório (método transformação inversa), r A entre [, ]: r A.259 ocorreu uma chegada r A >.259 não ocorreu uma chegada erviços concluídos, se existir algum cliente a ser servido pelo servidor. Gerar outro número aleatório, r D entre [, ]: r D.393 o serviço do cliente foi concluído r D >.393 o serviço do cliente não foi concluído Estamos a assumir que se não houver clientes no sistema no início do intervalo então nenhum cliente pode ver o seu serviço concluído, mesmo que chegue um cliente. 37 imular por incrementos fixos de tempo =.h t (min) N(t) r A hegada? r D Partida? r A.259 r D.393 6.96 sim 2.569.665 8.764.842 24.492.224 sim 3.95 36.6 42.45 sim 48.484.552 54.35.59 6.43.4 sim 38 9

Actualizar o estado do sistema Além de actualizar o estado do sistema é necessário guardar a informação necessária para os indicadores que se pretendam analisar Transição de estado é: N(t) = N(t) + se ocorre a chegada de um cliente N(t) = N(t) se ocorre a saída de um cliente Estimar o tempo médio de espera imulados apenas 2 clientes ada um deles esteve 3 períodos no sistema Est(W) = [(3+3)/2](.h) 39 Problemas da simulação por Tempo Fixo e o intervalo de tempo for grande pode introduzir erros e o intervalo de tempo for muito pequeno pode requerer grande número de iterações Iterações sem eventos Ao iniciar a simulação com n = o sistema não se inicia em regime estacionário 4 2

Incremento de tempo até ao Próximo Evento Avançar o relógio do simulador até ao instante do próximo evento (qualquer tipo de evento) Actualizar o estado sistema que resulta desse evento. Gerar aleatoriamente o tempo do próximo evento que pode ocorrer a partir deste estado t É necessário o sistema guardar o registo dos eventos futuros (lista de eventos futuros LEF) 4 Geração de números aleatórios com distribuição exponencial: método da transformação inversa É aplicável tanto ao caso das variáveis discretas como contínuas. eja X a variável aleatória e a sua função de distribuição acumulada F(X) = P{X x}. Gerar um número uniforme r no intervalo [, ] 2. Resolver a equação F(x) = r em ordem a x: F (r) = x A solução desta equação é a observação aleatória que se pretende. A resolução da equação pode ser analítica, ou numérica. 42 2

Método da transformação inversa exemplo eja a distribuição exponencial f(x) = e αx A acumulada é F(x) = e αx (para x ) onde /α é a média da distribuição Resolvendo a equação F(x) = r temse e αx = r x = ln ( r) / α. 43 Incremento de tempo até ao próximo evento t (min) N(t) r A.96 Próximo tempo entrechegadas 2.9 r D Próximo tempo de serviço Próxima chegada 2.9 Próxima saída Próximo evento upondo que em N(t = ) = x = ln ( r) / α. geração uniforme em [, ]: r A =.96 α=,5 corresponde ao tempo até à próxima chegada de: 2.9 próxima chegada deve ocorrer para t = + 2.9 = 2.9 44 22

Incremento de tempo até ao próximo evento t (min) 2.9 N(t) r A.96.569 Próximo tempo entrechegadas 2.9 6.833 r D.665 Próximo tempo de serviço 3.23 Próxima chegada 2.9 8.852 Próxima saída 5.42 Próximo evento t = 2.9 (chegada de um cliente) N(2.9) = N() + = ; Geração aleatória dos próximos eventos x = ln ( r) / α. α D =,8 Próx. chegada: r A =.569 t = 6.833 t A = 8.852 (6.833 + 2.9) Próx. saída: r D =.665 t = 3.23 t D = 5.42 (3.23 + 2.9) 45 Incremento de tempo até ao próximo evento t (min) 2.9 5.42 N(t) r A.96.569 Próximo tempo entrechegadas 2.9 6.833 t = 5.42 (saída de um cliente).665 N(5.42) = N(2.9) = ; r D Próximo tempo de serviço 3.23 Próxima chegada 2.9 8.852 8.852 Próxima saída 5.42 Próximo evento Geração aleatória dos próximos eventos não é necessária pois: não existe mais ninguém no sistema para ser servido e a chegada do próximo cliente já está fixada que irá ocorrer t A = 8.852 46 23

Incremento de tempo até ao próximo evento t (min) 2.9 5.42 8.852 N(t) r A.96.569.764 Próximo tempo entrechegadas 2.9 6.833 28.878 r D.665.842 Próximo tempo de serviço 3.23 22.42 Próxima chegada 2.9 8.852 8.852 47.73 Próxima saída 5.42 4.994 Próximo evento t = 8.852 (chegada de um cliente) N(8.852) = N(5.42) + = ; Geração aleatória dos próximos eventos: (próxima chegada e tempo de serviço deste) Próx. chegada: r A =.764 t = 28.878 t A = 47.73 (28.878 + 8.852) Próx.saída:r D =.842 t = 22.42 t D = 4.994 (22.42 + 8.852) 47 Incremento de tempo até ao próximo evento t (min) 2.9 5.42 8.852 4.994 N(t) r A.96.569 47.73 t = 4. 994 (saída de um cliente) N(4. 994) = N(8.852) = ;.764 Próximo tempo entrechegadas 2.9 6.833 28.878 r D.665.842 Próximo tempo de serviço 3.23 22.42 Próxima chegada 2.9 8.852 8.852 47.73 47.73 Próxima saída 5.42 4.994 Geração aleatória dos próximos eventos não é necessária pois não existe mais ninguém no sistema para ser servido e a chegada do próximo cliente já está fixada que irá ocorrer t A = 47.73 Próximo evento 48 24

Um exemplo para simular () Pretendese abrir uma agência bancária com duas caixas. Estudos de mercado indicam que o ritmo de entrada de clientes no banco é de por minuto, ou seja o tempo médio entre clientes consecutivos é de minuto. Devido a problemas de estacionamento na zona o banco coloca uma zona de estacionamento reservada aos seus clientes. Um guarda verifica se de facto são clientes do banco, demorando esta operação.5 minutos. Assim o tempo mínimo entre clientes consecutivos é de.5 minutos. O tempo médio para atendimento dos clientes é.5 minutos 49 Um exemplo para simular (2) Distribuição de probabilidades dos tempos entre chegadas Mínimo de.5 minutos Médio de minuto O tempo que excede os.5 minutos é uma exponencial com média de.5 minutos Distribuição dos tempos de serviço é uma Erlang com média de.5 minutos e parâmetro de forma, k = 4 tdev(t ) = k µ =.5 =.75 minutos 4 5 25

Um exemplo para simular (3) Vamos iniciar a simulação supondo que acabou de chegar um cliente (A) no instante t =. Geração aleatória de um tempo entre chegadas (c):.92653 Geração aleatória de um tempo de serviço (s):.76284 5 Um exemplo para simular (4) Antes de avançar para o instante do próximo evento (T=.92653), vamos registar para este cliente: Tempo de espera excluíndo serviço: Tempo de espera incluíndo o serviço:.76284 52 26

Um exemplo para simular (5) :.9265 Uma nova chegada. O cliente é imediatamente atendido (s= 2): Geração aleatória de um tempo entre chegadas:.2654 Geração aleatória de um tempo de serviço: 3.625 Tempos Próxima chegada (c2) =.92653 +.2654 = 2.887 Próximo serviço concluído (s2) =.92653 + 3.625 = 4.4278 Registos deste cliente: Tempo de espera excluíndo serviço: Tempo de espera incluíndo o serviço: 3.625 53 Um exemplo para simular (6) :.763 O próximo evento é uma conclusão de um serviço. omo não existem clientes à espera não é necessário gerar quer a chegada de novo cliente quer o novo tempo de serviço. Não é necessário registar mais informação dos clientes. A única coisa que se altera é o número de clientes no sistema que passa a. 54 27

Um exemplo para simular (7) 2: 2.88 Uma nova chegada (c2). O cliente é imediatamente atendido: Geração aleatória de um tempo entre chegadas:.7252 Geração aleatória de um tempo de serviço: 2.6244 Tempos Próxima chegada (c3) = 2.887 +.7252 = 2.9327 Próximo serviço concluído (s3) = 2.887 + 2.6244 = 4.8247 Registos deste cliente: Tempo de espera excluíndo serviço: Tempo de espera incluíndo o serviço: 2.6244 55 Um exemplo para simular (8) 3: 2.93 Uma nova chegada (c3). O cliente fica em fila de espera: Geração aleatória de um tempo entre chegadas:.9956 Tempos Próxima chegada (c4) = 2.9327 +.9956 = 4.283 Registos deste cliente: 56 28

Um exemplo para simular (9) 4: 4.3 Uma nova chegada (c4). O cliente fica em fila de espera: Geração aleatória de um tempo entre chegadas:.35445 Tempos Próxima chegada (c5) = 4.283 +.35445 = 5.36728 Registos deste cliente: 57 Um exemplo para simular () 2: 4.43 Um serviço concluído (2). O primeiro cliente da fila começa a ser servido: Geração aleatória de um tempo de serviço:.86829 Tempos Próxima conlusão de serviço = 4.4278 +.86829 = 5.97 Registos deste cliente: Tempo de espera excluíndo serviço: 4.4278 2.9327 =.295 Tempo de espera incluíndo o serviço:.295 +.86829 = 2.9978 58 29

Um exemplo para simular () 59 Um exemplo para simular (2) 6 3

Um exemplo para simular (3) 6 Um exemplo para simular (4) 62 3

Aplicações típicas da simulação oncepção e operação de sistemas de fila de espera Gestão de inventário Estimar a probabilidade de não atraso num projecto oncepção e operação de sistemas de produção oncepção e operação de sistemas distribuidos Análise de risco financeiro istema de saúde 63 32