Мне нужно провести несколько симуляций и для целей отладки Я хочу использовать set.seed
, чтобы получить тот же результат. Вот пример того, что я пытаюсь сделать:
library(foreach)
library(doMC)
registerDoMC(2)
set.seed(123)
a <- foreach(i=1:2,.combine=cbind) %dopar% {rnorm(5)}
set.seed(123)
b <- foreach(i=1:2,.combine=cbind) %dopar% {rnorm(5)}
Объекты a
и b
должны быть идентичными, то есть sum (abs (ab))
должны равняться нулю, но это не так. Я делаю что-то не так, или я наткнулся на какую-то функцию?
Я могу воспроизвести это в двух разных системах с R 2.13 и R 2.14
Вам полезен пакет doRNG? Я подозреваю, что ваша проблема связана с тем, что два потока разделяют случайный начальный вектор:
http://ftp.heanet.ie/mirrors/cran.r-project.org/web/packages/doRNG /index.html