Description Usage Arguments Value References Examples
Generic sequential Monte Carlo using full information proposal distribution with Rao-Blackwellization estimate, and delay is 0.
1 2 | SMC.Full.RB(SISstep.Full.RB, nobs, yy, mm, par, xx.init, xdim, ydim,
resample.sch)
|
SISstep.Full.RB |
a function that performs one step propagation using a proposal distribution.
Its input includes |
nobs |
the number of observations |
yy |
the observations with |
mm |
the Monte Carlo sample size |
par |
a list of parameter values to pass to |
xx.init |
the initial samples of |
xdim |
the dimension of the state varible |
ydim |
the dimension of the observation |
resample.sch |
a binary vector of length |
The function returns a list with the following components:
xhat |
the fitted values. |
xhatRB |
the fitted values using Rao-Blackwellization. |
Tsay, R. and Chen, R. (2019). Nonlinear Time Series Analysis. Wiley, New Jersey.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | nobs <- 100; pd <- 0.95; ssw <- 0.15; ssv <- 0.02;
xx0 <- 0; ss0 <- 0.1; nyy <- 10; yrange <- c(-80,80);
xdim <- 2; ydim <- nyy; nk <- 5
yr <- yrange[2]-yrange[1]
par <- list(ssw=ssw,ssv=ssv,nyy=nyy,pd=pd,yr=yr)
Yy10 <- array(dim=c(nyy,nobs,nk))
Xx10 <- matrix(ncol=nk,nrow=nobs)
Ii10 <- matrix(ncol=nk,nrow=nobs)
kk <- 0
seed.k <- 1
while(kk < nk){
seed.k <- seed.k+1
set.seed(seed.k)
kk <- kk+1
simu <- simuTargetClutter(nobs,pd,ssw,ssv,xx0,ss0,nyy,yrange)
if(max(abs(simu$yy))>80){
kk <- kk-1
}else{
Xx10[,kk] <- simu$xx; Yy10[,,kk] <- simu$yy; Ii10[,kk] <- simu$ii
}
}
resample.sch <- rep.int(1,nobs)
delay <- 0; mm <- 2000;
Xxhat.p10 <- array(dim=c(nobs,1,nk))
Xxhat.RB10 <- array(dim=c(nobs,2,nk))
Xres.com1.10 <- array(dim=c(nobs,3,nk))
Xres.com2.10 <- array(dim=c(nobs,4,nk))
for(kk in 1:nk){
xx.init <- matrix(nrow=2,ncol=mm)
xx.init[1,] <- yrange[1]+runif(mm)*yr
xx.init[2,] <- rep(0.1,mm)
out3 <- SMC.Full.RB(Sstep.Clutter.Full.RB,nobs,Yy10[,,kk],mm,par,
xx.init,xdim,ydim,resample.sch)
Xxhat.RB10[,1,kk] <- out3$xhatRB[1,]
Xxhat.RB10[,2,kk] <- out3$xhat[1,]
}
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.