Não olhei para o papel que você forneceu, mas deixe-me tentar mesmo assim:
Se você possui um espaço de parâmetro dimensional, pode gerar uma direção aleatória uniformemente distribuída na superfície da esfera unitária compd
x <- rnorm(p)
d <- x/sqrt(sum(x^2))
( veja Wiki ).
Em seguida, use isso para gerar propostas para para amostragem por rejeição (supondo que você possa realmente avaliar a distribuição para ).dd
Supondo que você comece na posição tenha aceitado um , gere uma proposta comxdy
lambda <- r<SOMEDISTRIBUTION>(foo, bar)
y <- x + lambda * d
e faça um passo de Metropolis-Hastings para decidir se você vai mudar para ou não.y
Obviamente, o quão bem isso pode funcionar dependerá da distribuição de e quão caro é (repetidamente) avaliar sua densidade na etapa de amostragem de rejeição, mas, como gerar propostas para é barato, você pode se safar disso.dd
Adicionado para o benefício de @ csgillespie:
Pelo que pude reunir com alguns pesquisadores, o MCMC hit-and-run é útil principalmente para mixagem rápida se você tiver um destino (multivariado) que possui suporte arbitrário, mas não necessariamente conectado, porque permite que você se mova de qualquer ponto no suporte a qualquer outro em uma etapa. Mais aqui e aqui .