mrpt.bayes
mrpt-bayes Python API — particle filter configuration and Bayesian estimation.
The CParticleFilter class configures and drives a particle filter; the actual PDF being estimated must implement CParticleFilterCapable (in C++) or be driven via the mrpt.slam RBPF classes from Python.
Package Contents
- class mrpt.bayes.CParticleFilter
C++ API: class mrpt::bayes::CParticleFilter
- property options: TParticleFilterOptions
Algorithm options (TParticleFilterOptions)
- class mrpt.bayes.CParticleFilterCapable
C++ API: class mrpt::bayes::CParticleFilterCapable
- ESS() float
Effective sample size, in the range [0,1]
- static computeResampling(method: TParticleResamplingAlgorithm, log_weights: list[float], out_particle_count: int = 0) list[int]
Compute resampling indexes from log-weights. Returns a list of particle indices after resampling.
- getW(i: int) float
Returns the log-weight of particle i
- static logWeightsToLinear(log_weights: list[float]) list[float]
Convert log-weights to normalized linear weights (sum=1).
- normalizeWeights() float
Normalizes the log-weights so the maximum is 0. Returns the max log-weight before normalizing.
- particlesCount() int
- setW(i: int, w: float) None
Sets the log-weight of particle i
- class mrpt.bayes.TParticleFilterAlgorithm(value: int)
Members:
StandardProposal
AuxiliaryPFStandard
OptimalProposal
AuxiliaryPFOptimal
pfStandardProposal
pfAuxiliaryPFStandard
pfOptimalProposal
pfAuxiliaryPFOptimal
- property name: str
- property value: int
- AuxiliaryPFOptimal: ClassVar[TParticleFilterAlgorithm]
- AuxiliaryPFStandard: ClassVar[TParticleFilterAlgorithm]
- OptimalProposal: ClassVar[TParticleFilterAlgorithm]
- StandardProposal: ClassVar[TParticleFilterAlgorithm]
- pfAuxiliaryPFOptimal: ClassVar[TParticleFilterAlgorithm]
- pfAuxiliaryPFStandard: ClassVar[TParticleFilterAlgorithm]
- pfOptimalProposal: ClassVar[TParticleFilterAlgorithm]
- pfStandardProposal: ClassVar[TParticleFilterAlgorithm]
- class mrpt.bayes.TParticleFilterOptions
Bases:
mrpt.config.CLoadableOptions- property BETA: float
Resampling threshold: resample when ESS < BETA (default=0.5)
- property PF_algorithm: TParticleFilterAlgorithm
The particle filter algorithm to use
- property adaptiveSampleSize: bool
If true, enable adaptive number of particles
- property resamplingMethod: TParticleResamplingAlgorithm
The resampling scheme (default=prMultinomial)
- property sampleSize: int
Initial number of particles (relevant for adaptiveSampleSize=false)
- class mrpt.bayes.TParticleFilterStats
- property ESS_beforeResample: float
Effective sample size (ESS) before resampling step
- property weightsVariance_beforeResample: float
Weight variance before resampling
- class mrpt.bayes.TParticleResamplingAlgorithm(value: int)
Members:
Multinomial
Residual
Stratified
Systematic
prMultinomial
prResidual
prStratified
prSystematic
- property name: str
- property value: int
- Multinomial: ClassVar[TParticleResamplingAlgorithm]
- Residual: ClassVar[TParticleResamplingAlgorithm]
- Stratified: ClassVar[TParticleResamplingAlgorithm]
- Systematic: ClassVar[TParticleResamplingAlgorithm]
- prMultinomial: ClassVar[TParticleResamplingAlgorithm]
- prResidual: ClassVar[TParticleResamplingAlgorithm]
- prStratified: ClassVar[TParticleResamplingAlgorithm]
- prSystematic: ClassVar[TParticleResamplingAlgorithm]