News blog
version 3.0.1.0 available on github
12 June 2020
pomp version 3.0.1.0 has been released: source code and binaries are available. This is a development release, anticipatory to the next CRAN version, which will be 3.1.
From this version, pomp requires at least version 4.0 of R.
New features
A new sequential importance sampling algorithm has been implemented as wpfilter
.
This is a generalization of the algorithm in pfilter
in that it tracks the weights of the particles and allows the user to customize the resampling scheme.
In particular, one can determine when resampling happens using the trigger
option.
One sets trigger
to a positive number:
when the effective sampling size is less than trigger * Np
, resampling is triggered.
Thus setting trigger = 0
forbids resampling, while setting trigger
to any number ≥0 forces resampling at every observation a la pfilter
.
One can also determine the weight distribution of the resampled particles using the target
option.
One sets target
to a number in [0,1].
If target =
α, say, and the weight of the ith particle is w_{i}, then it is resampled with weight w_{i}^{1α} and, after resampling, carries weight w_{i}^{α}.
Thus, setting trigger = 1
and target = 0
reproduces the behavior of pfilter
.
The new function wpfilter
should be considered an alpha release:
both the interface and the underlying algorithms may change at any time without notice.
Please explore the function and give feedback via the pomp issues page.
For more information, see the help pages in the package manual.
version 3.0.0.0 available on github
02 June 2020
pomp version 3.0.0.0 has been released: source code and binaries are available. This is a development release, anticipatory to the next CRAN version, which will be 3.1.
Important Changes

In
mif2
, the specification of particle numbers,Np
, has changed. WhenNp
is supplied as a function,Np(0)
is the requested number of particles at the beginning of the time series. The previous behavior was thatNp(1)
specified the requested number of particles. This behavior now matches that of the other particle filtering algorithms,pfilter
,bsmc2
, andpmcmc
. 
As promised from version 2.4.1, the
tol
andmax.fail
arguments have been removed completely from all particlefiltering algorithms, includingpfilter
,pmcmc
,bsmc2
, andmif2
. See the older post for more information. 
bsmc2
can now accept a variable number of particles, as do the other particlefilter based algorithmspfilter
,pmcmc
, andmif2
. 
The internal
systematic_resample
function now allows the user to specify the number of samples desired. Previously, these were always equal to the number of weights supplied. 
The longdeprecated functions
onestep.dens
,onestep.sim
,discrete.time.sim
,euler.sim
,gillespie.sim
,gillespie.hl.sim
,conv.rec
, andvalues
have been removed. These have been replaced as follows.onestep.dens
direct specification of dprocess
componentonestep.sim
onestep
discrete.time.sim
discrete_time
euler.sim
euler
gillespie.sim
gillespie
gillespie.hl.sim
gillespie_hl
conv.rec
traces
values
as.data.frame
oras(x,"data.frame")
version 2.8 released
11 April 2020
pomp version 2.8 has been released to CRAN and is on its way to a mirror near you.
Important Changes

As promised with version 2.4.1.3, the default value of
tol
in the particlefiltering algorithmspfilter
,pmcmc
,mif2
, andbsmc2
has been changed to zero. A warning continues to be issued iftol
is set to anything other than 0. In a future release, the option to choose a nonzero tolerance will be removed entirely. This change is not backward compatible. If precise reproduction of old results is needed, set thetol
parameter to the appropriate nonzero value. 
In traces and diagnostic plotting methods, the
nfail
variable (tracking numbers of filtering failures) has been dropped.
Minor change
 The Euler step size in
sir
is now adjustable by means of the argument `delta
version 2.7.2.1 available on github
04 April 2020
Version 2.7.2.1 is now available on the pomp github repo.
This release contains several minor revisions.
Install it by doing, e.g.,
install.packages("pomp",repos="https://kingaa.github.io")
version 2.7.1.0 available on github
27 March 2020
Version 2.7.1.0 makes the first set of changes to the behavior of particlefilterbased algorithms promised in version 2.4.1.0.
In particular, the default value of the tol
parameter is now set to zero.
This affects the pfilter
, mif2
, pmcmc
, and bsmc2
functions.
See the earlier blog post for more information.
If you haven’t changed your workflow to use tol=0
, as prompted by the warnings from versions 2.4.1 on, this change may break some of your existing code.
To recover previous behavior, set tol
to a positive value (the old default was 10^{17}).
It is a good idea at this stage, however, to modify your workflows by setting tol=0
or, better still, leaving tol
at the default value, since the tol
argument will go away soon.
In a forthcoming release, the option to set a nonzero tolerance will be removed entirely.
Blog archive
Subscribe to this newsfeed