pyABC: distributed, likelihood-free inference

Bioinformatics. 2018 Oct 15;34(20):3591-3593. doi: 10.1093/bioinformatics/bty361.


Summary: Likelihood-free methods are often required for inference in systems biology. While approximate Bayesian computation (ABC) provides a theoretical solution, its practical application has often been challenging due to its high computational demands. To scale likelihood-free inference to computationally demanding stochastic models, we developed pyABC: a distributed and scalable ABC-Sequential Monte Carlo (ABC-SMC) framework. It implements a scalable, runtime-minimizing parallelization strategy for multi-core and distributed environments scaling to thousands of cores. The framework is accessible to non-expert users and also enables advanced users to experiment with and to custom implement many options of ABC-SMC schemes, such as acceptance threshold schedules, transition kernels and distance functions without alteration of pyABC's source code. pyABC includes a web interface to visualize ongoing and finished ABC-SMC runs and exposes an API for data querying and post-processing.

Availability and implementation: pyABC is written in Python 3 and is released under a 3-clause BSD license. The source code is hosted on and the documentation on It can be installed from the Python Package Index (PyPI).

Supplementary information: Supplementary data are available at Bioinformatics online.

Publication types

  • Research Support, Non-U.S. Gov't

MeSH terms

  • Bayes Theorem
  • Monte Carlo Method*
  • Software*
  • Systems Biology