pybop.samplers.pints_samplers#
Classes#
Implements the Adaptive Covariance Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the DiffeRential Evolution Adaptive Metropolis (DREAM) algorithm. |
|
Implements the Differential Evolution Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Delayed Rejection Adaptive Metropolis (DRAM) Adaptive Covariance MCMC algorithm. |
|
Implements the Emcee Hammer Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Haario Adaptive Covariance Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Haario-Bardenet Adaptive Covariance Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Hamiltonian Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Metropolis Adjusted Langevin Algorithm (MALA) Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Metropolis Random Walk Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Monomial Gamma Hamiltonian Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the No-U-Turn Sampler (NUTS) algorithm. |
|
Implements the Population Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Rao-Blackwell Adaptive Covariance Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Relativistic Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Slice Doubling Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Slice Rank Shrinking Markov Chain Monte Carlo (MCMC) algorithm. |
|
Implements the Slice Stepout Markov Chain Monte Carlo (MCMC) algorithm. |
Module Contents#
- class pybop.samplers.pints_samplers.AdaptiveCovarianceMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Adaptive Covariance Markov Chain Monte Carlo (MCMC) algorithm.
This class wraps the Adaptive Covariance MCMC sampler from the PINTS library. The proposal distribution’s covariance matrix is adapted during sampling to improve efficiency and convergence.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.DREAM(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the DiffeRential Evolution Adaptive Metropolis (DREAM) algorithm.
This class wraps the DREAM sampler from the PINTS library. DREAM combines Differential Evolution and Adaptive Metropolis to efficiently explore complex parameter spaces using a population of chains.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.DifferentialEvolutionMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Differential Evolution Markov Chain Monte Carlo (MCMC) algorithm.
This class wraps the Differential Evolution MCMC sampler from the PINTS library. Uses a population of chains and differential evolution proposals for efficient exploration of the parameter space.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.DramACMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Delayed Rejection Adaptive Metropolis (DRAM) Adaptive Covariance MCMC algorithm.
This class wraps the DRAM Adaptive Covariance MCMC sampler from the PINTS library. Combines delayed rejection and adaptive covariance for robust and efficient sampling.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.EmceeHammerMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Emcee Hammer Markov Chain Monte Carlo (MCMC) algorithm.
This class wraps the Emcee Hammer MCMC sampler from the PINTS library. The Emcee Hammer is an affine-invariant ensemble sampler, effective for high-dimensional parameter spaces.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.HaarioACMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Haario Adaptive Covariance Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Haario Adaptive Covariance MCMC sampler from the PINTS library. This MCMC method adapts the proposal distribution’s covariance matrix based on the history of the chain, improving sampling efficiency and convergence.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.HaarioBardenetACMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Haario-Bardenet Adaptive Covariance Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Haario-Bardenet Adaptive Covariance MCMC sampler from the PINTS library. This MCMC method combines the adaptive covariance approach with an additional mechanism to improve performance in high-dimensional parameter spaces.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.HamiltonianMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Hamiltonian Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Hamiltonian MCMC sampler from the PINTS library. This MCMC method uses Hamiltonian dynamics to propose new states, allowing for efficient exploration of high-dimensional parameter spaces.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.MALAMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Metropolis Adjusted Langevin Algorithm (MALA) Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the MALA MCMC sampler from the PINTS library. This MCMC method combines the Metropolis-Hastings algorithm with Langevin dynamics to improve sampling efficiency and convergence.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.MetropolisRandomWalkMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Metropolis Random Walk Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Metropolis Random Walk MCMC sampler from the PINTS library. This classic MCMC method uses a simple random walk proposal distribution and the Metropolis-Hastings acceptance criterion.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.MonomialGammaHamiltonianMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Monomial Gamma Hamiltonian Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Monomial Gamma Hamiltonian MCMC sampler from the PINTS library. This MCMC method uses Hamiltonian dynamics with a monomial gamma distribution for efficient exploration of the parameter space.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.NUTS(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the No-U-Turn Sampler (NUTS) algorithm.
This class wraps the NUTS sampler from the PINTS library. NUTS is a Markov chain Monte Carlo (MCMC) method for sampling from a probability distribution, extending Hamiltonian Monte Carlo with an adaptive integration time for efficient exploration.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.PopulationMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Population Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Population MCMC sampler from the PINTS library. This MCMC method uses a population of chains at different temperatures to explore the parameter space more efficiently and avoid local minima.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.RaoBlackwellACMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Rao-Blackwell Adaptive Covariance Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Rao-Blackwell Adaptive Covariance MCMC sampler from the PINTS library. This MCMC method improves sampling efficiency by combining Rao-Blackwellisation with adaptive covariance strategies.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.RelativisticMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Relativistic Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Relativistic MCMC sampler from the PINTS library. This MCMC method uses concepts from relativistic mechanics to propose new states, allowing for efficient exploration of the parameter space.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.SliceDoublingMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Slice Doubling Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Slice Doubling MCMC sampler from the PINTS library. This MCMC method uses slice sampling with a doubling procedure to propose new states, allowing for efficient exploration of the parameter space.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.SliceRankShrinkingMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Slice Rank Shrinking Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Slice Rank Shrinking MCMC sampler from the PINTS library. This MCMC method uses slice sampling with a rank shrinking procedure to propose new states, allowing for efficient exploration of the parameter space.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options for the sampler.
- class pybop.samplers.pints_samplers.SliceStepoutMCMC(log_pdf: pybop.problems.problem.Problem, options: pybop.PintsSamplerOptions | None = None)[source]#
Bases:
pybop.BasePintsSamplerImplements the Slice Stepout Markov Chain Monte Carlo (MCMC) algorithm.
This class extends the Slice Stepout MCMC sampler from the PINTS library. This MCMC method uses slice sampling with a stepout procedure to propose new states, allowing for efficient exploration of the parameter space.
- Parameters:
log_pdf (pybop.Problem) – The log-posterior to sample.
options (pybop.PintsSamplerOptions, optional) – Additional options to pass to the sampler.