Posum 2

The posum 2 package is an open source implementation of the population surface method for estimating birth and death rates from age structured population time-series. It is based on the GAM package mgcv and requires the R statistical language and environment. At present posum is in need of some maintainance in order to make it compatible with current versions of mgcv. In the meantime it should still work with mgcv version 0.8, for which it was designed. Basic references for the population surface method are Wood and Nisbet (1991) and Wood (1994). A paper describing the implementation provided here is in preparation. Posum 2 goes some way beyond what is described in Wood (1994). In particular the code can deal with adult stages (i.e. final stages with indeterminate upper age boundary), and has a rather more satisfactory way of dealing with time varying stage durations. 3 error models are available: Normal, Poisson and Gamma. There are two underlying models implemented. Type 1 models are conceptually similar to the models of Wood and Nisbet (1991) and Wood (1994) in that they are based around estimation of a smooth `population surface' - the population per unit age interval as a function of age and time. Under type 1 models, death rates are estimated by numerical differentiation of the fitted population surface. Type 2 models are based around direct estimation of the total death rate surface (total death per unit age inteval, considered as a smooth function of age and time), along with estimation of the recruitment to the populaiton (smooth function of time) and initial population per unit age interval (smooth function of age). For type 2 models the population surface is calculated from the death surface and recruitment/initial population functions. Type 2 models are substantially slower to work with than type 1 models, but tend to give better results when the populaiton varies quite rapidly on a timescale that is quite short relative to the duration of a few stages.


The posum approach requires that you can supply lower and upper age limits associated with each observed stage (age class) population, along with a sample time. The approach will not work well with very few stages or very few sample times (I don't think I'd even try with less than 4 of either). Less than 50 data in total is unlikely to produce useful results. As a very rough guide a good dataset for the method would have 10+ stages and 10+ sample times, and would relate to a population for which the expectation is of relatively smooth and slow change over the age range and sample interval of the data, but of course the number of stages is often less than 10 in practice. The computing requirements are a machine running Windows, Linux or Unix and the R language and environment. R is available from CRAN . You must also have R package mgcv, version 0.8.*, installed. Most R installations have mgcv installed by default, but posum will not work with mgcv 1.0 and greater. mgcv homepage. The posum package is available here: Installation is as for any other R package (see the mgcv page for more detailed instructions). The package is documented via the R help system. The package is fairly new, and should probably be viewed as a beta release. Bug reports welcome.
Wood S.N & R.M. Nisbet (1991) "Estimation of Mortality rates in stage structured populations" Springer-Verlag Berlin

Wood S.N. (1994) " Obtaining birth and death rate patterns from structured population trajectories" Ecological Monographs 64(1):23-44.