8.12. Практикум 7. Прогноз цен группы продуктов (Нидерланды).

Пусть на экране (рис. 1) открыты окна с графами связей для торговой статистики Нидерландов Рис.1. Граф связей.
Шаг 1.Чуть усложним задачу. Сначала наберем группу, состоящую из продуктов (1, 43, 49, 51). Для этого выберем пункт меню New group/ Choose new group (так мы перешли в режим набора новой интегрируемой группы). Затем встаем на узел N 5 и двойным левым щелчком "раскрываем" его. Рис.2. Окно выбора продуктов.
На экране появляется окно набора группы продуктов (рис.2). По очереди отмечаем нужные продукты из списка (1, 43, 49, 51). Нажимаем Refresh, убеждаемся, что список отмеченных продуктов правильный. Нажимаем OK, чтобы вернуться в главное окно. Рис. 3. Граф связей.
На экране восстанавливается окно (рис.3). Текст в корневой вершине подтверждает, что выбранная группа товаров именно та. Но группа, естественно, еще не получила своего идентификационного номера, поскольку мы еще не проверили, имеются ли у нее экономические индексы, можно ли ее рассматривать, как отдельный продукт-агрегат в составе других групп, с которыми она связана отношением включения. Для этого выберем пункт меню New group/Test of Integrability. В результате тестирования система сообщает, что "Группа интегрируется. Запомнить ее?". Нажимаем "Да" и главное окно уже показывает (рис.4) новую группу в составе дерева связей.

Рис.4. Новый граф связей.
Шаг 2. Теперь выберем новую группу для прогнозирования (43, 49, 51), которая входит в состав только что набранной. Выберем пункт меню Prognosis/Choise a Base Group of Products. Затем встаем на только что полученный узел N 14 и двойным левым щелчком "раскрываем" его. Рис. 5. Окно выбора продуктов.
В окне набора группы продуктов (рис.5.) отмечаем нужные продукты из списка (43, 49, 51). Нажимаем Refresh, убеждаемся, что список отмеченных продуктов правильный. Нажимаем OK, чтобы вернуться в главное окно. Там выбираем зажегшийся пункт меню Prognosis/Test. Проверка показывает, что группа N 15 (43, 49, 51) интегрируема. Мы запоминаем ее. Можно приступать непосредственно к процедуре прогнозирования цен или объемов продаж, выбирая зажегшийся пункт меню Prognosis / Prognosis of the Price. Система подтвердит поставленную задачу на прогнозирование цен для группы из трех продуктов. Затем перечислит те моменты времени, для которых структуры цен и продаж товаров данной группы схожи. Система сгенерирует полное имя будущего XLS-файла и запишет всю необходимую информацию в рабочий файл prognoz.tmp. Содержимое этого файла рассмотрено в 6.19. Приложение. Структура файла "prognoz.tmp" . Теперь закрываем главное окно.
Шаг 3. Инициируем работу Excel-файла ISchet.xls, дважды щелкнув левой клавишей мыши по имени файла. Откроется пустое Excel-окно (Рис.6.) Начинаем новый сеанс прогнозирования. Нажмем в главном меню окна желтую кнопку с текстом ⌠Новый сеанс прогноза■. Активизируется макрос Inewvrnt(), который откроет текущий рабочий файл prognoz.tmp, выберет из него необходимую информацию, создаст по адресу ┘\Dutch\prognoz\ (или ┘\Hung\prognoz\ ) новый XLS-файл. Сгенерированное имя этого файла - p3_q15.xls (p - прогноз цен для 3 - х продуктов, составляющих группу ╧ 15). В этот файл записывается исходная информация о текущей задаче прогнозирования, формируются ряды, содержащие формулы для постановки задачи линейного программирования.
Рис.7. Лист прогнозирования в книге XLS
Обратите внимание, что для этой задачи выделены три зеленых столбца, соответствующие тем самым трем продуктам нашей выбранной группы. На листе размещены три кнопки. Кнопка "Solv" служит для запуска макроса ISolv(), который сначала для стартовых значений продаж (1, 1, 1) в цикле для каждого из трех продуктов группы решит задачу поиска максимальной цены, удовлетворяющих заданным ограничениям задачи линейного программирования (Получим три листа-отчета). Затем в цикле для каждого из трех продуктов группы будет меняться предполагаемое значение объема продаж на величину, заданную в ячейке (7, 5), сначала в сторону увеличения, затем - в сторону уменьшения. Пусть в ячейке задана величина 0.2. Тогда в результате расчетов получим еще шесть (3 + 3) листов отчетов, соответствующих предполагаемым тройкам объемов продаж: (1.2, 1, 1), (1, 1.2, 1), (1, 1, 1.2), (0.8, 1, 1), (1, 0.8, 1), (1, 1, 0.8). Найденные интервалы изменения цен и объемов продаж товаров группы можно изучить с помощью гистограмм, для этого служит кнопка "Gistogr". Средняя кнопка "InitVal" возвращает значения переменных ("зеленые" Цены и Объемы продаж) в исходное состояние. Эта кнопка полезна, если Вы самостоятельно захотите поэкспериментировать с решателем Solver. Шаг 4. Нажимаем кнопку "Solv". Начинается поиск первого решения. На экране появляется диалоговое окно ( Рис.9.), где мы отмечаем тип отчета "Результаты" и нажимаем OK

