
Entendi sua explanação. heehhe olhei o código bem por alto depois do almoço num tempó livre, única coisa "estranha" que notei foi esse loop que pra mim estava sem muito sentido. Mas muito dessa minha opinião vai do fato de não conhecer ao fundo o problema, pois para mim, ele estaria interessado em cada uma das iterações (eu, quando faço simulações, procuro guardar cada uma delas, nem que seja pra brincar de bootstrap depois, hehehe) Quanto à copa américa, estava meio na cara que daria Uruguai, é o time com mais conjunto, Argentina e Brasil estavam em início de trabalho. No betclick eu apostei no uruguai e salvei algum, ehhehe lmassis <at> yahoo <dot> com <dot> br assis.leonard <at> gmail <dot> com 2011/8/18 Benilton Carvalho <beniltoncarvalho@gmail.com>
Leonard,
para cada 'g', ele determina uma realizacao (aleatoria) de Y_n condicionado em Y_{n-1}. Se essa realizacao por nao-nula, ele incrementa 'pp'. Como a chance de Y_m ser zero e' bem pequena, ele repete o laco 'm' vezes, contando quantas vezes (em 'm') ele observa Y_n > 0...
Estou bem certo de que o codigo esta' correto... mas eu tambem estava certo que o Brasil ganharia a Copa America...
b
2011/8/18 Leonard Assis <assis.leonard@gmail.com>:
Benilton, eu nem cheguei a rodar, analisei o que ele faz mesmo.
Tem que resolver esse problema daquele loop que só faz perder tempo senão o próprio estudo de simulação dele está inválido. lmassis <at> yahoo <dot> com <dot> br assis.leonard <at> gmail <dot> com
2011/8/18 Benilton Carvalho <beniltoncarvalho@gmail.com>
Tiago,
esse e' um problema legal... se vc derivar as distribuicoes a mao, certamente vc consegue ganhos bem maiores...
FYI: usando propriedades de estatistica, vc chega na mudanca que eu fiz na geracao das suas variaveis aleatorias.
Adicionalmente, eu nao tive paciencia de esperar o seu codigo original acabar de rodar... eu o cancelei depois de um pouco mais de 1h10m.
Abaixo uma sugestao para voce:
library(foreach) library(doMC) registerDoMC() programa2 <- function(f,n,m) { ## f: número máximo de filhos ## n: número de gerações ## m: número de iterações S <- foreach(p=seq(0,1,by=0.01), .combine=rbind) %dopar% { pp <- 0 for (g in 1:m) { y <- 1 for (k in 1:n) y <- rbinom(1, y*f, p) if (y > 0) pp <- pp + 1 } c(p, pp/m) } return(S) } system.time(prog2 <- programa2(2,200,1000)) plot(prog2, xlab = "p", ylab = "Probabilidade de Percolação")
para matar sua curiosidade, no meu computador, eu obtive:
system.time(prog2 <- programa2(2,200,1000)) user system elapsed 257.072 2.562 20.835
R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
-- Successful people ask better questions, and as a result, they get better answers. (Tony Robbins) _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.