geradores de números aleatórios

25
IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp Tópico 8 – Geradores de Números Aleatórios 1 Geradores de Números Aleatórios Índice 1 O papel da estatística na engenharia e na ciência .............................................................................. 2 2 Probabilidade .................................................................................................................................... 4 2.1 Os conceitos de experimento, espaço amostral e evento.............................................................. 6 2.2 Axiomas de probabilidade ............................................................................................................ 8 3 O conceito de variável aleatória ...................................................................................................... 15 3.1 Distribuições e variáveis aleatórias discretas .............................................................................. 19 3.2 Distribuições e variáveis aleatórias contínuas............................................................................. 22 3.3 Exemplos de funções densidade de probabilidade...................................................................... 24 3.4 Média e variância da distribuição ............................................................................................... 25 3.5 Momentos ................................................................................................................................. 28 4 Medidas amostrais .......................................................................................................................... 29 5 Geradores de números pseudo-aleatórios em computador ............................................................. 30 6 Pseudo-aleatoriedade em computadores digitais ............................................................................ 31 7 Geradores de números pseudo-aleatórios uniformes ...................................................................... 33 8 Propriedades adicionais de um GNA ................................................................................................ 34 9 Geradores lineares .......................................................................................................................... 35 10 Geradores portáveis ........................................................................................................................ 37 11 Outros geradores ............................................................................................................................ 40 12 Testes para geradores de números pseudo-aleatórios ..................................................................... 41 13 Geradores de Números Pseudo-Aleatórios em Computação Evolutiva ............................................. 43 14 Distribuição normal a partir de uma distribuição uniforme .............................................................. 46 15 Referências ..................................................................................................................................... 46 IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp Tópico 8 – Geradores de Números Aleatórios 2 1 O papel da estatística na engenharia e na ciência As teorias científicas lidam com conceitos, não com a realidade. Embora elas sejam formuladas para corresponder à realidade, esta correspondência é aproximada e a justificativa para todas as conclusões teóricas é baseada em alguma forma de raciocínio indutivo. Athanasios Papoulis Métodos estatísticos fornecem ferramentas importantes para a engenharia, com teor descritivo e analítico para operar com a variabilidade presente nos dados observados. A estatística lida com a coleta, apresentação, análise e uso de dados em tomada de decisão e na solução de problemas. Um estatístico usa as leis fundamentais da probabilidade e da inferência estatística para elaborar conclusões acerca de determinado experimento.

Upload: jaildo-rocha

Post on 21-Dec-2015

30 views

Category:

Documents


4 download

DESCRIPTION

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

TRANSCRIPT

Page 1: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 1

Geradores de Números Aleatórios Índice

1 O papel da estatística na engenharia e na ciência .............................................................................. 2 2 Probabilidade .................................................................................................................................... 4

2.1 Os conceitos de experimento, espaço amostral e evento.............................................................. 6 2.2 Axiomas de probabilidade ............................................................................................................ 8

3 O conceito de variável aleatória ...................................................................................................... 15 3.1 Distribuições e variáveis aleatórias discretas .............................................................................. 19 3.2 Distribuições e variáveis aleatórias contínuas ............................................................................. 22 3.3 Exemplos de funções densidade de probabilidade ...................................................................... 24 3.4 Média e variância da distribuição ............................................................................................... 25 3.5 Momentos ................................................................................................................................. 28

4 Medidas amostrais .......................................................................................................................... 29 5 Geradores de números pseudo-aleatórios em computador ............................................................. 30 6 Pseudo-aleatoriedade em computadores digitais ............................................................................ 31 7 Geradores de números pseudo-aleatórios uniformes ...................................................................... 33 8 Propriedades adicionais de um GNA ................................................................................................ 34 9 Geradores lineares .......................................................................................................................... 35 10 Geradores portáveis ........................................................................................................................ 37 11 Outros geradores ............................................................................................................................ 40 12 Testes para geradores de números pseudo-aleatórios ..................................................................... 41 13 Geradores de Números Pseudo-Aleatórios em Computação Evolutiva ............................................. 43 14 Distribuição normal a partir de uma distribuição uniforme .............................................................. 46 15 Referências ..................................................................................................................................... 46

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 2

1 O papel da estatística na engenharia e na ciência

As teorias científicas lidam com conceitos, não com a realidade. Embora elas

sejam formuladas para corresponder à realidade, esta correspondência é

aproximada e a justificativa para todas as conclusões teóricas é baseada em

alguma forma de raciocínio indutivo.

Athanasios Papoulis

• Métodos estatísticos fornecem ferramentas importantes para a engenharia,

com teor descritivo e analítico para operar com a variabilidade presente nos

dados observados.

• A estatística lida com a coleta, apresentação, análise e uso de dados em

tomada de decisão e na solução de problemas.

• Um estatístico usa as leis fundamentais da probabilidade e da inferência

estatística para elaborar conclusões acerca de determinado experimento.

Page 2: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 3

• Objetivo: Descrever e modelar a variabilidade e tomar decisões na presença de

variabilidade (inferência estatística).

• Fundamento: o modelo deve possuir ao menos um elemento intrinsecamente

aleatório.

• A variabilidade é resultante de mudanças nas condições sob as quais as

observações são feitas, de características do sistema de medidas e do processo

de amostragem.

• Exemplo: Amostras de ganho de um transistor

5,10 / 5,24 / 5,13 / 5,19 / 5,08

! A informação contida nas amostras demonstra de forma conclusiva que o

ganho do transistor é menor que 5,50?

