SIR_BKF: Particle Filter

Description Usage Arguments Details Source Examples

View source: R/SIR_BKF.r

Description

Performs the SIR-BKF algorithm approach in order to approximate the optimal MMSE estimate of state variables of a Partially-Observed Boolean Dynamical System.

Usage

1
SIR_BKF(Y, N, alpha, net, p, obsModel)

Arguments

Y

Time series of noisy observations of the boolean regulatory network.
Each row and column correspond to a specific Boolean variable and time point respectively.

N

Number of particles used in approximation

alpha

Parameter denoting the cutoff threshold for resampling

net

A Boolean Network object (specified in BoolNet vernacular) that the time series of observations presented in Y is based on

p

Intensity of Bernoulli process noise

obsModel

Parameters for the chosen observation model.

Details

Exact optimal state estimation for partially-observed Boolean dynamical systems may become impractical computationally if system dimensionality is large. This opens the floor for an approximation algorithm to handle cases of high-dimensional systems. The SIR-BKF Particle Filtering algorithm contained in BoolFilter handles situations in which the Boolean Kalman Filter proves too computationally inefficient.

The Particle Filtering approximation, like the Boolean Kalman Filter, can handle various observation models, including Bernoulli, Gaussian, Poisson, and Negative-Binomial, based on the input to the obsModel paramter.

The obsModel parameter is defined the same as the Boolean Kalman Filter and simulateNetwork functions, reference the documentation for BKF or simulateNetwork for details.

Source

Braga-Neto U. Particle filtering approach to state estimation in Boolean dynamical systems. In Global Conference on Signal and Information Processing (GlobalSIP), 2013 IEEE 2013 Dec 3 (pp. 81-84). IEEE.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
data(cellcycle)

obsModel = list(type = 'Gaussian', 
               model = c(mu0 = 1, sigma0 = 2, mu1 = 5, sigma1 = 2))

#generate data from Negative Binomial observation model for the
#10-gene Mammalian Cell Cycle Network
data <- simulateNetwork(cellcycle, n.data = 100, p = 0.02, obsModel)

#perform SIR-BKF algorithm
Results <- SIR_BKF(data$Y, N = 1000, alpha = 0.95, cellcycle, p = 0.02, obsModel)
                                          
                                        

BoolFilter documentation built on May 2, 2019, 1:27 p.m.