Шаг 11. Моделирование цикличности спроса

В текущей модели доля контактов потребителей продукта с потенциальными потребителями, которая приводит к продажам продукта, полагается постоянной. На самом деле она изменяется, поскольку спрос на наш продукт зависит от текущего времени года. Продукт пользуется наибольшим спросом летом, в то время как зимой спрос на товар резко падает, за исключением небольшого предпраздничного периода в декабре. Давайте и промоделируем теперь сезонную цикличность спроса.

Добавление экспериментальных данных

Предположим, что у нас есть экспериментальные данные того, как изменяется средний спрос на продукт в течение года. Мы добавим эти данные в нашу модель с помощью табличной функции. Табличная функция – это функция, заданная в табличной форме, которая может быть сделана непрерывной с помощью интерполяции и экстраполяции.

Задание кривой спроса с помощью табличной функции
  1. Перетащите элемент Табличная функция из палитры Системная динамика на диаграмму класса Main.
  2. Назовите функцию demand.
  3. Задайте данные табличной функции в секции Табличные данные панели свойств функции. Каждая пара "аргумент-значение" задается в отдельной строке таблицы. Чтобы задать новую пару значений, щелкните мышью в пустой ячейке Аргумент и введите новый аргумент функции. Затем щелкните в соседней ячейке Значение справа и введите значение функции, соответствующее этому аргументу. Задайте следующие данные:

  1. Задайте тип интерполяции. Выберите Линейная из выпадающего списка Интерполяция. Интерполяция будет производиться соединением табличных точек прямыми линиями.
  2. Задайте тип реакции на аргументы, лежащие за пределами области допустимых значений функции. Выберите Ближайший из выпадающего списка Если аргумент выходит за пределы. В случае вызова функции с аргументом, лежащим за пределами интервала заданных значений, будет использоваться ближайший заданный аргумент функции.

Закончив задание функции, вы можете посмотреть, как она выглядит, с помощью графика в секции предварительного просмотра функции:


Моделирование влияния меняющегося спроса на интенсивность приобретения продукта

Теперь мы хотим промоделировать то, как спрос на продукт влияет на количество людей, приобретающих продукт под влиянием общения с владельцами продукта. Для этого мы создадим специальную функцию и заменим параметр AdoptionFraction вспомогательной переменной, значение которой будет вычисляться согласно этой функции.

Задайте функцию

  1. Перетащите элемент Функция из палитры Основная на диаграмму типа Main.
  2. Назовите функцию adoptFraction.
  3. Функция будет возвращать вещественное значение, поэтому выберите double из выпадающего списка Тип возвращаемого значения.
  4. У функции должен быть один аргумент, с помощью которого ей будет передаваться текущее значение времени. Добавьте в таблицу Аргументы функции аргумент с именем time типа double.
  5. В секции свойств Тело функции замените существующую строку на следующую:
    return demand( getMonth() + 1 )/200.0;

Функция getMonth() вычисляет номер текущего месяца. Этот номер передается табличной функции demand. Табличная функция возвращает значение спроса на продукт для данного месяца. В заключение, для получения значения доли людей, покупающих продукт под влиянием общения, значение спроса делится на коэффициент преобразования.

Ну и наконец нужно будет заменить константу вспомогательной переменной, значение которой определяется нашей функцией.

Замените параметр AdoptionFraction вспомогательной переменной

  1. Удалите параметр AdoptionFraction.
  2. Добавьте вспомогательную переменную AdoptionFraction. Задайте в качестве формулы переменной adoptFraction(time()). Таким образом, значение переменной будет вычисляться согласно нашей функции. Функция принимает один аргумент, time().
    Функция time() возвращает текущее значение модельного времени.

Запустите модель. Вы увидите, что теперь поведение модели колеблется около точки равновесия в силу того, что теперь колеблются значения и потока приобретения, и потока прекращения использования продукта.


Контрольная модель: Bass Diffusion - Phase 4


Шаг 10. Моделирование повторных покупок

Шаг 12. Моделирование стратегии рекламной кампании