! Quanta confiança pode se ter de que o ganho no transistor está contido no

intervalo [5,00; 5,30]?

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 4

• Estatística inferencial: estimação pontual de parâmetros; estimação de

intervalos de confiança; teste de hipóteses; transferência de conclusões das

amostras para as populações; generalização.

• Estatística descritiva: aplicação de métodos gráficos e numéricos na

organização e apresentação da informação em uma forma sucinta.

2 Probabilidade

• A probabilidade é a linguagem empregada na fundamentação matemática da

inferência estatística. Trata-se de uma disciplina exata e desenvolvida a partir

de um encadeamento lógico de deduções a partir de um conjunto de axiomas

claramente definidos.

• Há uma óbvia quebra de continuidade entre os elementos de probabilidade

apresentados em cursos introdutórios e os conceitos mais elaborados

necessários nas aplicações do dia-a-dia.

Page 3: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 5

• O importante é observar que, quando se aplica a teoria de probabilidade ao

mundo real, ela se mostra eficaz.

• Exemplo 1: As raízes da teoria de probabilidade estão associadas aos jogos de

azar, em Monte Carlo, no século 17.

• Exemplo 2: Parte do sucesso da indústria japonesa é atribuída ao emprego de

métodos estatísticos na produção, gerenciamento e planejamento (não apenas

gerar relatórios, mas extrair conclusões ou realizar inferências).

• Exemplo 3: Prévia Eleitoral (procedimento sistemático para elaboração do

experimento e coleta de dados)

Coleção de todos os indivíduos (população) ↓

Processo de amostragem ↓

Inferência sobre toda a população

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 6

2.1 Os conceitos de experimento, espaço amostral e evento

• Experimento é o termo utilizado para indicar a realização de algo, ou a

observação de algo, que acontece sob certas condições, levando a um

resultado.

• Ocasionalmente, a natureza de um experimento faz com que o seu resultado

seja definido unicamente pelas condições nas quais o experimento é realizado.

• Na prática, todavia, observa-se que muitos experimentos não apresentam a

propriedade de repetitividade, mesmo sob condições supostamente idênticas.

• Este é o caso quando existem fatores que influenciam o resultado, mas que não

são de conhecimento do experimentador ou que o experimentador não pode

controlar e, também, quando os fatores que supostamente estão sob controle,

na verdade não estão.

Page 4: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 7

• O resultado não pode, então, ser predito a partir do conhecimento das

“condições” sob as quais o experimento foi realizado. Neste caso, fala-se do

experimento como sendo um “experimento envolvendo o acaso” ou,

simplesmente, “experimento aleatório”.

• Devido à imprevisibilidade ou ao elemento do acaso no experimento, o tipo de

modelo matemático usual envolvendo equações determinísticas é inadequado

e um novo tipo de estrutura matemática é necessário para representar os

fenômenos de interesse, denominados processos estocásticos.

• Uma vez que o resultado do experimento não é previsível, ele vai ser um

dentre os muitos resultados possíveis.

• O espaço amostral de um experimento aleatório é o conjunto de todos os

resultados possíveis do experimento, sendo geralmente denotado por S.

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 8

• Normalmente, é interessante focalizar a atenção em subconjuntos do espaço

amostral S. Para tanto, define-se um evento como qualquer subconjunto E do

espaço amostral S (E ⊂ S).

2.2 Axiomas de probabilidade

• O ingrediente principal do modelo matemático de um experimento aleatório é

a noção de probabilidade, a qual formaliza o conceito de que alguns eventos

são mais verossímeis do que outros, em termos de suas frequências de

ocorrência relativas.

• Os axiomas de probabilidade permitem a manipulação de combinações de

eventos (eventos compostos).

• Seja S um espaço amostral, seja ε uma classe que comporta todos os possíveis

eventos em S, e seja P uma função de valores reais definida em ε. Então P é

Page 5: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 9

denominada de função de probabilidade e EP é denominada de

probabilidade do evento E se os seguintes axiomas forem válidos:

Axioma 1: Para todo evento E, 10 ≤≤ EP .

O axioma 1 determina que a probabilidade de que o resultado de um experimento

está contido em E é algum número real entre 0 e 1.

Axioma 2: 1=SP .

O axioma 2 determina que, com probabilidade igual a 1, o resultado está contido

no espaço amostral S.

Axioma 3: Para qualquer sequência de eventos mutuamente exclusivos K,, 21 EE

(isto é, eventos para os quais ∅=∩ ji EE quando ji ≠ ),

∑∞

=

=

=11 i

ii

i EPEP U

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 10

• Algumas proposições simples podem ser deduzidas a partir dos axiomas

enumerados acima:

Proposição 1: Dado que E e Ec são eventos sempre mutuamente exclusivos e,

visto que SEE c =∪ , pelos Axiomas 1 e 2 temos que: cc EPEPEEPSP +=∪==1 .

• De forma equivalente, a equação acima pode ser escrita como:

EPEP c −= 1 .

• Em palavras, a proposição 1 afirma que a probabilidade de um evento não

ocorrer é igual a 1 menos a probabilidade do evento ocorrer.

Proposição 2:

FEPFPEPFEP ∩−+=∪ .

Page 6: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 11

