8

3

I'm working with some data that is 12 month seasonal. However, when I try to fit it to an ARIMA(12,1,3) for instance, my PC's CPU cranks up to 100% and the job never finishes. Here's some sample code.

```
monthlyObservations = TimeSeries[
WeatherData["KORD", "Temperature", {{2012}, {2014}, "Month"}],
TemporalRegularity -> True]
proc = EstimatedProcess[monthlyObservations, ARIMAProcess[12, 1, 3]]
forecast2 = TimeSeriesForecast[proc, monthlyObservations, {12}]
```

In theory (I hope) this should be fitting this weather data to an ARIMA(12,1,3) and estimating parameters. However, this starts running and just begings chugging and never completes. I'm not familiar with Mathematica's estimation process - is it attempting to do something computationally unreasonable?

For instance, lower order ARIMA works fine:

```
proc = EstimatedProcess[monthlyObservations, ARIMAProcess[6, 1, 2]]
forecast2 = TimeSeriesForecast[proc, monthlyObservations, {12}]
```

and gives me this response, almost instantly

```
ARIMAProcess[0.0435174, {0.453363,
0.366996, -0.385445, -0.0176661, -0.156695, -0.206585}, 1, \
{-0.174108, -0.149191}, 11.0761]
```

So, my question is - what's up with how Mathematica handles higher order ARIMA calculations? Is there something obvious that I am doing wrong (ie, is ARIMA even the right tool? Am I doing something dumb?

(Quick note): I am aware that you can use the TimeSeriesFit[] to do a similar process as above. However, this also struggles when finding higher order ARIMA(12,1,x) as the best fit and there are some genuine cases where I have specific domain knowledge about the generating Process and want to just estimate specific parameters.

Thanks Andy - I knew I could specify the model type (ie ARIMA, SARIMA, etc) but didn't know I could also specify likely parameters using the TimeSeriesModelFit function. Thanks for your help. Do you know if there are computational issues with high order ARIMA or if this is a bug? – Tom Hayden – 2014-12-20T22:48:37.643

I believe EstimatedProcess is just using a different more general algorithm that doesn't scale particularly well but allows for the flexibility to fix some parameter values. – Andy Ross – 2014-12-20T23:12:48.993