Closed gustavdelius closed 1 year ago
Hi Gustav,
I don’t quite understand how you want to use maximum size. Maximum size and asymptotic size are two different things: maximum size is the maximum ever observed size, and asymptotic size is the average maximum size obtained by a fit to a von Bertalanffy equation. The ratio of Maximum size to asymptotic size is therefore a measure of the variability around the average growth curve. As Mizer works with “average” growth curves, I don’t see how we can use maximum size in the estimation of the growth parameters.
Ken
Hi Ken. @Kenhasteandersen
I am glad you saw this issue. Yesterday evening when I wrote it I was considering whether I should email you because it is quite a big shift. But I thought I would need to write a bit more explanation first. So I'll do that now.
You are quite right that mizer works with average growth rates. In reality some fish will grow faster and some will grow slower and if we were serious about this, we would use the jump-growth equation or at least add a diffusion term to the McKendrick - von Foerster equation. But, and this is the important bit: if fish lived infinitely long, they would eventually asymptote to the same maximum size. Some would take longer to approach the asymptote and some would approach it faster and an average fish would approach it as described by the mizer growth curve. But the asymptotic size would be the same for all of them, because even the unlucky slow-growing individuals would only stop growing once they invest all of their income into reproduction. That size is what I would call w_max
. The best way to get an approximate value for it is to use the lower bound that is given by the largest observed individual, which is listed on FishBase.
Of course fish do not live infinitely long. The largest size they reach before dying is very random, both because of the randomness in the death but also due to the randomness in the growth rate. The observed size-at-age data shows a sample from the population of fish exposed to random growth and random mortality and fitting a von Bertalanffy curve through the resulting point cloud will lead to a w_inf
that is substantially smaller than the w_max
. The important point here is that the fitted von Bertalanffy curve is not a physiological growth curve of an individual. It is a fit to a sample from a population.
We will not be able to correctly reproduce that observed cloud of size-at-age data in mizer because, as you correctly point out, we are not keeping track of the randomness in growth and death. And we should not directly compare the mizer growth curve, which is the physiological growth curve of an average fish that never dies, with the fitted von Bertalanffy curve, which is a fit to a sample of size-at-age data from a population with mortality. How to calculate the stochastic correction to the mizer growth curve to make it comparable to the fitted von Bertalanffy curve is an interesting question which I have not yet answered, which is why I did not email you about this issue yet. But I'd be happy to collaborate with you on this if you are interested. As you correctly point out, the ratio between w_mat
and w_inf
is a measure of the variability in individual life histories. It is just a bit more complicated than just saying that it is a measure of the variability in growth curves because the variability in the time of death also comes in.
Hi Gustav,
I do not think all fish would grow to the same Wmax even if living infinitely long. Some would have a smaller asymptotic size, and some would have a larger size, just as some would grow fast and some slower (even if fed ad libitum). Wmax is therefore also a measure of the genetic variability in the stock.
While it would be great to include that in the model, it would require a bit of fundamental work — and to dig out some actual lab data to compare with. Perhaps there is something useful on zebrafish? I would be hesitant to include it without a solid reference to refer back to.
Ken
Yes, you are right that there will be some variation in w_max
between individuals, like there is some variation in all the other species parameters. Taking the variation in species parameters into account would be a separate issue from this issue, which is solely about acknowledging the difference between the asymptote of the average physiological growth curve and the asymptote of the curve fitted to sampled size-at-age data.
@Kenhasteandersen , you point out correctly that, as a physiological parameter of an individual, the asymptotic size varies from individual to individual. w_inf
is usually described as the "average asymptotic size" without a clear definition of what "average" means in this context. My point is that the parameter that mizer calls w_inf
is not a parameter of the individual but it is a population-level parameter. It gives the size at which the population as a whole invests 100% of its income into reproduction. Therefore it is the maximum of all the individual asymptotic sizes in the population.
I agree that the way mizer currently muddles the distinction between individual-level parameters and population-level parameters is not ideal. Ideally, mizer would accommodate variation in the individual-level parameters and then take that into account when deriving the dynamic equations for the size spectra. But in the meantime I think we must enable mizer to produce realistic size spectra. One obvious feature of real-world size spectra is that they extend beyond the asymptotic size of an "average" individual. So we can not continue to use the average asymptotic size as the maximum possible size in mizer.
I have just uploaded a blog post on this topic: https://blog.mizer.sizespectrum.org/posts/2022-11-30-dont-use-von-bertalanffy-growth-parameters/
Currently mizer uses
w_inf
both as the parameter in the vonBertalannfy growth curve and as the size at which fish invest all their income into reproduction. The latter should be allowed to be different, because it is in practice and both l_inf and l_max are given on FishBase.So I propose that we should have new species parameters
w_max
(orl_max
, see #257) which is used when calculating the maturity ogive. If this maximum size is not provided by the user then the asymptotic size should continue to be used as in the past.