• Para deduzir a fórmula para FEP ∪ é necessário lembrar que )( FE∪ pode

ser escrito como a união de dois eventos disjuntos E e )( FE c ∩ . Assim,

utilizando o Axioma 3, temos que:

FEPEP

FEEPFEPc

c

∩+=

∩∪=∪ )(

• Além disto, como )()( FEFEF c ∩∪∩= , obtemos pelo Axioma 3 que:

FEPFEPFP c ∩+∩=

• Ou, de forma equivalente:

FEPFPFEP c ∩−=∩ ,

completando assim a prova de que

FEPFPEPFEP ∩−+=∪ .

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 12

• Esta proposição pode também ser demonstrada utilizando o diagrama de Venn mostrado abaixo.

S

II IIII

FE

• As divisões no diagrama mostram três seções mutuamente exclusivas. Em

palavras, a seção I representa todos os pontos em E que não estão em F (isto é, cFE ∩ ); a seção II representa todos os pontos que estão tanto em E quanto

em F (isto é, FE ∩ ), e a seção III representa todos os pontos em F que não

estão em E (isto é, FE c ∩ ).

Page 7: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 13

• Do diagrama de Venn, observamos que:

IIIIIIII

IIIIII

∪=

∪=

∪∪=∪

FEFE

• Como I, II e III são mutuamente exclusivos, temos pelo Axioma 3 que:

IIIIIIII

IIIIII

PPFPPPEP

PPPFEP

+=

+=

++=∪

• Mostrando que

IIPFPEPFEP −+=∪ .

• Visto que FE ∩=II , temos então:

FEPFPEPFEP ∩−+=∪ ,

que é conhecida como a lei de adição de probabilidades.

• Em palavras, pode ser expressa como:

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 14

A probabilidade do evento E ou do evento F ocorrer é a soma de

suas probabilidades em separado menos a probabilidade de ambos

ocorrerem. No caso dos eventos E e F serem mutuamente

exclusivos, eles não terão pontos em comum e, portanto,

0=∩ FEP . Neste caso, FPEPFEP +=∪ , como já

indicado pelo axioma 3.

• Maiores detalhes sobre definições, axiomas, e exemplos envolvendo teoria de

probabilidade → consultar PAPOULIS (1991, caps. 1 e 2).

• Dentre os conceitos adicionais mais importantes, e que não serão abordados

aqui, estão o de probabilidade condicional e o teorema de Bayes (veja

exemplos 2.9 e 2.11 de PAPOULIS, 1991).

Page 8: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 15

3 O conceito de variável aleatória • Ao se arremessar um dado, é sabido que o valor ξ da face que ficar para cima

vai ser um número entre 1 e 6, mas não é possível predizer este valor.

• Quando uma lâmpada entra em operação, o seu tempo de vida ξ também não

pode ser predito.

• Nesses dois casos, ξ é uma variável aleatória ou estocástica.

• ‘Arremesso de dado’ e ‘Lâmpada em operação’ são experimentos.

• O conjunto {1, 2, 3, 4, 5, 6} e o intervalo real de unidades de tempo [0, +∞)

são os espaços amostrais correspondentes.

• São eventos:

" Número par na face que ficou para cima: E = {2, 4, 6};

" Lâmpada com tempo de vida inferior a 400 unidades de tempo:

E = [0, 400).

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 16

• Logo, uma variável aleatória é uma função que aloca um ponto do espaço

amostral a cada resultado de um experimento aleatório. Dito de outro modo,

uma variável aleatória é uma função associada a um experimento, sendo que a

realização do experimento leva esta variável a assumir um valor dependente

do acaso, mas pertencente ao respectivo espaço amostral.

• Cada vez que um experimento é realizado, o resultado obtido indica a

ocorrência ou não de um determinado evento (subconjunto do espaço

amostral).

• Formalização do conceito: Uma variável aleatória ξ é uma função com as

seguintes propriedades:

" ξ assume valores no espaço amostral S de um experimento;

" Para todo evento E ⊂ S, a probabilidade de que ξ assuma um valor x ∈ E após a realização do experimento, dada por P⟨x ∈ E⟩ = P⟨E⟩, é bem definida (embora possa ser desconhecida).

Page 9: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 17

• Como o evento pode ser qualquer, é possível considerar eventos do tipo: E ≡ x,

onde x ∈ S. Logo, temos que, para todo x ∈ S, a probabilidade de que ξ valha

x após a realização do experimento, dada por P⟨ξ = x⟩ = P⟨x⟩, é bem definida.

• Considerando que as probabilidades mencionadas acima são bem definidas,

para toda variável aleatória, então é sempre possível obter uma função

distribuição de probabilidade definida em todo o espaço amostral. Geralmente,

se emprega a função distribuição cumulativa de probabilidade. Para tal, seja

x ∈ S e suponha que E(z) = {x | x ≤ z}. Então, a função distribuição cumulativa

de probabilidade associada à variável aleatória ξ é dada na forma:

zxxPzEPzExPzF ≤==∈=ξ |)()()(

• Apesar desta definição de função distribuição de probabilidade ser muito

genérica (atende a qualquer tipo de variável aleatória), apenas uma quantidade

reduzida de tipos de distribuição são verificados em aplicações práticas.

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 18

• Neste ponto do texto, o mais importante é dividir estes poucos tipos em duas

classes:

1. Distribuições discretas: ocorrem em experimentos que requerem

contagem. Exemplos: pessoas com menos de 30 anos, mortes por câncer,

produtos com defeito.

2. Distribuições contínuas: ocorrem em experimentos que requerem

medidas. Exemplos: tensão elétrica, pressão sanguínea, vazão de rio.

• Para cada uma das duas classes, a respectiva função distribuição de

probabilidade )(⋅ξF terá sempre associada a si:

" Uma função massa de probabilidade )(⋅ξf , no caso discreto;

" Uma função densidade de probabilidade )(⋅ξf , no caso contínuo.

• Deste modo, o conhecimento do comportamento de uma das funções, )(⋅ξF ou )(⋅ξf , em todo o espaço amostral já é suficiente para se obter a outra função.

Page 10: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 19

3.1 Distribuições e variáveis aleatórias discretas

• Uma variável aleatória ξ e sua distribuição de probabilidade são discretas se o

espaço amostral (onde ξ assume valores) contém apenas um número finito de

elementos ou um número infinito, mas contável, de elementos.

• Neste caso, a função massa de probabilidade assume a forma:

==

=ξ alhures0...),2,1( se

)(jxzp

zf jj

e a correspondente função distribuição de probabilidade é dada por:

∑ ∑≤ ≤

ξξ ==

zxj

zxj

jj

j j

pxfzF que tal

que tal

)()(

onde xj, j=1,2,..., são elementos do espaço amostral.

• Exemplo: No caso de um dado não-viciado, a variável aleatória ξ, representando a face que ficar para cima após o arremesso do dado, tem as seguintes funções massa e distribuição de probabilidade:

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 20

f ξ ( z )

1 3 4 5 62

16

F ξ ( z )

z1 3 4 5 62

12

1

z

Page 11: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 21

• Em muitas aplicações, existe o interesse em medidas de probabilidade do tipo

rq xxP ≤ξ< , ou seja, a probabilidade de que ξ assuma qualquer valor no

intervalo rq xxx ≤< , onde xq e xr não precisam necessariamente ser

elementos de S. Da definição zxxPzF ≤=ξ |)( de função distribuição de

probabilidade, pode-se deduzir que:

)()( qrrq xFxFxxP ξξ −=≤ξ< .

• Como a variável aleatória ξ é discreta, resulta:

∑≤<

=≤ξ<

rjq xxxj

jrq pxxP que tal

.

• Uma consequência direta é o resultado a seguir:

1 que tal

=∑

∈Sxj

j

j

p

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 22

3.2 Distribuições e variáveis aleatórias contínuas

• Uma variável aleatória ξ e sua distribuição de probabilidade são contínuas se o

espaço amostral (onde ξ assume valores) contém um número infinito e

incontável de elementos.

• Neste caso, valem as seguintes relações entre as funções distribuição )(⋅ξF e densidade )(⋅ξf de probabilidade:

dzzdF

zf)(

)( ξξ = e ∫ ∞− ξξ =≤=

z dxxfzxxPzF )(|)(

• Como no caso discreto, existe o interesse em medidas de probabilidade do tipo

rq xxP ≤ξ< , ou seja, a probabilidade de que ξ assuma qualquer valor no

intervalo rq xxx ≤< , onde xq e xr não precisam necessariamente ser

elementos de S. Da definição zxxPzF ≤=ξ |)( de função distribuição de

probabilidade, pode-se deduzir que:

Page 12: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 23

)()( qrrq xFxFxxP ξξ −=≤ξ< .

• Para uma variável aleatória ξ contínua, resulta: ∫ ξ=≤ξ< r

q

x

xrq dxxfxxP )(

• Uma consequência direta é o resultado: 1)( =∫∞+

∞− ξ dxxf .

• Exemplo: Uma variável aleatória ξ com distribuição normal, média 0 e

variância 1, tem como funções densidade e distribuição de probabilidade:

-3 -2 -1 0 1 2 30

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

z

f ξ(z)

Função densidade de probabilidade

-3 -2 -1 0 1 2 30

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

z

F ξ(z

)

Função distribuição de probabilidade

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 24

3.3 Exemplos de funções densidade de probabilidade

• Normal: uma variável aleatória contínua ξ é chamada normal ou gaussiana se

sua densidade de probabilidade pode ser expressa na forma:

2

2

2)(

21)( σ

η−−

ξ πσ=

z

ezf

• Uniforme: uma variável aleatória contínua ξ é chamada uniforme no intervalo

[x1,x2] se sua densidade de probabilidade pode ser expressa na forma:

≤≤

−=ξ

alhures0

se1)( 21

12xzx

xxzf

• Binomial: uma variável aleatória discreta ξ tem uma distribuição binomial de

ordem n se sua densidade de probabilidade pode ser expressa na forma:

∑=

−ξ −δ

=

n

k

knk kzqpkn

zf0

)()(

Page 13: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 25

• Exemplos: Sabendo que a probabilidade de um evento A ocorrer em um dado

experimento é p, a probabilidade deste evento A ocorrer k vezes em n ≥ k

experimentos (sob as mesmas condições) é dada por:

( ) knk ppkn

kAP −−

= 1 vezesocorrer

e a probabilidade deste evento A ocorrer até k vezes em n ≥ k experimentos

(sob as mesmas condições) é dada por:

( )∑=

−−

=

k

r

rnr pprn

kAP0

1 vezes atéocorrer

3.4 Média e variância da distribuição

• A função distribuição de probabilidade )(⋅ξF , ou equivalentemente a função

massa ou densidade de probabilidade )(⋅ξf , determinam completamente uma

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 26

variável aleatória. Sendo assim, parâmetros e propriedades (como simetria) da

variável aleatória podem ser obtidos a partir destas funções de probabilidade.

• Dado o tipo de distribuição e na presença de simetria, a média e a variância

passam a descrever completamente a variável aleatória.

• Definição 1: O valor médio ou a média de uma variável aleatória ξ é dado por:

" ∑ ξ=ξj

jj xfx )( , para o caso discreto (o somatório é sobre todos os

valores possíveis de j);

" ∫∞+

∞− ξ=ξ dxxxf )( , para o caso contínuo.

• A média é também conhecida como esperança matemática: E[ξ] = ξ .

• Por hipótese, é suposto que a série (caso discreto) converge absolutamente e

que a integral (caso contínuo) existe (tem um valor finito).

• Definição 2: A distribuição é dita ser simétrica em relação a um valor c se

)()( zcfzcf −=+ .

Page 14: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 27

• Teorema 1: Se uma distribuição é simétrica em relação a um valor c e tem

média ξ , então ξ = c.

• Definição 3: A variância de uma distribuição é denotada por σ2, sendo dada por:

" ( )∑ ξξ−=σj

jj xfx )(22 , para o caso discreto (o somatório é sobre todos

os valores possíveis de j);

" ( )∫∞+

∞− ξξ−=σ dxxfx )(22 , para o caso contínuo.

• Por hipótese, é suposto que a série (caso discreto) converge absolutamente e

que a integral (caso contínuo) existe (tem um valor finito).

• Com exceção do caso em que f(z) = 1 em um único ponto e se anula alhures,

para o qual resulta σ2 = 0, em todos os outros casos, sempre vai ocorrer σ2 > 0.

• Definição 4: A raiz quadrada da variância é denominada desvio-padrão, tendo

por notação σ.

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 28

• Como consequência, a variável aleatória

σξ−ξ

=ξN

tem média zero e variância unitária.

3.5 Momentos

• Definição 5: Para qualquer variável aleatória ξ e qualquer função contínua

g(⋅): ℜ → ℜ, a esperança matemática de g(ξ) é dada por:

" [ ] ∑ ξ=ξj

jj xfxggE )()()( , para o caso discreto (o somatório é sobre

todos os valores possíveis de j);

" [ ] ∫∞+

∞− ξ=ξ dxxfxggE )()()( , para o caso contínuo.

• Tomando ( ) kg ξ=ξ , k = 1, 2, ..., as esperanças matemáticas acima

representam o k-ésimo momento de ξ.

Page 15: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 29

• Tomando ( ) ( )kg ξ−ξ=ξ , k = 1, 2, ..., as esperanças matemáticas acima

representam o k-ésimo momento central de ξ.

• Lembre-se que o operador esperança matemática é linear, ou seja:

" [ ] [ ] [ ]2121 xExExxE +=+ ;

" [ ] [ ]xExE α=α , com α determinístico e constante.

4 Medidas amostrais

• Média amostral (N amostras): ∑=

=N

kkx

Nx

1

1

• Variância amostral: ( )∑=

−−

=σN

kk xx

N 1

22

11

• Desvio-padrão amostral: ( )∑=

−−

=σN

kk xx

N 1

2

11

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 30

• Covariância amostral: ( )( )∑=

−−−

=σN

kjjkiikij xxxx

N 111

• Coeficiente de correlação amostral: ji

ijijr

σσ

σ=

5 Geradores de números pseudo-aleatórios em computador

• Como utilizar o computador digital, a mais precisa e determinística dentre

todas as máquinas concebidas pela mente humana, para produzir números

aleatórios?

• Exploração do nível elevado de redundância: computadores digitais executam

automaticamente, a cada passo do processo de computação, correções da

trajetória de seu estado físico por meio da representação binária do estado

interno de seus componentes.

Page 16: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 31

• Possíveis implicações: vantagens e desvantagens da computação digital.

• Visto que qualquer programa vai produzir uma saída inteiramente previsível, a

geração de números aleatórios por parte de computadores digitais representa

uma impossibilidade conceitual.

" Sequências geradas por computador digital: pseudo-aleatórias;

" Saídas de processos físicos intrinsecamente aleatórios: aleatórias.

Exemplos: Arremesso de um dado, movimento browniano, etc.

• Será que Deus joga dados? [STEWART, 1989]

6 Pseudo-aleatoriedade em computadores digitais

• Poucos livros devotados ao estudo de métodos numéricos para implementação

computacional abordam números aleatórios [DAHLQUIST & BJORCK, 1974

(cap. 4); FORSYTHE et al., 1977 (cap. 10)].

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 32

• Definição prática (incompleta) de pseudo-aleatoriedade no contexto de

sequências geradas por computador digital: em relação aos programas

computacionais que utilizam suas saídas, um programa determinístico que

produz sequências pseudo-aleatórias deve ser diferente em todos os aspectos

mensuráveis e estatisticamente não-correlacionado.

• Dito de outra forma, dados dois geradores de números pseudo-aleatórios, ao

acoplá-los independentemente a um programa específico de aplicação, deve-se

obter o mesmo resultado estatístico. Caso contrário, pelo menos um dos

geradores é inadequado para a aplicação em questão.

• Conclusão: O gerador deve ser tão aleatório quanto for requerido pela

aplicação.

• Desse modo, um bom gerador para uma dada aplicação pode falhar

espetacularmente em outras aplicações.

Page 17: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 33

• Felizmente, existem testes estatísticos que contribuem no sentido de avaliar a

adequação de um dado gerador para cada classe de aplicações [L’ECUYER,

1992], embora uma aplicação específica possa conduzir um gerador a

expressar seus “pontos fracos”.

7 Geradores de números pseudo-aleatórios uniformes

• Conforme definido por L’ECUYER [1994], um gerador de números pseudo-

aleatórios uniformes em computadores digitais tem um estado que evolui em

um espaço S, composto por um número finito de estados, de acordo com uma

recorrência na forma:

sn = f(sn−1), n ≥ 1,

sendo que s0 ∈ S é denominada a semente, e f: S → S, é a função de transição.

No n-ésimo passo, a saída do gerador é dada por un = g(sn), com g: S → [0,1]

sendo a função de saída.

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 34

• A sequência de saída do gerador é, portanto, {un, n ≥ 0}.

• O espaço de saída poderia ser mais geral, mas é suposto aqui o intervalo [0,1].

• Como S é finito, a sequência {un, n ≥ 0} deve ser periódica, possivelmente

depois de transcorrido um transitório inicial.

• Se ρ for o período da sequência {un, n ≥ 0}, então é desejável tomar ρ o mais

próximo possível da cardinalidade de S, para evitar desperdício de memória e

para permitir a aplicação do gerador em casos de demanda elevada, ou seja, em

situações em que o gerador é acionado com muita frequência.

• Para sequências binárias, com un tendo b bits, o valor ótimo para o período é

ρ = 2b−1.

8 Propriedades adicionais de um GNA • Além do atendimento das condições de aleatoriedade, é importante que um

gerador de números pseudo-aleatórios em computadores digitais apresente:

Page 18: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 35

# repetitividade;

# portabilidade;

# custo computacional baixo por geração;

# simplicidade de implementação.

9 Geradores lineares • São geralmente os modelos fornecidos pelos sistemas computacionais.

• Envolvem a geração de uma sequência I1, I2, I3, ... de inteiros entre 0 e m−1

pela relação de recorrência

I aI c mj j+ = +1 ( ) mod , j=1,2,...

• m é denominado módulo, a e c são inteiros positivos denominados

multiplicador e incremento, respectivamente.

• A recorrência vai certamente produzir, para algum j = p ≤ m, Ij = Ik (k < j), ou

seja, ela vai ter um período p ≤ m.

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 36

• Se o período for p = m, todo inteiro entre 0 e m−1 vai ocorrer em alguma das

próximas m iterações, fazendo com que a escolha do valor inicial I0 da

recorrência (semente da geração pseudo-aleatória) não influa de forma

significativa no resultado estatístico associado a sequências longas.

• Vantagem: é um método de geração muito rápido, simples de implementar e

repetitivo para uma mesma máquina.

• Desvantagens: não é portável, está preso a uma correlação sequencial e os bits

menos significativos são “menos aleatórios” que os bits mais significativos.

• Exemplo 1: Para gerar números inteiros pseudo-aleatórios entre 0 e 9,

recomenda-se o uso dos bits mais significativos (suponha RAND_MAX =

32767):

use I(j) = (int) (10.0*rand()/(RAND_MAX+1.0));

no lugar de I(j) = rand()%10;

Page 19: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 37

• Exemplo 2: Embora existam procedimentos bem menos custosos para a

geração de sequências pseudo-aleatórias de bits [PRESS et al., 1992 (cap. 7)], é

possível empregar a ideia da amostragem tipo roullete wheel: divide-se a roleta

ao meio, associando cada metade a um bit. Mais uma vez estão sendo

considerados os bits mais significativos.

10 Geradores portáveis

• Gerador implementável em qualquer linguagem de programação e em qualquer

máquina, produzindo sempre o mesmo comportamento estatístico e

apresentando, para uma mesma semente, a mesma sequência de números.

• Há evidências, teóricas e empíricas, de que tomando c = 0 na recursão

I aI c mj j+ = +1 ( ) mod , j=1,2,...

produz-se resultados tão bons quanto aqueles fornecidos pelos geradores

lineares com c ≠ 0, se for feita uma escolha cuidadosa para a e m.

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 38

• Uma escolha possível é a = 75 = 16807 e m = 231−1 = 2147483647.

• No entanto, não é possível implementar a recursão (com c = 0) com estes

valores de a e m em qualquer linguagem de alto nível, já que o produto de a

por m−1 excede o maior valor admitido para um inteiro de 32 bits.

• Alternativa 1: Implementação em linguagem de montagem, empregando

registradores de 64 bits. Desvantagem: esta implementação não é portável.

• Alternativa 2: Felizmente, existe um algoritmo que permite obter o resultado

do produto de dois inteiros de 32 bits, módulo uma constante de 32 bits, sem

utilizar qualquer valor intermediário maior que 32 bits. Este algoritmo está

baseado na seguinte fatoração para m:

( )m a fix ma

m a aq r= ⋅

+ = +mod

Page 20: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 39

onde fix ma

fornece a parte inteira da razão ma

. Para um inteiro z tal que

0 < z < m−1, pode ser mostrado que, tomando r < q, tanto ( )a z q⋅ mod quanto

r fix zq

assumem valores inteiros no conjunto { }0 1,...,m− , e que

( )

( )az m

a z q r fix zq

a z q r fix zq

mmod

mod

mod=

− ⋅

− ⋅+

se 0

se < 0

• Sugestões para os valores de m, a, q e r:

m a q r

231−1 16807 127773 2836 231−1 48271 44488 3399 231−1 69621 30845 23902

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 40

• O período destes três geradores portáveis é 231−2 = 2.147.483.646.

• Observação: Escalonar para o intervalo [0,1].

• Repare que a semente 0 nunca deve ser utilizada, da mesma forma que o valor

0 não vai ser produzido para qualquer semente diferente de 0.

• Dentre os geradores simples, este é o mais recomendado para aplicação,

embora possa ainda ser aperfeiçoado [PRESS et al., 1992 (cap. 7)].

11 Outros geradores

• Lineares multivariáveis: I a I a I a I mj j j k j k+ − −= + + +1 0 1 1( ) modL

• Lineares multivariáveis com incremento pseudo-aleatório:

I a I a I a I c m

c fixa I a I a I c

m

j j j k j k j

jj j k j k j

+ − −

+− −

= + + + +

=+ + + +

1 0 1 1

10 1 1

( ) modL

L

Page 21: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 41

• Geradores não-lineares: I I mj j+ =12( ) mod

• Combinação de geradores [L’ECUYER, 1996]

12 Testes para geradores de números pseudo-aleatórios

• Para uma discussão mais aprofundada do que vem a ser aleatoriedade e de

como detectá-la, veja KNUTH [1981].

• De acordo com Kolmogorov, uma sequência infinita de bits é aleatória se ela

não puder ser descrita por uma sequência menor que ela mesma. ←

Impossibilidade prática

• Ser diferente × Ser não-distinguível.

• Em princípio, todos os procedimentos de teste supõem que um gerador de

números pseudo-aleatórios em um computador digital é uma função

determinística que produz uma sequência de números, os quais emulam uma

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 42

variável aleatória definida como um processo de amostragem i.i.d.

(independent and identically distributed) que resulta na distribuição U(0,1)

(distribuição uniforme no intervalo [0,1]).

• Duas classes de testes são comumente empregadas [L’ECUYER, 1992]:

1. Testes teóricos: são específicos para cada classe de geradores e se concentram

na estrutura intrínseca de cada gerador para derivar características de

comportamento da sequência de pontos, ao longo de todo um período.

2. Testes empíricos: tentam encontrar evidências estatísticas contra a hipótese

nula: “A sequência é obtida a partir de um processo de amostragem i.i.d. da

distribuição U(0,1)”.

• O que pode ser dito a respeito de um gerador de números pseudo-aleatórios

que passou por todos os testes implementados?

• Formalmente, nada fica demonstrado, mas é possível aumentar a confiança nos

resultados obtidos com a utilização deste gerador.

Page 22: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 43

13 Geradores de Números Pseudo-Aleatórios em Computação Evolutiva

• Valores aleatórios são requeridos em praticamente todas as etapas de um

algoritmo evolutivo:

# Inicialização da população;

# Seleção de indivíduos;

# Definição de pontos de corte para crossover;

# Definição de genes que sofrerão mutação;

# Definição de um dentre mais de dois alelos candidatos em operações

de mutação associadas a atributos descritíveis por um alfabeto finito;

# Definição de um dentre vários operadores alternativos;

# Argumento de operadores genéticos mais elaborados (mutação em

ponto flutuante); etc.

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 44

