Random seed not working

116 views
Skip to first unread message

Caren Dymond

unread,
Nov 22, 2016, 12:04:21 PM11/22/16
to LANDIS-II Users
Hi everyone

I'm trying to compare 2 runs using the same random number seed but I still get different fires. The only difference between the 2 runs are the Pest values.

Have other people had this problem as well?

Here's my scenario input file. Maybe I've missed something.

>> Disturbance Extensions   Initialization File
>> ----------------------   -------------------
   "Dynamic Biomass Fuels" "Biomass_Fuels.txt"
   "Dynamic Fire System"   "Fire.txt"
      "Base Harvest"          "harvest_v5.txt"
   
>>   DisturbancesRandomOrder  yes  << optional parameter; default = no


>>    Other Extensions      Initialization File
>> ----------------------   -------------------


RandomNumberSeed  4357

Brian Miranda

unread,
Nov 23, 2016, 9:30:39 AM11/23/16
to LANDIS-II Users
Caren,

If your Pest values are different, then setting the random number seed will not necessarily give you identical behaviors in the other parts.  All of the extensions share a common random number generator.  So if succession ends up using a different number of random numbers because different Pest values resulted in more or less cohorts, then when fire looks for a random number it won't be the same.  The only time the fire results would be identical is if the succession results are also identical.

Eric and I have talked about the idea of having each extension having it's own random number generator (or just it's own random number seed).  That would enable you to have the identical disturbance regime applied to multiple replicates of succession, isolating the succession variability from disturbance variability.  It sounds like this may be what you are looking for.  Although it sounds pretty straightforward, I wonder whether we could actually cause the disturbances to be identical in cases where the disturbance responds to succession.  That might be tough for harvest (stand rankings might change) and dynamic fire (fuels might change).  What we might look for is certain aspects of the regime be controlled by a defined random number seed and other parts not.  We might be able to generate the same regime (area disturbed) without each specific cell disturbed being the same.  I think it's doable, just will require some thought on how to apply it in each extension.

Cheers,
-Brian

Caren Dymond

unread,
Nov 24, 2016, 1:45:00 PM11/24/16
to LANDIS-II Users
Hi Brian

"isolating the succession variability from disturbance variability" is exactly what I'm trying to do. 
It's great that succession and disturbances interact making the model more realistic. However, it's difficult to assess the changes in something subtle, like Pest, when large fires are occurring at different time steps. Yet without fire, I'm missing some of the regen I'm trying to assess.

It wouldn't have to be the exact same cells. But the same size of disturbance in the same fire region or management unit in the same timestep would certainly help.

In the mean time, I think the Site Tool is my best bet.

thanks
Caren

Adam Erickson

unread,
Nov 25, 2016, 3:57:57 PM11/25/16
to LANDIS-II Users
Hi Caren and Brian,

I ran into this same challenge in my PhD work with LANDIS-II. What I did, since my area of interest contained 25.2 million active cells, is to use a factorial design whereby each combination of a group of extensions was run iteratively in scenarios and the differences in outputs calculated to determine the relative influence of an extension. Most of the code I wrote was in IDL to speed up the processing, output to R for graphing. Python, Julia, C/C++, etc., would work just the same without the license restriction.

What I recommend doing, if your simulation area does not have tens of millions of active cells, is to apply Monte Carlo methods combined with a factorial design (not to be confused with a factor analysis, which is a dimensionality reduction technique). Since LANDIS-II is a stochastic model at its core, running a Monte Carlo simulation is as simple as running the same model configuration multiple times without setting a seed. This can be scripted and run in parallel with a Windows batch file.  The first time I did this was ~3 years ago at a LANDIS-II training session at PSU run by Robert Scheller; it works well for small areas or coarse resolutions. After repeating for each combination of model configuration (e.g., succession, succession+fire, succession+pest, succession+fire+pest), you can then calculate confidence intervals for each scenario, ideal for determining a realistic range of values (e.g., 1 Mha burned ± 0.1 Mha at a 95% CI). You can then compute the differences in result between these ranges to determine the effect of the dynamic or extension. Hopefully, the combined scenario fits closest to the validation data, which is a different can of worms. Pattern-oriented model validation is an interesting but complicated approach to this (link).

If you use these methods, feel free to reference my upcoming thesis and/or LANDIS-II paper ; )

Cheers,

Adam Erickson
Postdoctoral Researcher
Max Planck Institute of Biogeochemistry
aerickson[at]bgc-jena.mpg.de
Reply all
Reply to author
Forward
0 new messages