Обновление статьи от 04.07.2019г.
В статье приводится сравнение алгоритмов прогнозирования для решения задачи управления товарными запасами с использованием ошибки прогнозирования RMSE. На текущий момент мы не рекомендуем пользоваться этим методом. О причинах отказа от сравнения с использованием ошибок прогнозирования, читайте в статье Почему мы не считаем MAPE, RMSE и другие математические ошибки при прогнозировании спроса Рекомендуемый способ сравнения – имитационное моделирование.
Метод Хольта-Винтерса относится к алгоритмам прогнозирования 1 поколения (либо 2-го поколения при наличии страхового запаса по модельному распределению спроса). Он подходит только для прогнозирования товаров с гладким регулярным спросом, который характерен приблизительно 6% ассортимента типового продуктового супермаркета и нехарактерен практически ни для каких товаров других отраслей. Поэтому мы рекомендуем прогнозировать товарные запасы, а не спрос.
Подробнее о поколениях алгоритмов прогнозирования в видео "Эволюция алгоритмов прогнозирования спроса"
Также рекомендуем прочитать статью "Почему нужно прогнозировать товарные запасы, а не спрос?"
Результаты сравнения модели Хольта-Уинтерса обобщены на графике ниже, по оси Х – товары, по оси Y – на сколько процентов Forecast NOW! оказывается лучше, чем модель Хольта-Винтерса . Как можно видеть, почти всегда, алгоритм Forecast NOW! прогнозирует точнее на 10-20%. Подробнее об алгоритме и сравнении читайте ниже.
Описание модели Хольта-Уинтерса
Более сложный метод прогнозирования, чем рассмотренные ранее методы скользящего среднего и экспоненциального сглаживания. Метод может учитывать сезонность, что немаловажно, и общий тренд.
Модель Хольта-Уинтерса является расширением метода Хольта до трехпараметрического экспоненциального сглаживания. Это значит, что метод характеризуется тремя параметрами, которые необходимо выбрать, чтобы получить прогноз. Выбор этих параметров может производится путем простого перебора. Потом смотрим на полученные «прогнозы» в прошлом – модель, выбираем те параметры, при которых модель наиболее точно повторяет реальность.
Модели Хольта-Винтерса могут учитывать сезонность в мультипликативном и аддитивном вариантах. Грубо говоря, мультипликативный случай представляет сезонность как произведение, а аддитивный как сумму.
Примеры прогнозов
Для аддитивной модели прогнозирования Хольта-Винтерса имеем следующую формулу для построения прогноза. Пусть ряд имеет сезонность периодом длиной p. Например, недельная сезонность p = 7. h в данном случае номер периода, на который строится прогноз. Например, для построения прогноза на 7 дней вперед, h принимает значения от 1 до 7.
Функция mod - это остаток от деления. Например, 23 mod 4 = 3.
Прогноз Y^ [t+h] на период номер h будет иметь вид
Y^[t+h] = a[t] + h * b[t] + s[t - p + 1 + (h - 1) mod p],
где a[t], b[t] и s[t] рассчитываются следующим образом
- a[t] = α (Y[t] - s[t-p]) + (1-α) (a[t-1] + b[t-1])
- b[t] = β (a[t] - a[t-1]) + (1-β) b[t-1]
- s[t] = γ (Y[t] - a[t]) + (1-γ) s[t-p]
Здесь α, β, γ являются параметрами, которые необходимо выбрать перед прогнозированием. Все они изменяются от 0 до 1. Первое уравнение описывает сглаженный ряд, второе уравнение служит для оценки тренда, третье уравнение для оценки сезонности. Пример модели Хольта-Уинтерса с аддитивной сезонной компонентой представлен на рисунке 1. Реальные продажи представлены черным цветом, красным – модель по методу Хольта-Уинтерса.
Рисунок 1. Хольт-Винтерс , аддитивная сезонная компонента.
Поближе можно рассмотреть пример модели, построенной этим методом на рисунке 2. Реальные продажи представлены черным цветом, красным – модель по методу Хольта-Винтерса.
Рисунок 2. Хольт-Винтерс, аддитивная сезонная компонента, 16 периодов
В мультипликативном случае сезонность не прибавляется, а умножается. Так, формула для прогнозирования примет вид
Y^[t+h] = (a[t] + h * b[t]) * s[t - p + 1 + (h - 1) mod p]
где a[t], b[t] и s[t] вычисляются следующим образом
- a[t] = α (Y[t] / s[t-p]) + (1-α) (a[t-1] + b[t-1])
- b[t] = β (a[t] - a[t-1]) + (1-β) b[t-1]
- s[t] = γ (Y[t] / a[t]) + (1-γ) s[t-p]
Точно также mod – остаток от деления. Аналогично, α, β, γ являются параметрами, которые необходимо выбрать перед прогнозированием. Все они изменяются от 0 до 1. Первое уравнение описывает сглаженный ряд, второе уравнение служит для оценки тренда, третье уравнение для оценки сезонности. Где присутствует сезонная компонента s, можно заметить вычитание изменилось на деление.
Пример построенной модели с помощью Хольта-Уинтерса с мультипликативной сезонной составляющей представлен на рисунке 3. Как можно заметить, амплитуда модели увеличилась.
Рисунок 3. Хольт-Уинтерс, мультипликативная модель
Параметры для этого примера были выбраны следующие:
- α: 0.02627821
- β: 0.04908298
- γ: 0.2922139
Выбор параметров осуществлялся с помощью «умного» перебора и минимизации ошибки на известных данных – модели.
Пример прогноза можно видеть на рисунке 4. Прогноз начинается в желто-оранжевой области. Оранжевая область показывает доверительный интервал с 80% вероятностью, желтая с 95%. Доверительный интервал означает, что продажи с указанной вероятностью не выйдут за отмеченные границы (желтые или оранжевые на графике соответственно).
Рисунок 4. Пример прогноза методом Хольта-Винтерса.
Сравнение прогнозов по модели Хольта-Винтерса с Forecast NOW!
Для сравнения с алгоритмом Forecast NOW! были построены прогнозы методом Хольта-Винтерса с различными параметрами, выбиралась лучшая модель, исходя из ошибки на известных данных (модели). Для выбора оптимальных параметров была написана программа на языке программирования R. Ошибки прогнозирования (RMSE) представлены в таблице 1.
На рисунках 5 и 6 представлен график сравнения Forecast NOW! и Хольта-Уинтерса (мультипликативная сезонная модель и аддитивная). По оси Х отложены товары, по оси Y на сколько алгоритм Forecast NOW! лучше или хуже алгоритма Хольта-Уинтерса в процентах. Положительный процент показывает, что Forecast NOW! лучше на обозначенное число процентов, отрицательный – хуже. Как можно видеть из графика почти во всех случаях алгоритм Forecast NOW! оказывается значительно лучше (в среднем на 10-20%), то есть предоставляет более точный прогноз. А более точный прогноз в свою очередь позволяет точнее планировать необходимые товарные запасы.
Таблица 1. Ошибки прогнозирования методов Хольта-Уинтерса и Forecast NOW!
Рисунок 5. Процентное улучшение качества прогноза Forecast NOW! по отношению к алгоритму Хольта-Уинтерса с мультипликативной моделью сезонности
Рисунок 6. Процентное улучшение качества прогноза Forecast NOW! по отношению к алгоритму Хольта-Винтерса с аддитивной моделью сезонности.
Другие методы прогнозирования объема продаж:
- Экспоненциальное сглаживание (1-2 поколение);
- Простая скользящая средняя (SMA, Simple Moving Average) (1-2 поколение);
- Авторегрессия (1-2 поколение);
- Вероятностное прогнозирование (4 поколение)
Практические рекомендации
по управлению запасами
Про прогнозирование спроса, управление ассортиментом, планирование запасов, автоматизацию расчетов и сокращение стоков