FLR

| Tasklist |

FS#24 - Changes to FLSR to make it more robust and consistent

Attached to Project: FLR
Opened by Laurie Kell (ltkell) - Wednesday, 23 December 2009, 09:28 GMT+2
Task Type Bug Report
Package FLCore
Status New
Assigned To No-one
Operating System All
Severity High
Priority High
Reported Version 2.0
Due in Version Undecided
Due Date Undecided
Percent Complete 0%
Votes 0
Private No

Details

Changes to FLSR to make it more robust and consistent

1) Change algorithm for setting initial values in BH
2) Add limits to segreg to ensure breakpoint doesn´t fall outside of the data
3) Calculate sigma from the residuals rather than fitting it as part of the likelihood
4) Add auto parscaling
5) Change all likelihoods to lognormal or at least put a option to choose
6) Ensure residuals are on the log scale if a log normal error model is used.
7) turn sv2ab and ab2sv into methods
8) check that steepness & virgin biomass options work across all classes

1,2,3 and 4 then Beverton and Holt, Ricker and segmented regression SRRs can be fitted to the ICES stock database. Otherwise fits can fail which can cause problems in that
parameters are wrong especially for Monte Carlo simulations.

Problems are due to FLSR simply not being able to find the solution, there are several reasons for this, poor initial values, going off into parameter space with a flat likelihood, different scales for parameters

In some methods normal log likelihood is used while in other the log normal, e.g. in bevholt.ar1() it is the log normal as this is needed to deal with AR1 processes, but you can fixed rho to 0 and you then have a standard normal likelihood but this may differ from bevholt()

Diagnostic plots are on the untransformed scale even when the error model is lognormal, this is because residuals are not on the log scale, this means that the QQ plots are wrong, the residual plots misleading and difficult to interpret and that passing FLSR objects to other methods (e.g. fwd for projection) liable to error.

Most of these suggestions have been coded up and are in FLBocadillio, main task is to check them and add to FLCore
This task depends upon

Loading...