.

Решатель создает лист "Отчет по результатам 1". И так создадим 9 листов отчета.

Шаг 5. Нажимаем кнопку "Gistogr"и система, используя данные из 9 "Отчетов по результатам", автоматически строит на двух листах книги гистограммы "Цены" и гистограммы "Объемы продаж" в абсолютных ("Лист2") и относительных ("Лист3", Рис.10) единицах.

Рис.10.
На всех диаграммах мы видим 10 серий из 3-х столбиков (для трех изучаемых продуктов Сахар, Сигареты, Пиво). Первая серия соответствует стартовому значению цен P и объемов продаж X в относительных единицах. Серия 2 соответствует решению задачи на максимальное значение цены первого продукта Сахар, серия 3 - второго продукта Сигареты, серия 4 - последнего продукта Пиво для стартового значения объемов продаж X={1, 1, 1}.
Затем алгоритм увеличивает на величину, заданную в ячейке (7, 5), предполагаемый объем продаж первого продукта X = {1.2, 1, 1} и ищет решение задачи на MAX цены первого P1 продукта. Затем алгоритм восстанавливает стартовое значение предполагаемого объема продаж первого продукта, но увеличивает на ту же долю предполагаемый объем продаж второго продукта X = {1, 1.2, 1} и мы имеем следующее решение и т.д.
Мы помним, что прогноз рассчитывался на основании гипотезы о рациональном поведении потребителей. Наблюдаем для всех серий и всех продуктов исследуемой группы : если мы хотим увеличить на 20% стартовый объем продаж какого-то продукта, то его потолок цен снижается. И это естественно: рациональный потребитель будет покупать продукт в большем объеме, если цена этого продукта заметно снизится. В нашей исследуемой группе все три товара (Сахар, Сигареты и Пиво) являются товарами массового потребления, для которых наблюдаются невысокие потолки цен. Для Сахара - это 218% - 122%, для Сигарет - 171% -120%, для Пива - 145% - 127%. Обсудим сначала левые границы интервалов максимальных цен. Прогнозируемое 20% увеличение потребления любого из трех продуктов группы возможно, если цена на этот продукт не поднимется выше 20%. При этом цены на оставшиеся два продукта группы могут практически не снижаться, чтобы обеспечить этот максимум цены исследуемого продукта. Теперь правые границы интервалов: это предельно максимальные цены каждого из продуктов, соответствующих предполагаемому стартовому значению потребления при условии, что цены двух других продуктов группы могут плавать как угодно в пределах рациональности поведения. Правые границы интервалов - это "предел прочности", "предел терпения" потребителя, превышение этого предела приведет к массовому переходу на взаимозаменяемый продукт. В рамках наших прогнозов цены на эти продукты достаточно стабильны.

Диаграмма на Рис.11 построена для предполагаемого 80% -го изменения потребления. Мы видим 10 серий, соответствующих решениям задач на максимум цен по предполагаемым объемам продаж (1, 1, 1), (1, 1, 1), (1, 1, 1), (1, 1, 1), (1.8, 1, 1), (1, 1.8, 1), (1, 1, 1.8), (0.2, 1, 1), (1, 0.2, 1), (1, 1, 0.2) .