top of page

SIMULAÇÃO DE SISTEMAS

Disciplina: Método Monte Carlo

(GERAÇÃO DE NÚMEROS ALEATÓRIOS)

  

 

 

 

 

 

Curso (Continuação...)

 

O MÉTODO MONTE CARLO - GERAÇÃO DE NÚMEROS ELEATÓRIOS

A realização da Simulação Monte Carlo requer a geração sistemática de Eventos Aleatórios, segundo certa Distribuição de Probabilidades. No exemplo da Bolsa de Valores, a simulação foi efetuada por um processo manual com ajuda de duas moedas. Os métodos manuais são trabalhosos e não muito práticos, salvo para fins ilustrativos em sala de aula. Geralmente, requerem artifícios tais como: roletas; embaralhamento de cartas; bolas em uma urna; lançamento  de dados ou moedas; e etc.

 

Existem outras formas mais interessantes de se realizar a geração dos eventos aleatórios, como o uso de tabelas ou por métodos computacionais.

 

As tabelas de números aleatórios estão à disposição na literatura. Como exemplo, a tabela publicada pela Rand Corporation [5] apresenta um milhão de números gerados aleatoriamente segundo uma Distribuição de Probabilidades Uniforme. No Apêndice é apresentada uma tabela contendo alguns destes números. Estes números aleatórios foram gerados recorrendo-se a algum processo físico aleatório (corrente elétrica em um circuito, no caso da Rand Corporation) e são considerados  como números verdadeiramente aleatórios. O problema de se usar tabelas de números aleatórios é fazê-las úteis em um programa de computador. Para usar as tabelas é preciso registrar os números aleatórios em dispositivos de armazenamento de dados. Deve ser um processo sem grandes dificuldades atualmente¹ bem como chamar (ou buscar) um número aleatório ali armazenado.

O processo mais comum de se obter números aleatórios é o de geração de número pseudo-aleatórios, através de uma Rotina Computacional. Uma sequência de números pseudo-aleatórios não é verdadeiramente aleatória, pois é gerada a partir de um procedimento matemático totalmente Determinístico. Entretanto, podem-se utilizar os números assim gerados, desde que os mesmos passem por uma série de testes estatísticos para afirmar a aleatoriedade dos mesmos. A sequência de números pseudo-aleatórios poderá, eventualmente (ter uma probabilidade de...), ser periódica, isto é, repetir-se depois de certo número de valores gerados. Esta periodicidade não apresenta maiores problemas, desde que o ciclo seja suficientemente grande.

 

Um dos processos mais difundidos para geração de números pseudo-aleatórios é o Método da Congruência Multiplicativa, cuja expressão é apresentada a seguir:

 

                                                                  Xn+1 =k . Xn mod m                                          (A)

 

onde k e m são inteiros positivos tal que k<m. A equação (A) supõe que o número aleatório Xn+1 seja gerado a partir do número aleatório Xn, e que estes números aleatórios sejam o Resto da Divisão de k . Xn por m.

 

No caso de um Computador Binário, recomenda-se que m seja o maior número inteiro positivo que pode ser armazenado na memória², isto é,   

                    , que X0 seja um número ímpar e que k=8t+3, para algum t inteiro, Por exemplo, seja:

 

                                                                    

                                            

                                          k=8 x 2047 + 3=16379;                                                     (B)

 

                                          X0=12741.

 

Então:

                                          X1=16379 x 12741 mod 3267=24583;

                                                    X2=16379 x 24583 mod 3267=  4061;

                                                    X3=16379 x   4061 mod 3267=30876;

                                                    X4=16379 x 30876 mod 3267=24893; 

                                                    X5 =16379 x 24893 mod 3267=  2666; 

                                                    .

                                                    .

                                          E assim, sucessivamente.   

 

Com ajuda dos números aleatórios (ou pseudo-aleatórios), a tabela de geração de eventos aleatórios poderia ser sbstiuida pela tabela apresentada a seguir:

(1)

Comentários da ensinoeinformacao.com:

Lembrando que este texto data de 1989 onde o armazenamento de dados era feito em discos e mais em fitas magnéticas: no caso de disco, tanto o armazenamento como a busca por tais números até que, tirando o aspecto da CAPACIDADE DE ARMAZENAMENTO, não havia muitos problemas; já as fitas magnéticas apresentavam problemas quanto a busca - o primeiro dado que entrava era o último a sair, tratando-se de uma Fila do tipo FILO "First In, Last Out").

 

_______________________

 

(2)

"No caso de um Computador Binário, recomenda-se que m seja o maior número inteiro positivo que pode ser armazenado na memória".

 

Esta recomendação como fica nos dias atuais onde um Inteiro em Bytes (Sistema Binário, que seja) não é mais limitado ao valor que era em 1989? Qual era mesmo o maior valor de um "INTEGER"?

 

CONCEITOS BÁSICOS  (Linguagem Pascal - Manual do Usuário), Ano 1971:

VARIÁVEIS NUMÉRICAS :

integer - Números inteiros entre -32768 e 32767.

real - Números reais de 11 algarismos significativos.

byte - Números inteiros entre 0 e 255.

_______________________

 

 

A Expressão em (A) é denominada "Resto Módulo m" que define o que em ESTRUTURAS ALGÉBRICAS (ou simplesmente ÁLGEBRA) se conhece por RELAÇÃO DE EQUIVALÊNCIA. Assim, têm-se as Classes de Equivalência (ou Congruência, como se queira).

 

Exemplo: Resto Módulo 3 define 3 (três) Classes de Equivalência, quais sejam:

OBSERVAÇÃO: A Relação de Equivalência é definida como: o número inteiro a está relacionado com número inteiro b se, e somente se, os Restos da Divisão de a por 3 e b por 3 são iguais. É um Teorema: Toda Relação de Equivalência induz uma Partição no Conjunto considerado (e Vice e Versa!), no caso o Conjunto dos Números Inteiros (Z).

 

Exemplos:    6 ÷ 3=2 + 0 (0 é o Resto), isto é, 6=2 x 3 + 0 (0 é o Resto);

                      7 ÷ 3=2 + 1 (1 é o Resto), isto é, 7=2 x 3 + 1 (1 é o Resto);

                      8 ÷ 3=2 + 2 (2 é o Resto), isto é, 8=2 x 3 + 2 (2 é o Resto);

                      5 ÷ 3=1 + 2 (2 é o Resto), isto é, 5=1 x 3 + 2 (2 é o Resto).

 

Em ÁLGEBRA (MATEMÁTICA PURA) falaremos com mais intenside sobre Z3 e mais geralmente sobre Zn. Veremos que Zn constitui um Grupo (Aditivo) e que Zn para n número PRIMO constitui um Grupo (Multiplicativo) se, e  somente se, n é primo (Teorema!).

  A partir de 22 Set de 2018

Você é o Visitante de Número

bottom of page