Skip Links

USGS - science for a changing world

Techniques and Methods 6–E3

Prepared in cooperation with the U.S. Environmental Protection Agency, U.S. Department of Energy, and International Ground Water Modeling Center, Colorado School of Mines

MMA, A Computer Code for Multi-Model Analysis

By Eileen P. Poeter1 and Mary C. Hill2

Thumbnail of and link to PDF (1.2 MB)Download Publication
T&M 6-E3
PDF (1.2 MB)


This report documents the Multi-Model Analysis (MMA) computer code. MMA can be used to evaluate results from alternative models of a single system using the same set of observations for all models. As long as the observations, the observation weighting, and system being represented are the same, the models can differ in nearly any way imaginable. For example, they may include different processes, different simulation software, different temporal definitions (for example, steady-state and transient models could be considered), and so on. The multiple models need to be calibrated by nonlinear regression. Calibration of the individual models needs to be completed before application of MMA.

MMA can be used to rank models and calculate posterior model probabilities. These can be used to
(1) determine the relative importance of the characteristics embodied in the alternative models,
(2) calculate model-averaged parameter estimates and predictions, and
(3) quantify the uncertainty of parameter estimates and predictions in a way that integrates the variations represented by the alternative models.

There is a lack of consensus on what model analysis methods are best, so MMA provides four default methods. Two are based on Kullback-Leibler information, and use the AIC (Akaike Information Criterion) or AICc (second-order-bias-corrected AIC) model discrimination criteria. The other two default methods are the BIC (Bayesian Information Criterion) and the KIC (Kashyap Information Criterion) model discrimination criteria. Use of the KIC criterion is equivalent to using the maximum-likelihood Bayesian model averaging (MLBMA) method. AIC, AICc, and BIC can be derived from Frequentist or Bayesian arguments. The default methods based on Kullback-Leibler information have a number of theoretical advantages, including that they tend to favor more complicated models as more data become available than do the other methods, which makes sense in many situations.

Many applications of MMA will be well served by the default methods provided. To use the default methods, the only required input for MMA is a list of directories where the files for the alternate models are located.

Evaluation and development of model-analysis methods are active areas of research. To facilitate exploration and innovation, MMA allows the user broad discretion to define alternatives to the default procedures. For example, MMA allows the user to (a) rank models based on model criteria defined using a wide range of provided and user-defined statistics in addition to the default AIC, AICc, BIC, and KIC criteria, (b) create their own criteria using model measures available from the code, and (c) define how each model criterion is used to calculate related posterior model probabilities.

The default model criteria rate models are based on model fit to observations, the number of observations and estimated parameters, and, for KIC, the Fisher information matrix. In addition, MMA allows the analysis to include an evaluation of estimated parameter values. This is accomplished by allowing the user to define unreasonable estimated parameter values or relative estimated parameter values. An example of the latter is that it may be expected that one parameter value will be less than another, as might be the case if two parameters represented the hydraulic conductivity of distinct materials such as fine and coarse sand. Models with parameter values that violate the user-defined conditions are excluded from further consideration by MMA.

Ground-water models are used as examples in this report, but MMA can be used to evaluate any set of models for which the required files have been produced.

MMA needs to read files from a separate directory for each alternative model considered. The needed files are produced when using the Sensitivity-Analysis or Parameter-Estimation mode of UCODE_2005, or, possibly, the equivalent capability of another program.

MMA is constructed using modules and conventions for data-exchange files from the JUPITER API, and is intended for use on any computer operating system. MMA consists of algorithms programmed in Fortran90, which efficiently performs numerical calculations.

1 International Ground Water Modeling Center and the Colorado School of Mines, Golden, Colorado, USA.
2 U.S. Geological Survey, Boulder, Colorado, USA.

Version 1.0

Posted August 2007

Suggested citation:

Poeter, Eileen P., and Mary C. Hill, MMA, A computer code for Multi-Model Analysis: U.S. Geological Survey Techniques and Methods 6-E3, 113 p.

Part or all of this report is presented in Portable Document Format (PDF); the latest version of Adobe Acrobat Reader or similar software is required to view it. Download the latest version of Acrobat Reader, free of charge or go to for free tools that allow visually impaired users to read PDF files.

Accessibility FOIA Privacy Policies and Notices

Take Pride in America logo logo U.S. Department of the Interior | U.S. Geological Survey
Page Contact Information: Contact USGS
Page Last Modified: Friday, December 02 2016, 03:47:20 PM