• Estudos recentes sugerem que a escolha do gerador de números pseudo-

aleatórios pode afetar o desempenho de um algoritmo evolutivo, embora de

forma não-intuitiva (CANTÚ-PAZ, 2002; DAIDA et al., 1999; MEYSENBURG,

1997; MEYSENBURG & FOSTER, 1999a; MEYSENBURG & FOSTER, 1999b;

MEYSENBURG et al., 2002).

• Também é sabido que pequenas modificações no gerador podem causar

grande variação na qualidade do resultado do processo evolutivo. Por

exemplo, alterando-se a semente do gerador.

• Para tanto, testes específicos de qualidade foram definidos de modo a explorar

diretamente a forma como um algoritmo evolutivo utiliza um gerador de

números pseudo-aleatórios.

• Estes testes específicos se mostraram necessários, pois os testes convencionais

não apresentam correlação significativa com os resultados obtidos.

Page 23: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 45

• Em outras palavras, geradores considerados de baixa qualidade conduzem, em

alguns casos, a melhores resultados junto ao processo evolutivo quando

comparados a geradores de melhor qualidade (avaliados segundo testes

convencionais).

• Dentre todos os geradores de números pseudo-aleatórios disponíveis, junto à

comunidade de computação evolutiva o Mersenne Twister (MT) é o mais

