Document PIHM calibration using evolutionary algorithms

From Age of Water
Revision as of 17:53, 22 January 2014 by Chris (Talk | contribs)

Jump to: navigation, search


Overview

Automatic calibration of PIHM can be done a sensitivity-based parameter estimation method known as Partition Calibration Strategy (PCS) for efficient model parameter optimization. It uses an evolutionary algorithm. The approach is described in detail in:

Yu, X., G. Bhatt, C. Duffy, Y. Shi, 2013, Parameterization for Distributed Watershed Modeling 
Using National Data and Evolutionary Algorithm, Computers in Geoscience, Vol (58), p. 80-90.

Evolutionary Algorithm

The CMA-ES (Covariance Matrix Adaptation Evolution Strategy) is an evolutionary algorithm for difficult non-linear non-convex optimization problems in continuous domains. CMA-ES is a rank-based (η, λ) evolution strategy where the best of the offspring form the next parent generation. It generates a new population membership by sampling from a probability distribution that is constructed during the optimization process. This page provides a short overview of CMA-ES. [The CMA-ES source code is on line]. For a detailed description of the algorithm, the reader is referred to the tutorial by Hansen (2006):

Hansen, N., 2006. The CMA Evolution Strategy: A Comparing Review. Towards a New Evolutionary computation, 
pp. 75-102. http://dx.doi:10.1007/3-540- 32494-1_4.

The underlying model watershed model PIHM, is a physics-based, fully-coupled, distributed hydrologic code that simulates 2-D overland flow, 1-D unsaturated flow and 2-D groundwater flow and 1-D stream dynamics. PIHM and PHIMgis are open source codes (www.pihm.psu.edu) that are being widely applied to catchment research. The goal of this tutorial is to outline the calibration/parameter strategy. Ideally a multi-state optimization is performed such that the model is constrained by actual field data for streamflow, groundwater levels, soil moisture, LAI as time series at specific locations or as fields of geospatial data. In the example below we refer to a time series procedure.


Yandex.Metrica