Data4DM / BayesSD

Data for Decision, Affordable Analytics for All
8 stars 0 forks source link

Verifying chaos in population dynamics #68

Closed hyunjimoon closed 5 months ago

hyunjimoon commented 1 year ago

Based on the rugged posterior space reported by Angie, Tom and Angie will delve into this weird behavior: After changing the measurement noise from additive to multiplicative, different pattern is observed but initial stock value as (prey, predator) as (30, 4) and the following prior distribution still show problematic geometry. After the image of multiplicative and additive measurement noise formulation, is the two errors I faced in multiplicative setting (which seems to have a terrible posterior space).

image
model.set_prior("alpha", "normal", 0.55, 0.055, lower = 0)
model.set_prior("beta", "normal", 0.028, 0.0028, lower = 0)
model.set_prior("delta", "normal", 0.024, 0.0024, lower = 0)
model.set_prior("gamma", "normal", 0.8, 0.08, lower = 0)
model.set_prior("m_noise_scale", "normal", 0.1, 0.001, lower = 0)

For instance, I faced two warning from the HMC sampler which proves it is suffering from problematic posterior geometry. The first one is divergent transition which I faced for the first time in SD models. It basically means the conservation of hamiltonian along which vector field flow flows is being violated. The second, I am debugging.

    Chain 1 had 3 divergent transitions (3.0%)
    Chain 2 had 1 divergent transitions (1.0%)
    Chain 4 had 1 divergent transitions (1.0%)
chain 1 |██████████| 00:54 Sampling completed                       
chain 2 |██████████| 00:54 Sampling completed                       
chain 3 |██████████| 00:54 Sampling completed                       
chain 4 |██████████| 00:54 Sampling completed                       
19:30:43 - cmdstanpy - INFO - CmdStan done processing.
19:30:43 - cmdstanpy - WARNING - Non-fatal error during sampling:
Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: normal_lpdf: Location parameter[1] is nan, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: ode_rk45:  Failed to integrate to next output time (0.01) in less than max_num_steps steps (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45:  Failed to integrate to next output time (0.01) in less than max_num_steps steps (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
Exception: normal_lpdf: Location parameter[1] is nan, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Location parameter[1] is nan, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: ode_rk45:  Failed to integrate to next output time (0.01) in less than max_num_steps steps (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45:  Failed to integrate to next output time (0.01) in less than max_num_steps steps (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: normal_lpdf: Location parameter[149] is nan, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: normal_lpdf: Location parameter[1] is nan, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Location parameter[1] is nan, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: ode_rk45:  Failed to integrate to next output time (0.01) in less than max_num_steps steps (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: normal_lpdf: Location parameter[1] is nan, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: ode_rk45:  Failed to integrate to next output time (0.01) in less than max_num_steps steps (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: normal_lpdf: Scale parameter is 0, but must be positive! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 50, column 4 to column 43)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45: ode parameters and data is inf, but must be finite! (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
    Exception: ode_rk45:  Failed to integrate to next output time (0.01) in less than max_num_steps steps (in '/Users/hyunjimoon/Dropbox/15879-Fall2022/Homeworks/HW7/stanify/stan_files/prey_predator_nc/prey_predator_nc_data2draws.stan', line 38, column 4 to column 162)
Consider re-running with show_console=True if the above output is unclear!
hyunjimoon commented 1 year ago

58 can be closed once the above is replicated in vensim.