aceito (MATSUMOTO & NISHIMURA, 1998).

• Cabe destacar também a proposta de MARSAGLIA (2003): Complimentary-

Multiply-With-Carry (CMWC).

• Também é possível operar com bases de dados que contêm sequências

binárias puramente aleatórias, que podem ser encontradas em

⟨www.random.org⟩.

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 46

14 Distribuição normal a partir de uma distribuição uniforme

• Dispondo de um gerador com distribuição uniforme, uma distribuição normal

de média µ e variância σ2, ( )2σµ ,~ Nx , pode ser obtida na forma:

( ) ( )21 2coslog2 uux e π−σ+µ=

ou então

( ) ( )21 2senlog2 uux e π−σ+µ=

com ( )10, 21 ,~Uuu . Esta é a bem conhecida transformação de Box-Muller

(BOX & MULLER, 1958).

15 Referências BÄCK, T., FOGEL, D.B. & MICHALEWICZ, Z. (eds.) “Evolutionary Computation 2: Advanced Algorithms

and Operators, Chapter 24: Efficient implementation of algorithms”, Institute of Physics Publishing, 2000.

BOX, G.E.P. & MULLER, M.E. “A note on the generation of random normal deviates”, The Annals of Mathematical Statistics, vol. 29, no. 2, pp. 610–611, 1958.

