Estat «õstica Co mput acio nal Ñ M «o dulo...
Transcript of Estat «õstica Co mput acio nal Ñ M «o dulo...
Estatıstica Computacional — Modulo 1
Notas de apoio (Cap. 1)
Manuel Cabral Morais
Seccao de Estatıstica e Aplicacoes
Instituto Superior Tecnico
Lisboa, Setembro–Outubro de 2003
Contents
1 Optimizacao 1
1.1 Metodos de pesquisa unidimensional . . . . . . . . . . 7
1.1.1 Metodo de Fibonacci . . . . . . . . . . . . . . . 8
1.1.2 Interpolacao quadratica . . . . . . . . . . . . . 10
1.1.3 Metodo do gradiente (steepest descent) . . . . . 11
1.1.4 Metodo de Newton-Raphson . . . . . . . . . . . 13
1.2 Principais variantes do metodo de Newton-Raphson . . 15
1.2.1 Fisher’s scoring method . . . . . . . . . . . . . 15
1.2.2 Metodo de Newton-Raphson modificado . . . . 18
1.2.3 Metodo de Davidon-Fletcher-Powell . . . . . . . 19
1.2.4 Metodo do gradiente conjugado (Fletcher-Reeves) 21
1.2.5 Metodo de Broyden-Fletcher-Goldfarb-Shanno . 23
1.2.6 Aplicacoes a modelos lineares generalizados . . 26
1.3 Alguns algoritmos para o problema de mınimos quadra-
dos nao lineares . . . . . . . . . . . . . . . . . . . . . . 30
1.3.1 Metodos de Newton-Raphson, Gauss-Newton e
Newton-Raphson modificado . . . . . . . . . . . 34
1.3.2 Metodo de Levenberg-Marquardt . . . . . . . . 38
1.4 Introducao a optimizacao restringida . . . . . . . . . . 42
1.4.1 Metodo dos multiplicadores de Lagrange . . . . 44
1.5 Referencias . . . . . . . . . . . . . . . . . . . . . . . . 48
i
Chapter 1
Optimizacao
Toda a gente tem a tendencia natural para optimizar...
As companhias aereas programam as suas equipas de bordo, aeronaves
e voos por forma a minimizar custos de operacao.
Os investidores procuram criar portfolios que evitem riscos excessivos
mas que simultaneamente garantam bons lucros.
Na industria pretende-se eficiencia maxima no planeamento e operacao
dos processos de producao.
A natureza tambem optimiza...
Os sistemas fısicos tendem a encontrar-se em estados de energia mınima.
As moleculas num sistema quımico isolado reagem umas com as outras
ate que a energia potencial total dos seus electroes seja mınima.
Os raios de luz seguem percursos que minimizem a duracao desses
mesmos percursos.
A optimizacao e fundamental em Estatıstica...
• Em estimacao pontual, e usual seleccionar um estimador de um
(ou mais) parametros desconhecido(s) que satisfaca determinado
criterio de optimalidade (variancia mınima, maxima verosimi-
lhanca, mınimos quadrados, etc.).
1
• Em inferencia estatıstica os testes de hipoteses sao delineados
de modo que sejam optimos de acordo com certo criterio.
Por exemplo, a custa da aplicacao do lema de Neyman–Pearson
obtem-se testes de hipoteses com a particularidade de minimiza-
rem a probabilidade de cometer erro de 2a. especie uma vez fixa
a probabilidade de cometer erro de 1a. especie.
• No campo da metodologia das superfıcies de resposta,
procuram-se condicoes de operacao optimas das variaveis explica-
tivas que produzam respostas maximas (mınimas) em determi-
nada regiao de interesse.
Por exemplo, no estudo de reaccoes quımicas e importante de-
terminar a temperatura de reaccao e o tempo de reaccao que
maximizam a producao de certo produto.
• Ao lidarmos com experiencias multiresposta (i.e., ha nao so
varias variaveis explicativas como variaveis de resposta) a opti-
mizacao diz respeito a diversas funcoes de resposta.
Basta pensar que se pode pretender maximizar a quantidade
fabricada de certo produto e simultaneamente reduzir o custo
de producao.
• Em analise multivariada e frequente lidar-se com um grande
numero de observacoes/variaveis. Por forma a facilitar a analise
de dados e conveniente reduzir tais numeros sem que isso
signifique grande perda de informacao.
E neste contexto que surgem as tecnicas de reducao de dados
como e o caso das componentes principais.
2
O recurso a uma tecnica de optimizacao pressupoe a identificacao
de:
• uma funcao objectivo (que represente, por exemplo, o lucro,
o tempo, a energia potencial, a variancia, o erro quadratico medio,
verosimilhanca, etc...);
• variaveis/incognitas/parametros que influenciam a funcao ob-
jectivo; e
• eventuais restricoes a que estao sujeitos os parametros.1
Posto isto e suposto obter os valores dos parametros que maximizam
(minimizem) a funcao objectivo.
Caso se esteja a lidar com restricoes, efectua-se o que e usualmente
designado de optimizacao restringida (ou restrita).
Caso contrario, a optimizacao diz-se irrestrita.
Textos de apoio: Khuri (1993, pp. 326–328) e Nocedal e Wright
(1999, pp. 1–3).
Um problema de optimizacao usual em Estatıstica consiste em
determinar um conjunto de valores dos parametros ! = (!1, . . . , !p)
que maximizam uma funcao objectivo f(!) = f(!1, . . . , !p).
E o caso da maximizacao de uma funcao de verosimilhanca ou a
minimizacao de uma soma de quadrados.
De notar ainda que a maximizacao da funcao f e equivalente a
minimizacao de !f . Assim, far-se-a, de um modo geral, referencia
somente a minimizacao de uma funcao objectivo.
1Por exemplo, uma probabilidade deve pertencer a [0, 1].
3
A minimizacao poderao estar nao so associados parametros sujeitos a
restricoes, como podera surgir o problema da existencia de mınimos
locais. (Esquema — Everitt (1987, Fig. 1.1, p. 3).)
Procedimentos de minimizacao
1. Ponto de mınimo — A obtencao do ponto de mınimo, ! =
(!1, . . . , !p), da funcao objectivo diferenciavel f(!) passa pela
resolucao do seguinte sistema de equacoes:
"f(!1, . . . , !p)
"!j
!!!!!=!
= 0, j = 1, . . . , p. (1.1)
A satisfacao das equacoes em (1.1) e condicao necessaria
mas nao suficiente para que se obtenha um ponto de mınimo
(eventualmente local). Para que tal aconteca e fundamental que
tambem se verifique:2
• d2f(!)d!2
!!!!=!
> 0, quando p = 1;
• a matriz hessiana —
H(!) = "2f(!) = [hij(!)]i,j=1,...,p (1.2)
onde hij(!) = "2f(!)"!i"!j
— seja definida positiva quando avaliada
em !, quando p > 1.
2. Procedimentos numericos de minimizacao — Caso nao seja
possıvel obter uma solucao algebrica para o sistema (1.1), e
necessario recorrer a procedimentos numericos de minimizacao.
Tratar-se-ao de procedimentos iterativos na medida em que
fornecem solucoes aproximadas sucessivas de ! = (!1, . . . , !p),
com a particularidade de a solucao aproximada na iteracao i + 1
2Nao so continuidade das segundas derivadas numa vizinhanca do ponto de mınimo como...
4
ser, de uma forma geral, melhor que as solucoes aproximadas
obtidas nas iteracao anteriores. I.e., ao considerar-se que !(i)
representa a aproximacao do ponto de mınimo na iteracao i (i =
0, 1, 2, . . .), a solucao aproximada inicial !(0) e as solucoes
aproximadas sucessivas satisfarao, de um modo geral:
f"!(0)
## f
"!(1)
## f
"!(2)
## . . .
• Metodos de pesquisa directa — As solucoes aproximadas
dependem somente dos valores de f obtidos durante o pro-
cesso iterativo (logo nao e necessario que f seja diferenciavel).
• Metodos do gradiente — Estes metodos iterativos requerem
o calculo de (primeiras ou segundas) derivadas (parciais).
O procedimento numerico de minimizacao e dado por concluıdo
de acordo com um criterio de convergencia, que podera tradu-
zir-se em condicoes tais como,
!!!f"!(i+1)
#! f
"!(i)
#!!! < # (1.3)$$$!(i+1) ! !(i)
$$$ < $, (1.4)
onde quer #, quer $ sao pre-especificados. E preferıvel requerer
que a condicao de convergencia seja verificada para algumas
iteracoes antes de dar por terminado o procedimento de mini-
mizacao. # devera ter em conta a magnitude dos valores de f ou
entao devera usar-se um criterio de convergencia que faca uso de
erros relativos ao inves de erros absolutos.
3. Minimizacao restringida — Caso os parametros estejam su-
jeitos a restricoes podera tentar-se transforma-los de modo a que
se tornem parametros irrestritos. Por exemplo, ao considerar-se
5
! = P (sucesso) numa prova de Bernoulli tem-se ! $ [0, 1]; ao
usar a transformacao logıstica, % = ln%
!1!!
&, tem-se % $ IR.
Caso nao seja possıvel este tipo de transformacao e necessario
recorrer, por exemplo, a multiplicadores de Lagrange ou a tecnicas
de minimizacao restringida adequadas ao problema em maos.
Exercıcio 1.1 — Obtenha a estimativa de maxima verosimilhanca do
parametro desconhecido !, tendo por base uma amostra de dimensao
n, x = (x1, . . . , xn), proveniente da populacao:
(a) X % Poisson(!);
(b) X % Poisson! truncada(!) que exclua o valor 0.
Tenha o cuidado de averiguar que se tratam efectivamente de pontos
de maximo, neste e nos exercıcios que se seguem. !
Exercıcio 1.2 — Obtenha as estimativas de mınimos quadrados dos
dois parametros do modelo de regressao linear simples Yi = !1 +!2xi +
#i. (Everitt (1987, pp. 5–7).) !
Exercıcio 1.3 — Considere o modelo de regressao logıstica simples
cuja variavel resposta Yi % Bernoulli(pi) onde
E(Yi|xi) = pi
=exp(!1 + !2xi)
1 + exp(!1 + !1xi). (1.5)
Deduza as estimativas de maxima verosimilhanca dos parametros do
modelo. (Everitt (1987, pp. 52–56).) !
Texto de apoio: Everitt (1987, pp. 1–10).
6
1.1 Metodos de pesquisa unidimensional
Tem-se verificado consideraveis avancos nas tecnicas de minimizacao
nas ultimas quatro decadas e este facto tem tido, naturalmente, grande
impacto em varios ramos da Estatıstica.
Esta seccao concentra-se em metodos de minimizacao quando se lida
exclusivamente com um parametro. Destacar-se-ao dois metodos de
pesquisa directa (por mera curiosidade) —
• Fibonacci
• Interpolacao quadratica
— e tres metodos do gradiente —
• gradiente (steepest descent ou do declive maximo)
• Newton
• Quasi-Newton
Os metodos de pesquisa directa de um ponto de mınimo de uma
funcao de um so parametro (unidimensional) dividem-se, grosso modo,
em duas categorias:
• aqueles em que e especificado o intervalo a que pertence o ponto
de mınimo (e.g. metodo de Fibonacci); e
• aqueles em que e adiantada a partida uma solucao aproximada
(e.g.metodo de interpolacao quadratica).
Na primeira das categorias assumir-se-a que o intervalo e conhecido e
contem o ponto de mınimo e que a funcao e unimodal nesse mesmo
intervalo como se podera ver na sub-seccao seguinte.
7
1.1.1 Metodo de Fibonacci
Comece-se por considerar que o ponto de mınimo da funcao f(!), !,
pertence ao intervalo (!1, !2) e que se seleccionam dois pontos, !3 e !4,
tais que !1 < !3 < !4 < !2.
Uma vez que se assume que a funcao objectivo e unimodal no
intervalo (!1, !2) pode concluir-se que o ponto de mınimo se encontra
no intervalo:
• (!3, !2), caso f(!3) # f(!4);
• (!1, !4), caso f(!3) & f(!4).
(Esquema — Everitt (1987, Fig. 2.1, p. 12).)
A reducao progressiva da amplitude do intervalo de pesquisa
passa pela avaliacao da funcao noutros pontos escolhidos no ultimo
dos intervalos considerado.
A questao fundamental e, sem sombra de duvida, obter esses pontos. E
claro que a escolha dos subsequentes pontos (i.e., o proximo intervalo
de pesquisa) nao deve ser feita sem qualquer criterio mas sim feita
tendo em conta os valores da funcao obtidos anteriormente.
Caso se especifique a partida que a funcao so pode ser avaliada n (pares
de) vezes, o procedimento de pesquisa mais eficiente e conhecido por
metodo de Fibonacci.
Este procedimento faz uso de uma sequencia de numeros inteiros
designados por numeros de Fibonacci Fi que tem a particularidade
de ser definidos pelas seguintes equacoes:
F0 = F1 = 1
Fi = Fi!1 + Fi!2, i # 2.(1.6)
8
Metodo de Fibonacci — Os primeiros oito numeros de Fibonacci
sao iguais a 1, 1, 2, 3, 5, 8, 13, 21 e o procedimento de pesquisa pode
resumir-se do seguinte modo:
1. Considerar o intervalo inicial de pesquisa (!(1)1 , !(1)
2 ) e
I0 = !(1)2 ! !(1)
1 a respectiva amplitude.
2. Obter I1 = Fn!1
Fn' I0.
3. Determinar o intervalo (!(1)3 , !(1)
4 ) cujos extremos sao iguais a
!(1)3 = !(1)
1 ! I1 = !(1)1 +
Fn!2
Fn' I0 (1.7)
!(1)4 = !(1)
2 + I1 = !(1)1 +
Fn!1
Fn' I0 (1.8)
4. Tirar partido da unimodalidade e restringir a pesquisa ao
intervalo
• (!(2)1 , !(2)
2 ) = (!(1)3 , !(1)
2 ), caso f(!(1)3 ) # f(!(1)
4 )
• (!(2)1 , !(2)
2 ) = (!(1)1 , !(1)
4 ), caso f(!(1)3 ) & f(!(1)
4 )
5. Voltar ao passo 2 substituindo I0 por !(2)2 ! !(2)
1 . !
Exercıcio 1.4 — Na Tabela 2.1 de Everitt (1987, p. 13), parcialmente
transcrita abaixo, encontram-se os 21 primeiros numeros de Fibonacci
e a reducao da amplitude do intervalo de pesquisa inicial (I0) que
advem do facto de decidirmos pela avaliacao de n (pares de) valores
da funcao f , reducao definida por In/I0.
Table 1.1: Reducao da amplitude do intervalo de pesquisa.
n 0 1 2 3 4 5 6 7 8 9 10Fn 1 1 2 3 5 8 13 21 34 55 89In/I0 1.0 1.0 0.5 1/3 0.2 0.1250 0.07692 0.04762 0.02941 0.01818 0.01124
Obtenha os valores da Tabela 1.1 e trace o grafico de In/I0. !
9
Exercıcio 1.5 — Considere a seguinte tabela de frequencias que dizem
respeito a variavel X com distribuicao Poisson Truncada (que exclui
o zero) e obtenha a estimativa de maxima verosimilhanca sabendo a
partida que a solucao se encontra no intervalo (0.7, 1.1).
Table 1.2: Frequencias absolutas.
Valor (xi) 1 2 3 4 5 6
Freq. Abs. de xi (ni) 1486 694 195 37 10 1
Recorra ao metodo de Fibonacci com n = 20 bem como a um programa
na linguagem de programacao que lhe for mais familiar. !
Texto de apoio: Everitt (1987, pp. 11–14).
1.1.2 Interpolacao quadratica
A aplicacao do metodo de interpolacao quadratica pressupoe grosso
modo:
1. Considerar um valor inicial aproximado de !, !(, bem como o
tamanho dos passos (l).
2. Obter o valor da funcao f(!) em tres pontos relacionados com !(
e l
(a) !1 = !(
(b) !2 = !( + l
(c) !3 = !( ! l, se f(!1) < f(!2), !3 = !( + 2l, se f(!1) > f(!2).
3. Obter uma funcao quadratica f ((!) = A!2+B!+C que interpole
f (interpolacao baseada nos tres valores conhecidos de f).
4. Obter o proximo valor aproximado do ponto de mınimo para a
iteracao seguinte a custa dos coeficientes A e B: !( = !min = ! B2A .
10
Exercıcio 1.6 — Retome o Exercıcio 1.5 considerando a partida que
o valor inicial aproximado de ! e igual a !( = 0.8. !
Texto de apoio: Everitt (1987, pp. 14–16).
1.1.3 Metodo do gradiente (steepest descent)
O metodo de optimizacao descrito nesta subseccao, a semelhanca dos
descritos nas duas subseccoes que se seguem, requerem o calculo de
valores de derivadas da funcao f bem como de valores dessa mesma
funcao.3
O metodo do gradiente (steepest descent) encontra uma justificacao
numa importante propriedade do vector gradiente,
"f(!) =
'"f(!)
"!1, . . . ,
"f(!)
"!p
(. (1.9)
Caso se desloque numa direccao definida por "f(!) a partir de um
ponto arbitrario (!, f(!)), a funcao crescera a taxa mais elevada.
Analogamente, se se deslocar numa direccao definida por !"f(!), a
funcao decrescera a taxa mais elevada.
Caso se considere um so parametro (p = 1) rapidamente se percebera
esta argumentacao. (Esquema...)
O metodo do gradiente (steepest descent) procura explorar esta pro-
priedade da direccao do vector gradiente. Assim, ao considerar-se que
na i!esima iteracao se lida com a solucao aproximada !(i), a iteracao
seguinte fara uso da solucao aproximada:
!(i+1) = !(i) ! &(i) '"f(!(i)), (1.10)
3As observacoes feitas ja de seguida dizem respeito a uma funcao real f com domınio IRp eserao particularizadas para o caso em que p = 1 nesta e nas duas subseccoes seguintes.
11
onde a constante &(i) e o ponto de mınimo da funcao
%(&) = f)!(i) ! &"f
"!(i)
#*. (1.11)
A obtencao de &(i) passa pela resolucao (eventualmente numerica) da
equacao
d%(&)
d&
!!!!#=#(i)
= 0, (1.12)
como sugere Alves (2000, p. 200).
De notar ainda que a resolucao de (1.12) pode envolver demasiados
calculos, pelo que e usual aproximar a funcao %(&) por um polinomio
de segundo grau usando para o efeito uma interpolacao em tres pontos
proximos de 0. Para mais detalhes acerca desta interpolacao consulte-
se Alves (2000, pp. 201-202).
Exercıcio 1.7 — Apos ter definido o metodo do gradiente (steepest
descent) para o caso de uma funcao real de argumento real, retome o
Exercıcio 1.5 e considere mais uma vez que o valor inicial aproximado
de ! e igual a !(0) = 0.8. !
O metodo do gradiente (steepest descent) podera parecer a partida
o melhor metodo para minimizar uma funcao. No entanto, a pro-
priedade do gradiente que esta por tras da sua definicao e somente
local e nao uma propriedade global. Para alem disso sao frequentes as
mudancas de direccao. Todos estes inconvenientes tornam o metodo
ineficiente e a sua aplicacao pouco recomendada.
Textos de apoio: Alves (2000, pp. 200–201), Everitt (1987, pp. 21–
23) e Nocedal e Wright (1999, pp. 21–22).
12
1.1.4 Metodo de Newton-Raphson
O metodo de Newton (tambem conhecido por metodo de Newton-
Raphson) faz uso de uma direccao de pesquisa derivada de uma
expansao de Taylor de segunda ordem. Senao veja-se o caso
de uma funcao real com um parametro f(!).
Considere-se neste caso que a solucao aproximada inicial e !(0) e efectue-
se a referida expansao de f(!) em torno do ponto !(0):
f(!) ) f ((!)
= f"!(0)
#+
"! ! !(0)
#' f *
"!(0)
#
+1
2
"! ! !(0)
#2' f **
"!(0)
#. (1.13)
Ao resolver-se a equacao df"(!)d! = 0 obtem-se
! = !(0) !f *
%!(0)
&
f **%!(0)
& . (1.14)
Deste modo o passo crucial na iteracao do metodo de Newton-Raphson
e a seguinte atribuicao:
!(i+1) = !(i) !f *
%!(i)
&
f **%!(i)
& . (1.15)
Exercıcio 1.8 — Defina o metodo de Newton-Raphson para uma
funcao real com p parametros, f(!). !
Exercıcio 1.9 — Considere de novo a v.a. Poisson truncada de
parametro ! que exclui o zero.
(a) Prove que 1n
+++r=2 r nr, onde nr representa a frequencia absoluta
do valor r, e uma estimativa centrada de !, ao contrario do que
acontece com a media da amostra.
13
(b) Use a estimativa em (a) como solucao aproximada inicial na
aplicacao do metodo de Newton-Raphson ao conjunto de dados
do Exercıcio 1.5.
(c) Repita (b) considerando como solucao aproximada inicial a media
da amostra.
(d) Compare os valores da primeira derivada da log-verosimilhanca
ao fim 6 iteracoes obtidas nas alıneas (b) e (c). !
O metodo de Newton-Raphson converge rapidamente quando a
solucao aproximada inicial se encontra perto do ponto de
mınimo ja que, de um modo geral, f ((!) constitui uma boa apro-
ximacao de f(!) na vizinhanca de !. O mesmo nao acontece quando
a solucao aproximada inicial se encontra distante do ponto de
mınimo.
As desvantagens do metodo quando p > 1 passam pela necessidade
do calculo e inversao da matrix hessiana em cada iteracao e pela
eventualidade de a matriz H"!(i)
#= "2f
"!(i)
#ser definida negativa
caso !(i) diste muito do ponto de mınimo.
Por este e outros motivos que se prendem, por exemplo, com a
convergencia do metodo de Newton-Raphson foram propostas na
literatura variantes deste metodo que serao descritas na seccao seguinte.
Textos de apoio: Everitt (1987, pp. 23–24) e Nocedal e Wright (1999,
pp. 22–24).
14
1.2 Principais variantes do metodo de Newton-
Raphson
As variantes do metodo de Newton-Raphson pretendem acelerar o
processo de convergencia daquele metodo, faze-lo depender cada vez
menos da solucao aproximada inicial ou aligeirar os calculos em cada
iteracao.
1.2.1 Fisher’s scoring method
O Fisher’s scoring method pode ser entendido como uma variante
estatıstica do metodo de Newton-Raphson.
Este metodo resulta da substituicao da segunda derivada f **(!)
(ou da matriz hessiana, caso p > 1) pelo seu valor esperado. Assim
!(i+1) = !(i) !f *
%!(i)
&
E,f **
%!(i)
&- . (1.16)
De notar que, ao pretender-se maximizar uma funcao como a log-
verosimilhanca, i.e.
f(!) = ln L(!|x), (1.17)
o valor esperado a que se refere a equacao (1.16) nao passa de
E
.d2 ln L(!|X)
d!2
/(1.18)
calculado no ponto !(i). Entenda-se ln L(!|X) como a v.a. que se obtem
apos se ter substituıdo xi por Xi (i = 1, . . . , n) na expressao geral da
funcao log-verosimilhanca.
Este metodo de optimizacao tem-se revelado mais eficiente que o
metodo de Newton-Raphson como se podera constatar no exercıcio
que se segue.
15
Exercıcio 1.10 — Apos ter obtido a iteracao do Fisher’s scoring
method para o Exercıcio 1.5 implemente o referido metodo e certifique-
se que a solucao aproximada e 0.89249, quando se considera !(0) = 2.0.
Compare o numero de iteracoes necessarias para que este metodo
e o de Newton-Raphson assegurem solucoes aproximadas tais que
f *%!(i)
&& 10!6. !
Exercıcio 1.11 — O numero de partıculas ' emitidas por uma fonte
radioactiva em 2612 unidades de tempo (1/8min.) estao condensadas
na seguinte tabela de frequencias:
Part. emitidas (i) 0 1 2 3 4 5 6 7 8 9 10 > 10
Freq. Abs de i 57 203 383 525 532 408 273 139 49 27 10 6
Assuma que os numeros de partıculas emitidas por unidade de tempo
sao v.a.’s i.i.d.Poisson(!) para responder as questoes seguintes.
(a) Obtenha a funcao de verosimilhanca, L(!|n) = L(!|n0, . . . , nt, nc),
bem como a funcao de log-verosimilhanca e verifique que
d ln L(!|n)
d!=
y
!! (n! nc) +
ncpt
pc(1.19)
d2 ln L(!|n)
d!2 = ! y
!2 +nc
pc
'pt!1 ! pt !
p2t
pc
((1.20)
onde: ni e nc representam as frequencias absolutas do valor i (i =
0, . . . , t) e de valores maiores que t (respectivamente);
pi = P (X = i|!), i = 0, . . . , t; pc = P (X > t|!); n =+t
i=0 ni +nc;
e y =+t
i=0 i ni.
(b) Elabore um programa que permita obter a estimativa de maxima
verosimilhanca de ! de acordo com o Fisher’s scoring method.
(c) Execute o programa considerando t = 10, 8, 6 e comente os
resultados obtidos. !
16
E sabido que os problemas de optimizacao mais interessantes dizem
respeito a situacao em que lidamos com mais do que um parametro.
A obtencao da estimativa de maxima verosimilhanca do vector de p
parametros ! = (!1, . . . , !p) e disso um exemplo.
Comece-se por relembrar que "f"!(i)
#e H
"!(i)
#representam o vec-
tor gradiente e a matriz hessiana de f(!) calculados no ponto !(i),
respectivamente, e fazer notar que as iteracoes do metodo de Newton-
Raphson e do Fisher’s scoring method podem encontrar-se na Tabela
1.3.
Table 1.3: Iteracoes de alguns metodos de pesquisa.
Metodo Iteracao
Newton-Raphson !(i+1) = !(i) !H!1"!(i)
#"f
"!(i)
#
Fisher’s scoring !(i+1) = !(i) !0
E)H
"!(i)
#*1!1"f
"!(i)
#
Exercıcio 1.12 — Considere uma populacao bi-parametrica a sua
escolha para a qual nao exista solucao algebrica para a estimativa
de maxima verosimilhanca do vector de parametros ! = (!1, !2) e
determine o passo da iteracao do Fisher’s scoring method. !
Outro aspecto ainda nao abordado diz respeito ao criterio de
convergencia de qualquer destes e de outros metodos de optimizacao.
De um modo geral, prossegue-se a pesquisa enquanto a norma do vec-
tor gradiente nao for suficientemente pequena, i.e., considera-se que o
procedimento iterativo convergiu assim que
||"f"!(i)
#||2 = "f
"!(i)
#,"f
"!(i)
#& #, (1.21)
onde a constante # diz respeito a precisao desejada.
Texto de apoio: Everitt (1987, pp. 23–24, 31–32).
17
1.2.2 Metodo de Newton-Raphson modificado
O metodo de Newton-Raphson modificado nao consiste numa substi-
tuicao da matriz hessiana mas sim na introducao do tamanho do passo
em cada iteracao. Deste modo passa a ter-se a iteracao
!(i+1) = !(i) ! &(i) H!1"!(i)
#"f
"!(i)
#, (1.22)
onde &(i) minimiza a funcao
%(&) = f)!(i) ! &H!1
"!(i)
#"f
"!(i)
#*. (1.23)
O ponto de mınimo da funcao definida pela Equacao (1.23), &(i), e
obtido recorrendo a qualquer dos metodos de pesquisa unidimensional
descritos na seccao anterior, caso nao haja solucao algebrica para a
equacao d$(#)d#
!!!#=#(i)
= 0.
A inclusao de &(i) pretende essencialmente acelerar a convergencia do
metodo de Newton-Raphson. Contudo continua a pressupor o calculo
e a inversao da matriz hessiana em cada iteracao — agravado, a nosso
ver, por um problema adicional de optimizacao para obter &(i).
Nao surpreende pois que este metodo de optimizacao numerica seja
preterido a favor de outros que contemplam a substituicao da inversa
da matriz hessiana por uma matriz simetrica definida positiva, ac-
tualizada em cada iteracao, matriz que converge eventualmente para
H!1. Estes ultimos metodos sao usualmente designados de metodos
Quasi-Newton e serao descritos nas subseccoes seguintes.
Exercıcio 1.13 — Resolva o Exercıcio 1.11 recorrendo ao metodo de
Newton-Raphson modificado. !
Texto de apoio: Nocedal e Wright (1999, pp. 141–142).
18
1.2.3 Metodo de Davidon-Fletcher-Powell
Em meados dos anos 50, o fısico W.C. Davidon viu frustradas as suas
tentativas de resolucao de um complexo problema de optimizacao.4
Em 1959, Davidon teve a brilhante ideia de acelerar o processo de
convergencia propondo um algoritmo — o primeiro algoritmo quasi-
newtoniano — que comeca como o metodo do gradiente (steepest de-
scent) e posteriormente se resume ao metodo de Newton-Raphson
em que a inversa da matriz hessiana e substituıda e continuamente
actualizada por uma matriz definida positiva.
Em 1963, Fletcher e Powell demostraram que o algoritmo de op-
timizacao proposto por Davidon era mais rapido e mais fiavel que
os metodos entao existentes. Este avanco dramatico transformou os
problemas de optimizacao nao linear de um dia para outro.5
A iteracao contempla dois passos — a actualizacao da solucao apro-
ximada e da matriz que aproxima a inversa da matriz hessiana H!1
calculada em !(i), C(i):
!(i+1) = !(i) ! &(i) C(i) "f"!(i)
#(1.24)
C(i+1) = C(i) + A(i) + B(i) (1.25)
onde
A(i) =1
z, uz z, (1.26)
B(i) = ! 1
u,C(i) uC(i)u u,C(i) (1.27)
e
z = !&(i) C(i)"f"!(i)
#(1.28)
4O metodo a que Davidon recorreu denomina-se coordinate descent method e esta descrito emNocedal e Wright (1999, pp. 53–55) e nao convergia.
5E curioso notar que o artigo em que Davidon propos o metodo de optimizacao nao foi aceitequando submetido para publicacao e veio a ser publicado somente em 1991.
19
u = "f"!(i+1)
#!"f
"!(i)
#. (1.29)
De notar que e usual tomar C(0) = I, e neste caso o primeiro passo
da metodo de Davidon-Fletcher-Powell corresponde efectivamente ao
metodo do gradiente (steepest descent). Como vem a ser habito &(i)
e obtido por pesquisa unidimensional e correspondera ao ponto de
mınimo de
%(&) = f)!(i) ! &C(i)"f
"!(i)
#*. (1.30)
A justificacao para este procedimento encontra-se no trabalho de 1963
de Fletcher e Poweel. Essencialmente, a matriz A(i) assegura que a
sequencia de matrizes C(i) que aproximam a inversa da matriz hes-
siana convergem para essa mesma inversa. Por seu lado, a matriz B(i)
assegura que C(i) e definida positiva.
Exercıcio 1.14 — A funcao de Rosenbrock e definida por
f(!1, !2) = 100(!21 ! !2)
2 + (1! !1)2 (1.31)
e possui ponto de mınimo conhecido e igual a (!1, !2) = (1, 1). Rosen-
brock propos o uso desta funcao para testar algoritmos de minimizacao,
em 1960.
(a) Recorra ao metodo de Davidon-Fletcher-Powell para obter uma
solucao aproximada para o ponto de mınimo, considerando para
o efeito a solucao aproximada inicial !(0) = (0, 0). (Everitt (1987,
pp. 25–26).)
(b) Compare os resultados obtidos em (a) com os obtidos pelo metodo
do gradiente (steepest descent) e de Newton-Raphson. !
Textos de apoio: Everitt (1987, pp. 24–25), Khuri (1993, pp. 330–
331) e Nocedal e Wright (1999, pp. 193–201).
20
1.2.4 Metodo do gradiente conjugado (Fletcher-Reeves)
A escolha da direccao de pesquisa em cada iteracao e um passo
extraordinariamente delicado e dele depende qualquer procedimento
de minimizacao.
Para descrever o metodo de optimizacao que se segue e conveniente
relembrar em que circunstancias os vectores p e q se dizem vectores
conjugados em relacao a matriz definida positiva G —
p,Gq = 0 (1.32)
— e ja agora notar que a justificacao para a utilizacao deste proce-
dimento se encontra descrita em detalhe em Nocedal e Wright (1999,
pp. 102–108) e passa pelo facto de o problema da resolucao do sistema
linear de equacoes A! = b ser equivalente ao problema de minimizacao
da funcao quadratica
f(!) =1
2!,A ! ! b, !, (1.33)
cujo gradiente e igual a
"f(!) = A! ! b. (1.34)
O problema da minimizacao da funcao quadratica f(!) definida pela
Equacao (1.33) resolve-se recorrendo a aquilo que Nocedal e Wright
(1999, pp. 102) denominam de metodo das direccoes conjugadas. Este
metodo faz uso de um conjunto de p vectores nao nulos e conjugados
em relacao a matriz A, {q(0), . . . , q(p!1)}. A sua iteracao i + 1 e dada
por:
!(i+1) = !(i) ! &(i) q(i) (1.35)
onde &(i) minimiza a funcao
%(&) = f"!(i) ! &q(i)
#, (1.36)
21
i.e.,
&(i) =
"A!(i) ! b
#,q(i)
q(i),Aq(i) . (1.37)
O primeiro metodo do gradiente conjugado nao linear surge nos anos
60 e deve-se a Fletcher e Reeves. Ao considerar-se uma funcao regular
f(!) este metodo possui direccao de pesquisa e iteracao dadas, de
acordo com Alves (2000, pp. 206-207), por:
d(i) = !"f"!(i)
#+
"f"!(i)
#,"f
"!(i)
#
"f"!(i!1)
#,"f
"!(i!1)
# d(i!1) (1.38)
!(i+1) = !(i) ! &(i) d(i) (1.39)
onde &(i) e, mais uma vez, o ponto de mınimo da funcao %(&) =
f"!(i) ! &d(i)
#. Para alem disso, faz sentido considerar a primeira
direccao de pesquisa igual a direccao do metodo do gradiente (steepest
descent), ou seja, d(0) = !"f"!(0)
#.
Fletcher e Reeves sugerem que de p em p iteracoes se adopte a direccao
do metodo do gradiente (steepest descent), !"f"!(i)
#.
A direccoes d(i) tem a particularidade de ser conjugadas e, caso se
estivesse a minimizar uma funcao quadratica com p parametros, o
procedimento de minimizacao convergiria quando muito em p passos.
Exercıcio 1.15 — Repita o Exercıcio 1.14 aplicando desta feita o
metodo do gradiente conjugado (Fletcher-Reeves) a minimizacao da
funcao de Rosenbrock. (Everitt (1987, pp. 25–26).)
Compare os resultados obtidos pelos diversos metodos. !
Textos de apoio: Alves(2000, pp. 204-207), Everitt (1987, pp. 25–27)
e Nocedal e Wright (1999, pp. 102–112).
22
1.2.5 Metodo de Broyden-Fletcher-Goldfarb-Shanno
O metodo de Broyden-Fletcher-Goldfarb-Shanno e provavelmente o
metodo Quasi-Newton mais popular. Tem a particularidade de
aproximar a matriz hessiana H"!(i)
#pela matriz B(i) que, na iteracao
i + 1, e definida por
B(i+1) = B(i) !B(i) %(i)%(i),B(i)
%(i),B(i) %(i) +u(i) u(i),
%(i), u(i)(1.40)
onde
%(i) = !(i+1) ! !(i) (1.41)
u(i+1) = "f"!(i+1)
#!"f
"!(i)
#. (1.42)
A direccao de pesquisa e neste caso dada por
d(i) = ![B(i)]!1"f"!(i)
#, (1.43)
a iteracao por
!(i+1) = !(i) ! &(i) d(i), (1.44)
e B(0) = H"!(0)
#.
Na Tabela 1.9 podera encontrar uma lista das rotinas da NAG (The
Numerical Algorithms Group Ltd.) com alguns dos metodos de opti-
mizacao ate agora descritos.
O endereco http://www.nag.co.uk/numeric/numerical libraries.asp
podera ser de alguma utilidade...
Tanto quanto se pode averiguar o package Mathematica possui uma
rotina denominada FindMinimum que faz uso do metodo do gradiente
(steepest descent) para a pesquisa numerica de pontos de mınimo.
23
Table 1.4: Algumas rotinas de minimizacao da NAG.
Rotina Metodo
E04DGF Gradiente conjugado
(requer que se forneca valores da funcao e do vector gradiente)
E04JAF Quasi-Newton
(requer que se forneca somente valores da funcao)
E04KAF Quasi-Newton — Broyden-Fletcher-Goldfarb-Shanno
(requer que se forneca valores da funcao e do vector gradiente)
E04KCF Newton-Raphson modificado
(requer que se forneca valores da funcao e do vector gradiente)
E04LAF Newton-Raphson modificado
(requer que se forneca valores da funcao, do gradiente e da matriz hessiana)
Exercıcio 1.16 — Faca um levantamento das rotinas/metodos de
minimizacao dos packages BMDP, Maple, Matlab, Mathematica, NAG,
R, SAS, SPSS, Statistica e outros packages com que esteja familia-
rizado. !
Exercıcio 1.17 — Os habitantes de determinada populacao sofrem
de uma doenca congenita que afecta a visao e cujos efeitos se tornam
mais evidentes com a idade. Foram recolhidas amostras de 50 pessoas
de 5 grupos etarios, tendo-se registado o numero de pessoas cegas na
Tabela 1.5.
Considere desta feita o modelo de regressao logıstica com variavel
resposta Yi % Binomial(ni, pi), onde
E(Yi|xi) = n' pi
= n' exp(!1 + !2xi)
1 + exp(!1 + !2xi), (1.45)
24
— ou, equivalentemente,
ln
'pi
1 + pi
(= !1 + !2xi (1.46)
Table 1.5: Frequencia de pessoas cegas por grupo etario.
Idade (xi) 20 35 45 55 70
Total de pessoas (ni) 50 50 50 50 50
No. pessoas cegas (yi) 6 17 26 37 44
— e determine as estimativas de maxima verosimilhanca dos parame-
tros do modelo utilizando um metodo de optimizacao a sua escolha.
!
Exercıcio 1.18 — Em determinada experiencia planeada para
simular uma operacao de producao, solicita-se a um funcionario que
desempenhe uma tarefa rotineira repetidamente durante um perıodo
de tempo fixo. A experiencia e efectuada com uma maquina que opera
as velocidades 1, 2, 3, 4 e 5.
Registou-se o numero de erros cometidos pelo funcionario em 25 perıo-
dos de tempo iguais, 5 para cada velocidade, tendo-se obtido a seguinte
tabela de dados:
Table 1.6: No. de erros cometidos para cada velocidade.
Velocidade (xi) 1 2 3 4 5
No. erros (yi) 2 7 25 47 121
Assuma que o numero de erros cometidos Yi e uma v.a. com dis-
tribuicao de Poisson(mi), quando a velocidade a que opera a maquina
e igual a xi, onde
ln(mi) = [E(Yi|xi)] = !1 + !2xi. (1.47)
25
Obtenha as estimativas de maxima verosimilhanca dos parametros
deste modelo log-linear utilizando o Fisher’s scoring method. !
Texto de apoio: Nocedal e Wright (1999, pp. 193–201).
1.2.6 Aplicacoes a modelos lineares generalizados
Os modelos de regressao linear, logıstica e log-linear descritos em
exemplos anteriores sao casos particulares do que usualmente se
denomina de modelos lineares generalizados.
Um modelo linear generalizado tem a particularidade de possuir:
• uma componente aleatoria — Y1, . . . , Yn sao v.a.s indepen-
dentes (respostas) tais que
E[Yi|xi(1), . . . , xi(p)] = mi, (1.48)
onde xi(1), . . . , xi(p) sao os valores das p variaveis explicativas
associadas a i!esima resposta (i = 1, . . . , n);
• uma componente sistematica — o preditor linear
$i = !1xi(1) + . . . + !pxi(p); (1.49)
• e uma funcao de ligacao entre as componentes aleatoria e sis-
tematica
&(mi) = $i. (1.50)
Na Tabela 1.7 podem encontrar-se as funcoes de ligacao dos modelos
de regressao linear, logıstica e log-linear.
Qualquer destas funcoes de ligacao define-se para valores reais logo a
maximizacao da funcao de log-verosimilhanca em ordem aos !j’s e um
problema de optimizacao irrestrita.
26
Table 1.7: Algumas funcoes de ligacao.
Modelo Funcao de ligacao #(mi)
Regressao linear mi
Regressao logıstica ln"
mini!mi
#onde mi = nipi
Regressao log-linear ln(mi)
O software estatıstico GLIM assume que a f.p. da v.a. resposta Y (ou
f.d.p. se a v.a. resposta for contınua) possui a seguinte forma generica:
fY (y) = exp
2y( ! b(()
a(%)+ c(y, %)
3. (1.51)
Exercıcio 1.19 — Apos ter completado a tabela seguinte, onde
a(%) = %,
Modelo % b(%) $ c(y, $)
normal(µ,&2) µ 12%2 &2 !1
2 ')
y2
!2 + ln(2'&2)*
Poisson(µ) ln(µ) 1
binomial(N, p) N ln(1 + e")
gama((, #µ ) ((! 1) ln(y) + ( ln(()! ln[!(()]
demonstre que, para uma v.a. generica Y , se tem E(Y ) = b*(() e
V (Y ) = b**(()a(%). Verifique ainda estes resultados para as quatro
distribuicoes aqui consideradas. !
E altura de se falar da estimacao de maxima verosimilhanca do
vector de parametros ! = (!1, . . . , !p) do preditor linear
$i = !1xi(1) + . . . + !pxi(p).
Para tal e necessario obter a funcao de log-verosimilhanca no contexto
de um modelo linear generalizado, com base no vector dos valores
27
observados das respostas y = (y1, . . . , yn) e na matriz n ' p com os
valores das variaveis explicativas X = [xi(j)]i=1,...,n;j=1,...,p:
ln L(!|y,X) =n4
i=1
.yi(i ! bi((i)
a(%)+ ci(yi, %)
/(1.52)
Apesar de a Equacao (1.52) estar escrita a custa dos (i’s convem
realcar que a maximizacao se fara em relacao ao vector de parametros
! de que depende o preditor linear.
Assim — ao considerar-se que
Li =yi(i ! bi((i)
a(%)+ ci(yi, %), (1.53)
ao relembrar-se que mi = E(Yi) = b*((i) e dmi
d%i= b**((i), e ao tomar-se
wi =1
V (Yi)
'dmi
d$i
(2
, (1.54)
— conclui-se que, para r = 1, . . . , p,
" ln L(!|y,X)
"!r=
n4
i=1
"Li
"(i
d(i
dmi
dmi
d$i
d$i
d!r
=n4
i=1
wi(yi !mi)d&(mi)
dmixi(r) (1.55)
Exercıcio 1.20 — Prove o resultado (1.55) e calcule
"2 ln L(!|y,X)
"!r"!s(1.56)
por forma a verificar que a matriz de informacao de Fisher satisfaz
I(() =
5!E
6"2 ln L(!|y,X)
"!r"!s
78
r,s=1,...,p
=n4
i=1
wixi(r)xi(s). (1.57)
Defina por fim a iteracao do Fisher’s scoring method, por sinal usada
no GLIM. !
28
Exercıcio 1.21 — Retome o Exercıcio 1.17 referente a um modelo
de regressao logıstica cuja variavel resposta e o numero de pessoas
afectadas pela cegueira para o grupo etario i com idade xi que verifica
Yi % Binomial(ni, pi), onde
E(Yi|xi) = n' pi
= n' exp(!1 + !2xi)
1 + exp(!1 + !2xi). (1.58)
(a) Tirando partido do vector gradiente e matriz hessiana deriva-
dos nesta subseccao, expresse a iteracao do metodo de Newton-
Raphson para a obtencao das estimativas de maxima verosimi-
lhanca a custa de uma equacao do tipo
A(i)!(i) = b(i) (1.59)
onde A(i) e uma matriz 2'2 e b(i) um vector 2'1 que dependem
exclusivamente de !(i)1 e !(i)
2 .
(b) Verifique que as entradas de A(i) e b(i) se obtem a custa das que
figuram na Equacao (1.57). !
Texto de apoio: Everitt (1987, pp. 56–58).
29
1.3 Alguns algoritmos para o problema de mıni-
mos quadrados nao lineares
As tecnicas de optimizacao descritas nas seccoes anteriores requerem
um numero consideravel de operacoes, pelo que nao e de estranhar
que a sua aplicacao rotineira no domınio da Estatıstica so tenha sido
possıvel com o advento de computadores muito rapidos.
Esta seccao concentrar-se-a em alguns algoritmos para o problema de
mınimos quadrados nao lineares. Estes resultam por vezes de melho-
rias de metodos de optimizacao ja existentes, melhorias estas possıveis
dada a estrutura especıfica do problema. Estes algoritmos aliados a
velocidade dos computadores dos dias de hoje permitem resolver pro-
blemas de estimacao pelo metodo dos mınimos quadrados no
contexto da regressao nao linear, algo impensavel ha, por exemplo,
tres decadas atras.
No Exercıcio 1.2 foram obtidas estimativas dos parametros do modelo
de regressao linear simples — E(Yi|xi) = !1 + !2xi — recorrendo para
o efeito ao metodo dos mıninos quadrados. Estas estimativas obtem-se
por minimizacao da soma de quadrados
h(!) = h(!1, !2) =n4
i=1
[yi ! (!1 + !2xi)]2 (1.60)
em ordem a (!1, !2). Ter-se-a obtido as duas bem conhecidas
expressoes para as estimativas dos mınimos quadrados:
!1 = y ! !2 x (1.61)
!2 =
+ni=1 xiyi ! n x y+n
i=1 x2i ! n x2 . (1.62)
30
No entanto, alguns dos problemas aplicados de maior interesse en-
volvem uma v.a. resposta Y categorica/discreta em vez de contınua
ou entao que se relaciona de modo nao linear com a(s) variavel(is)
explicativa(s).
Basta pensar nos modelos de regressao logıstica e log-linear e no
seguinte modelo descrito por Everitt (1987, p. 43) que diz respeito
a concentracao de ioes de ligados (B) e livres (F) em equilıbrio num
receptor6 e dada pela equacao nao linear
B =!1F
!2 + F(1.63)
onde !1 e !2 se denominam afinidade e capacidade do sistema receptor,
respectivamente.7 E claro que este modelo poderia ser transformado
num modelo de regressao linear simples ao considerar-se desta feita as
variaveis de 1/B e 1/F e o modelo
1
B=
1
!1+
!2
!1
1
F. (1.64)
e obter as estimativas de mınimos quadrados para a ordenada na
origem 1!1
e o declive !2
!1. No entanto, este tipo de linearizacao do
modelo original raramente e possıvel, pelo que o utilizador se ve con-
frontado com um problema de minimizacao numerica a resolver por re-
curso a metodos como o do gradiente (steepest descent), o de Newton-
Raphson, o Fisher’s scoring method e o metodo do gradiente conju-
gado, entre outros.
6Traducao livre de concentration of bound (B) and free (F) ligands at equilibrium in a receptorassay.
7Na versao estatıstica do modelo deve figurar um erro aleatorio no segundo membro da respectivaequacao.
31
De um modo geral lida-se com
• Yi, a i!esima resposta aleatoria (i = 1, . . . , n),
• xi(1), . . . , xi(p), os valores das p variaveis explicativas asso-
ciadas a i!esima resposta (i = 1, . . . , n) e
• ! = (!1, . . . , !p), o vector de p parametros.
Partir-se-a do princıpio que o valor esperado de Yi se relaciona fun-
cionalmente com os valores xi(1), . . . , xi(p) atraves do preditor
E[Yi|xi(1), . . . , xi(p)] = m[xi(1), . . . , xi(p); !]
= mi. (1.65)
Eis alguns exemplos triviais de preditores:
• linear multiplo — E(Yi|xi) = !1xi(1) + . . . + !pxi(p)
• nao lineares (simples) — E(Yi|xi) = !1 + !2e!!3xi, E(Yi|xi) =exp(!1+!2xi)
1+exp(!1+!2xi), etc.
Em qualquer dos casos pretende minimizar-se a seguinte soma de
quadrados:
h(!) =n4
i=1
h2i (!)
=n4
i=1
9yi !m[xi(1), . . . , xi(p); !]}2
=n4
i=1
(yi !mi)2 (1.66)
em ordem a !.8
8Caso V (Yi) nao seja constante e dependa de i e usual minimizar a seguinte soma de quadradospesados:
+ni=1 wi (yi !mi)
2 onde os wi’s sao pesos escolhidos adequadamente.
32
Saliente-se que o vector gradiente, g(!) = "h(!), e a matriz hessiana
de h(!), H(!) = "2h(!), possuem entradas j (j = 1, . . . , p) e (j, k)
(j, k = 1, . . . , p) iguais a
"h(!)
"!j= 2
n4
i=1
hi(!)"hi(!)
"!j(1.67)
"2h(!)
"!j"!k= 2
:n4
i=1
"hi(!)
"!j
"hi(!)
"!k+
n4
i=1
hi(!)"2hi(!)
"!j"!k
;(1.68)
respectivamente. Entao, ao considerar-se o vector (n' 1)
H(!) = [hi(!)]i=1,...,n , (1.69)
a matriz jacobiana (n' p)
J(!) =
."hi(!)
"!j
/
i=1,...,n;j=1,...,p
(1.70)
e ainda as matrizes auxiliares (p' p)
"2hi(!) =
."2hi(!)
"!j"!k
/
j,k=1,...,p
(1.71)
Q(!) =n4
i=1
hi(!)"2hi(!), (1.72)
pode concluir-se que o vector gradiente e a matriz hessiana da
soma de quadrados h(!) sao dados — matricialmente — por
g(!) = 2J(!),H(!) (1.73)
H(!) = 2,J(!),J(!) + Q(!)
-, (1.74)
respectivamente.
Esta-se, por fim, em condicoes de escrever as iteracoes de diversos
metodos de optimizacao devidamente adaptados a minimizacao nume-
rica de somas de quadrados.
33
1.3.1 Metodos de Newton-Raphson, Gauss-Newton e Newton-
Raphson modificado
Ao dispor do vector gradiente e da matriz hessiana de h(!) a iteracao
metodo de Newton-Raphson e dada por
!(i+1) = !(i) !)H
"!(i)
#*!1g
"!(i)
#
= !(i) !.J
"!(i)
#,J
"!(i)
#+ Q
"!(i)
#/!1
'J"!(i)
#,H
"!(i)
#. (1.75)
Uma alteracao possıvel ao metodo de Newton-Raphson por forma
a aligeirar o trabalho numerico passa por considerar desprezavel a
matriz Q"!(i)
#em H
"!(i)
#o que e perfeitamente razoavel ja que o
factor hi
"!(i)
#se torna cada vez mais pequeno a medida que !(i) -
!, tal como acontece aquando da aplicacao do metodo dos mınimos
quadrados ao modelo de regressao linear. De notar que ao efectuar
esta modificacao deixou de ser necessario calcular segundas derivadas
e a iteracao passa a:
!(i+1) = !(i) !.J
"!(i)
#,J
"!(i)
#/!1
J"!(i)
#,H
"!(i)
#. (1.76)
Este algoritmo de minimizacao sera denominado de metodo de
Gauss-Newton como o fazem Nocedal e Wright (1999, pp. 259–264)
(ou de metodo de Newton-Raphson linearizado).
Exercıcio 1.22 — Prove que a iteracao em (1.76) corresponde a da
aplicacao do metodo dos mınimos quadrados apos uma
linearizacao do preditor mi a custa de uma expansao de Taylor de
primeira ordem. !
34
Exercıcio 1.23 — Considerou-se que a evolucao do numero de ven-
das y de um software de sistema ao longo de 9 meses desde o seu
lancamento (t = 0, 1, . . . , 9) e bem modelada pela seguinte equacao
diferencial
dy
dt+ !1y = !2 + !3t, (1.77)
cuja solucao e
y = k0 + k1t + k2e!!1t, (1.78)
onde k0 = !1!2!!3
!21
, k1 = !3
!1, 2 = !3+!1!2(!1!1)
!21
.
(a) Averigue graficamente a razoabilidade do modelo de regressao
nao linear sugerido acima ao conjunto de dados da Tabela 1.8.
Table 1.8: Evolucao de vendas de software.
Tempo (ti) Vendas (yi)
0 1990
1 2025
2 2440
3 2515
4 2800
5 3060
6 3085
7 3225
8 3220
9 3240
(b) Obtenha as estimativas de mınimos quadrados dos parametros
(!1, !2, !3) recorrendo para o efeito ao metodo de Gauss-Newton
(ou Newton-Raphson linearizado) com estimativa inicial:
!(0) = (!(0)1 , !(0)
2 , !(0)3 ) = (0.6, 1900, 48).
35
!
A NAG dispoe de algumas rotinas que permitem obter estimativas
de mınimos quadrados.
Table 1.9: Algumas rotinas para o metodo dos mınimos quadrados (NAG).
Rotina Metodo
E04HFF Newton-Raphson
(requer que se forneca o gradiente e a matriz hessiana)
E04GCF Quasi-Newton
(requer que se forneca o vector gradiente;
a matriz hessiana e aproximada de modo comparavel ao metodo BGFS)
E04GEF Newton-Raphson modificado
(requer que se forneca o vector gradiente;
as segundas derivadas sao aproximadas por diferencao finitas)
E04KCF Newton-Raphson modificado
(as primeiras e segundas derivadas sao aproximadas)
Estas rotinas baseam-se, por exemplo, no metodo de Newton-
Raphson modificado que faz uso da constante &(i) e de uma lin-
earizacao da matriz hessiana (sob certas condicoes) e possui iteracao
dada por:
• caso a reducao da soma de quadrados na ultima iteracao tiver
sido grande,
!(i+1) = !(i)! &(i)')H
"!(i)
#*!1' J
"!(i)
#,H
"!(i)
#,(1.79)
• caso contrario,
!(i+1) = !(i) ! &(i).J
"!(i)
#,J
"!(i)
#/!1
'J"!(i)
#,H
"!(i)
#, (1.80)
36
onde &(i) se obtem por minimizacao unidimensional de
%(&) = h
.!(i) ! &'
)H
"!(i)
#*!1g
"!(i)
#/. (1.81)
Exercıcio 1.24 — Considere o seguinte conjunto de dados que se re-
portam a concentracao de ioes de ligados (B) e livres (F) em equilıbrio
num receptor.
Table 1.10: Concentracao de ioes de livres (F) e ligados (B) em equilıbrio num
receptor.
Livres (fi) Ligados (bi)
84.6 12.1
83.9 12.5
148.2 17.2
147.8 16.7
463.9 28.3
463.8 26.9
964.1 37.6
967.6 35.8
1925.0 38.5
1900.0 39.9
(a) Elabore um grafico que permite averiguar a razoabilidade do mo-
delo linear
1
B=
1
!1+
!2
!1
1
F. (1.82)
Estime os parametros !1 e !2 pelo metodo dos mınimos quadrados.
(b) Obtenha agora as estimativas dos mınimos quadrados dos para-
metros do modelo nao linear
B =!1F
!2 + F(1.83)
37
recorrendo para o efeito aos metodos de Newton-Raphson e de
Newton-Raphson modificado com !(0) = (10.00, 50.00) (Everitt
(1987, pp. 45–47)).
Compare os resultados obtidos pelos dois metodos de minimizacao
numerica.
(c) Obtenha estimativas da variancia dos estimadores dos parametros
obtidos pelo metodo de Newton-Raphson. !
Exercıcio 1.25 — Determinada reaccao quımica pode ser descrita
pelo modelo de regressao nao linear
Y =!1!3X1
1 + !1X1 + !2X2+ # (1.84)
onde: Y representa a taxa de reaccao; X1 e X2 sao pressoes parciais
do reagente e do produto (respectivamente); !1 e !2 sao constantes de
absorcao em equilıbrio para o reagente e o produto (respectivamente);
e !3 e a constante relativa a taxa de reaccao efectiva. Os dados refe-
rentes a 13 reaccoes quımicas encontram-se na Tabela 1.11.
(a) Obtenha as estimativas de mınimos quadrados dos parametros
(!1, !2, !3) recorrendo ao metodo de Newton-Raphson modificado
com estimativa inicial
!(0) = (!(0)1 , !(0)
2 , !(0)3 ) = (3.0, 12.0, 0.7). (1.85)
(b) Produza os graficos que entender razoavel para averiguar o ajus-
tamento do modelo ao conjunto de dados. !
1.3.2 Metodo de Levenberg-Marquardt
A motivacao deste metodo passa pela constatacao do seguinte facto:
longe do ponto de mınimo a matriz hessiana podera nao ser definida
38
Table 1.11: Pressoes parciais do reagente e do produto e taxa de reaccao.
Reaccao Pressao reagente Pressao produto Taxa reaccao
i xi(1) xi(2) yi
1 1.0 1.0 0.126
2 2.0 1.0 0.219
3 1.0 2.0 0.076
4 2.0 2.0 0.126
5 0.1 0.0 0.186
6 3.0 0.0 0.606
7 0.2 0.0 0.268
8 3.0 0.0 0.614
9 0.3 0.0 0.318
10 3.0 0.8 0.298
11 3.0 0.0 0.509
12 0.2 0.0 0.247
13 3.0 0.8 0.319
positiva. Uma possibilidade sera perturbar a matriz hessiana por
forma a que seja, ao longo das iteracoes, definida positiva. E deste
modo que surge uma variante do metodo de Newton-Raphson, o
metodo de Levenberg-Marquardt cuja iteracao e:
!(i+1) = !(i) !.J
"!(i)
#,J
"!(i)
#+ #(i) Ip
/!1
'J"!(i)
#,H
"!(i)
#, (1.86)
onde Ip e a matriz identidade (p' p), e #(i) > 0.
A constante #(i) deve ser escolhida de tal modo que a matriz, que
substitui a hessiana, seja definida positiva. Recomenda-se que se
comece por considerar um valor modesto para #(0) (e.g 0.001). Nas
iteracoes seguintes a escolha deve ser feita com algum criterio:
• se h"!(i+1)
## h
"!(i)
#repete-se a iteracao considerando um
39
valor superior para #(i) (e.g. 10 vezes superior ao tomado anterior
nessa mesma iteracao);
• se h"!(i+1)
#< h
"!(i)
#deve passar-se a iteracao seguinte con-
siderando #(i+1) < #(i) (e.g. #(i+1) = #(i)/10).
Exercıcio 1.26 — Os tempos dos vencedores das finais olımpicas dos
100, 200, 400 e 800 metros de 1900 a 1976 encontram-se na seguinte
tabela:
Table 1.12: Tempos (em s) de finais olımpicas dos 100, 200, 400 e 800 metros.
Ano 100m 200m 400m 800m
1900 10.80 22.20 49.40 121.401904 11.00 21.60 49.20 116.001908 10.80 22.60 50.00 112.801912 10.80 21.70 44.20 111.901920 10.80 22.00 49.60 113.401924 10.60 21.60 47.60 112.401928 10.80 21.80 47.80 111.801932 10.30 21.20 46.20 109.801936 10.30 20.70 46.50 112.901948 10.30 21.10 46.20 109.201952 10.40 20.70 45.90 109.201956 10.50 20.60 46.70 107.701960 10.20 20.50 44.90 106.301964 10.00 20.30 45.10 105.101968 9.90 19.80 43.80 104.301972 10.14 20.00 44.66 105.901976 10.06 20.23 44.26 103.50
Em 1982, Chatterjee e Chatterjee sugeriram o seguinte modelo de
regressao nao linear sugerido para quaisquer dos tempos:
ti = !1 + !2e!!3'i, !2, !3 > 0. (1.87)
Obtenha as estimativas de mınimos quadrados dos tres parametros do
modelo considerando as estimativas iniciais da Tabela 5.4 da p. 47 de
Everitt (1987). Comente os resultados. (Everitt (1987, pp. 46–47).) !
40
Textos de apoio (seccao): Everitt (1987, pp. 42–48) e Nocedal e
Wright (1999, pp. 250–273).
41
1.4 Introducao a optimizacao restringida
Ate ao momento so foram considerados problemas de optimizacao
(numerica) em que os parametros da funcao a optimizar nao estao
sujeitos a qualquer tipo de restricao. E altura de considerar o caso da
optimizacao restringida.
Nao se tratara de um exercıcio esteril mas sim de ir ao encontro de
uma necessidade premente em Estatıstica.
Basta pensar no problema da estimacao de maxima verosimilhanca
num contexto Multinomial. Com efeito, o vector de frequencias
absolutas (aleatorias) de p classes possıveis para um conjunto de n
observacoes e um vector aleatorio
N % Multinomialp!1(n, !)
que depende de um vector de probabilidades com dimensao p, ! =
(!1, . . . , !p!1, !p), sujeito a restricaop4
i=1
!i = 1.
E necessario estimar somente k!1 parametros ja que !p = 1!+p!1
i=1 !i
(daı o ındice p ! 1 na notacao) mas tendo sempre bem presente a
restricao.
O problema acabado de descrever resolve-se recorrendo ao bem
conhecido metodo dos Multiplicadores de Lagrange que nao e
adequado a resolucao de alguns problemas de optimizacao restringida.
Alias, nao existe um metodo geral que permita obter o ponto de
mınimo de uma funcao sujeita a uma restricao e a optimizacao
restringida e de longe mais sofisticada que a optimizacao irrestrita.
A formulacao geral destes problemas pode ser feita do seguinte modo.
Trata-se da obtencao do ponto de mınimo
42
arg min!$IRp
f(!) (1.88)
sujeito ao conjunto de restricoes:
ci(!) = 0, i $ Eci(!) # 0, i $ I.
(1.89)
Tal como anteriormente f(!) e a funcao objectivo, ao passo que as
restricoes se dividem em dois grupos:
• #E restricoes envolvendo igualdades; e
• #I restricoes envolvendo desigualdades.
Ao considerar-se o conjunto
! = {! $ IRp : ci(!) = 0, i $ E ; ci(!) # 0, i $ I} (1.90)
o problema de optimizacao reduz-se simplemente a obtencao de
arg min!$"
f(!). (1.91)
Podia julgar-se a partida que o facto de se acrescentar restricoes ao
conjunto inicial de valores possıveis dos parametros IRp melhoraria
o problema da destrinca entre ponto de mınimo global e pontos de
mınimo locais uma vez que tal conjunto se reduz a !. No entanto, as
restricoes podem agravar o problema de optimizacao senao veja-se o
exemplo da obtencao de
arg min!$"
||!)||2. (1.92)
onde
! = {! $ IRp : ||!||2 # 1}. (1.93)
Ora, sem a restricao ter-se-ia um unico ponto de mınimo global ! = 0
ao passo que com a restricao passa a ter-se uma infinidade de solucoes
— todo e qualquer vector de IRp de norma unitaria.
43
1.4.1 Metodo dos multiplicadores de Lagrange
Comece-se por considerar que a funcao objectivo f(!) esta sujeita a
m (m < p) restricoes envolvendo somente igualdades (ci(!) =
0, i $ E), i.e., #E = m, #I = 0.
Entao o problema de optimizacao passa por considerar m constantes
e uma nova funcao objectivo e pela resolucao de uma equacao envol-
vendo o gradiente desta nova funcao com p + m parametros:
• &i, i = 1, . . . ,m, tambem denominados de multiplicadores de
Lagrange (um para cada restricao);
• g(!; &1, . . . ,&m) = f(!)!+m
i=1 &ici(!), a funcao lagrangeana;
• "g(!; &1, . . . ,&m) = 0.
De facto se a funcao objectivo f(!) admitir um extremo local, quando
sujeita a m restricoes, entao existirao m constantes reais &1, . . . ,&m
tais que
"f(!) =m4
i=1
&i"ci(!) = 0 (1.94)
em todos os pontos de extremo local. Este metodo e valido quando
o numero de restricoes m for inferior ao numero de parametros p e
se nem todos os jacobianos das funcoes ci(!), com respeito a m dos
parametros (!1, . . . , !p), forem nulos no ponto de extremo.
De um modo geral e a Equacao (1.94) — que se traduz nas p + m
equacoes seguintes:
""!j
g(!; &)|!=!;#=# = 0, j = 1, . . . , p"
"#ig(!; &), |!=!;#=# = 0, i $ E ,
(1.95)
— que necessita de resolucao numerica para a obtencao do ponto de
mınimo.
44
Exercıcio 1.27 — Prove que a expressao geral das estimativas de
maxima verosimilhanca de ! = (!1, . . . , !p!1, !p), com base nos valores
observados de um vector de frequencias aleatorias
N % Multinomialp!1(n, !), (1.96)
i.e.,
P (N = n) = P (N1 = n1, . . . , Np!1 = np!1, Np = np)
=n!<p
i=1 ni!
p=
i=1
!nii , (1.97)
e ! = (n1
n , . . . , np!1
n , np
n ). ! e pois o vector das frequencias relativas
(observadas). !
Deve acrescentar-se que o exercıcio anterior nao requer o recurso de
nenhuma tecnica de optimizacao numerica.
No entanto, caso as probabilidades !i dependessem de, e.g. dois
parametros µ e )2, ser-se-ia imediatamente tentado a obter as
frequencias relativas observadas e a invocar a propriedade da invarian-
cia dos estimadores de maxima verosimilhanca para obter µ e )2, bas-
tando para isso resolver duas equacoes. Contudo nao deve proceder-se
deste modo mas sim considerar a funcao objectivo f(µ, )2) e so depois
aplicar um procedimento de optimizacao numerica.
Exercıcio 1.28 — Com o objectivo de estudar o tempo ate falha
de certo equipamento electronico (em milhares de horas), X, foram
recolhidas e ordenadas 50 observacoes na Tabela 1.13.
Dada a natureza dos dados e alguns estudos previos, suspeita-se que as
observacoes sejam provenientes de um modelo Pareto com parametros
' e (, i.e.,
FX(x) = 1! '%
x%, x # '. (1.98)
45
Table 1.13: Tempos ate falha de equipamento electronico.
2.001 2.007 2.017 2.026 2.036 2.075 2.077 2.082 2.101 2.137
2.156 2.161 2.181 2.196 2.214 2.227 2.320 2.367 2.424 2.443
2.444 2.449 2.478 2.520 2.579 2.581 2.598 2.637 2.691 2.715
2.720 2.825 2.863 2.867 3.016 3.176 3.360 3.413 3.567 3.721
3.727 3.769 3.803 4.329 4.420 4.795 6.009 6.281 6.784 8.305
(a) Prove que a estimativa de maxima verosimilhanca de (', () e
(2.001, 2.822).
(b) Obtenha as frequencias observadas absolutas das classes
[2.001, 2.1656], (2.1656, 2.3981], (2.3981, 2.7686], (2.7686, 3.5394]
e (3.5394, ++) e prove que estas classes sao equiprovaveis sob a
hipotese X % Pareto(2.001, 2.822).
(c) Admita agora que nao dispunha da amostra ordenada mas so-
mente das frequencias absolutas obtidas em (b). Reavalie a esti-
mativa de maxima verosimilhanca de (', ().
(d) Obtenha a estimativa de maxima verosimilhanca de (', () sujeita
a restricao:
P [X $ (3.5394, ++)|X % Pareto(', ()] = 0.2. (1.99)
!
Nas Seccoes 8.3, 8.9 e 8.10 de Khuri (1993) podem encontrar-se mais
exemplos da aplicacao do metodo de multiplicadores de Lagrange a
Estatıstica na minimizacao de funcoes objectivo sujeitas a restricoes
envolvendo exclusivamente igualdades, no ambito, nomeadamente, da
metodologia de superfıcies de resposta, da determinacao de estimativas
centradas com norma quadratica mınima e da obtencao de intervalos
de Sche"e.
46
Em Nocedal e Wright (1999, pp. 321–327) pode encontrar-se a
descricao do metodo dos multiplicadores de Lagrange aplicado a
situacoes em que #I > 0, i.e., em que ha pelo menos uma restricao
envolvendo uma desigualdade.
Nos Capıtulos 5 e 6 de Gill et al. (1981) e dado um tratamento com-
pleto as situacoes em que a minimizacao esta sujeita a restricoes li-
neares e nao lineares, respectivamente, pelo que merecem uma leitura
mais cuidada.
Termina-se este capıtulo citando Robert Fletcher que descreve a
optimizacao como uma “fascinante mistura de teoria e calculo,
heurısticas e rigor” (Nocedal e Wright (1999, p. x)) e, acrescente-se,
de uma importancia crucial em Estatıstica.
Texto de apoio: Nocedal e Wright (1999, pp. 314–357).
47
1.5 Referencias
Alves, C.J.S. (2000). Fundamentos de Analise Numerica (I) — Teoria
e Exercıcios. Seccao de Folhas — Instituto Superior Tecnico.
Everitt, E.S. (1987). Introduction to Optimization Methods and their
Application in Statistics. Chapman and Hall, Ltd. (QA278–279/1.
EVE.36891)
Gill, P.E., Murray, W. e Wright, M.H. (1981). Practical Optimization.
Academic Press, Inc. (06-13.4880.30580)
Nocedal, J. e Wright, S.J. (1999). Numerical Optimization. Springer-
Verlag, Inc. (QA297.5.NOC.50578)
Khuri, A.I. (1993). Advanced Calculus with Applications in Statistics.
John Wiley & Sons, Inc.
48
Estatıstica Computacional — Modulo 1
Notas de apoio (Cap. 2)
Manuel Cabral Morais
Seccao de Estatıstica e Aplicacoes
Instituto Superior Tecnico
Lisboa, Setembro–Outubro de 2003
Contents
2 Geracao de numeros aleatorios. Metodo de Monte
Carlo 49
2.1 Geracao de quantidades aleatorias discretas e contınuas
por transformacao de numeros aleatorios. Aplicacao a
distribuicoes especıficas. . . . . . . . . . . . . . . . . . 51
2.1.1 Geracao de numeros pseudo-aleatorios da dis-
tribuicao uniforme . . . . . . . . . . . . . . . . 52
2.1.2 O metodo da transformada inversa . . . . . . . 54
2.1.3 Alguns algoritmos de geracao de numeros pseudo-
aleatorios de algumas distribuicoes . . . . . . . 58
2.1.4 Metodos de aceitacao/rejeicao . . . . . . . . . . 71
2.2 Metodo de Monte Carlo . . . . . . . . . . . . . . . . . 76
2.2.1 Monte de Carlo hit-or-miss . . . . . . . . . . . . 77
2.2.2 Monte de Carlo ordinario . . . . . . . . . . . . . 79
2.2.3 Tecnicas de reducao de variancia de estimadores
de Monte Carlo . . . . . . . . . . . . . . . . . . 81
2.2.4 Tecnicas de reducao de variancia na simulacao
do sistema M/M/1 . . . . . . . . . . . . . . . . 86
2.2.5 Integrais multiplos . . . . . . . . . . . . . . . . 90
2.2.6 Metodo de Monte Carlo em inferencia estatıstica 91
2.3 Referencias . . . . . . . . . . . . . . . . . . . . . . . . 93
i
Chapter 2
Geracao de numeros aleatorios.
Metodo de Monte Carlo
O papel da simulacao na maior parte das ciencias tem aumentado
de importancia de ha umas decadas a esta parte. A crescente ca-
pacidade/velocidade de calculo dos computadores a par da evolucao
notoria de diversos metodos de simulacao sao responsaveis por se con-
siderar que a simulacao e uma abordagem metodologica possıvel
para a resolucao aproximada de problemas como o e a abordagem
experimental.
Nao surpreende pois que os metodos de simulacao sejam usados
em areas como a fısica, a quımica, a criptografia, a biotecnologia, a
industria e, naturalmente, a Estatıstica.
Nesta ultima area e frequente ser preciso identificar a distribuicao
(exacta) ou os quantis de uma estatıstica, calcular probabilidades de
eventos que dizem respeito a vectores aleatorios com densidades nao
necessariamente triviais (estamos a falar de integrais multiplos sofisti-
cados), ou a funcao potencia de um teste de hipoteses.
Para o efeito sera necessario obter concretizacoes de amostras
aleatorias — ou seja, simular/gerar amostras — em condicoes
49
absolutamente
• controladas e
• reprodutıveis,
e de modo eficiente e passıvel de documentacao cuidada e completa.
Este capıtulo debrucar-se-a sobre diversos metodos de obtencao de
numeros (pseudo-)aleatorios de diversas distribuicoes univariadas e
multivariadas, sobre o metodo de Monte-Carlo e sobre metodos de
reducao de variancia.
Texto de apoio: Gentle (1998, pp. vii–ix).
50
2.1 Geracao de quantidades aleatorias discretas
e contınuas por transformacao de numeros
aleatorios. Aplicacao a distribuicoes especı-
ficas.
Os estatısticos necessitam muitas vezes de gerar amostras provenientes
de populacoes ou distribuicoes especıficas e como tal e fundamental
disporem de uma fonte de numeros aleatorios.
E com vista a suprir esta necessidade que era usual muitos livros
de texto incluirem em apendice tabela de numeros aleatorios.
Veja-se, por exemplo, as paginas 7 a 10 da seguinte obra em por-
tugues: Murteira, B.J.F. (1980). Probabilidades e Estatıstica (Vol. II).
McGraw-Hill de Portugal, Lda.
Era com base em tabelas destas que se seleccionava amostras de uma
populacao ou se decidia uma atribuicao de tratamentos num planea-
mento experimental. Por exemplo, para obter uma amostra casual
de uma populacao bastava atribuir um numero a cada elemento da
populacao, entrando depois numa pagina e coluna de qualquer tabela
de numeros aleatorios, anotando os numeros obtidos e retirando da
populacao os elementos correspondentes. As tabelas de numeros
aleatorios sao construıdas de forma a garantir a natureza aleatoria
dos numeros que delas constam. Por sinal, os numeros das tabelas de
Murteira (1980, pp. 7–10) foram obtidos com uma especie de roleta
electronica e submetidos a numerosos ensaios para testar a
casualidade dos numeros gerados.
Hoje em dia raramente se usa tabelas de numeros aleatorios. E de
longe mais usual recorrer a computadores para gerar numeros aleatorios.
A palavra aleatorios foi intencionalmente colocada em italico pois, na
51
verdade, um computador e incapaz de gerar numeros aleatorios como
se vera ja a seguir.
Texto de apoio: Gentle (1998, pp. 1–6).
2.1.1 Geracao de numeros pseudo-aleatorios da distribuicao
uniforme
Os numeros gerados por um computador sao obtidos com recurso
a geradores determinısticos com caracter recursivo — daı a
perda de aleatoriedade e a designacao de numeros
pseudo-aleatorios (n.p.a.). Estes numeros constituem uma sequencia
com a particularidade de os ultimos k numeros gerados serem res-
ponsaveis pela geracao do seguinte. Esta sequencia e finita e o seu
tamanho e usualmente denominado de perıodo ou tamanho do ci-
clo.
Os geradores determinısticos mais comuns sao sem sombra de duvida
os geradores congruenciais lineares.
Estes geradores foram propostos por D.H. Lehmer em 1948. De acordo
com este gerador cada numero gerado xi!1 determina recursivamente
o seguinte xi por intermedio da formula:
xi = (axi!1 + c) mod m, i = 1, 2, . . . , 0 " xi < m, (2.1)
onde a, c e m sao inteiros e x0 e outro inteiro frequentemente de-
nominado de semente ja que em conjunto com a, c e m definem
univocamente uma sequencia de numeros pseudo-aleatorios.
xi corresponde ao resto da divisao inteira de (axi!1 + c) por m.
Dividindo xi por m tem-se, para cada i e para valores de a e m fixos
convenientemente escolhidos, um numero
ui =xi
m(2.2)
52
aproximadamente Uniforme no intervalo (0,1).
Caso se considere c = 0 o gerador e denominado de gerador
congruencial multiplicativo e tem-se
xi = (axi!1) mod m, i = 1, 2, . . . , 0 " xi < m. (2.3)
Para c #= 0 o gerador e tambem denominado de gerador congruen-
cial misto.
A escolha de a, c e m requer algum cuidado ja que se pode correr
o risco de a sequencia de numeros pseudo-aleatorios rapidamente se
repetir. Senao veja-se o caso em que a = 3, c = 0, m = 30 e x0 = 1,
associado a sequencia {3, 9, 27, 21, 3, 9, 27, 21, . . .}.De facto, convem notar que o gerador produz quando muito m numeros
pseudo-aleatorios distintos antes de voltar a repetir a sequencia.
A NAG utiliza um gerador congruencial multiplicativo (c = 0), com
a = 1313 e m = 259, que possui um perıodo igual a 257 $ 1.44% 1017.
A semente x0 e determinada pelo relogio interno do computador mas
pode tambem ser pre-especificada por forma a permitir que se repita
a mesma sequencia de numeros pseudo-aleatorios, repeticao absoluta-
mente crucial em estudos comparativos.
O Capıtulo 6 de Morgan (1984) descreve testes estatısticos que per-
mitem averiguar se a sequencia gerada e consistente com a distribuicao
Uniforme(0, 1) e nao correlacionada.
Na seccao 3.5 de Morgan (1984) sao feitas consideracoes sobre resul-
tados teoricos que norteam a escolha de a, c e m.
Para uma descricao mais detalhada sobre as propriedades dos
geradores congruenciais lineares bem como a implementacao dos mes-
mos, consulte-se Gentle (1998, pp. 6–22).
53
Por outro lado, Gentle (1998, pp. 22–38) descreve outros geradores
congruenciais, como sao o caso dos
• geradores congruenciais multiplicativos multiplos
xi = (a1xi!1 + . . . + akxi!k) mod m,
• geradores congruenciais nao lineares
xi = (dx2i!1 + axi!1 + c) mod m,
• lagged Fibonacci
xi = (xi!j + . . . + xi!k) mod m,
ou ainda os geradores congruenciais combinados e os geradores
baseados em sistemas caoticos.
Textos de apoio: Gentle (1998, pp. 1–38) e Morgan (1984).
2.1.2 O metodo da transformada inversa
A geracao de numeros pseudo-aleatorios provenientes de distribuicoes
contınuas (e tambem discretas) distintas da Uniforme(0, 1) e usual-
mente efectuada tirando partindo do seguinte resultado teorico.
Teorema 2.1 Seja X uma v.a. contınua com f.d.p. f(x) e f.d. F (x) =
P (X " x) =! x!& f(t)dt, x ' IR. Entao a v.a.Y = F (X) — que
resulta da mera substituicao de x por X na expressao geral da f.d. de
X — verifica
Y = F (X) ( Uniforme(0, 1), (2.4)!
Este resultado, cuja demonstracao e trivial caso se considere a
restricao da f.d. de X para a qual F (x) e invertıvel, sugere o seguinte
algoritmo de obtencao de um numero pseudo-aleatorio da dis-
tribuicao de v.a. contınua X a custa de um (ou mais) numero(s)
pseudo-aleatorio(s) da distribuicao Uniforme(0, 1)
54
Metodo da transformada inversa (v.a. contınua) — O algoritmo
compreende os seguintes passos:
1. Gerar um numero pseudo-aleatorio u da distribuicao
Uniforme(0, 1).
2. Efectuar a atribuicao
x = F!1(u), (2.5)
quantil de ordem u da distribuicao da v.a. contınua X. !
Este metodo so e vantajoso quando existe expressao fechada para a
inversa da f.d. de X, i.e., para o quantil de ordem u, F!1(u).
De notar que, mesmos nos casos em que existe formula fechada para
a inversa da f.d., a avaliacao do numero pseudo-aleatorio x = F!1(u)
pode ser particularmente lenta e ser preferıvel recorrer a outro metodo
alternativo e mais rapido de obtencao do numero pseudo-aleatorio x.
Por outro lado, caso nao exista expressao fechada para a inversa
F!1(u), a obtencao deste quantil de ordem u passa pela resolucao
numerica da equacao F (x)! u = 0.
Nao surpreende pois que, para algumas distribuicoes, hajam outras
escolhas possıveis de algoritmos para a geracao de numeros pseudo-
aleatorios. Como refere Gentle (1998, p. 41), estes algoritmos diferem
em velocidade, precisao, necessidades de armazenamento na memoria
e complexidade do codigo.
Exercıcio 2.2 — Considere que X ( Exponencial(!), i.e.,
F (x) = 1! e!! x, x ) 0. (2.6)
Defina o Passo 2 do algoritmo de geracao de observacoes desta dis-
tribuicao.
Repita o exercıcio para as seguintes distribuicoes:
55
(a) X ( Weibull(", #)
f(x) ="
#
"x
#
#"!1
exp
$!
"x
#
#"%, x ) 0; (2.7)
(b) X ( Pareto(", #), i.e.,
F (x) = 1!&"
x
'#, x ) "; (2.8)
e ainda para
(c) a v.a.X com f.d.p. igual a f(x) = 2(x! 1), 0 " x " 1. !
Exercıcio 2.3 — Escreva um programa na linguagem de programacao
que entender mais razoavel para gerar 20 observacoes de cada uma das
distribuicoes contınuas do exercıcio anterior, recorrendo para o efeito
ao gerador congruencial multiplicativo utilizado pela NAG, i.e., com
a = 1313, c = 0, m = 259 e u0 = 1. !
Coloca-se, muito naturalmente, a questao se nao sera possıvel um
algoritmo similar ao apresentado para a geracao de numeros pseudo-
aleatorios respeitantes a distribuicoes discretas. A resposta a
questao e afirmativa. Basta pensar na seguinte definicao de quantil de
ordem u de uma v.a. discreta com f.d.F (x):
F!1(u) = inf{m ' IR : u " F (m)}, 0 < u < 1. (2.9)
Metodo da transformada inversa (v.a. discreta) — E natural que
se considere os seguintes passos para gerar observacoes de uma v.a. dis-
creta com f.d.F (x):
1. Gerar um numero pseudo-aleatorio u da distribuicao
Uniforme(0, 1).
56
2. Efectuar a atribuicao
x = F!1(u) = inf{m ' IR : u " F (m)}, (2.10)
quantil de ordem u da distribuicao da v.a. discreta X, onde F!1
representa a inversa generalizada de F . !
Veja-se a representacao esquematica deste algoritmo na Figura 2.2 de
Gentle (1998, p. 44).1
Este algoritmo pressupoe que se construa uma tabela com todos os
valores possıveis da v.a. discreta X e os respectivos valores da f.d. de
X, e se efectue uma pesquisa nessa tabela (table lookup) para identi-
ficar o quantil de ordem u de X. Esta pesquisa nao e necessariamente
expedita para algumas distribuicoes discretas, sugerindo pois a uti-
lizacao de algoritmos alternativos, tais como os descritos em Gentle
(1998, pp. 45–47) que se devem a:
• Marsaglia, Norman e Cannon;
• Chen e Asau.
Exercıcio 2.4 — Escreva um programa numa linguagem de programa-
cao que lhe seja familiar para gerar 20 observacoes de cada uma das
seguintes distribuicoes discretas:
(a) Bernoulli(p);
(b) Binomial(10, 0.2);
(c) Geometrica(p);
(d) Poisson(1).
Recorra novamente ao gerador congruencial multiplicativo com a =
1313, c = 0, m = 259 e u0 = 1 e tente apurar o tempo de execucao de
cada algoritmo para diferentes valores de ui. !1Gentle (1998, p. 43) define equivalentemente este quantil de ordem u: x = F!1(u) : F (x!) <
u " F (x).
57
Coloca-se ainda um problema em relacao a utilizacao do metodo da
transformada inversa: a geracao de vectores pseudo-aleatorios
contınuos — que digam respeito ao vector aleatorio X = (X1, . . . , Xd),
i.e., a distribuicao multivariada contınua — esta a partida com-
prometida. Ha, no entanto, uma excepcao quando a f.d. conjunta X e
passıvel da seguinte decomposicao a custa de f.d.’s condicionais:
FX(x) = P (X1 " x1, . . . , Xd " xd)
= FX1(x1)% FX2|X1=x1(x2)
% . . .% FXd|X1=x1,...,Xd!1=xd!1(xd). (2.11)
Nesta situacao e possıvel obter os seguintes quantis de ordem u1, . . . , ud:
x1 = F!1X1
(u1)
x2 = F!1X2|X1=x1
(u2)
. . .
xd = F!1Xd|X1=x1,...,Xd!1=xd!1
(ud). (2.12)
Este metodo pode ser devidamente adaptado para a geracao de vec-
tores pseudo-aleatorios discretos como se podera ver na subseccao
seguinte.
Texto de apoio: Gentle (1998, pp. 41–47).
2.1.3 Alguns algoritmos de geracao de numeros pseudo-alea-
torios de algumas distribuicoes
E tirando de um modo geral partido de resultados da Teoria das
Probabilidades que e possıvel adiantar algoritmos que permitem
obter de uma forma mais expedita numeros pseudo-aleatorios de dis-
tribuicoes discretas e contınuas especıficas.
58
Ao falar-se de eficiencia de algoritmos refere-se a velocidade com
que o algoritmo gera os numeros pseudo-aleatorios. E ao falar-se
em velocidade e preciso ter em conta que esta depende tambem do
numero de constantes que e preciso obter e armazenar antes de iniciar
a geracao propriamente dita (setup) e do numero de operacoes e val-
ores da Uniforme(0, 1) que e necessario gerar para obter o valor da
distribuicao especıfica.
Tenha-se tambem presente que a geracao de numeros pseudo-aleatorios
de uma distribuicao pode fazer-se a custa de um algoritmo para um
conjunto de valores dos parametros (e.g." ' IN onde " e o parametro
de forma da distribuicao Gama) e determinado valor da ordem do
quantil (e.g.u > 0.95) e a custa de outro algoritmo distinto para outros
valores dos parametros (e.g." #' IN) e da ordem desse mesmo quantil
(e.g.u " 0.95).
A Tabela 2.1 possui a f.p. (f.d.p.) bem como outras caracterısticas
diversas distribuicoes discretas (contınuas) importantes.
A ela seguem-se exemplos de algoritmos de geracao de numeros pseudo-
aleatorios de algumas dessas distribuicoes.
• Exponencial (Gentle (1998, p. 92)) — Ao considerar-se que !
representa o inverso do parametro de escala da v.a. exponencial,
deve proceder-se do seguinte modo:
1. Gerar um numero pseudo-aleatorio u da distribuicao
Uniforme(0, 1).
2. Efectuar a atribuicao
x = ! ln(u)
!. (2.13)
De notar que a aplicacao do metodo da transformada inversa
conduziria a atribuicao x = ! ln(1!u)! . No entanto, U =st 1! U (
59
Table 2.1: Algumas distribuicoes discretas e contınuas importantes.
X P (X = x) E[X] V [X]
Uniforme ({1, 2, . . . , n}) 1/n, x = 1, 2, . . . , n (n + 1)/2 (n2 ! 1)/12
Binomial (n, p) Cnx px(1! p)n!x, x=0,1,2,. . . ,n np np(1! p)
Geometrica (p) (1! p)x!1p, x = 1, 2, . . . 1/p (1! p)/p2
Binomial Negativa (r, p) Cx!1r!1 pr(1! p)x!r, x = r, r + 1, . . . r/p r(1! p)/p2
Poisson (!) e!!!x/x!, x = 0, 1, . . . ! !
X f(x) E[X] V [X]
Uniforme (a, b) 1b!a , a " x " b (a + b)/2 (b! a)2/12
Exponencial (!) !e!!x, x ) 0 1/! 1/!2
Gama (", !) !!
!(") x"!1e!!x, x ) 0 "/! "/!2
Erlang (n, !) !n
!(n) xn!1e!!x, x ) 0 n/! n/!2
$2(#)
(1/2)"/2
!(#/2) x#/2!1e!x/2, x ) 0 % 2%
Beta (", #) !("+$)!(")!($) x"!1(1! x)$!1, 0 " x " 1 % 2%
Normal (µ,&2) 1"2%&
e!(x!µ)2
2#2 , !& < x < +& µ &2
Uniforme(0, 1). Assim, poupa-se uma operacao aritmetica (uma
subtraccao) ao efectuar-se a atribuicao (2.13).
• Gama (parametro de forma " inteiro; Gentle (1998, p. 95)) —
Quando " = n ' IN , a v.a.X ( Gama(n, !) diz-se com dis-
tribuicao de Erlang(n, !) e pode escrever-se a custa da seguinte
soma de n v.a.s X =st(n
i=1 Xi onde Xi (i.i.d. exponencial(!).
Nao surpreende pois que se proceda da seguinte forma para gerar
numeros pseudo-aleatorios da distribuicao Gama(n, !):
1. Gerar n numeros pseudo-aleatorios independentes u1, . . . , un
da distribuicao Uniforme(0, 1).
60
2. Efectuar a atribuicao
x = !n)
i=1
ln(ui)
!. (2.14)
• Normal (Gentle (1998, pp. 88–92)) — Ao pretender-se numeros
pseudo-aleatorios normalmente distribuıdos pode recorrer-se a di-
versos metodos de geracao com precisao e velocidade distintas.
Estes reportam-se a geracao de numeros pseudo-aleatorios da
v.a.Z ( Normal(0, 1). Note-se, no entanto, que ao efectuar-se a
transformacao x = $z + µ obtem-se um numero pseudo-aleatorio
referente a v.a.X ( Normal(µ, $2).
(a) Teorema do Limite Central (TLC) — Ao invocar-se o
TLC para Ui (i.i.d. Uniforme(0, 1), i = 1, . . . , n, conclui-se
que
Z =
(ni=1 Ui ! n/2*
n/12(a Normal(0, 1). (2.15)
Coloca-se muito naturalmente a questao: Quao grande de-
vera ser n para que a qualidade dos numeros gerados seja
razoavel? Uma escolha conveniente e n = 12.
Assim sendo a geracao de numeros pseudo-aleatorios da v.a.
Z ( Normal(0, 1) compreeende os dois seguintes passos:
1. Gerar 12 numeros pseudo-aleatorios independentes u1, . . . ,
u12 da distribuicao Uniforme(0, 1).
2. Efectuar a atribuicao
z =12)
i=1
ui ! 6. (2.16)
De notar que os valores de z pertencem em qualquer dos
casos ao intervalo (!6, +6): estao pois excluıdos os restantes
61
valores reais que por sinal ocorrem com probabilidade igual
a P (|Z| ) 6) $ 10!10.
De salientar tambem que este metodo nao e propriamente
rapido (pois afinal sao necessarios 12 numeros pseudo-aleato-
rios uniformes para gerar um normal) e que existem alter-
nativas bem mais expeditas para gerar um numero pseudo-
aletorio da distribuicao Normal(0, 1).
(b) Metodo de Box-Muller — A aplicacao deste metodo en-
contra justificacao num resultado probabilıstico deixado para
o Exercıcio 2.5 e compreende tambem dois passos muito sim-
ples:
1. Gerar 2 numeros pseudo-aleatorios independentes u1, u2
da distribuicao Uniforme(0, 1).
2. Efectuar as atribuicoes
z1 =*!2 ln(u1) cos(2%u2) (2.17)
z2 =*!2 ln(u1) sin(2%u2). (2.18)
Gentle (1998, pp. 88–89) chama a atencao para o facto de este
metodo conduzir a resultados nao necessariamente razoaveis
quando se lida com geradores congruenciais pobres.
De referir tambem que apesar da independencia entre as v.a.s
associadas as concretizacoes definidas em (2.17) e (2.18) ha
autores que demonstraram que z1 e z2 nao so assentam numa
espiral como e de questionar a sua independencia quanto
mais nao seja porque estao associados a dois numeros pseudo-
aleatorios relacionados recursivamente. Por este motivo tais
autores sugerem que se utilize somente um dos valores gera-
dos para a normal padrao.
62
Ha outras possibilidades de geracao de numeros pseudo-alea-
torios normais. Uma delas e um metodo do tipo aceitacao/
rejeicao, o metodo de Polar–Marsaglia que sera descrito na
subseccao seguinte.
Exercıcio 2.5 — Prove que, caso Ui (i.i.d. Uniforme(0, 1), i = 1, 2,
se tem
Z1 =*!2 ln(U1) cos(2%U2) ( Normal(0, 1) (2.19)
Z2 =*!2 ln(U1) sin(2%U2) ( Normal(0, 1), (2.20)
com a particularidade de Z1 e Z2 serem v.a.s independentes. !
Exercıcio 2.6 — Admita que Z ( Exponencial(1) e que a v.a. dis-
creta S toma valores +1 e !1 com probabilidade 1/2 m qualquer dos
casos.
(a) Prove que a v.a.X = SZ/! possui f.d.p. igual a
f(x) =!
2e!!|x|, x ' IR, (2.21)
i.e., possui distribuicao de Laplace com parametro ! (! > 0) (ou
distribuicao Dupla Exponencial).
(b) Apos ter definido os passos do algoritmo de geracao de numeros
pseudo-aleatorios da distribuicao de Laplace, gere 500
observacoes desta distribuicao para ! = 0.5, 1, 2 e desenhe os
respectivos histogramas. !
Em Gentle (1998, pp. 93–99) pode encontrar-se a descricao de algo-
ritmos para a geracao de numeros pseudo-aleatorios de diversas dis-
tribuicoes contınuas:
63
• Gama (Gentle (1998, pp. 93–96)) — Recomenda-se o recurso aos
algoritmos de Cheng-Feast (1979), de Best-Ahrens-Dieter (1983)
e de Philippe (1997), respectivamente, na geracao de numeros
pseudo-aleatorios das distribuicoes Gama com parametro de forma
maior e menor que 1 ou truncadas a direita.
• Beta (Gentle (1998, p. 97)) — Caso ambos os parametros da dis-
tribuicao Beta sejam menores que 1 deve recorrer-se ao algoritmo
de Johnk
• Qui-quadrado (Gentle (1998, pp. 98–99)) — O recurso ao facto
da v.a. do qui-quadrado com n graus de liberdade resultar da
soma de n quadrados de v.a.s i.i.d. normais padrao implica a
geracao de n numeros pseudo-aleatorios desta distribuicao, pelo
que e mais vantajoso tirar partido do seguinte resultado
X ( &2(n) * X ( Gama(n/2, 1/2) (2.22)
e recorrer aos algoritmos de geracao de numeros pseudo-aleatorios
da distribuicao Gama.
• F-snedcor (Gentle (1998, p. 99)) — Tira-se partido do facto de
Y ='2
'1
X
1!X( F(%1,%2) (2.23)
caso X ( Beta('1/2, '2/2) para gerar numeros pseudo-aleatorios
da distribuicao F(%1,%2). Ha ainda a possibilidade de a geracao se
fazer a custa dois numeros pseudo-aleatorios de distribuicoes do
qui-quadrado ja que
X =Y1
%1
Y2
%2
( F(%1,%2) (2.24)
caso Y1 e Y2 sejam v.a.s independentes tais que Yi ( &2(%i), i = 1, 2.
64
• T-student (Gentle (1998, pp. 97-98)) — O algoritmo de Bai-
ley para a geracao de numeros pseudo-aleatorios da distribuicao
T ! student usa o facto de a v.a.X ( t(%) corresponder a raiz
quadrada da v.a.Y ( F(1,%)
• Weibull (Gentle (1998, p. 99)) — Neste caso basta recorrer ao
metodo da transformada inversa.
Exercıcio 2.7 — Considere que Y e Z sao v.a.s independentes com
distribuicoes Gama(", !) e Gama(#, !), respectivamente (", #, ! > 0).
(a) Mostre que a v.a.X = Y/(Y +Z) possui distribuicao Beta(", #),
i.e., a sua f.d.p. e igual a
!(" + #)
!(")!(#)x"!1(1! x)#!1, 0 " x " 1. (2.25)
(b) Use este resultado para descrever um metodo de geracao de nu-
meros pseudo-aleatorios da distribuicao Beta(", #) no caso em
que ambos os parametros sao inteiros maiores que 1.
(c) Gere 1000 observacoes da distribuicao Beta(4, 5) e desenhe o
respectivo histograma. !
Exercıcio 2.8 — A v.a.X diz-se com distribuicao Logıstica(µ, $) se
possuir f.d.p. dada por:
f(x) =e!
x!µ!
$&1 + e!
x!µ!
'2 ,!& < x < +&. (2.26)
(a) Defina um metodo para gerar numeros pseudo-aleatorios da dis-
tribuicao Logıstica(µ, $).
(b) Gere 1000 observacoes da distribuicao Logıstica padrao (µ =
0, $ = 1) e desenhe o respectivo histograma. !
65
Abaixo podem encontrar-se os algoritmos de geracao de numeros
pseudo-aleatorios de algumas distribuicoes discretas:
• Bernoulli (Gentle (1998, p. 47)).2 — Para gerar numeros pseudo-
aleatorios com distribuicao de Bernoulli(p) basta recorrer ao
metodo da transformada inversa:
1. Gerar um numero pseudo-aleatorio da distribuicao
Uniforme(0, 1).
2. Efectuar a atribuicao
x =
+0, se u ) p
1, se u < p.(2.27)
A semelhanca do que se verificou na aplicacao do metodo da
transformada inversa para a distribuicao exponencial opta-se por
poupar uma operacao aritmetica ao efectuar-se a atribuicao em
(2.27) ao inves de
x =
+0, se 1! u " p
1, se 1! u > p.(2.28)
• Binomial (Gentle (1998, pp. 99–100)) — Escusado dizer que,
para gerar um numero pseudo-aleatorio da distribuicao
Binomial(n, p), e necessario gerar n numeros pseudo-aleatorios
da distribuicao de Bernoulli(p) e de seguida contabilizar o nu-
meros de sucessos. Assim a geracao compreende os seguintes
passos:
1. Gerar n numeros pseudo-aleatorios independentes u1, . . . ,
un da distribuicao Uniforme(0, 1).
2Ao que tudo indica o algoritmo em Gentle (1998, p. 47) nao esta correcto.
66
2. Efectuar as atribuicoes
yi =
+0, se ui ) p
1, se ui < p,(2.29)
para i = 1, . . . , n, e
x =n)
i=1
yi. (2.30)
Para mais detalhes acerca de outros procedimentos de geracao
consulte-se Gentle (1998, p. 100).
• Poisson (Gentle (1998, p. 100)) — Caso o valor esperado da
v.a. de Poisson(!) seja pequeno pode recorrer-se ao metodo da
transformada inversa para gerar numeros pseudo-aleatorios.
Pode tambem recorrer-se ao seguinte algoritmo:
1. Gerar numeros pseudo-aleatorios u1, u2, . . . da distribuicao
Uniforme(0, 1).
2. Atribuir o valor
x = inf{m ' IN0 :m)
i=1
[! ln(ui)] " !}. (2.31)
• Geometrica (Gentle (1998, p. 101)) — Uma vez que existe ex-
pressao para o quantil de ordem u da distribuicao Geometrica(p)
o procedimento de geracao de numeros pseudo-aleatorios com-
preende os seguintes passos:
1. Gerar um numero pseudo-aleatorio u da distribuicao
Uniforme(0, 1).
2. Efectuar a atribuicao
67
x = inf{m ' IR : u " F (m)}
=
,ln(1! u)
ln(1! p)
-. (2.32)
onde +y, representa a parte inteira do real y.
Escusado sera dizer que pode poupar-se uma operacao se se con-
siderar u ao inves de (1! u) na Equacao (2.32).
Exercıcio 2.9 — Justifique o procedimento descrito para a geracao
de numeros pseudo-aleatorios da distribuicao de Poisson, recorrendo,
se entender necessario, a um Processo de Poisson com taxa unitaria.
Gere 1500 observacoes da distribuicao de Poisson(10) e desenhe o
respectivo histograma. !
Segue-se a apresentacao dos algorimos de geracao de numeros pseudo-
aleatorios de duas v.a.s multivariadas:
• Normal multivariada (Gentle (1998, pp. 105–106)) — O vec-
tor aleatorio X = (X1, . . . , Xd) diz-se com distribuicao normal
d!variada com valor esperado
µ = (µ1, . . . , µd) (2.33)
e matriz de covariancia nao singular
! = [$ij]i,j=1,...,d = [cov(Xi, Xj]i,j=1,...,d (2.34)
— escrevendo-se neste caso
X ( Nd(µ,!) (2.35)
— caso X possua f.d. conjunta
f(x) =1
(2%)d2 |"|
exp
$!1
2(x! µ)-!!1(x! µ)
%, (2.36)
68
para x ' IRd.
Tendo em conta que, caso Zi (i.i.d. Normal(0, 1), i = 1, . . . , d, e
X = T-Z + µ — onde Z = (Z1, . . . , Zd) e T e uma matriz d% d
que verifica T-T = ! —, se tem
X ( Nd(µ,!), (2.37)
nao surpreende que um algoritmo para gerar um vector pseudo-
aleatorio da distribuicao Nd(µ,!) compreenda os seguintes pas-
sos:
1. Gerar d numeros pseudo-aleatorios independentes z1, . . . , zd
da distribuicao Normal(0, 1).
2. Efectuar a atribuicao x = T-z + µ.
Gentle (1998, p. 106) refere outros procedimentos de gerar numeros
pseudo-aleatorios desta distribuicao multivariada.
• Multinomial (Gentle (1998, p. 106)) — O vector aleatorio X =
(X1, . . . , Xd) diz-se com distribuicao multinomial (d!1)!variada
com parametros n e p = (p1, . . . , pd), onde(d
i=1 Xi = n e p '{(p1, . . . , pd) ' [0, 1]d :
(di=1 pi = 1} — escrevendo-se neste caso
X ( Multinomiald!1(n, p) (2.38)
— caso X possua f.p. conjunta igual a
P (X = x) =n!
.di=1 xi!
d/
i=1
pxii (2.39)
para x ' {(n1, . . . , nd) ' {0, 1, . . . , n}d :(d
i=1 ni = n}.
Admita-se que X possui distribuicao multinomial com parametros
n e vector de probabilidades p = (p1, . . . , pd).
69
A leitura de Gentle (1998, p. 106) sugere que a geracao de vec-
tores pseudo-aleatorios desta distribuicao passa por tirar-se par-
tido do facto de as distribuicoes marginais serem binomiais de-
pendentes (cov(Xi, Xj) = !pi pj) e das distribuicoes condicionais
serem iguais a:
X1 ( Binomial(n, p1) (2.40)
(X2|X1 = x1) ( Binomial
"n! x1,
p2
1! p1
#(2.41)
(X3|X1 = x1, X2 = x2)
( Binomial
"n! x1 ! x2,
p3
1! p1 ! p2
#(2.42)
. . .
(Xd!1|X1 = x1, . . . , Xd!2 = xd!2)
( Binomial
0n!
d!2)
i=1
xi,pd!1
1!(d!2
i=1 pi
1(2.43)
(Xd|X1 = x1, . . . , Xd!1 = xd!1) = n!d!1)
i=1
xi. (2.44)
A geracao faz-se sequencialmente a custa destas distribuicoes
condicionais, tal como descrito no final da Subseccao 2.1.2. E,
por forma a acelerar a geracao destes numeros pseudo-aleatorios,
recomenda-se que a geracao seja feita sequencialmente por ordem
decrescente das probabilidades de sucesso p1, . . . , pd, i.e., comecar
pela componente com maior probabilidade de sucesso e terminar
com a componente com a menor delas.
Em Gentle (1998, p. 106) sao referidas outras formas de obter
vectores pseudo-aleatorios desta mesma distribuicao.
70
Exercıcio 2.10 — Faca um levantamento das rotinas/metodos de
geracao de numeros pseudo-aleatorios de distribuicoes discretas e contı-
nuas dos packages BMDP, Maple, Matlab, Mathematica, NAG, R, SAS,
SPSS, Statistica e outros packages com que esteja familiarizado. !
O capıtulo 7 de Gentle (1998) faz um apanhado geral sobre os cuida-
dos a ter na geracao de numeros pseudo-aleatorios (como e o caso do
controlo da semente e do metodo de geracao).
Este mesmo capıtulo acrescenta ainda algumas notas sobre a geracao
de numeros pseudo-aleatorios com o software S-Plus.
Por seu lado, Morgan(1984, pp. 236–249) faz o mesmo com o software
NAG.
Textos de apoio: Gentle (1998, p.47 e pp. 85–106).
2.1.4 Metodos de aceitacao/rejeicao
Os metodos de aceitacao/rejeicao sao caracterizados por gerarem nu-
meros pseudo-aleatorios de uma v.a.X com f.d.p. f(x) (directa ou
indirectamente) a custa de numeros pseudo-aleatorios de uma outra
v.a.Y com f.d.p. g(x) similar a de X, numeros estes de muito mais
facil geracao que os respeitantes a distribuicao de X.
Descrever-se-ao nesta subseccao dois metodos de aceitacao/ rejeicao.
Metodo de aceitacao/rejeicao simples — Sejam:
• X uma v.a. que possui f.d.p. f(x) e contradomınio limitado e igual
a [a, b];
• c uma constante que verifique f(x) " c, x ' [a, b].
A geracao de numeros pseudo-aleatorios da distribuicao de X passa
por:
71
1. Gerar um ponto (u, v) no rectangulo de vertices (a, 0), (a, c), (b, 0)
e (b, c), gerando para o efeito dois numeros pseudo-aleatorios u1
e u2 da distribuicao Uniforme(0, 1) e efectuando as atribuicoes
u = a + (b! a)u1 e v = cu2.
2. Caso v " f(u), efectuar a atribuicao x = u; caso contrario, voltar
ao Passo 1. (Esquema...) !
A probabilidade de aceitacao (do numero pseudo-aleatorio v) no
Passo 2 do metodo de aceitacao/rejeicao simples e igual ao quo-
ciente entre a area sob f(x) e sob o rectangulo acima referido, i.e.,
P (aceitacao metodo aceit./rej. simples) =1
c(b! a). (2.45)
E pois fundamental que se escolha o valor de c o mais pequeno
possıvel por forma a maximizar a probabilidade de aceitacao neste
metodo — a escolha mais razoavel para c e sem sombra de duvida
c = maxa"x"b
f(x). (2.46)
Exercıcio 2.11 — Gere 1000 numeros pseudo-aleatorios da distribui-
cao Beta(4, 5) recorrendo ao metodo de aceitacao/rejeicao simples.
(a) Obtenha a probabilidade de aceitacao deste algoritmo.
(b) Compare a velocidade de execucao deste algoritmo com a daquele
que utilizou para resolver a alınea (c) do Exercıcio 2.7. !
Importa salientar que o metodo de aceitacao/rejeicao simples nao pode
ser utilizado quando X possui contradomınio nao limitado e que a
probabilidade de rejeicao e consideravel caso a f.d.p. de X seja ponti-
aguda. (Esquema...)
As desvantagens acima referidas nao se colocam em relacao ao metodo
que se descreve ja de seguida.
72
Metodo de aceitacao/rejeicao geral — Sejam:
• X uma v.a. que possui f.d.p. f(x);
• Y uma v.a. com f.d.p. g(x) e cujos numeros pseudo-aleatorios sao
mais faceis de gerar;
• k uma constante maior que 1 e que verifique f(x) " k g(x), !& <
x < +&, i.e., k g(x) majora f(x).3
A geracao de numeros pseudo-aleatorios da distribuicao de X passa
por:
1. Gerar um numero pseudo-aleatorio y da distribuicao de Y .
2. Gerar um numero pseudo-aleatorio u da distribuicao de
Uniforme(0, 1).
3. Caso u " f(y)k g(y) , efectuar a atribuicao x = u; caso contrario, voltar
ao Passo 1. !
A probabilidade de aceitacao (do numero pseudo-aleatorio u) no
Passo 3 do metodo de aceitacao/rejeicao geral e igual a
P (aceitacao metodo aceit./rej. geral) =1
k. (2.47)
e deve ser maximizada a todo o custo. Assim, uma vez fixa a funcao
g(x), deve escolher-se
k = max!&<x<+&
f(x)
g(x). (2.48)
Exercıcio 2.12 — Prove que os numeros pseudo-aleatorios gerados
pelos metodos de aceitacao/rejeicao simples e geral possuem de facto
f.d.p. f(x). !
3k g(x) e o que na literatura anglofona se designa por envelope function.
73
Exercıcio 2.13 — O metodo de aceitacao/rejeicao simples e um caso
particular do metodo de aceitacao/rejeicao geral. Identifique-o e re-
escreva os passos daquele metodo. !
Exercıcio 2.14 — Considere a geracao de numeros pseudo-aleatorios
da distribuicao de Normal(0, 1) usando um metodo de aceitacao/rejei-
cao baseado na f.d.p. logıstica
g(x) =( e!'x
(1 + e!'x)2 , !& < x < +&, (2.49)
onde ( > 0.
Suponha que 0 < ( ".
2 e considere que )(x) representa a f.d.p. da
Normal(0, 1).
(a) Mostre que )(x)/g(x) possui maximo em x = 0.
(b) Descreva um metodo de geracao de numeros pseudo-aleatorios
da distribuicao de Normal(0, 1) que minimize a probabilidade de
rejeicao. !
Exercıcio 2.15 — Admita que se pretende gerar numeros pseudo-
aleatorios da distribuicao de Semi ! Normal(1), i.e., da v.a.X com
f.d.p.
f(x) =2.2%
e!x2
2 = 2)(x), x > 0. (2.50)
Considere a v.a.Y ( Exponencial(1) cuja f.d.p. e igual a g(x) =
e!x, x > 0.
(a) Mostre que f(x)/g(x) possui maximo em x = 1, identifique tal
valor maximo e determine a probabilidade de aceitacao no Passo
3 do metodo de aceitacao/rejeicao geral.
74
(b) Haveria vantagem em definir este metodo a custa de uma dis-
tribuicao Exponencial com outros valores do parametro de es-
cala?
(c) Use o metodo de aceitacao/rejeicao geral baseado na distribuicao
de Y para gerar 1000 numeros pseudo-aleatorios da distribuicao
de X.
(d) Obtenha 1000 numeros pseudo-aleatorios da distribuicao
Normal(0, 1) a custa dos obtidos na alınea anterior. !
Para a descricao de variantes do metodo de aceitacao/rejeicao geral
bem como da aplicacao do mesmo a geracao de numeros pseudo-
aleatorios referentes a distribuicoes discretas e favor referir-se a Gentle
(1998, pp. 49–55).
Texto de apoio: Gentle (1998, pp. 47–55).
75
2.2 Metodo de Monte Carlo
O metodo de solucao numerica de problemas denominado de
metodo de Monte Carlo baseia-se essencialmente na simulacao de
variaveis aleatorias. Entre tais problemas contam-se a estimacao
do integral definido simples
* =
2 b
ah(x)dx (2.51)
ou do integral definido multiplo
*p =
2
Xp
h(x)dx =
2
Xp
h(x1, . . . , xp)dx1 . . . dxp, (2.52)
onde A / IRp (p > 1).
A genese do metodo e marcada pela publicacao, em 1949, de um tra-
balho da autoria de Metropolis e Ulam. A existencia deste metodo
muito se deve aos esforcos de von Neumann. O seu nome deve-se a
capital do principado do Monaco, celebre pelo seu casino onde se pode
encontrar um dos dispositivos mecanicos mais simples de geracao de
numeros pseudo-aleatorios, a roleta.
So com o advento dos computadores (electronicos) se difundiu ampla-
mente o metodo de Monte Carlo.
Descrever-se-ao de seguida dois metodos de Monte Carlo, cujo objec-
tivo e a estimacao do integral simples definido em (2.51), facilmente
generalizaveis para o calculo do integral definido multiplo em (2.52).
Texto de apoio: Sobol (1983, p. 7).
76
2.2.1 Monte de Carlo hit-or-miss
Recorrer-se-a a um exemplo bastante simples para motivar o metodo
de Monte Carlo hit-or-miss para o calculo de uma estimativa de *.
Suponha-se que se pretende determinar a area de uma figura plana
S, com um aspecto arbitrario e nao necessariamente conexa. Sem
perda de generalidade, admita-se que S esta contida num quadrado
de area unitaria.
Admita-se tambem que sao gerados n pontos pseudo-aleatorios nesse
quadrado dos quais somente r (r = 0, 1, . . . , n) pertencem a S. Uma
estimativa (intuitivamente) razoavel para a area de S e o quociente
r/n, concretizacao do estimadorR/n. A precisao desta estimativa
aumenta, naturalmente, com o valor de n.
Exercıcio 2.16 — Qual a distribuicao, valor esperado e variancia do
estimador R/n? !
O algoritmo acima descrito pode ser imediatamente generalizado para
o calculo do integral definido * =! b
a h(x)dx, onde o intervalo [a, b] e
limitado.
Metodo de Monte Carlo hit-or-miss — Comece-se por considerar
uma constante c que verifique h(x) " c, x ' [a, b]. A obtencao de uma
estimativa de * pressupoe:
1. Gerar n pontos pseudo-aleatorios (u1, v1), . . . , (un, vn) no rectangulo
de vertices (a, 0), (a, c), (b, 0) e (b, c).4
2. Contabilizar o numero de pontos r abaixo da curva de h(x).4Relembre-se que a geracao do ponto (u, v) no referido rectangulo passa pela geracao de dois
numeros pseudo-aleatorios z1 e z2 da distribuicao Uniforme(0, 1) e pela efectuacao das atribuicoesu = a + (b! a)z1 e v = cz2.
77
3. Obter a estimativa de *
*hit =rc(b! a)
n. (2.53)
!
Escusado sera referir que o valor r nos passos 2 e 3 do algoritmo nao
passa do valor observado da v.a.R ( Binomial(n, p = */[c(b! a)]).
Este algoritmo e particularmente simples ja que pressupoe a geracao
de pontos pseudo-aleatorios, seguida de averiguacao do conjunto a que
eles pertencem e do calculo de um quociente.
Este metodo faz tambem lembrar o metodo de aceitacao/rejeicao sim-
ples.
Exercıcio 2.17 — Considere a estimacao de * =! b
a h(x)dx.
(a) Identifique a distribuicao, o valor esperado e a variancia do esti-
mador da probabilidade de um ponto pseudo-aleatorio estar sob
a curva de h(x). Tratar-se-a de um estimador centrado de *?
(b) Justifique a estimativa para *, * = rc(b! a)/n. !
Embora se saiba o resultado do integral mencionado ja a seguir, o
exercıcio seguinte servira para ilustrar o metodo de Monte Carlo hit-
and-miss assim como para calcular o verdadeiro valor da variancia do
estimador de *.
Exercıcio 2.18 — Considere
* =
2 1
0
*1! x2dx. (2.54)
(a) Elabore o grafico da funcao.
1! x2 no intervalo [0, 1], identifique
a area a que corresponde * e o verdadeiro valor desta constante.
(Morgan (1984, p. 163).)
78
(b) Identifique o estimador de *, #, e determine o verdadeiro valor
esperado e a variancia deste estimador.
(c) Estime * recorrendo ao metodo de Monte de Carlo hit-and-miss
gerando para o efeito 500 pontos pseudo-aleatorios. !
Importa ainda referir que o metodo de Monte Carlo hit-and-miss nao
pode ser aplicado quando o conjunto [a, b] nao e limitado, ao contrario
do metodo de Monte Carlo descrito seguidamente.
Textos de apoio: Morgan (1984, p. 163) e Sobol (1983, pp. 7–10).
2.2.2 Monte de Carlo ordinario
Quando e possıvel factorizar a funcao h(x) do seguinte modo
h(x) = g(x)f(x), (2.55)
onde f(x) e a f.d.p. da v.a.X definida no intervalo [a, b], passa a ter-se
* =
2 b
ag(x)f(x)dx
= E[g(X)]. (2.56)
Deste modo o problema da avaliacao do integral definido
simples transforma-se num problema de estimacao bastante fami-
liar: a estimacao do valor esperado da v.a. g(X).
Caso se considere que X ( Uniforme(a, b), tem-se:
f(x) =1
b! a, a " x " a; (2.57)
g(x) = (b! a) h(x), a " x " a; (2.58)
* = (b! a)E[h(X)]. (2.59)
Uma estimativa razoavel e centrada para * e sem sombra de duvida
* = (b! a)
(ni=1 h(xi)
n(2.60)
79
onde x = (x1, . . . , xn) e uma amostra de numeros pseudo-aleatorios da
distribuicao Uniforme(a, b).
Ha a assinalar uma vantagem obvia deste metodo de Monte Carlo neste
caso particular, quando comparado com o metodo de Monte Carlo hit-
and-miss: naquele metodo sao necessarios somente n numeros pseudo-
aleatorios da distribuicao Uniforme(a, b) contra os 2n numeros pseudo-
aleatorios imprescindıveis na geracao dos n pontos pseudo-aleatorios
do metodo de Monte Carlo hit-and-miss.
Exercıcio 2.19 — Considere a estimacao de * =! b
a h(x)dx pelo
metodo de Monte Carlo ordinario da distribuicao X ( Uniforme(a, b).
Obtenha o valor esperado e a variancia deste estimador de *. Sera um
estimador centrado de *? !
Uma vez feita a motivacao do metodo de Monte Carlo ordinario (crude
Monte Carlo method) e a vez de apresentar o algoritmo.
Metodo de Monte Carlo ordinario — Considere-se que
* =
2 b
ah(x)dx (2.61)
e que se verifica
h(x) = g(x)f(x), x ' [a, b], (2.62)
onde f(x) e a f.d.p. da v.a.X definida no intervalo [a, b].
Entao a determinacao de uma estimativa de * compreende os seguintes
passos:
1. Gerar n numeros pseudo-aleatorios x1, . . . , xn da distribuicao
de X.
2. Efectuar a atribuicao
*ord =
(ni=1 g(xi)
n. (2.63)
80
!
De notar que no passo 1 do algoritmo x1, . . . , xn sao as concretizacoes
das v.a.s Xi (i.i.d. X, i = 1, . . . , n.
Exercıcio 2.20 — Retome o Exercıcio 2.18.
(a) Estime * =! 1
0
.1! x2dx recorrendo ao metodo de Monte de
Carlo ordinario fazendo uso de 2%500 numeros pseudo-aleatorios
da distribuicao X ( Uniforme(0, 1).
(b) Determine o verdadeiro valor esperado e a variancia do estimador
de * =! 1
0
.1! x2dx associado ao metodo de Monte Carlo or-
dinario descrito em (a) e compare-os com os correspondentes va-
lores obtidos na alınea (b) do Exercıcio 2.18. !
Exercıcio 2.21 — Considere a estimacao do integral definido
* =
2 +&
1
e!x
xdx. (2.64)
(a) Apos ter efectuado a transformacao de variavel conveniente recor-
ra ao metodo de Monte de Carlo ordinario usando 1000 numeros
pseudo-aleatorios da distribuicao X ( Exponencial(1).
(b) Compare o valor obtido em (a) com o valor numerico obtido pelo
Mathematica. !
Texto de apoio: Gentle (1998, pp. 131–133) e Morgan (1984, pp. 163–
165).
2.2.3 Tecnicas de reducao de variancia de estimadores de
Monte Carlo
Na seccao anterior ja foram feitas algumas comparacoes e consideracoes
sobre a variancia dos estimadores de Monte Carlo a laia de exercıcio.
81
Pode adiantar-se, a tıtulo de exemplo, que os dois estimadores de
* =! b
a h(x)dx sao centrados e possuem variancias iguais a:
• metodo de Monte Carlo hit-and-miss
V (#hit) = V
$1
nRc(b! a)
%
=*[c(b! a)! *]
n(2.65)
onde n representa o numero de pontos pseudo-aleatorios (i.e., e
necessaria a geracao de 2n numeros pseudo-aleatorios);
• metodo de Monte Carlo ordinario
V (#ord) = V
31
n
n)
i=1
g(Xi)
4
=V [g(X)]
n
=E[g2(X)]! E2[g(X)]
n
=
! ba g2(x)f(x)dx! *2
n(2.66)
onde n corresponde ao total de numeros pseudo-aleatorios gera-
dos.
Como em qualquer problema de estimacao deve procurar-se reduzir a
variancia do estimador (que pode passar pelo aumento do valor de n)
e, simultaneamente, preservar outras propriedades do estimador como
ser centrado.
A tecnica de reducao de variancia motivada e descrita de seguida
denomina-se de tecnica das variaveis antiteticas.
Por forma a motivar este metodo comece-se por considerar um par
de v.a.s identicamente distribuıdas, Y1 e Y2, com a particularidade
82
de serem dependentes e terem valor esperado comum e igual a * =! b
a g(x)f(x)dx. Neste caso pode concluir-se que Y1+Y2
2 e estimador de
* verificando:
E
"Y1 + Y2
2
#= *; (2.67)
V
"Y1 + Y2
2
#=
1
4% [V (Y1) + V (Y2) + 2cov(Y1, Y2)]
=1
2V (Y1)[1 + corr(Y1, Y2)]. (2.68)
Ora, pode reduzir-se a variancia deste estimador, caso Y1 e Y2 sejam
escolhidas de tal modo que se correlacionem negativamente. E, com
efeito, tal ocorre caso se considere:
• X uma v.a. com f.d.p. f(x) e f.d.F (x);
• * =! b
a g(x)f(x)dx, onde g(x) e uma funcao monotona;
• U ( Uniforme(0, 1);
• Y1 = g[F!1(U)] e Y2 = g[F!1(1! U)].
Importa notar que U e 1! U dizem-se variaveis antiteticas.
Metodo de Monte Carlo ordinario (variaveis antiteticas) — Estes
resultados sugerem uma nova versao do metodo de Monte Carlo or-
dinario para a estimacao de * compreendendo os seguintes passos:
1. Gerar n/2 numeros pseudo-aleatorios u1, . . . , un/2 da distribuicao
U ( Uniforme(0, 1).
2. Efectuar as atribuicoes
yi1 = g[F!1(ui)] (2.69)
yi2 = g[F!1(1! ui)], (2.70)
para i = 1, . . . , n/2.
83
3. Efectuar a atribuicao
*anti =
(n/2i=1
yi1+yi2
2n/2
=1
n
n/2)
i=1
(yi1 + yi2). (2.71)
!Esta versao do metodo possui a vantagem de reduzir para metade a
quantidade de numeros pseudo-aleatorios que e necessario gerar.
Exercıcio 2.22 — Retome a estimacao de * =! 1
0
.1! x2dx, onde
g(x) =.
1! x2 e f(x) = 1, 0 " x " 1 (i.e., X ( Uniforme(0, 1)).
(a) Obtenha uma estimativa pontual de * recorrendo ao metodo de
Monte de Carlo ordinario fazendo uso de 500 numeros pseudo-
aleatorios da distribuicao U ( Uniforme(0, 1) (i.e., n = 1000) e
de variaveis antiteticas.
(b) Determine o verdadeiro valor da variancia deste novo estimador
de * e compare-o com o verdadeiro valor da variancia do esti-
mador de theta baseado no metodo de Monte Carlo ordinario
com recurso a 1000 numeros pseudo-aleatorios da distribuicao
X ( Uniforme(0, 1). !
Exercıcio 2.23 — Repita o Exercıcio 2.21 considerando desta feita
o metodo de Monte de Carlo ordinario que faz uso de 500 numeros
pseudo-aleatorios da distribuicao U ( Uniforme(0, 1) e de variaveis
antiteticas.
Compare estes resultados com os obtidos no Exercıcio 2.21. !
Exercıcio 2.24 — Considere que
* =
2 1
0e!x2
dx. (2.72)
84
(a) Estime * pelo metodo de Monte de Carlo hit-and-miss. Recorra
para o efeito a 1000 pontos pseudo-aleatorios da distribuicao
Uniforme(0, 1).
(b) Estime * pelo metodo de Monte Carlo ordinario. Use 2000 numeros
pseudo-aleatorios da distribuicao Uniforme(0, 1).
(c) Obtenha uma estimativa de * usando agora o metodo de Monte
Carlo ordinario com recurso a variaveis antiteticas e aos 1000
primeiros numeros pseudo-aleatorios obtidos em (b).
(d) Obtenha intervalos de confianca aproximados a 95% para * basea-
dos nos metodos utilizados em (a)–(c). Compare as diferentes
estimativas pontuais e intervalares de *. !
Ha outras possibilidades de reducao de variancia: e caso da reducao
da variancia por condicionamento, que por sinal nao e descrita
em Gentle (1998).
Considere-se que Y = g(X) e que e possıvel identificar uma v.a.Z
que permita a definicao da v.a.E(Y |Z) e retome-se mais uma vez a
estimacao de * = E[g(X)] = E(Y ). Entao note-se que
V (Y ) = V [E(Y |Z)] + E[V (Y |Z)] (2.73)
donde se conclui que
V [E(Y |Z)] " V (Y ) (2.74)
o que sugere que ao inves de se usar a media do valores gerados
yi = g(xi) (i.e. a media 1n
(ni=1 g(xi) = 1
n
(ni=1 yi), se recorra a media
dos valores gerados da v.a.E(Y |Z).
Deste modo a estimativa de * e igual a
*cond =1
n
n)
i=1
E(Y |Z = zi). (2.75)
85
Exercıcio 2.25 — Estime * = E(X) — onde a v.a.X e tal que
• X|Z = z ( Beta(z, z2 + 1)
• Z ( Poisson(!)
(Morgan (1984, p. 173)) —, com base em 1000 numeros pseudo-aleato-
rios e considerando ! = 2.5 ao metodo de Monte Carlo ordinario
usando a tecnica de reducao da variancia por condicionamento. !
Podem encontrar-se outras tecnicas de reducao de variancia em Gentle
(1998, pp. 135–139) e Morgan (1984, p. 166–180).
Texto de apoio: Gentle (1998, pp. 135–139) e Morgan (1984, pp. 160–
180).
2.2.4 Tecnicas de reducao de variancia na simulacao do sis-
tema M/M/1
Um sistema M/M/1 e caracterizado por:
• tempos entre chegadas consecutivas i.i.d. com distribuicao
Exponencial(!);
• tempos de servico, tambem eles i.i.d. com distribuicao comum
Exponencial(µ) e independentes dos tempos entre chegadas;
• um unico servidor que atende os clientes por ordem de chegada
(polıtica First Come First Served).
De notar que o tempo de permanencia no sistema (waiting time in
system) corresponde ao tempo que decorre desde a chegada do cliente
ao sistema ate que ele o abandone, i.e., corresponde ao tempo que o
cliente dispende na fila de espera, aguardando pelo inıcio do respectivo
86
servico, ao qual e adicionado o tempo que o servidor dispende a servir
esse mesmo cliente.
Apesar de a distribuicao do tempo de permanencia no sistema ser
conhecida e Exponencial(µ ! !), 0 > µ > !, recorreremos a si-
mulacao para estimar o valor esperado do tempo de permanencia no
sistema — doravante representado por W (s) — essencialmente para
ilustrar duas tecnicas de reducao da variancia.
Um estimador mais que obvio para E[W (s)] e W(s)
= 1n
(ni=1 W (s)
i , a
media dos tempos de permanencia no sistema de n clientes.
Simulacao de tempos de permanencia no sistema M/M/1 —
De modo a efectuar a simulacao desta media e essencial considerar as
seguintes v.a.s, onde j = 1, . . . , n:
• Ij representa o tempo decorrido entre a chegada do (j!1)!esimo
e do j!esimo (j > 2) clientes e I1 (interarrival time) o instante
de chegada do primeiro cliente;
• Sj representa o tempo de servico do j!esimo cliente (service
time);
• Wj representa o tempo de permanencia no sistema (waiting time
in system).
Para alem disso e necessario:
1. Gerar n numeros pseudo-aleatorios independentes i1, . . . , in, refe-
rentes ao tempo entre chegadas consecutivas (logo com distribuicao
Exponencial(!)).5
2. Gerar n numeros pseudo-aleatorios independentes s1, . . . , sn, dizen-
do respeito aos tempos de servico com distribuicao Exponencial5Esta geracao far-se-a, e claro, a custa de n numeros pseudo-aleatorios independentes u1, . . . , un
da distribuicao Uniforme(0, 1).
87
(µ).6
3. Efectuar a seguinte atribuicao, para j = 1, . . . , n,
wj =
+si, se wj " ij (cliente imediatamente atendido)
wj!1 ! ij + sj, se wj!1 > ij (caso contrario).(2.76)
Por forma a estimar V&W
(s)'
deve repetir-se as simulacoes acima
r vezes e a estimativa de tal variancia mais nao sera que a variancia
da amostra de medias de conjuntos de n tempos de permanencia
no sistema. !
Simulacao de tempos de permanencia no sistema M/M/1
(variaveis antiteticas) — A estimativa de V&W
(s)'
pode ser reduzida
recorrendo a tecnica das variaveis antiteticas que comprendera o seguin-
tes passos:
1. Gerar w1, . . . , wn tal como se descreve no algoritmo anterior e
muito em particular recorrendo a Equacao (2.76).
2. Gerar w01, . . . , w
0n tal como no Passo 1 mas usando os numeros
pseudo-aleatorios antiteticos de u1, . . . , un e v1, . . . , vn, i.e., 1 !u1, . . . , 1!un e 1! v1, . . . , 1! vn. Assim se obtem a media de 2n
tempos de permanencia no sistema.
3. Repetir os Passos 1 e 2 ate registar r/2 amostras de 2n tempos
de permanencia no sistema. !
Simulacao de tempos de permanencia no sistema M/M/1 (ter-
ceiro algoritmo) — Ha ainda outra possibilidade de reducao da esti-
mativa de V&W
(s)'. Ela passa por:
6Analogamente, usam-se n numeros pseudo-aleatorios independentes v1, . . . , vn da distribuicaoUniforme(0, 1).
88
1. Gerar dois numeros pseudo-aleatorios independentes u1 e u2 da
distribuicao
Uniforme(0, 1).
2. Gerar dois numeros pseudo-aleatorios independentes i e s das dis-
tribuicoes Exponencial(!) e Exponencial(µ) (respectivamente),
efectuando para isso as atribuicoes:
i = !ln(u1)
!;
s = !ln(u2)
µ. (2.77)
3. Gerar outros dois numeros pseudo-aleatorios i0 e s0 das distribui-
coes Exponencial(!) e Exponencial(µ), considerando para tal as
atribuicoes:
i0 = !ln(u2)
!;
s0 = !ln(u1)
µ. (2.78)
Exercıcio 2.26 — Considere um sistema M/M/1 com taxa de chega-
das ! = 0.6 (chegadas por minuto) e taxa de servico µ = 1 (servicos
por minuto).
(a) Simule tempos de permanencia neste sistema por forma a estimar
pontual e intervalarmente o tempo esperado de permanencia no
sistema E5W (s)
6, considerando para o efeito n = 200 e r = 100
e uma estimativa da variancia do estimador W (s).
Confronte as estimativas pontual e intervalar como o verdadeiro
valor de E5W (s)
6.
89
(b) Compare os resultados da alınea (a) com os que obteria se tivesse
recorrido a variaveis antiteticas.
Por forma a que esta comparacao seja mais rigorosa/razoavel,
procure controlar a semente de modo a usar os mesmos numeros
pseudo-aleatorios uniformes na geracao dos tempos de permanen-
cia no sistema que tera usado na alınea (a). !
Texto de apoio: Morgan (1984, pp. 173–180).
2.2.5 Integrais multiplos
O metodo de Monte Carlo e de longe muito mais relevante no calculo
de um valor aproximado do integral definido multiplo
*p =
2
Xp
h(x)dx (2.79)
(onde Xp / IRp) que no caso de um integral definido unidimensional
* =
2h(x)dx. (2.80)
A razao prende-se com a existencia de variadıssimos metodos de in-
tegracao numerica para a obtencao de valores aproximados de * por
vezes superiores ao metodo de Monte Carlo.
A adaptacao do metodo de Monte Carlo ordinario com ou sem o uso
de variaveis antiteticas faz-se sem grande dificuldade. Senao veja-se:
• Metodo de Monte Carlo ordinario — Comece-se por efectuar
a seguinte factorizacao:
h(x1, . . . , xp) = g(x1, . . . , xp)f(x1, . . . , xp), (2.81)
onde f(x1, . . . , xp) e a f.d.p. do vector aleatorio X = (X1, . . . , Xp)
que toma valores exclusivamente em Xp. Neste contexto
*p = E[g(X1, . . . , Xp)] (2.82)
90
pelo que deve gerar-se n vectores pseudo-aleatorios x1, . . . , xn com
a densidade conjunta comum f(x1, . . . , xp) e de seguida calcular
a media *p = 1n
(ni=1 g(xi). !
• Metodo de Monte Carlo ordinario (variaveis antiteticas)
— Este metodo so deve ser usado quando o vector aleatorio e
constituıdo por p v.a.s independentes Xi com f.d.Fi(xi).
Nesta situacao deve considerar-se o par de v.a.s dependentes
Y1 = g[F!11 (U1), . . . , F
!1p (Up)] (2.83)
Y2 = g[F!11 (1! U1), . . . , F
!1p (1! Up)] (2.84)
onde Ui (iid Uniforme(0, 1), i = 1, . . . , p. !
2.2.6 Metodo de Monte Carlo em inferencia estatıstica
Em Inferencia Estatıstica, e frequente assumir que se conhece a
distribuicao de uma estatıstica de teste ou de um estimador.
Esta situacao e de um modo geral irrealista pois a validade desse
resultado distribuicional pressupoe por sua vez a validade de
hipoteses de trabalho demasiado rigorosas e geralmente inade-
quadas aos dados de que se dispoe.
Basta pensar no que acontece a distribuicao exacta e muito espe-
cialmente na potencia do teste que faz uso da estatıstica de teste
T =X ! µ0
S/.
n(2.85)
quando se pretende confrontar as hipoteses H0 : µ = µ0 e H1 : µ #= µ0
— e nao se esta a lidar com uma populacao X normalmente distribuıda
mas sim uma normal contaminada por observacoes discordantes (ou
se esta na presenca de uma estrutura de dependencia, etc.).
91
A resposta analıtica para a questao anterior e outras quantas similares
nao e trivial.
A resposta numerica para a questao encontra-se na simulacao
dessa estatıstica, i.e., em estudos de Monte Carlo.
Estes estudos de simulacao devem ser encarados com autenticas
experiencias que requerem um planeamento cuidado e, no caso
da estimacao da potencia da estatıstica de teste (2.85) passam por
decidir:
• as distribuicoes da populacao X (e.g. Normal(0, 1), Normal(0, 1)
com c% de observacoes discordantes, Cauchy(0, 1));
• as dimensoes das amostras n (e.g. n = 20, 200, 2000);
• os nıveis de significancia do teste (e.g. " = 0.01, 0.05);
• os numeros de replicacoes (e.g. r = 1000, 10000);
• os valores de µ (e.g. µ = µ0 ± {0, 2 (0.1)}); etc.
Posto isto deve calcular-se o valor da potencia do teste (e.g. a percen-
tagem de rejeicoes da hipotese nula) para cada combinacao dos factores
acima e organizar-se os resultados de preferencia graficamente por
forma a permitir uma analise mais cuidada dos mesmos.
Para outro exemplo de um estudo de simulacao Monte Carlo no con-
texto da regressao linear simples e favor referir-se a Gentle (1998,
pp. 180–190).
O problema da estimacao de quantis e outras medidas de importancia
crucial na caracterizacao do comportamento probabilıstico de estatısti-
cas de teste e estimadores sera aprofundado posteriormente aquando
do estudo dos Metodos de Bootstrap no Modulo 2 desta disci-
plina.
Texto de apoio: Gentle (1998, pp. 177–190).
92
2.3 Referencias
Gentle, J.E. (1998). Random Number Generation and Monte Carlo
Methods. Springer-Verlag, New York, Inc. (QA298.GEN.50103)
Morgan, B.J.T. (1984). Elements of simulation. Chapman and Hall.
(QA276/1.MOR.32020)
Sobol, I. (1983). O Metodo de Monte Carlo. Editora Mir Moscou.
Agradecimento
O autor destas notas de apoio salienta que a preparacao das mesmas
muito deve ao seu caderno do curso C96 – Computational Statistics
leccionado por R.J. Brooks, no ano lectivo de 1989/ 1990, no Depart-
ment of Statistical Science da University College London.
93