MSE-VARFI - Matlab Tool for the computation of
Multivariate Multiscale Entropy and Information Storage in linear processes with long range correlations

The most widely employed technique to evaluate the dynamical complexity of a time series at different time scales, the so-called multiscale entropy (MSE), has been proven to be unsuitable in the presence of short multivariate time series to be analyzed at long time scales. This work aims at overcoming these issues via the introduction of a new method for the assessment of the multiscale complexity of multivariate time series. The method first exploits vector autoregressive fractionally integrated (VARFI) models to yield a linear parametric representation of vector stochastic processes characterized by short- and long-range correlations. Then, it provides an analytical formulation, within the theory of state-space models, of how the VARFI parameters change when the processes are observed across multiple time scales, which is finally exploited to derive MSE measures relevant to the overall multivariate process or to one constituent scalar process.

The MSE-VARFI Matlab toolbox reproduces algorithms and real data analysis reported in [1], according to the following algorithmic steps:
1) open data and set analysis parameters
2) estimate differencing parameter and filter each series to remove long-range correlations
3) Approximation of the VARFI process with a finite-order VAR process
4) Computation of MSE for VAR process



[1] A Martins, R Pernice, C Amado, AP Rocha, ME Silva, M Javorka, L Faes, 'Multivariate and Multiscale Complexity of Long-Range Correlated Cardiovascular and Respiratory Variability Series', Entropy, 2020


Zip file with all scripts and functions:

The code is provided free of charge. It is neither exhaustively tested nor particularly well documented. The authors accept no liability for its use. Use, modification and redistribution of the code is allowed in any way users see fit. Authors ask only that authorship is acknowledged and ref. [1] is cited upon utilization of the code in integral or partial form.

DISCLAIMER OF WARRANTIES AND LIMITATION OF LIABILITY The code is supplied as is and all use is at your own risk. The authors disclaim all warranties of any kind, either express or implied, as to the softwares, including, but not limited to, implied warranties of fitness for a particular purpose, merchantability or non - infringement of proprietary rights. Neither this agreement nor any documentation furnished under it is intended to express or imply any warranty that the operation of the software will be error - free. Under no circumstances shall the authors of the softwares provided here be liable to any user for direct, indirect, incidental, consequential, special, or exemplary damages, arising from the software, or user' s use or misuse of the softwares. Such limitation of liability shall apply whether the damages arise from the use or misuse of the data provided or errors of the software.

To get started, we recommend that you run and work through the demonstration script.

- ar2mse2.m: computes multivariate MSE (and Information Storage) at a given scale (s/tau) from assigned AR parameters
- arfi2ar2.m - approximation of the VARFI process with a finite-order VAR process
- d_estimation.m: returns an estimate of the differencing parameter d (Whittle semiparametric estimator) for an individual time series with long-range correlations
- idMVAR.m: AR process identification (from eMVAR toolbox)
- iss_ds.m: computes innovations form SS parameters for a downsampled SS model
- iss_PV2: computes partial variances for a state space model from innovations form SS parameters
- iss_PCOV_msID: computes partial covariances from a subset of processes
- mos_idMVAR.m AR process order selection (from eMVAR toolbox)
- remove_d.m: filters a time series based on the differencing parameter d to remove long-range correlations
- ss2iss.m: computes innovations form SS parameters from SS parameters
- varma2iss.m: computes innovations form SS parameters from VARMA parameters

Script and Data
- analysis_script.m: computation of imultivariate multiscale complexity and of the complexity of an infdividual target time series for a representative example of systolic arterial pressure, RR intervals, respiration time series (collected in the file example_multivariate_series.mat)

NOTE: the iss_ds and ss2iss functions are taken from the State-Space Granger Causality Matlab Toolbox  -