Page 24: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 47

BULMER, M.G. “Principles of Statistics”, Dover, 1979.

CANTÚ-PAZ, E. “On Random Numbers and the Performance of Genetic Algorithms”, Proceedings of the Genetic and Evolutionary Computation Conference (GECCO’02), vol. 1, pp. 311-318, Morgan Kaufmann Publishers, 2002.

DAHLQUIST, G. & BJORCK, A. “Numerical Methods”, Prentice-Hall, 1974.

DAIDA, J.M., AMPY, D.S., RATANASAVETAVADHANA, M., LI, H. & CHAUDHRI, O.A. “Challenges with verification, repeatability, and meaningful comparison in genetic programming: Gibson’s magic” in Banzhaf, W., Daida, J., Eiben, A.E., Garzon, M.H., Honavar, V., Jakiela, M. & Smith, R.E. (eds.) Proceedings of the Genetic and Evolutionary Computation Conference (GECCO’99), vol. 2, pp. 1851-1858, Morgan Kaufmann Publishers, 1999.

DOS REIS, S.F. “Introdução ao Estudo de Probabilidade”, Notas de Aula do Curso de Genética Populacional Teórica, IB/Unicamp, 2001.

EVANS, D.H. “Probability and Its Applications for Engineers”, ASQC Quality Press, 1992.

