Non ho guardato la carta che hai fornito, ma lasciami comunque provare:
Se si dispone di uno spazio parametri dimensionale, è possibile generare una direzione casuale d distribuita uniformemente sulla superficie della sfera unitaria conpd
x <- rnorm(p)
d <- x/sqrt(sum(x^2))
(vedi Wiki ).
Quindi, utilizzalo per generare proposte di per il campionamento dei rifiuti (supponendo che tu possa effettivamente valutare la distribuzione per d ).dd
Supponendo di iniziare nella posizione e di aver accettato una d , generare una proposta y conxdy
lambda <- r<SOMEDISTRIBUTION>(foo, bar)
y <- x + lambda * d
e fai un passaggio di Metropolis-Hastings per decidere se passare a oppure no.y
Naturalmente, quanto bene funzionerà dipenderà dalla distribuzione di e da quanto è costoso (ripetutamente) valutare la sua densità nella fase di campionamento del rifiuto, ma dal momento che la generazione di proposte per d è economica, è possibile cavarsela.dd
Aggiunto per il vantaggio di @ csgillespie:
Da quello che sono stato in grado di raccogliere da alcuni google, l'MCMC hit-and-run è utile principalmente per il mixaggio rapido se hai un target (multivariato) che ha un supporto arbitrario limitato ma non necessariamente collegato, perché ti consente di spostarti da qualsiasi punto nel supporto agli altri in un solo passaggio. Più qui e qui .