APT-MCMC, a C plus plus /Python implementation of Markov Chain Monte Carlo for parameter identification

作者:Zhang Li Ang; Urbano Alisa; Clermont Gilles; Swigon David; Banerjee Ipsita; Parker Robert S*
来源:Computers & Chemical Engineering, 2018, 110: 1-12.
DOI:10.1016/j.compchemeng.2017.11.011

摘要

The inverse problem associated with fitting parameters of an ordinary differential equation (ODE) system to data is nonlinear and multimodal, which is of great challenge to gradient-based optimizers. Markov Chain Monte Carlo (MCMC) techniques provide an alternative approach to solving these problems and can escape local minima by design. APT-MCMC was created to allow users to setup ODE simulations in Python and run as compiled C++ code. It combines affine-invariant ensemble of samplers and parallel tempering MCMC techniques to improve the simulation efficiency. Simulations use Bayesian inference to provide probability distributions of parameters, which enable analysis of multiple minima and parameter correlation.
Benchmark tests result in a 20x-60x speedup but 14% increase in memory usage against emcee, a similar MCMC package in Python. Several MCMC hyperparameters were analyzed: number of temperatures, ensemble size, step size, and swap attempt frequency. Heuristic tuning guidelines are provided for setting these hyperparameters.

  • 出版日期2018-2-2