Hi guys, I am working now for several years in R and I would say I manage things pretty easily, but with the foreach loop I have my problems. I call for a simulation a double foreach loop and this works fine. Inside the second loop (which I plan to parallelize later on) I call Rs optim-function: "simulateML" <- function(sim.it = 250, input.path, output.path, T = 390, ncore = 2) {
## load packages ## library("mmstruct") library("doMC") library("foreach") ## read input parameters ## input <- read.csv(input.path, header = FALSE) ## create container to store results ## results <- data.frame(NA, nrow = NROW(input) * sim.it, ncol = 12) ## initialize the parallel backend ## registerDoMC(ncore) result.list <- foreach(i = 1:2) %do% { input <- as.matrix(input) input.row <- input[i, ] list <- foreach(i = 1:2, .combine = rbind, .packages = c("mmstruct", "stats")) %do% { data <- simulateEKOP(size = input.row[1], alpha = input.row[2], epsilon = input.row[1], delta = input.row[4], mu = input.row[5], T = T) data <- data[,4] ## create start values ## tmp <- mean(data)/T startpar <- c(0, tmp * 0.75/2, tmp * 0.25/2) ## set options for optimization ## optim_fn <- computeKokotLik optim_method <- "L-BFGS-B" optim_lower <- c(-1e+7, 0, 0) optim_upper <- rep(1e+7, 3) optim_fnscale <- -1 optim_maxit <- 200 optim_ctrl <- list(fnscale = optim_fnscale, maxit = optim_maxit) ## start optimization ## res <- optim(par = startpar, fn = optim_fn, data = data, T = T, methodLik = "approx", method = optim_method, lower = optim_lower, upper = optim_upper, control = optim_ctrl, hessian = TRUE) res$par } print(list) } } Data simulation and thecreation of startpar works fine, but the parameters in res$par are always the start parameters. If I run the same commands directly on the shell I get in res$par the optimized parameters - only inside the foreach loop optim seems not to work. What could that be? Best Simon ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.