Auto ETS

The Exponential Smoothing State Space (ETS) model is a forecasting method that provides automatic model selection, built-in data cleaning, and robust fallback strategies to ensure reliable forecast results across different data conditions.

The model fits ETS models that use:

  • Error types: {A, M}
  • Trend types: {N, A, Ad}
  • Season types: {N, A, M}

Total models: 2 × 3 × 3 = 18

This results in 18 possible model combinations.

Selection

The selection process evaluates all valid models and selects the model with the minimum AIC.

Two algorithms are used:

  • An analytical heuristic for non-seasonal models
  • A grid search as a fallback for seasonal models

Known limitations:

  • The selection process can prefer simpler models, for example, A, A, N instead of A, Ad, N.
  • The selection process is based on AIC and does not use BIC or AICc.

Missing data handling

Missing data is identified when y_t = NULL or y_t < −1 × 10¹⁰⁰. In these cases, linear interpolation is used. The process handles missing data as follows:

  • Automatically detects missing values, including NULL, empty values, or sentinel values less than −1E+100.
  • Applies linear interpolation between valid neighboring values.
  • Uses forward fill or backward fill for edge cases.
  • Reports the count through the LastWarning property.

Outlier detection using IQR Method

Q1 = 25th percentile

Q3 = 75th percentile

IQR = Q3 - Q1

Outlier is identified when y_t < Q1 - 1.5·IQR or y_t > Q3 + 1.5·IQR. In these cases, close neighbor interpolation is used to replace the outlier value:

  • Replaces outliers with interpolated values from neighboring values.
  • Optional with the bHandleOutliers parameter. The default value is False.
  • Reports the count through the LastWarning property.

Model Notation

Model         Forecast Equation                   Parameters
─────────────────────────────────────────────────────────────
ETS(A,N,N)    ŷ = l                               α
ETS(A,A,N)    ŷ = l + h·b                         α, β
ETS(A,Ad,N)   ŷ = l + Σφ^i·b                      α, β, φ
ETS(A,N,A)    ŷ = l + s                           α, γ
ETS(A,N,M)    ŷ = l · s                           α, γ
ETS(A,A,A)    ŷ = (l + h·b) + s                   α, β, γ
ETS(A,A,M)    ŷ = (l + h·b) · s                   α, β, γ
ETS(M,N,N)    ŷ = l                               α
ETS(M,A,N)    ŷ = l + h·b                         α, β
ETS(M,Ad,N)   ŷ = l + Σφ^i·b                      α, β, φ
ETS(M,N,A)    ŷ = l + s                           α, γ
ETS(M,N,M)    ŷ = l · s                           α, γ
ETS(M,A,A)    ŷ = (l + h·b) + s                   α, β, γ
ETS(M,A,M)    ŷ = (l + h·b) · s                   α, β, γ

- l = level, b = trend, s = seasonal component
- h = forecast horizon
- α = level smoothing, β = trend smoothing, γ = seasonal smoothing
- φ = damping parameter (0.98)
- m = seasonal period