150 likes | 161 Views
AD Model Builder is a powerful tool for developing nonlinear models with efficient parameter estimation in C++ libraries. It simplifies model development by managing parameter-interface interactions, provides flexibility for creating custom libraries, and ensures stable function minimization. Users benefit from analytical derivatives, MCMC algorithm for Bayesian integration, and automated likelihood profiles. With matrix algebra capabilities and a range of features like likelihood profiles, random effects, and parallel processing, ADMB is ideal for highly parameterized nonlinear models, optimization tasks, and mixed effects modeling. The workshop offers hands-on training on model setup, uncertainty analysis, data handling, and implementing random effects models in a Bayesian framework.
E N D
An Introduction to AD Model Builder Anders Nielsen Technical University of Denmark, DTU-Aqua Mark Maunder Inter-American Tropical Tuna Commission
What is AD Model Builder • Tool for developing nonlinear models • Efficient estimation of model parameters • C++ libraries • Template
Simplifying the development of models • Removes the need to manage the interface between the model parameters and function minimizer. • The template makes it easy to input and output data from the model, set up the parameters to estimate, and set up objective function to optimize (minimize). • Adding additional estimable parameters or converting fixed parameters into estimable parameters is a simple process. • ADMB is very flexible because model code is in C++ • Can create your own libraries
Efficient and stable function minimizer • Analytical derivatives • Adjoint code • Chain rule • More efficient and stable than other packages that use finite difference approximation. • Stepwise process to sequentially estimate the parameters • Bounds on all estimated parameters that restrict the range of possible parameter values.
MCMC algorithm for Bayesian integration • Starts at the mode of the posterior reduces the burn-in time. • Jumping rules based on the variance-covariance estimates at the mode of the posterior distribution
Automated likelihood profiles • Normal approximation of confidence intervals based on the Hessian matrix and derived quantities using the delta method • Automatically calculate likelihood profiles for model parameters and derived quantities producing asymmetrical confidence intervals
Random effects parameters • Random effects parameters implemented using Laplace’s approximation (and importance sampling) • Automatic analytical second derivatives. • Use for process error, state space models, meta analysis
Matrix algebra • Matrix algebra with associated precompiled adjoint code for derivative calculations • Can greatly reduce computation time and memory usage compared to loops
Other features • non-linear programming solver • numerical integration routine • random number generation • high dimensional and ragged arrays • estimation of the variance-covariance matrix • dynamic link libraries with other software products (e.g. s-plus, Excel, Visual Basic) • safe mode compiling for bounds checking • ability to make ADMB C++ libraries. • Parallel processing
What its good for: Highly parameterize nonlinear models • Thousands of parameters • Combining many data sets or analyses • General Models
What its good for: Numerous optimizations of the objective function • Simulation analysis • Likelihood profiles • Bootstrap/cross validation • Model testing/sensitivity analysis • Management strategy evaluation
What its good for: Nonlinear mixed effects models • Crossed random effects • Nonlinear state-space models.
Outline Overview 9:00-10:30 Introduction, installation, and simple example Modeling and likelihood Example: Least squares regression Exercise: Create your own simple example: estimate the mean and variance using a likelihood function Uncertainty 11:00-12:30 Delta method, Profile likelihood, and MCMC Example: Beverton-Holt recruitment model Exercise: Beverton-Holt recruitment model comparing sequential Bayesian versus integrated analyses. Input, output, and model control 13.30-15.00 Data input, parameter control, and outputting results Example: Plankton sampler Exercise: Adding an additional covariate to the model Random effects (hierarchical) models: Frequentist and Bayesian 15.30-17:00 Laplace approximation in ADMB. Example: State-space model with Poisson observations. Exercise: Convert a WinBUGS example to ADMB
Instalation • Who has successfully installed ADMB