Calling the ATT forecast engine with Event Modeling
This topic describes the required conditions to call the ATT forecast
engine and generate event forecasts for the selected item and location, when
the
Perform Event Modeling = TRUE
. Events are considered as
specific effects occurring in history periods due to activities such as
marketing and promotions, in addition to the history data.
Note: It is recommended that you do not maintain the effects of events in
the history for the purpose of statistical model fitting. The engine attempts
to estimate an average event size, and remove this effect prior to model
fitting so that the baseline history can be generated. After model fitting and
forecasting the engine connects the event effects to the baseline forecast.
Functions and conditions:
- When the engine is of the
type
ATT and the
Perform Event Modeling = TRUE
, the forecast engine uses the defined events and executes event modeling, in addition to the selected technique (algorithm). - The measure mapped to the
events is retrieved and processed for each item and location, at the forecast
engine period level, to produce arrays of the history and forecast periods that
store the 'event magnitude'.
- For the Events measure, the values of each item and location in the cycle period history horizon are retrieved and each non-zero value is added to a 'historical event magnitude array. This indicates the index of the period and the event magnitude.
- The time periods are indexed from 0, with zero being the index of the earliest history period. Only one entry for each time period is allowed.
- The event magnitude represents the size of the event in relation to an event unit and not the event size that is calculated in item units.
- The 'historical event magnitude' array is used to store an entry for each event (that is, the non-zero value for events of the cycle period history horizon).
- If the historical event magnitude array is not specified, that is, non-zero values for the Events measure in the cycle period history horizon do not exist, both arrays are transferred without a value. The engine does not process the item or location with event modeling, but uses the 'fit as normal' option based on the specified algorithm.
- If the historical event magnitude array is specified, the values for the Events measure in the cycle period future horizon are retrieved and each non-zero value is added to a 'forecast event magnitude' array.
- The engine generates an
average event size for event modeling, which is stored against the specified measure, if
mapped. This is a time-independent value written to
PCONST
. Other results are processed by the normal ATT engine, based on the specified algorithm.Note: When the forecast engine uses the Holt-Winters or Best algorithm, events are removed before Robust Holt-Winters history adjustments. The 'Model fitting History' is generated without the event history.
Example of Events with historical and forecast event magnitude:
A cycle period history horizon = 12 and the cycle period future horizon = 12 (months). The forecast engine period level = months.
The Events measure historical values:
0, 0, 0, 0, 1, 2, 1, 1, 0, 0, 0, 0
Events measure future values:
0, 0, 2, 2, 2, 1, 0, 0, 0, 0, 0, 0
Index | Magnitude |
---|---|
4 | 1 |
5 | 2 |
6 | 1 |
7 | 1 |
Index | Magnitude |
---|---|
2 | 2 |
3 | 2 |
4 | 2 |
5 | 1 |
Note: Periods with event magnitude values are not required to be sequential
or have the same number or size for historical and forecast periods. Event
values can also contain decimal values.