Learn R Programming

BSSasymp (version 1.2-3)

aSOBI: Alternative SOBI estimators

Description

The SOBI method solves the blind source separation problem in the case of second order stationary time series sources by jointly diagonalizing the covariance matrix and several autocovariance matrices. In the classical SOBI method, the sum of squares of the diagonal elements is used as diagonality measure. This function computes the SOBI estimate, when a choice from a family of alternative diagonality criteria is used.

Usage

aSOBI(X, k=12, a=4, eps=1e-06, maxiter=1000)

Arguments

X

a numeric data matrix or a multivariate time series object of class ts.

k

if a single integer, then the lags 1:k are used, if an integer vector, then these are used as the lags.

a

numeric, determines the diagonality criterion, see details.

eps

convergence tolerance.

maxiter

maximum number of iterations.

Value

A list with class 'bss' containing the following components:

W

estimated unmixing matrix.

S

estimated sources standardized to have mean 0 and unit variances.

k

lags used.

a

value of the diagonality criterion parameter used.

Details

The classical SOBI estimator maximizes the sum of squares of the diagonal elements of the autocovariance matrices. A family of alternative SOBI estimators is obtained when the diagonality of \(p\times p\) matrices \(B_1,\dots,B_K\) is measured by $$\sum_{k=1}^K\sum_{i=1}^p |(B_k)_{ii}|^a$$ with \(a>1\).

References

Miettinen, J. (2015): Alternative diagonality criteria for SOBI. In Nordhausen, K. and Taskinen, S. (editors), Modern Nonparametric, Robust and Multivariate methods, Festschrift in Honour of Hannu Oja, 455--469, Springer.

See Also

SOBI

Examples

Run this code
# NOT RUN {
A <- matrix(rnorm(9),3,3)
s1 <- arima.sim(list(ar=0.6),1000)
s2 <- arima.sim(list(ma=c(0.2,0.3,-0.3)),1000)
s3 <- arima.sim(list(ar=-0.2,ma=c(0.5,-0.1,0.4)),1000)

S <- cbind(s1,s2,s3)
X <- S %*% t(A)

aSOBI(X, a=3)
# }

Run the code above in your browser using DataLab