# "Illogical Predictions" in Time Series Models?

In class today, we were doing a lab exercise in which we used R to fit a basic ARIMA time series model to predict the rain fall at a daily level. I noticed that during some months where there has not been a lot of rain (e.g. drought), the ARIMA model would make "illogical predictions". For example, the ARIMA model would predict that the following day will have "negative rainfall", or that the confidence interval would be 1 mm ± 3 mm.

Our prof told us that he wanted us to notice this phenomenon of "illogical predictions" and that this can commonly occur in ARIMA models.

He then mentioned that models like ETS (Exponential Time Smoothing) are less suspectable to producing such "illogical predictions" - but he did not really explain the reasons behind this.

My Question: Is there actually some mathematical reason that proves to us that these kinds of illogical predictions are by definition impossible when using ETS - or is it that sometimes ETS still make these illogical predictions, and that all depends on the specific dataset and the customizations? And are there any such models time series models that are better suited for avoiding these kinds of illogical predictions?

Thanks!

• Your professor seems to have conceded that ETS also makes such mistakes.
– Dave
Jan 25 at 21:54
• I am thinking perhaps the following logic applies: "sometimes linear regression models work really well, sometimes deep neural networks work really bad" Jan 25 at 21:57
• the same way, sometimes ETS produces illogical predictions - sometimes ETS does not? Jan 25 at 21:57
• I would hope that ETS isn’t guaranteed to produce illogical predictions!
– Dave
Jan 25 at 21:58
• Note that "ETS" does not stand for "Exponential Time Smoothing", but for "Error, Trend and Seasonality". This is crucial. Single Exponential Smoothing (SES) will indeed not give forecasts outside the historical observed range, but the more general ETS model will indeed do so. Jan 25 at 22:10

ETS will happily make "illogical" predictions. Feed it some data with a strong downward trend, and it will happily extrapolate it into negative forecasts, even if negative outcomes are nominally impossible for the data generating process at hand - after all, how is ETS to know?

library(forecast)
set.seed(1)
foo <- ts(100:10+rnorm(91))
plot(forecast(ets(foo),h=20),las=1)

• @ Stephan Kolassa: Thank you for your answer! I had a follow up question over here on what to do when the response variable naturally becomes (close to) 0 for certain periods of the year (stats.stackexchange.com/questions/597779/…) - could you please take a look at it if you time? thank you so much! Jan 27 at 3:31

Exponential smoothing predictions are a weighted sum of past observations, but the model explicitly uses an exponentially decreasing weight for past observations.

Since rainfall is always greater or equal to zero, it will be impossible for ETS to smooth historical data into something negative.

Example:

clear
set obs 100
gen t = _n
tsset t
gen y = 100 - 2*t + rnormal(0,15)
replace y = . if y <= 0
tssmooth exponential yhat = y, forecast(20)
tw (scatter y t) (line yhat t)


• Sorry, but this is just plain wrong, at least for the general ETS framework. (You are correct for SES, Simple Exponential Smoothing.) Jan 25 at 22:08
• @StephanKolassa I defer to you on all things TS and R, but I will leave my answer up until the OP clarifies if he meant ses (exponential smoothing forecasts) or ets (exponential smoothing state space model). It is not clear to me if he meant the latter by "ETS (Exponential Time Smoothing)." Jan 25 at 22:53