FORSYTHE, G.E., MALCOLM, M.A. & MOLER, C.B. “Computer Methods for Mathematical Computations”, Prentice-Hall, 1977.

KNUTH, D.E. “The Art of Computer Programming: Seminumerical Algorithms”, Addison-Wesley, Vol. 2, 2nd edition, 1981.

KREYSZIG, E. “Advanced Engineering Mathematics”, 7th edition, John Wiley & Sons, 1993.

L’ECUYER, P. “Testing random number generators”, Proceedings of the 1992 Winter Simulation Conference, IEEE Press, pp. 305-313, 1992.

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 48

L’ECUYER, P. “Uniform random number generation”, Annals of Operations Research, vol. 53, pp. 77-120, 1994.

L’ECUYER, P. “Combined multiple recursive generators”, Operations Research, vol. 44, no. 5, pp. 816-822, 1996.

LINDGREN, B.D. “Statistical Theory”, Macmillan Publishing Company, 1976.

LIPSCHUTZ, S. “Theory and Problems of Probability”, McGraw-Hill Book Company, 1965.

MARDIA, K.V., KENT, J.T. & BIBBY, J.M. “Multivariate Analysis”, Academic Press, 1979.

MARSAGLIA, G. “Random number generators”, Journal of Modern Applied Statistical Methods, vol. 2, no. 1, pp. 2-13, 2003.

