computer algorithm forecasting