Bayesian Synthetic Likelihood

Bayesian synthetic likelihood (BSL, Price et al. (2018) ) is an alternative to standard, non-parametric approximate Bayesian computation (ABC). BSL assumes a multivariate normal distribution for the summary statistic likelihood and it is suitable when the distribution of the model summary statistics is sufficiently regular. This package provides a Metropolis Hastings Markov chain Monte Carlo implementation of BSL, BSLasso and semiBSL. BSL with graphical lasso (BSLasso, An et al. (2018) <>) is computationally more efficient when the dimension of the summary statistic is high. A semi-parametric version of BSL (semiBSL, An et al. (2018) ) is more robust to non-normal summary statistics. Extensions to this package are planned.


BSL 2.0.0

  • Second major release. Please note some arguments have been renamed.
  • Added a new method ("semiBSL") in the main function "bsl".
  • Now bsl returns an S4 class object instead of S3. The plot method gives an option for whether ggplot2 or R graphics (the default) will be used.
  • The simulation function and summary statistics function do not need to have a list as the second argument now.
  • The new bsl function uses "parallelArgs" instead of "parallel_packages", where users can specify all arguments supported by "foreach".
  • Code update for three examples: MA(2), multivariate G & K, and cell biology.

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


2.0.0 by Ziwen An, 4 months ago

Browse source code at

Authors: Ziwen An [aut, cre] , Leah F. South [aut] , Christopher C. Drovandi [aut]

Documentation:   PDF Manual  

GPL (>= 2) license

Imports glasso, ggplot2, MASS, mvtnorm, copula, cvTools, graphics, gridExtra, foreach, coda, Rcpp, methods

Suggests elliplot, doParallel

Linking to Rcpp, RcppArmadillo

See at CRAN