[ADMB Users] very small number math
Fowler, Mark
Mark.Fowler at dfo-mpo.gc.ca
Tue Mar 12 12:16:56 PDT 2013
Hi Rick,
I tried BETWEEN_PHASES, with and without estimating F's as parameters.
Initially it would only do a couple iterations without changing
anything. Upping the convergence criterion made it do some fitting, and
this tack played out at .000000001. Estimating F as parameters actually
increased the objective function value, and no changes to the originally
sought parameter estimates occurred (reference year abundances at ages
1-14 for which Q's sought). Without estimating them the objective
function value declined slightly but with a single overall constant
change to the parameters (constant priors of 13.2 all became 18.96).
Finally did a test run with the fitted parameters from the ACON model as
priors. With these priors ADMB adjusted the parameters variously up and
down and improved the OFV (ACON 3973, ADMB 3337), with very little
spinning.
At this point I can't think how to implement it for VPA, where I would
need it to handle much less informative starts. Might this reflect the
problem Larry Jacobson reported for NEFSC (Chris Legault)? Have to check
into how the ACON optimizer works, which may be customized just for VPA.
Mark Fowler
Population Ecology Division
Bedford Inst of Oceanography
Dept Fisheries & Oceans
Dartmouth NS Canada
B2Y 4A2
Tel. (902) 426-3529
Fax (902) 426-9710
Email Mark.Fowler at dfo-mpo.gc.ca
Home Tel. (902) 461-0708
Home Email mark.fowler at ns.sympatico.ca
From: Richard Methot - NOAA Federal [mailto:richard.methot at noaa.gov]
Sent: March 11, 2013 3:43 PM
To: Fowler, Mark
Cc: dave fournier; users at admb-project.org
Subject: Re: [ADMB Users] very small number math
Mark,
The approach I take for stable estimation of F rates is to use a
well-defined starting point for the search and to search over a fixed
number of iterations. In particular, I get the starting point from
Pope's approximation to calculate an exploitation rate (for each fleet
relative to the mid-year available biomass for that fleet); then convert
these U's into an approximation for each F, then tune these F's over a
fixed number of iterations. This converges well enough with just 4
iterations even with multiple fleets. The trick to rapid convergence is
to base the updated F values based on the anticipated total Z after
adjusting the Fs, not the current total Z. Note that this is in a
separable model, so it is looking for the F that matches catch biomass
conditioned on a set of selectivity parameters.
This approach leads to very steep gradients for other parameters when F
is high and the catch data is considered to be precise, so convergence
of the overall model is slow because the model is constantly maintaining
a good fit to the catch data. For these cases, I find it useful to
switch over (during BETWEEN_PHASES) to treating the F's as ADMB model
parameters, rather than as a set of scaling factors to match the catch.
When treating the F's as parameters, the model tends to wait until the
last iterations to get a good fit to the catches.
Overall, I find that the variance on other model outputs (such as final
population biomass) is rather insensitive to F as coefficient vs. F as
parameter, but haven't tested this in high F situations.
Rick
On Mon, Mar 11, 2013 at 10:35 AM, Fowler, Mark
<Mark.Fowler at dfo-mpo.gc.ca> wrote:
Yes, and I use epsilon for proper parameters. The situation I'm
addressing is 'non-ADMB' iterative mortality (F) estimates. These are
just loop functions to estimate F's to create population and mortality
matrices. Obviously candidates as parameters, but I needed to keep them
as originally written. I was translating a particular type of VPA
written in a language called ACON to R and ADMB. Only the reference year
abundances are estimated with a serious optimizing function in the
original model (to reasonably estimate catchabilities). Initially this
served for truthing until I finished the translations. Hence the issue
of dealing with extremely small values are the profusion of F loops. And
I'm doing these in an equivalent manner to your suggestion, I just don't
use epsilon per se because I like to restrict it to parameters.
I've since been keeping the loops while comparing vulnerabilities to
local minima across the three programs, so only the reference year
abundances are optimized directly. Both optim and the ACON optimizer
(NLLS) clearly work left to right on parameter sets. The optim function
gets trapped in local minima with high uninformative constants for
priors on a vector that grades high to low. Starting left-most they go
up, which is correct relative to numbers to the right but wrong in
absolute terms. NLLS starts out similarly (run with few iterations you
get the same answer) but doesn't stay there, so maybe breaks the
left-to-right rule at some point to explore the range, or has some
threshold point at which it gives up on the first parameter. So far I'm
stymied with ADMB. I'm thinking maybe the F estimations confound
tracking of gradients?
> Mark Fowler
Population Ecology Division
> Bedford Inst of Oceanography
> Dept Fisheries & Oceans
> Dartmouth NS Canada
B2Y 4A2
Tel. (902) 426-3529 <tel:%28902%29%20426-3529>
Fax (902) 426-9710 <tel:%28902%29%20426-9710>
Email Mark.Fowler at dfo-mpo.gc.ca
Home Tel. (902) 461-0708 <tel:%28902%29%20461-0708>
Home Email mark.fowler at ns.sympatico.ca
-----Original Message-----
From: users-bounces at admb-project.org
[mailto:users-bounces at admb-project.org] On Behalf Of dave fournier
Sent: March 8, 2013 11:52 AM
To: users at admb-project.org
Subject: Re: [ADMB Users] very small number math
This is proabably a good use of phases. In the early phase you add
something
like
x/(eps+y)
and let eps get smaller or 0 in a later phase.
_______________________________________________
Users mailing list
Users at admb-project.org
http://lists.admb-project.org/mailman/listinfo/users
_______________________________________________
Users mailing list
Users at admb-project.org
http://lists.admb-project.org/mailman/listinfo/users
--
Richard D. Methot Jr. Ph.D.
NOAA Fisheries - Science Advisor for Stock Assessments
Office: 206-860-3365
Mobile: 301-787-0241
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.admb-project.org/pipermail/users/attachments/20130312/2c659e53/attachment.html>
More information about the Users
mailing list