Open bzinberg opened 4 years ago
I've been directly mutating ParticleFilterState
for some custom SMC code I'm writing too -- I'm in favor of just documenting ParticleFilterState
, because there are a lot of other things you might want to do with a particle filter, including custom rejuvenation moves, but also custom initializations (e.g. stratified sampling from the prior so you have low variance even w a small number of particles) and custom resampling steps (e.g. stratified resampling, etc., for the same variance reduction purposes).
From https://github.com/probcomp/gen-quickstart/issues/49#issuecomment-620993346:
In the Gen documentation, particle filter states are treated as black boxes that can only be looked under the hood via Gen APIs. So I think for rejuvenation moves we should either make an API, or document the representation invariants that someone who mutates a
ParticleFilterState
should maintain.