Dear Tom (and list)
I'm glad that you're finding the xgrid features of runjags useful. If you have any comments or criticisms about the functions, please let me know! However, I am slightly concerned about the use of multiple chains within separate instances of JAGS, and just wanted to make sure that you are aware of the technical issues.
The root of the problem (as far as my biologist understanding goes!) is that the pseudo-random number generators that JAGS (and all other software) uses will always follow the same pattern if given the same starting conditions, because they are not really random at all. When running multiple chains JAGS normally gets around this by ensuring that all the chains are independent, but when there is a separate JAGS call for each chain it obviously can't do that. So each of the chains started with the same conditions will tend to follow the same patterns (or be completely identical, if the starting seeds are identical), which means that when you put them together you don't have a proper Markov chain! Starting each of the chains with different random number seeds (by specifying a different '.RNG.seed' init variable for each chain to the runjags functions) alleviates this problem, but as far as I know doesn't solve it completely. I think (although I'm happy to be corrected if not) you can get around the problem by using a different random number generator (by specifying a different '.RNG.name' init variable) for each chain - JAGS has 4 separate RNGs built in, so that means you can have up to 4 chains without using external factory modules. I'd still specify different (over-dispersed) starting values and RNG seeds to each chain to be safe though.
What I think you can use separate chains for (and what I originally intended the option to be used for) is starting multiple chains with over-dispersed starting values to ensure that your chains have explored the full parameter space before converging on a stationary distribution. False convergence is something that has tried to catch me out too often to be complacent about.... Anyway, these issues should probably be made clearer in the runjags help files - I will make sure they are for the next release, and apologies if the functions caused any confusion.
Thanks,
Matt
ps. There is no problem with the default xgrid.method - this just sends a single task with multiple chains to a remote machine and leaves all the RNG headaches up to JAGS....
On 19 Oct 2010, at 16:47, Hobbs,Tom wrote:
> I am now running 10 parallel chains on a Mac xgrid under JAGS and runjags.
>
> Tom
>
> On Oct 19, 2010, at 4:35 PM, xiaoqian yu wrote:
>
>
>
>
> N. Thompson Hobbs
> Professor, Natural Resource Ecology Laboratory
> and Graduate Degree Program in Ecology
> Colorado State University
> Fort Collins, CO 80524
> 970-491-5738
> http://www.nrel.colostate.edu/nrel/apps/directory/people.php?Main_ID=204
>
>
>
>
> For group mailings:
> Use of this mail list is intended exclusively for
> internal communication at Colorado State University.
> Any unauthorized use is prohibited.
>
> -------------------------------------------------------------------
> This list is for discussion of modelling issues and the BUGS software.
> For help with crashes and error messages, first mail [log in to unmask]
> To mail the BUGS list, mail to [log in to unmask]
> Before mailing, please check the archive at www.jiscmail.ac.uk/lists/bugs.html
> Please do not mail attachments to the list.
> To leave the BUGS list, send LEAVE BUGS to [log in to unmask]
> If this fails, mail [log in to unmask], NOT the whole list
-------------------------------------------------------------------
This list is for discussion of modelling issues and the BUGS software.
For help with crashes and error messages, first mail [log in to unmask]
To mail the BUGS list, mail to [log in to unmask]
Before mailing, please check the archive at www.jiscmail.ac.uk/lists/bugs.html
Please do not mail attachments to the list.
To leave the BUGS list, send LEAVE BUGS to [log in to unmask]
If this fails, mail [log in to unmask], NOT the whole list
|