PEST

PEST

Criterion

Explanation

General Description

PEST is the industry standard software package for parameter estimation and uncertainty analysis of complex environmental and other computer models. The PEST suite includes:

  • The PEST platform;
  • Variants of PEST which facilitate parallel run management (namely Parallel PEST and BEOPEST);
  • Two so-called "global optimizers" that can be used as direct replacements for PEST;
  • A basic sensitivity analyzer named SENSAN;
  • A suite of utility support programs that are supplied with PEST itself; and
  • Other utility support programs that expedite use of PEST in specific modelling contexts such as groundwater and surface water modeling.

PEST Groundwater Utility suite and PEST Surface Water Utility suite are two broad utility packages that expedite the use of PEST in specific modeling contexts. 

PEST has four modes of operation: (1) Estimation, (2) Predictive analysis, (3) Regularization, and (4) Pareto.

Model Domain

PEST can be used with any model. It has been used extensively with groundwater models.

Developer

John Doherty (Watermark Numerical Computing)
Chris Muffels (S. S. Papadopulos and Associates)
Jim Rumbaugh (Environmental Simulations Inc.)
Matt Tonkin (S. S. Papadopulos and Associates)

Additionally, a wider group of "friends of PEST" have assisted in its development over the years in many ways.

Hardware computing requirements

The PEST suite exists in both Windows and UNIX versions.

Code language

FORTRAN

Original application

Written in 1994. The original use was to speed up model calibration wherein values for model parameters are back-calculated by matching model outputs to measurements of system state.

PEST enabled models to predict with a high degree of certainty what will not happen in the future. Under these circumstances, models may then provide invaluable support to the decision-making process by allowing rejection of hypotheses that unwanted events will occur if certain courses of management action are taken.

Public/proprietary and cost

Public; no cost

Physically or empirically based

Physically based

Mathematical methods used

Interacts with a model through its open input and output files.

Model calibration using PEST is performed by "regularization" – obtaining a unique solution to an "ill-posed" inverse problem by implementing parameter simplification. Before using PEST to undertake predictive analysis, ensure that the calibration is done.

PEST employs two broad types of regularization, which can be used either individually or together:

  1. Tikhonov regularization "fixes up" an ill-posed inverse problem by adding information to it, this information pertaining directly to system parameters. The user suggests preferred values for all parameters and/or preferred relationships between them. Then the user sets a "target measurement objective function" defining a desired level of model-to-measurement misfit. PEST then re-formulates the calibration process as a constrained optimization process; it minimizes the so-called "regularization objective function" (thereby maximizing the extent to which preferred parameter values and/or parameter relationships are respected) while attempting to achieve a measurement objective function that is no lower than, and no higher than, the user-supplied target measurement objective function.
  2. Subspace regularization, namely SVD, "fixes up" an ill-posed problem by subtracting parameter combinations from that problem rather than adding observations pertaining to individual parameters to it. Parameter space is subdivided into two orthogonal subspaces, one spanned by parameter combinations comprising the "calibration solution subspace" that are estimable on the basis of the current calibration dataset, while the other (the "calibration null space") is spanned by parameter combinations that are not. The latter combinations of parameters are simply not estimated (and hence retain their initial values).

Input data requirements

PEST input files can be populated with random parameter sets; model runs can then be undertaken using each of these sets so that the variability of model outputs of interest can be explored.

PEST can interact with all of a model's input and output files, regardless of how many there are.

"Template files" are written, based on model input files, to show PEST which parts of a model input file must change (e.g. for providing the model with a set of parameter values appropriate for that model run). Model input files altered in this way must be ASCII (not binary) files.

PEST reads model output files for which there are corresponding field measurements, using instructions contained in "instruction files." Model output files must be ASCII or converted to ASCII format.

On any particular run its mode is designated through the PESTMODE variable appearing in the "control data" section of the PEST control file.

Outputs

Many output files written by PEST are binary files that are of little significance to the user, but are nonetheless very important for PEST.

User-beneficial files include:

  • Parameter value file – contains the optimal parameter set
  • Parameter sensitivity file
  • Observation sensitivity file
  • Residuals file – keeps track of differences between measured and modelled observation values

Others: Interim residuals file, matrix file, condition number file, singular value decomposition file, LSQR output file, run management record file, pareto output files, the Jacobian matrix file, resolution data file, other files, PEST screen output, run-time errors

Pre-processing and post-processing tools

N/A

Representation of uncertainty

Markov Chain Monte Carlo methods explore post-calibration parameter and predictive uncertainty with much greater efficiency than the more basic Monte Carlo method. However, the cost of model runs is still extremely high, especially where parameters number more than just a few, and correlation between parameters is high.

Prevalence

Industry standard, very prevalent

Ease of use for public entities

Widely used, comprehensively documented, relatively easy to implement with widely-used groundwater and surface water models.

Ease of obtaining information and availability of technical support

PEST is accompanied by many utility programs that support its use.

Training page can be found at http://www.pesthomepage.org/Training.php.  Includes a tutorial with complete examples of PEST used for surface water modeling (HSPF) and groundwater modeling (MODFLOW).

PEST immersion courses have been held in September and October of 2018 in Switzerland, Italy, and in Washington, DC.

PEST – the Book brings together the theory on which PEST and utility programs are based.

Send bug reports to: John Doherty – pestsupport@ozemail.com.au

Source code availability

The source code is available for download at:  http://www.pesthomepage.org/Downloads.php#hdr2

Status of model development

Fully developed and ready to use

Challenges for integration

Models which must be run in their own model-specific graphical user interface cannot be used with PEST.


References

Doherty, J., 2018, PEST Model-Independent Parameter Estimation User Manual Part I: PEST, SENSAN and Global Optimisers. Published by Watermark Numerical Computing, Brisbane, Australia. 368pp.

Doherty, J., 2018, PEST Model-Independent Parameter Estimation User Manual Part II: PEST, SENSAN and Global Optimisers. Published by Watermark Numerical Computing, Brisbane, Australia. 233pp.

Doherty, J., 2015, Pest – the Book.  Calibration and uncertainty analysis for complex environmental models. Published by Watermark Numerical Computing, Brisbane, Australia. 227pp, ISBN: 978-0-9943786-0-6).

Doherty, J., 2010, Methodologies and Software for PEST-Based Model Predictive Uncertainty Analysis. Published by Watermark Numerical Computing, Brisbane, Australia. 157pp.


Model inventory developed for Delta Stewardship Council Integrated Modeling Steering Committee (IMSC)