Matrizes e Imagens Digitais- Dirce Uesu Pesco e Humberto José Bortolossi

Full text

(1)

umeros (Pseudo) Aleat´

orios, Probabilidade

Geom´

etrica, M´

etodos de Monte Carlo e

Estereologia

Humberto Jos´e Bortolossi

Instituto de Matem´atica e Estat´ıstica Universidade Federal Fluminense

1

umeros (pseudo) aleat´

orios

Muitos jogos de computador realizam a¸c˜oes que, em princ´ıpio, parecem ser aleat´orias: embaralhar as cartas no jogo paciˆencia, distribuir as minas no jogo campo minado, lan¸car dados em um jogo de RPG (Role Playing Game), etc. Todas estas a¸c˜oes s˜ao programadas a partir da suposta capacidade do com-putador de gerar n´umeros aleat´orios. Contudo, a maioria dos computadores digitais dom´esticos atuais n˜ao geram n´umeros aleat´orios. O que estes computadores fazem ´e usar um algoritmo para produzir n´umeros (denominadospseudoaleat´orios) que “simulam” o comportamento de n´umeros aleat´orios.

Um dos algoritmos mais simples para se gerar n´umeros pseudoaleat´orios (e ainda muito usado em v´arios programas computacionais) ´e o assim denominado gerador congruente linear (GCL), apresentado por D. H. Lehmer em 1949: considere n´umeros inteiros m, a, c e s tais que m > 0, 0 ≤ a < m e 0≤s < m. Escrevendo x0 =s, defina recursivamente, para cada inteiro n≥0,

xn+1 = (a xn+c) mod m,

isto ´e,xn+1 ´e o resto da divis˜ao dea xn+cporm. Por exemplo, se m= 10,a= 11, c= 3 e x0 =s = 3,

ent˜ao a x0 +c = 36. Como o resto da divis˜ao de 36 por 10 ´e 6, segue-se que x1 = 6. Sendo assim,

a x1 +c = 69. Como o resto da divis˜ao de 69 por 10 ´e 9, segue-se que x2 = 9. Prosseguindo-se com

este esquema, a partir do n´umerox0 = 3, geramos os n´umerosx1 = 6, x2 = 9, x3 = 2, x4 = 5, x5 = 8,

x6 = 1, x7 = 4, x8 = 7, x9 = 0 e x10 = 3. Note que depois de x10, a sequˆencia de n´umeros gerados

se repete (com per´ıodo 10). As constantes m, a ec s˜ao escolhidas seguindo basicamente dois crit´erios: (1) o m´etodo deve gerar um grande n´umero de valores diferentes (isto ´e, o per´ıodo da sequˆencia deve ser longo) e (2) o m´etodo deve gerar n´umeros rapidamente. Os GCLs geram n´umeros inteiros positivos entre 0 em. Para gerar n´umeros decimais entre 0 e 1, basta dividir os n´umeros gerados por m.

(2)

Nesta figura, 10000 pontos foram gerados no cubo unit´ario usando-se o algoritmo RANDU da IBM, o GCL definido pela escolha m = 2147483648, a = 65539 e c = 0. O RANDU foi muito usado nos computadores de grande porte das d´ecadas de 1960 e 1970. Observe como os 10000 pontos gerados se aglomeram sobre 15 planos dentro do cubo. Dado a este defeito, especialistas n˜ao recomendam o em-prego de um GCL, por exemplo, em criptografia, pois umhacker poderia explorar esta particularidade dos GCLs para descobrir os valores dos parˆametros m, a e c a partir da sequˆencia gerada. Isto acon-teceu com o antigo navegador de internet Netscape em 1995: dois alunos da Universidade de Berkeley nos Estados Unidos conseguiram descobrir o GCL usado pelo navegador. Al´em dos GCLs, existem v´arios outros geradores de n´umeros pseudoaleat´orios: Mersenne Twister (usado no PlayStation 3 e com per´ıodo 219937

−1), Blum Blum Shub (usado em criptografia), Xorshift de George Marsaglia, etc. Existem geradores de n´umeros verdadeiramente aleat´orios? Para responder a esta pergunta, ´e pre-ciso definir antes o que se entende por um n´umero ou evento aleat´orio. Esta ´e uma quest˜ao polˆemica, sendo ainda debatida por psic´ologos, fil´osofos, matem´aticos, f´ısicos e cientistas da computa¸c˜ao. Por exemplo, vocˆe poderia pensar que o lan¸camento de uma moeda honesta ´e um evento aleat´orio com probabilidade “1/2” para cara e probabilidade “1/2” para coroa. Mas o lan¸camento de uma moeda tamb´em pode ser pensado como um processo determin´ıstico (complexo, mas ainda determin´ıstico), regido pelas leis da F´ısica. De fato, o artigo [Diaconis, Holmes, Montgomery, 2007] descreve um expe-rimento onde, atrav´es de um ajuste de velocidade inicial e momento angular, uma moeda lan¸cada por uma m´aquina sempre d´a como resultado cara. Os excelentes artigos [Volchan, 2004] e [Volchan, 2002] apresentam e discutem as v´arias defini¸c˜oes propostas para a no¸c˜ao de aleatoriedade.

