AdvancedPS.jl icon indicating copy to clipboard operation
AdvancedPS.jl copied to clipboard

Implementation of advanced Sequential Monte Carlo and particle MCMC algorithms

Results 13 AdvancedPS.jl issues
Sort by recently updated
recently updated
newest added

I'm wondering if a model like the one I present below is possible? The basic problem is one where the state isn't a single distribution, but a collection of distributions,...

[`SMC.jl`](https://github.com/FRBNY-DSGE/SMC.jl/tree/main) has a SMC implementation with tempering. They claim it works well on problems I am interested in. Would it be possible to implement this with `AdvancedPS.jl`?

I looked into the newly released `Threads.@threading` construct in Julia 0.5. It seems that adding parallelization feature to SMC is simple - could be done in a few lines of...

There is an issue with the way we handle inner state container in `PG` and `PGAS`. For a model like this: ```julia mutable struct Model States::Vector{Float64} end ``` `PGAS` would...

This [package](https://github.com/Julia-Tempering/SplittableRandoms.jl) implements a splittable random number generator based on the standard Random library. It might be helpful to compare against our internal splittable `rng`.

As discussed in TuringLang/Turing.jl#426, it would be good if Turing would be able to store statistics on the particle weights for all particle-filtering based methods. These statistics could be stored...

I had a short conversation with Fredrik Lindsten about SMC algorithms that might be interesting to implement. Apart from PGAS, his suggestions were: > - Our divide and conquer SMC...

Integrate refactor from https://github.com/TuringLang/Libtask.jl/pull/179 Two things worth noting: 1) Dealing with the RNG will be the user's responsability. Before ```julia mutable struct Model

In the extension for Libtask, AdvancedPS often accesses the `task` field of a Libtask `TapedTask`. I would like to know why this is done, and whether it is strictly necessary?...

question

There are several instances in the codebase where we have to create N pseudo-random number generators from one, for example: https://github.com/TuringLang/AdvancedPS.jl/blob/d0d180f432a6e2bf2fdd08c35d25ea2ef7715d4f/src/container.jl#L121-L136 Right now, this is handled by `split`, which generates...