Computational Performance of the Forecasting Algorithms
The computational performance has been central in the design of all the
forecasting methods in the library.
This is because conventional wisdom wants the forecasting algorithms to be slow
or limited in scope (or complex to use). This has been true in the past since the
vast majority of players in the field designed dinosaur-era software that was indeed
complex to use and incredibly slow. The computational power available only ten years
ago was a fraction of what is available now and this is another reason why the algorithms
have always been designed as simple (and poor) as possible: just to use less computational
power!
Now the advent of modern microprocessors has given a chance to all to use modern
algorithms that were unfeasible only few years ago.
The computational benchmarks are clearly indicating that even the most complex algorithms
are really fast and can be used even in the most demanding real-life applications
or where there are millions of forecasts that need to be produced like in the modern
supply chains.
The benchmarks have been carried out on a 1.5GHz machine with 1G of memory (memory
is used fractionally during the tests). The tests consist in running repeatedly
the forecast algorithm on the same data series generated in a random fashion. The
figure reported is the number of forecasts per second, so the higher the better.
|
Forecasting Algorithm |
Number of Forecasts per Second |
|
Simple Moving Average |
1,121,979 |
|
Geometric Moving Average |
344,331 |
|
Triangular Simple Moving Average |
818,493 |
|
Parabolic Simple Moving Average |
656,948 |
|
Double Moving Average |
679,293 |
|
Exponential Moving Average |
2,377,528 |
|
Double Exponential Moving Average |
1,161,118 |
|
Holt Double Exponential Moving Average |
1,121,979 |
|
Triple Exponential Moving Average |
868,314 |
|
Adaptive Response Rate |
798,849 |
|
Holt Winters Additive |
601,543 |
|
Holt Winters Multiplicative |
464,447 |
|
Holt Winters Multiple |
189,840 |
|
Holt Winters Multiple2 |
212,913 |
|
Additive Decomposition |
142,245 |
|
Multiplicative Decomposition |
133,676 |
|
Linear Regression |
1,536,249 |
|
Trend And Additive Seasonality |
34,975 |
|
Trend And Multiplicative Seasonality |
34,138 |
|
Polynomial |
44,086 |
|
Logarithmic |
71,325 |
|
Wavelet Forecast |
11,194 |