A gentle tutorial on accelerated parameter and confidence interval estimation for hidden Markov models using Template Model Builder

7 May 2022  ·  Timothée Bacri, Geir D. Berentsen, Jan Bulla, Sondre Hølleland ·

A very common way to estimate the parameters of a hidden Markov model (HMM) is the relatively straightforward computation of maximum likelihood (ML) estimates. For this task, most users rely on user-friendly implementation of the estimation routines via an interpreted programming language such as the statistical software environment R (R Core Team, 2021). Such an approach can easily require time-consuming computations, in particular for longer sequences of observations. In addition, selecting a suitable approach for deriving confidence intervals for the estimated parameters is not entirely obvious (see, e.g., Zucchini et al., 2016; Lystig and Hughes, 2002; Visser et al., 2000), and often the computationally intensive bootstrap methods have to be applied. In this tutorial, we illustrate how to speed up the computation of ML estimates significantly via the R package TMB. Moreover, this approach permits simple retrieval of standard errors at the same time. We illustrate the performance of our routines using different data sets. First, two smaller samples from a mobile application for tinnitus patients and a well-known data set of fetal lamb movements with 87 and 240 data points, respectively. Second, we rely on larger data sets of simulated data of sizes 2000 and 5000 for further analysis. This tutorial is accompanied by a collection of scripts which are all available on GitHub. These scripts allow any user with moderate programming experience to benefit quickly from the computational advantages of TMB.

PDF Abstract


Computation 62-04 (Primary), 62-08 (Secondary), 62F40, 91-04, 92-04 G.3; I.6.8


  Add Datasets introduced or used in this paper