Skip to content
Numerical Method , home
Menu

Forum Numerical Method Statistics

complexity of VARMA and ARIMA

  1. ozcanalpParticipant 2015-04-08 at 9:09 am

    Hello,

    I use SuanShu.net and I want to compare complexity of two algorithms ARIMA and VARMA. I need Big-O notation about the asymptotic performance

    For example my codes are like below. I have one multivariate and one univariate series. Each series have 10 time values. For example if I increase the time values size as an 20 time values what is the increase of the complexity of the each algoritm?

    //VARMA X_T = new MultivariateSimpleTimeSeries( new double[][]{ new double[]{-1.875, 1.693}, new double[]{-2.518, -0.03}, new double[]{-3.002, -1.057}, new double[]{-2.454, -1.038}, new double[]{-1.119, -1.086}, new double[]{-0.72, -0.455}, new double[]{-2.738, 0.962}, new double[]{-2.565, 1.992}, new double[]{-4.603, 2.434}, new double[]{-2.689, 2.118} }); double[] result = null;

    try
    {
    VARFitting fitting = new VARFitting(X_T, 2);
    
    VARMAModel varmaModel = fitting.getVARMA();
    VARMAForecastOneStep instance = null;
    
    instance = new VARMAForecastOneStep(X_T, varmaModel.getDemeanedModel());
    int T = X_T.size();
    Vector xTHat = instance.xHat(T + 1);
    result = xTHat.toArray();
    
    }
    catch (java.lang.Exception e)
    {
    
    }
    

    //ARIMA

    IntTimeTimeSeries xt = new SimpleTimeSeries(new double[]{1.704, 0.527, 1.041, 0.942, 0.555, -1.002, -0.585, 0.010, -0.638, 0.525});
    
    ARIMAForecast instance = new ARIMAForecast(xt, arima);
    
    ARIMAForecast.Forecast frc = instance.next();
    double next = frc.xHat();
    double err = frc.var();
    
  2. RyuParticipant 2015-04-09 at 3:21 pm

    Hello,

    The univariate and multivariate versions essentially use the same algorithm. You can check the references:

    Univariate: P. J. Brockwell and R. A. Davis, “Section 5.3, Chapter 5, Recursive Prediction of an ARMA(p, q) Process,” Time Series: Theory and Methods, Springer, 2006.

    Multivariate: P. J. Brockwell and R. A. Davis, “Chapter 5.3, Recursive Prediction of an ARMA(p,q) Process,” Time Series: Theory and Methods, Springer, 2006.

    P. J. Brockwell and R. A. Davis, “Eqs. 11.4.26, 11.4.27, 11.4.28, Chapter 11.4, Recursive Prediction of an ARMA(p,q) Process, Best Linear Predictors of Second Order Random Vectors,” Time Series: Theory and Methods, Springer, 2006.

  3. ozcanalpParticipant 2015-05-21 at 2:10 pm

    Thank you Ryu,

    The reference documents are little complicated for me to deduce the complexity of algorithms in terms of Big-O notation about the asymptotic performance.

    I only need Big-O notation of these VAR and ARIMA algoritm complexity Big-O notation can you help me ?

    For example if I have N time values and I wanna estimate the N+1 value of the this series by using algoritm ARIMA. Then is the complexity of ARIMA algoritm equals to the O(N2(p+q)) or not ? Is it correct ?

    And if I had done the same asymptotic performance measurement with VAR model what is the Big-O notation for VAR ?