Differential-Evolution MCMC
DE(bayesianSetup, settings = list(startValue = NULL, iterations = 10000, f = -2.38, burnin = 0, thin = 1, eps = 0, consoleUpdates = 100, blockUpdate = list("none", k = NULL, h = NULL, pSel = NULL, pGroup = NULL, groupStart = 1000, groupIntervall = 1000), currentChain = 1, message = TRUE))
bayesianSetup | a BayesianSetup with the posterior density function to be sampled from |
---|---|
settings | list with parameter settings |
startValue | (optional) eiter a matrix with start population, a number to define the number of chains that are run or a function that samples a starting population. |
iterations | number of function evaluations. |
burnin | number of iterations treated as burn-in. These iterations are not recorded in the chain. |
thin | thinning parameter. Determines the interval in which values are recorded. |
f | scaling factor gamma |
eps | small number to avoid singularity |
blockUpdate | list determining whether parameters should be updated in blocks. For possible settings see Details. |
message | logical determines whether the sampler's progress should be printed |
For blockUpdate the first element in the list determines the type of blocking. Possible choices are
"none" (default), no blocking of parameters
"correlation" blocking based on correlation of parameters. Using h or k (see below)
"random" random blocking. Using k (see below)
"user" user defined groups. Using groups (see below)
Further seven parameters can be specified. "k" determnined the number of groups, "h" the strength of the correlation used to group parameter and "groups" is used for user defined groups. "groups" is a vector containing the group number for each parameter. E.g. for three parameters with the first two in one group, "groups" would be c(1,1,2). Further pSel and pGroup can be used to influence the choice of groups. In the sampling process a number of groups is randomly drawn and updated. pSel is a vector containing relative probabilities for an update of the respective number of groups. E.g. for always updating only one group pSel = 1. For updating one or two groups with the same probability pSel = c(1,1). By default all numbers have the same probability. The same principle is used in pGroup. Here the user can influence the probability of each group to be updated. By default all groups have the same probability. Finally "groupStart" defines the starting point of the groupUpdate and "groupIntervall" the intervall in which the groups are evaluated.
Braak, Cajo JF Ter. "A Markov Chain Monte Carlo version of the genetic algorithm Differential Evolution: easy Bayesian computing for real parameter spaces." Statistics and Computing 16.3 (2006): 239-249.