MATSUMOTO, M. & NISHIMURA, T. “Mersenne twister: A 623-dimensionally equidistributed uniform pseudorandom number generator”, ACM Transactions on Modeling and Computer Simulation, vol. 8, no. 1, pp. 3-30, 1998.

MEYSENBURG, M.M. “The effect of pseudo-random number generator quality on the performance of a simple genetic algorithm”, Master’s Thesis, University of Idaho, 1997.

MEYSENBURG, M.M. & FOSTER, J.A. “Random generator quality and GP performance”, in Banzhaf, W., Daida, J., Eiben, A.E., Garzon, M.H., Honavar, V., Jakiela, M. & Smith, R.E. (eds.) Proceedings of the Genetic and Evolutionary Computation Conference (GECCO’99), vol. 2, pp. 1121-1126, Morgan Kaufmann Publishers, 1999a.

MEYSENBURG, M.M. & FOSTER, J.A. “Randomness and GA performance revisited”, in Banzhaf, W., Daida, J., Eiben, A.E., Garzon, M.H., Honavar, V., Jakiela, M. & Smith, R.E. (eds.) Proceedings of

Page 25: Geradores de Números Aleatórios

IA707 - Prof. Fernando J. Von Zuben DCA/FEEC/Unicamp

Tópico 8 – Geradores de Números Aleatórios 49

the Genetic and Evolutionary Computation Conference (GECCO’99), vol. 1, pp. 425-432, Morgan Kaufmann Publishers, 1999b.

MEYSENBURG, M.M., HOELTING, D., MCELVAIN, D. & FOSTER, J.A. “How Random Generator Quality Impacts Genetic Algorithm Performance”, Proceedings of the Genetic and Evolutionary Computation Conference (GECCO’02), vol. 1, pp. 480-483, Morgan Kaufmann Publishers, 2002.

MONTGOMERY, D.C. & RUNGER, G.C. “Applied Statistics and Probability for Engineers”, John Wiley & Sons, 1994.

MOOD, A.M. & GRAYBILL, F.A. “Introduction to the Theory of Statistics”, McGraw-Hill Book Company, 1963.

PAPOULIS, A. “Probability, Random Variables, and Stochastic Processes”, Third Edition, McGraw-Hill, 1991.

PRESS, W.H., TEUKOLSKY, S.A., VETTERLING, W.T. & FLANNERY, B.P. “Numerical Recipes in C - The Art of Scientific Computing”, Cambridge University Press, 2nd edition, 1992.

ROSS, S. “A First Course in Probability”, Macmillan Publishing Company, 1984.

STEWART, I. “Does God Play Dice? The New Mathematics of Chaos”, London: Basil Blackwell, 1989.

WALPOLE, R.E. & MYERS, R.H. “Probability and Statistics for Engineers and Scientists”, Fifth Edition, Macmillan Publishing Company, 1993.