public class ParticleFilterBuilder
extends java.lang.Object
Constructor and Description |
---|
ParticleFilterBuilder(java.util.Collection<? extends Vertex> vertices) |
Modifier and Type | Method and Description |
---|---|
ParticleFilter |
build() |
ParticleFilterBuilder |
withNumParticles(int numParticles) |
ParticleFilterBuilder |
withRandom(KeanuRandom random) |
ParticleFilterBuilder |
withResamplingCycles(int resamplingCycles) |
ParticleFilterBuilder |
withResamplingProportion(double resamplingProportion) |
public ParticleFilterBuilder(java.util.Collection<? extends Vertex> vertices)
vertices
- the vertices of a Bayesian network to find probable values forpublic ParticleFilterBuilder withNumParticles(int numParticles)
numParticles
- the number of particles to generate (a larger number will yield better results but is more
computationally expensive)public ParticleFilterBuilder withResamplingCycles(int resamplingCycles)
resamplingCycles
- the number of times low probability particles are culled and high probability particles
are replicated each time the subgraph under consideration is expandedpublic ParticleFilterBuilder withResamplingProportion(double resamplingProportion)
resamplingProportion
- the proportion of particles to cull (e.g. the 25% of least probably particles could
be culled)public ParticleFilterBuilder withRandom(KeanuRandom random)
random
- A KeanuRandom
used for stochastic parts of algorithmpublic ParticleFilter build()