inverse_ALK: Age-Length Key by the methods based on inverse ALKs

Description Usage Arguments Details Value References See Also Examples

View source: R/inverse_ALK.r

Description

Generation of Age-Length Keys (ALK) using incomplete data, by methods based on inverse ALKs.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
  gascuel(x, fi1, fi2, initial_values, threshold = 1e-04,
    maxiter = 2000, age_classes = colnames(x),
    length_classes = rownames(x), name = "",
    description = "")

  hoenig_heisey(x, fi1, fi2, threshold = 1e-04,
    maxiter = 2000, age_classes = colnames(x),
    length_classes = rownames(x), name = "",
    description = "")

  inverse_ALK(x, fi1, fi2, age_classes = colnames(x),
    length_classes = rownames(x), name = "",
    description = "")

  kimura_chikuni(x, fi1, fi2, threshold = 1e-04,
    maxiter = 2000, age_classes = colnames(x),
    length_classes = rownames(x), name = "",
    description = "")

Arguments

x

A i \times j matrix with i lines and j columns, where x[i, j] is the count of individuals of length i and age j.

fi1

A vector of length i where fi[i] is the number of fish in the length-class i on the population from which x was sampled.

fi2

A vector of length i where fi[i] is the number of fish in the length-class i on a population with unknown age information.

age_classes

A vector with the name of each age class.

length_classes

A vector with the name of each age class.

threshold

The value at which convergence is considered to be achieved: see ‘details’.

maxiter

The maximum number of iterations of the EM algorithm: see ‘details’.

initial_values

A vector with the initial values for α, β and γ: see ‘details’.

name

A string with the name of the ALK.

description

A string describing the ALK.

Details

inverseALK calculates an ALK from a sample of aged-fish, the length distribution of the sampled population and the length distribution of a population with unknown age-length data, as described by Clark (1981), Bartoo and Parker (1983) and Hilborn and Walters (1992).

kimura_chikuni, hoenig_heisey and gascuel use the same inputs as inverseALK to calculate an ALK as described respectively by Kimura and Chikuni (1987), Hoenig and Heisey (1987) and Gascuel (1994).

hoenig employs the generalized method proposed by Hoenig et al. (1993, 1994), which takes an undefined number of data sets with known and unknown age information and combines them to calculate the ALK.

The returned ALKr object contains information on the convergence threshold that was used, the number of iterations ran, and if convergence was reached.

Initial values

The method proposed by Gascuel (1994) is based on the assumption that the length distribution within each age class follows a Normal distribution, where the standard deviation of length at age σ(j) is given by a linear model as a function of three parameters α, β and γ:

σ(j) = α + β l(j) + γ Δl(j)

where Δl(j) is the difference between the mean lengths at age-class j and age-class j-1.

Convergence

The methods proposed by Kimura and Chikuni (1987), Hoenig and Heisey (1987) and Gascuel (1994) are all based on the EM algorithm as defined by Dempster et al. (1997), and build the ALK by a series of iterations which are repeated until convergence is acheived.

The convergence is tested by evaluating the sum of the absolute differences between the ages distributions calculated on the previous and current iterations: sum(abs(pj_prev - pj_curr)). The algorithm exits when either this value is smaller than the specified threshold or when the number of iterations reaches maxiter.

Value

An ALKr object, containing a i \times j matrix with the probability of an individual of length i having age j, i.e. P(j|i), a i \times j matrix with the estimated number of individuals of length i and age j, and information about the method used to generate the key.

References

Bartoo, N.W., Parker, K.R. (1983). Stochastic age-frequency estimation using the von Bertalanffy growth equation. Fishery Bulletin, 81/1, 91-96

Clark, W.G. (1981). Restricted Least-Squares Estimates of Age Composition from Length Composition. Canadian Journal of Fisheries and Aquatic Sciences, 38/3, 297-307. DOI: 10.1139/f81-041

Dempster, A.P., Laird, N.M., Rubin, D.B. (1977). Maximum Likelihood from Incomplete Data via the EM Algorithm. Journal of the Royal Statistical Society. Series B (Methodological), 39/1, 1-38. DOI: 10.2307/2984875

Gascuel, D. (1994). Une methode simple d'ajustement des cles taille/age: application aux captures d'albacores (Thunnus albacares) de l'Atlantique Est. Canadian Journal of Fisheries and Aquatic Sciences, 51/3, 723-733. DOI: 10.1139/f94-072

Hilborn, R., Walters, C.J. (1992). Quantitative fisheries stock assessment: Choice, dynamics and uncertainty. Reviews in Fish Biology and Fisheries, 2/2, 177-178. DOI: 10.1007/BF00042883

Hoenig, J.M., Heisey, D.M. (1987), Use of a Log-Linear Model with the EM Algorithm to Correct Estimates of Stock Composition and to Convert Length to Age. Transactions of the American Fisheries Society, 116/2, 232-243. DOI: 10.1577/1548-8659(1987)116<232:UOALMW>2.0.CO;2

See Also

hoenig

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
data(hom)

inverse_ALK(hom$otoliths[[1]], fi1 = hom$F1992, fi2 = hom$F1993)

kimura_chikuni(hom$otoliths[[1]], fi1 = hom$F1992, fi2 = hom$F1993) # converges
kimura_chikuni(hom$otoliths[[1]], fi1 = hom$F1992, fi2 = hom$F1993, maxiter = 10) # won't converge

hoenig_heisey(hom$otoliths[[1]], fi1 = hom$F1992, fi2 = hom$F1993)

gascuel(hom$otoliths[[1]], fi1 = hom$F1992, fi2 = hom$F1993,
  initial_values = c(0.1, 0.07, 0.06))

zeloff/ALKr documentation built on May 14, 2019, 9:40 a.m.