argiopetech / base

Bayesian Analysis for Stellar Evolution
http://webfac.db.erau.edu/~vonhippt/base9/
11 stars 4 forks source link

add second method to burnin #20

Closed tedvh closed 11 years ago

tedvh commented 11 years ago
argiopetech commented 11 years ago

Okay, It's been awhile since we looked at this. Can you confirm that burnin approach 1 is the current approach whereby we do half the burnin with big steps and the second half with smaller steps?

Additionally, 6bf8433a4aa977b5b45d2cac49e64dd151dc6808 contains the "--bigStepBurnin" flag which causes only the large step size to run (like we've been doing with WDs), but does not include any techniques from BASE-8. Is this the desired functionality, or do I need to go consult BASE-8?

tedvh commented 11 years ago

I think those are the first two options. We have reason to believe that option 1 works for open clusters where one is fitting the IFMR, as that is what Nathan was using. Experimentally, we have found that option 2 works OK for individual WDs. I suggest adding option 3, which adjusts the step sizes based on the acceptance ratio, as we did with BASE-8 (mcmc):

/////////////////////////// //// Adjust Step Sizes //// /////////////////////////// double adjustStepSizes(int accept, int reject){

int i, iupper = 4, ilower = 7; double fracAccept; double fa[7] = {0.9, 0.7, 0.5, 0.3, 0.05, 0.15, 0.2}; double w[7] = {2.0, 1.8, 1.5, 1.2, 0.5, 1/1.8, 1/1.5};

if(accept + reject < 200) return 1.0;

fracAccept = _accept / (double) (_accept + reject); accept = 0; *reject = 0;

for(i=0;i<iupper;i++){ if(fracAccept > fa[i]) return w[i]; } for(i = 4; i < ilower; i++){ if(fracAccept < fa[i]) return w[i]; } return 1.0; } // adjustStepSizes

We will probably want other burnin approaches as well, but this is enough for 9.3.0.

-Ted

On 7/25/13 4:32 PM, Elliot Robinson wrote:

Okay, It's been awhile since we looked at this. Can you confirm that burnin approach 1 is the current approach whereby we do half the burnin with big steps and the second half with smaller steps?

Additionally, 6544890 https://github.com/argiopetech/base/commit/6544890dcd987760dcc205b7964a7ba7bfc963a9 contains the "--bigStepBurnin" flag which causes only the large step size to run (like we've been doing with WDs), but does not include any techniques from BASE-8. Is this the desired functionality, or do I need to go consult BASE-8?

— Reply to this email directly or view it on GitHub https://github.com/argiopetech/base/issues/20#issuecomment-21582521.

Ted von Hippel

Department of Physical Sciences Embry-Riddle Aeronautical University 600 S. Clyde Morris Boulevard Daytona Beach, FL 32114-3900 386-226-7751

argiopetech commented 11 years ago

Option 3 seems to be described in Add Adaptive Burnin (Issue #33) and is currently scheduled for 9.3.1. Do we want to pull it back to 9.3.0?

tedvh commented 11 years ago

Ah, OK. That is fine. 9.3.1 is good.

On 7/25/13 4:50 PM, Elliot Robinson wrote:

Option 3 seems to be described in Add Adaptive Burnin (Issue #33 https://github.com/argiopetech/base/issues/33) and is currently scheduled for 9.3.1. Do we want to pull it back to 9.3.0?

— Reply to this email directly or view it on GitHub https://github.com/argiopetech/base/issues/20#issuecomment-21583685.

Ted von Hippel

Department of Physical Sciences Embry-Riddle Aeronautical University 600 S. Clyde Morris Boulevard Daytona Beach, FL 32114-3900 386-226-7751