CADASTRE-SE
Temos Uma versão desta Revista Especificamente para SmartPhone
Mais Enxuta: Somente Vídeo Aulas e EVENTOS!
Music Player
l
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