Welcome to the pints documentation

Pints is hosted on GitHub, where you can find downloads and installation instructions.

Detailed examples can also be found there.

This page provides the API, or developer documentation for pints.


Hierarchy of methods

Pints contains different types of methods, that can be roughly arranged into a hierarchy, as follows.


  1. MCMC without gradients
  2. Nested sampling
  3. Particle based samplers
    • SMC
  4. Likelihood free sampling (Need distance between data and states, e.g. least squares?)
    • ABC-MCMC
    • ABC-SMC
  5. 1st order sensitivity MCMC samplers (Need derivatives of LogPDF)
  6. Differential geometric methods (Need Hessian of LogPDF)
    • smMALA
    • RMHMC


All methods shown here are derivative-free methods that work on any ErrorMeasure or LogPDF.

  1. Particle-based methods
    • Evolution strategies (global/local methods)
    • PSO (global method)

Problems in Pints

Pints defines single and multi-output problem classes that wrap around models and data, and over which error measures or log-likelihoods can be defined.

To find the appropriate type of Problem to use, see the overview below:

  1. Systems with a single observable output
  2. Systems with multiple observable outputs
    • Single data set: Use a MultiOutputProblem and any of the appropriate error measures or log-likelihoods