The automated AutoRegressive Integrated Moving Average (Auto-ARIMA) algorithm combines auto-regression and moving average techniques to provide reliable forecasts after calculating the optimal values for certain parameters automatically and differencing the historical data to make it stationary if needed. It is useful for the high-level automation of forecasting jobs that are characterized by the following:
Forecasts are calculated for the near future.
Products typically have long lifecycles.
Considerable sales history is available.
Sudden changes in trends require automatic and rapid adjustments of the forecast OR there are no noticeable long-term correlations between the historical data points.
There are no noticeable dependencies between the historical sales and other variables OR data on other demand influencing variables is not available.
ARIMA is an acronym: AR – I – MA and it stands for
| A | Auto |
| R | Regressive |
| I | Integrated |
| M | Moving |
| A | Average |
For each part that forms this powerful and complex algorithm, there is a certain parameter describing that component:
p – for AR (auto-regressive) component
q – for the MA (moving average) component
d – for the I (integrated) component
The ARIMA algorithm is suitable to be used for analyzing and forecasting various time series, but different models are used for different times series depending on the properties of the time series, for example, whether it has a trend or not, whether it has short or long memory, and so on.
An ARIMA model is a certain parameterized ARIMA algorithm that describes what values should be used for the p, d, q parameters and it is noted as ARIMA(p,d,q) triplet. For example, ARIMA(2,1,0).
The parameters are non-negative integers, usually small values below 5.
The AR component expresses how many previous values influence a certain value of the time series. As opposed to exponential smoothing where all previous values are used with decaying weights (going backwards) for predicting the next value, in ARIMA only some periods, p, are used to influence the next predication by applying auto-regression with as many lags.
The MA component is used to estimate the regression error as a moving average of previous regression errors. So, if q = 3, that means that a moving average of three periods is used to estimate the error term based on previous regressions during the training phase.
The Integrated component is used to make the time series stationary, only thenAR, and MA components (also called ARMA models) can be estimated and a prediction made.
A time series is stationary when its mean and standard deviation does not change over time. For example, if a time series contains a trend, it means that it is not stationary. By differencing it (subtracting neighboring time series values from each other, a new time series is obtained that may be stationary). The differencing techniques are repeated multiple times (d) until a stationary time series is obtained.
SARIMA Algorithm
SARIMA is a variation of ARIMA that caters for seasonality. It is often called "Seasonal ARIMA".
It has the original set of parameters, plus additional ones for seasonal regressions.
| ARIMA Parameters | Additional SARIMA Parameters |
|---|
p – for the AR (auto-regressive) component q – for the MA (moving average) component d – for the integrated component | P – for the seasonal AR component Q – for the seasonal MA component D – for the seasonal differencing m – for the length of the seasonal cycle |
An ARIMA model is described using the notation ARIMA(p,d,q,P,D,Q)m.
For example: ARIMA(2,1,0,0,1,0)12. In this case, p = 2, d = 1, q = 0, P = 0, D = 1, Q = 0, and the length of the seasonal cycle is 12 periods.
Using ARIMA for prediction requires a lot of expert knowledge and entails the analysis of the time series especially analysis of the auto-correlation (AFC) and the partial auto-correlation (PACF) functions and various other plots, especially on residuals, to determine the most appropriate ARIMA model to be used to create the prediction.
SAP Integrated Business Planning (SAP IBP) offers an automated version of the ARIMA and SARIMA implementation where the system internally does various tests to determine how many times the input time series needs to be differenced to come to a stationary time series (parameters d and D), also determines the optimal orders for the AR and MA components (p, P, q, Q) automatically by minimizing a certain criterion.
If seasonal items are to be forecasted, the seasonality needs to be enabled for auto-ARIMA/SARIMA, in which case, it can automatically check for seasonality by using a seasonality test and can determine automatically the length of the seasonality cycle if not provided.
The optimal model during the ARIMA execution in SAP IBP can be determined by minimizing a certain information criterion: AIC, AICc, or BIC.