A série escolhida para ajustar um dos modelos de suavização exponencial foi a série de Produção de Bens Intermediários. A série contém observações de janeiro de 2002 a março de 2018. Serão reservados os dois últimos anos para previsão.

Importando a série temporal utilizando o pacote BETS

library(BETS)

data <- BETSget(21864)
#save(data, file = "SERIE_PBI.RData")
#load("SERIE_PBI.RData")

#gráfico da série
plot(data, ylab = "PBI (Número índice)", main = "")
abline(v = seq(2002,2018,1), col = "gray60", lty = 3)

Ajuste do modelo e previsão

Como a série apresenta tendência e sazonalidade o modelo escolhido foi a suavização exponencial de Holt-Winters.

library(forecast)

#deixando 2 anos para previsão
data_sub <- window(data, start = c(2002, 1), end = c(2016,3)) 

#Ajuste
modelo <- HoltWinters(data_sub)
plot(modelo, main = "Ajuste do modelo")

modelo
## Holt-Winters exponential smoothing with trend and additive seasonal component.
## 
## Call:
## HoltWinters(x = data_sub)
## 
## Smoothing parameters:
##  alpha: 0.8983122
##  beta : 0
##  gamma: 1
## 
## Coefficients:
##            [,1]
## a   82.60147493
## b    0.09896562
## s1  -0.67357736
## s2   4.63435029
## s3   1.32594712
## s4   4.76121456
## s5   5.73767268
## s6   0.72365882
## s7   4.72249884
## s8  -1.13248597
## s9  -8.05648151
## s10 -6.41096490
## s11 -8.85490426
## s12  1.19852507
#previsão
prev <- forecast(modelo)
plot(prev, main = "Previsão")

Vemos que a previsão tem período parecido com o da série, mas as previsões pontuais variam menos do que as observações até o ponto em que se inicia a previsão.

Comparação da previsão pontual com os valores reais

No gráfico abaixo comparamos os valores reais (em preto) e os preditos (em vermelho).

prev <- as.data.frame(prev)
preditos <- ts(prev$`Point Forecast`, start = c(2016,4), end = c(2018,3), frequency = 12)

reais <- window(data, start = c(2016, 4), end = c(2018, 3))
plot(reais, ylab = NULL, main = "Comparação da previsão com valores reais")
lines(preditos, col = 2)
legend("topleft", legend=c("Preditos", "Reais"),
       col=c("red", "black"), lty=1, cex=0.8)

Vemos que na maioria dos pontos, a previsão pontual foi inferior ao valor real no momento, isto é, a previsão pontual do modelo subestima a Produção de Bens intermediários. No entanto, segue razoalvente bem o comportamento da série.

Checando se os intervalos de confiança contêm o valor real

lower <- prev$`Lo 80`
upper <- prev$`Hi 80`

cat("Quantidade de valores reais que estavam contidos no intervalo de 80%:",sum(lower <= reais & reais <= upper))
## Quantidade de valores reais que estavam contidos no intervalo de 80%: 21
cat("Quantidade de valores reais que estavam contidos no intervalo de 95%:",sum(prev$`Lo 95` <= reais & reais <= prev$`Hi 95`))
## Quantidade de valores reais que estavam contidos no intervalo de 95%: 24

Como, na maioria dos casos, apenas as estimativas pontuais não são suficientes para tirar conclusões sobre um modelo, verificamos também se o valor real está contido dentro dos intervalos de confiança de 80% e 95%.

Vimos acima que 21 dos 24 valores reais estavam realmente contidos no intervalo de confiança de 80%. Mais ainda, todos os 24 valores reais estavam contidos no intervalo de 95% de confiança.