Computational Performance
The computational performance of the forecasting algorithms 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.
These benchmarks have been carried out on a rather old 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 |