Terry Walker Acting Manager, Marine Fisheries Division Tel: +61-3-5258 0111 (Institute switchboard) Tel: +61-3-5258 0251 (Direct dial) Fax: +61-3-5258 0270

Also depending on the participants
it may possible to arrange to discuss some more advanced
concepts for more experienced users of ADMB to keep them amused.

Otherwise it is useful to know something about programming
languages for computers (loops, conditional expressions, etc.)
as well as some C language syntax, but this is not essential
as we will discuss these things as we go along.

- A very short intoduction to statistical models?
- What are linear models? nonlinear models?
- Why do we need to use nonlinear models instead of linear ones.
- Why are nonlinear ones more difficult than linear ones.
- How ADMB is intended to make nonlinear models easy to use.
- Robustness and nonlinearity in statistical models.

- Simple programming concepts.
- Practical problems in fitting nonlinear statistical models.
- You can't get there from here. Modifying the objective function to enable the minimization routine to find the minimum.
- Doing the minimization in stages.
- Putting bounds on parameters.

- What is AD Model builder?
- A framework for building nonlinear statistical models.
- An environment for structuring the code correctly.
- A metaphor to induce the user to think about the model correctly.
- A set of technical tools to find the parameter estimates and to interpret the results.

- Description of the basic ADMB framework.
- The template (TPL) file.
- The sections of the TPL file.
- A simple model with data, parameters, and fitting criterion.
- DATA_SECTION PARAMETER_SECTION PROCEDURE_SECTION
- A simple linear regression model.
- Comparison with a simple nonlinear model.
- Manipulation of the nonlinear model to produce convergence.
- USE of LOCAL_CALCS to perform calculations in the DATA and PARAMETER sections.

- Description of the ADMB data types.
- effect of the init_ prefix
- meanings of number int vector matrix 3darray 4darray ...
- relationship to ADMB types to the underlying AUTODIF types.

- Automatic differentiation, adjoint code, derivatives and the
minimization of functions of many parameters.
- Why do I need to know this?
- The concept of constant and variable types in AUTODIF and ADMB.

- Managing model complexity by using higher dimensional dynamically
defined data structures.
- The use of ragged objects (non flat data structures)

- A more complicated model (perhaps catch-at-age fisheries model)
to use as an example for more advanced topics.
Use this model to ilustrate:
- carrying out the minimization in a number of phases.
- Modification of the objective function to obtain convergence.
- discussion of input and output files.
- the use of command line arguments to control model behaviour.

- Statistical interpretation of the results of the analysis.
- The SDREPORT type
- The LIKEPROF type
- Computing the inverse of the hessian and the delta method.
- The profile likelihood routine.
- The Markov chain Monte Carlo routine.
- Non informative priors on what? The effect of reparameterizing the model.

- A review of all the SECTIONS and SUBSECTIONS (that exist at present) in ADMB.
- Analysis of simulated data.
- Why use simulated data?
- Resampling.
- Using the ADMB program to simulate data.
- How to automate the process.

- Debugging ADMB programs.
- description of the process TPL => CPP error messages
- description of the process CPP => OBJ error messages
- description of the process OBJ => EXE error messages
- Using the safe and optimized libraries. walking out of arrays.

- Examples of ADMB programs of interest to the participants.
- Extensions of age structured fisheries models.
- Use of robust estimation techniques.
- Spatially disaggregated models. (Use of tagging data).
- Do we need age data? Alternatives.
- Concepts from stuctural time series methods or
- using state space concepts without realizing it.

- More advanced programming techniques.
- what is the scope of an ADMB object?
- The use of "local" variables in ADMB programs.

- Other topics in no particular order:
- Installing the software and getting it running.
- "One click" production of DLL's to call from SPLUS or Visual Basic or Excel or JAVA.
- Workshop participants create and discuss their own models.
- The use of other C++ libraries in ADMB.
- Practical problems in creating really big models. Managing the ADMB temporary files.