# NOT RUN {
require(doParallel) # You can use a different package to set up the parallel backend
# Loading the data for this example
data(mgnk)
# Opening up the parallel pools using doParallel
cl <- makeCluster(detectCores())
registerDoParallel(cl)
# Performing BSL
resultMgnkBSL <- bsl(mgnk$data, n = 60, M = 80000, start = mgnk$start, cov_rw = mgnk$cov,
fn_sim = mgnk_sim, fn_sum = mgnk_sum, sim_options = mgnk$sim_options,
parallel = TRUE, parallel_packages = c('BSL', 'MASS', 'elliplot'),
theta_names = c('a1','b1','g1','k1','a2','b2','g2','k2','a3','b3','g3','k3'
,'delta12','delta13','delta23'))
summary(resultMgnkBSL)
plot(resultMgnkBSL, thin = 20)
# Performing tuning for BSLasso
lambda_all <- list(exp(seq(-2.5,0.5,length.out=20)), exp(seq(-2.5,0.5,length.out=20)),
exp(seq(-4,-0.5,length.out=20)), exp(seq(-5,-2,length.out=20)))
sp_mgnk <- selectPenalty(ssy = mgnk_sum(mgnk$data), n = c(15, 20, 30, 50), lambda_all,
theta = mgnk$start, M = 100, sigma = 1.5, fn_sim = mgnk_sim,
fn_sum = mgnk_sum, sim_options = mgnk$sim_options, standardise = TRUE,
parallel_sim = TRUE, parallel_sim_packages = c('BSL', 'MASS', 'elliplot'),
parallel_main = TRUE)
sp_mgnk
plot(sp_mgnk)
# Performing BSLasso with a fixed penalty
resultMgnkBSLasso <- bsl(mgnk$data, n = 20, M = 80000, start = mgnk$start, cov_rw = mgnk$cov,
fn_sim = mgnk_sim, fn_sum = mgnk_sum, sim_options = mgnk$sim_options,
penalty = 0.3, standardise = TRUE, parallel = TRUE,
parallel_packages = c('BSL', 'MASS', 'elliplot'),
theta_names = c('a1','b1','g1','k1','a2','b2','g2','k2','a3','b3','g3','k3',
'delta12','delta13','delta23'))
summary(resultMgnkBSLasso)
plot(resultMgnkBSLasso, thin = 20)
# Plotting the results together for comparison
combinePlotsBSL(resultMgnkBSL, resultMgnkBSLasso, thin = 20)
# Closing the parallel pools
stopCluster(cl)
# }
# NOT RUN {
# }
Run the code above in your browser using DataLab