Mesmo sem um consenso com rela¸c˜ao a defini¸c˜ao de aleatoriedade, empresas tˆem comercializado dispositivos que, segundo elas, produzem n´umeros verdadeiramente aleat´orios. V´arias t´ecnicas s˜ao em-pregadas: medi¸c˜oes de ru´ıdo atmosf´erico, medi¸c˜oes de decaimento radioativo, fotografias de lˆampadas de lava e processos ´oticos em f´ısica quˆantica.

A capacidade de se gerar n´umeros (pseudo) aleat´orios tem v´arias aplica¸c˜oes. Por exemplo, ela ´e uma pe¸ca-chave nos v´arios algoritmos que permitem criar simula¸c˜oes computacionais de diversos fenˆomenos em v´arias ciˆencias ([Gentle, 2003], [Ross, 2006]). Na pr´oxima se¸c˜ao veremos como a gera¸c˜ao de n´umeros (pseudo) aleat´orios pode ser usada para se calcular, de forma aproximada, medidas de comprimento, ´area e volume.

2

Probabilidade Geom´

etrica, M´

etodos de Monte Carlo e

Estereologia

(3)

Note que, aqui, o espa¸co amostral ´e infinito (todos os pontos do alvo), como tamb´em ´e infinito o conjunto dos casos favor´aveis (todos os pontos do disco vermelho central). Mesmo n˜ao podendo “contar” casos poss´ıveis e casos favor´aveis, ´e bem razo´avel considerar que a probabilidade de acertar o disco central deve ser a raz˜ao entre as ´areas do disco e do alvo, no caso 1/144, menos de 0.7% (como o atirador est´a vendado, n˜ao existem pontos privilegiados no alvo). Este ´e um exemplo de probabilidade geom´etrica: se tivermos uma regi˜ao B do plano contida em uma regi˜ao A, admitimos que a probabilidade de um ponto de A tamb´em pertencer a B ´e proporcional `a ´area de B e n˜ao depende da posi¸c˜ao que B

ocupa em A. Portanto, selecionado ao acaso um ponto de A, a probabilidade de que ele perten¸ca a B ser´a: p = (´area deB)/(´area de A). Se, em vez de regi˜oes no plano, A e B forem regi˜oes no espa¸co, ent˜ao selecionado ao acaso um ponto de A, a probabilidade de que ele perten¸ca a B ser´a:

p= (volume deB)/(volume de A).

Usando-se a f´ormula p= (´area de B)/(´area de A) e a gera¸c˜ao de n´umeros (pseudo) aleat´orios, po-demos criar um m´etodo para estimar a ´area desconhecida de uma regi˜aoB contida em uma regi˜ao A

de ´area conhecida. Suponha, por exemplo, que vocˆe n˜ao saiba o valor da ´area do c´ırculo B de centro (1/2,1/2) e raio 1/2, mas saiba a ´area do quadrado unit´arioA= [0,1]×[0,1]. Gerando-se pares orde-nados de n´umeros (pseudo) aleat´orios uniformemente distribu´ıdos no quadradoA, contamos o n´umero totalm de pontos sorteados e o n´umeron de pontos sorteados que pertencem ao c´ırculo B. O n´umero

r = n/m dar´a uma aproxima¸c˜ao de p e, portanto, o n´umero r×(´area de A) dar´a uma aproxima¸c˜ao para a ´area de B (no caso, π/4 = 0.78539816. . .).

Na figura: n= 64, m= 78 e r = n

m = 0.82051282. . . .

Este tipo de t´ecnica de an´alise de fenˆomenos atrav´es de algoritmos de computador que empregam essencialmente a gera¸c˜ao de n´umeros (pseudo) aleat´orios ´e denominado “M´etodo de Monte Carlo”. O nome “Monte Carlo” foi dado por Stanislaw Ulam (1909-1984) e John von Neumann que inventaram o m´etodo para resolver problemas de difus˜ao de nˆeutrons relacionados com projetos de armas nucleares (Projeto Manhattan) no Laborat´orio Nacional de Los Alamos, Estados Unidos, por volta de 1940 ([Metropolis, Ulam, 1943], [Metropolis, 1987]).

Stanislaw Ulam John von Neumann

(4)

Ulam tamb´em contribuiu com ideias para a propuls˜ao nuclear de ve´ıculos espaciais e fez contribui¸c˜oes fundamentais para muitos dos mais desafiadores projetos matem´aticos da atualidade.”. John von Neu-mann ´e tido como um dos mais importantes matem´aticos do s´eculo XX, tendo feito contribui¸c˜oes em matem´atica, f´ısica, economia, computa¸c˜ao e estat´ıstica. Junto com Alan Turing (1912-1954) e Claude Shannon (1916-2001), John von Neumann ´e considerado como um dos idealizadores do computador digital com programas armazenados.

Um outro problema de probabilidade geom´etrica bem interessante foi proposto pelo naturalista francˆes George-Louis Leclerc (1707-1788), Conde de Buffon: suponha que vocˆe esteja em uma sala cujo ch˜ao ´e feito de ripas retangulares de madeira, todas com largura d. Ao se jogar uma agulha de comprimento a, com a ≤ d, qual ´e a probabilidade da agulha ficar sobre um reta divis´oria de duas ripas? Com recursos de c´alculo integral, ´e poss´ıvel demonstrar (consulte, por exemplo, [Tunala, 1992]) que esta probabilidade ´e igual a p= (2a)/(dπ).

(5)

3

Referˆ

encias

No endere¸co http://www.uff.br/cdme/rdf/ (ou no espelho http://www.cdme.im-uff.mat.br/rdf/) est´a dispon´ıvel uma s´erie de aplicativos interativos que permitem explorar a gera¸c˜ao de n´umeros pseu-doaleat´orios e os m´etodos de Monte Carlo apresentadas neste texto. Tamb´em est´a dispon´ıvel um arquivo DOC (o Formul´ario de Acompanhamento do Aluno) com v´arias sugest˜oes de exerc´ıcios para serem trabalhados em sala de aula. Orienta¸c˜oes did´aticas e metodol´ogicas est˜ao dispon´ıveis no Guia do Professor.

Sugerimos as seguintes referˆencias ao leitor interessado em mais detalhes sobre a gera¸c˜ao de n´umeros pseudoaleat´orios, probabilidade geom´etrica, m´etodos de Monte Carlo e estereologia.

Calude, C. S. Who Is Afraid of Randomness?. CDMTCS Research Report Series, University of Auc-kland, New Zealand, 2000.

Diaconis, P.; Holmes, S.; Montgomery, R. Dynamical Bias in The Coin Toss. SIAM Review, vol. 49. n. 2, pp. 211-235, 2007.

Gentle, J. E. Random Number Generation and Monte Carlo Methods. Second Edition. Statistics and Computing, Springer-Verlag, 2003.

Howard, V.; Reed, M. G.Unbiased Stereology: Three-dimensional Measurement in Microscopy Advan-ced Methods. Taylor & Francis Routledge, 2005.

Knuth, D. E. The Art of Computer Programming. Volume 2. Seminumerical Algorithms. Addison Wesley Longman, 1998.

Marsaglia, G. Random Numbers Fall Mainly in The Planes. Proceedings of the National Academy of Sciences of the United States of America, v. 61, n. 1, pp. 25-28, 1968.

Metropolis, N. The Beginning of The Monte Carlo Method. Los Alamos Science, n. 15, pp. 125-130, 1987.

Metropolis, N.; Ulam, S. The Monte Carlo Method. Journal of The American Statistical Association, vol. 44, n. 247, pp. 335-341, 1949.

Peterson, I. The Jungles of Randomness – A Mathematical Safari. Wiley, 1998. Ross, S. M.Simulation. Fourth Edition. Academic Press, 2006.

Shonkwiler, R.; Mendivil, F. Explorations in Monte Carlo Methods. Undergraduate Texts in Mathe-matics, Springer-Verlag, 2009.

Stroeven, P.; Hu, J. Review Paper – Stereology: Historical Perspective and Applicability to Concrete Technology. Materials and Structures, v. 39, pp. 127-135, 2006.

Tunala, N. Determina¸c˜ao de Probabilidades por M´etodos Geom´etricos. Revista do Professor de Ma-tem´atica, Sociedade Brasileira de MaMa-tem´atica, vol. 20, pp. 18-22, 1992.

Ulam, S. M. Adventures of A Mathematician. Charles Scribner’s Sons, 1976.

Volchan, S. B. What is A Random Sequence?. The American Mathematical Monthly, vol. 109, pp. 46-63, January, 2002. http://mathdl.maa.org/images/upload library/22/Ford/Volchan46-63.pdf

Volchan, S. B. A Teoria Algor´ıtmica da Aleatoriedade. Em Chediak, K.; Videira, A. A. P. (Edito-res). Temas de Filosofia da Natureza, UERJ, pp. 123-130, 2004. http://www.uff.br/cdme/arquivos/ volchan-2002.pdf

Figure

Updating...

References

Updating...

Download now (5 pages)