Моделирование рекламных кампаний
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
ь из контекстного меню. Новый индикатор появится на диаграмме. Расположим его правее индикатора численности потенциальных потребителей продукта.
. Выберем adopters в качестве переменной, которую отображает индикатор и изменим цвет индикации.
Добавление подписи к индикаторам
. Щелкаем мышью по кнопке панели инструментов текст.
. Поместим текстовую метку на диаграмму, щелкнув мышью под левым индикатором.
. Задаем текст, который будет отображаться в текстовом поле. В поле редактирования текст, расположенном на вкладке текст окна свойства, введем PotentialAdopters.
. Изменим шрифт текста. Щелкаем мышью по кнопке выбрать, и в появившемся диалоговом окне установим шрифт TimesNewRoman размером 8.
. Аналогично поместим метку Adopters под правым индикатором.
Теперь мы сделаем нашу анимацию интерактивной, добавив элемент управления, с помощью которого будем изменять срок службы продукта.
Добавление элементов управления
. Щелкаем мышью по кнопке панели инструментов бегунок.
. Поместим бегунок на диаграмму, щелкнув мышью над индикаторами.
. На вкладке общие окна свойства, изменим размер элемента управления (рис 44):
Рис. 44 Изменение размера элемента управления
. На вкладке бегунок окна свойства, выберем переменную, значение которой будем изменять с помощью этого элемента управления (рис. 45)
Рис. 45 Переменная элемента управления
. Задаем минимальные и максимальные значения бегунка (рис. 46):
Рис. 46 Задание максимального значения бегунка
. Поместим на анимацию три метки: DiscardTime - под бегунком, 0.5 у левого края бегунка и 2.5 - у правого.
Теперь мы хотим исследовать моделируемый процесс в течение более длительного времени, поэтому сделаем так, чтобы наша модель работала бесконечно.
Удаление условия остановки модели
. В окне проект, щелкнем мышью по элементу Simulation.
. На вкладке дополнительные окна свойства, сбросим флажок стоп по времени.
Мы закончили создание анимации. Запустим модель щелчком мыши по кнопке запустить (рис. 47). Мы увидим анимацию наподобие показанной на рисунке ниже:
Рис. 47 Анимация
Включение режима сглаживания
. Щелкаем мышью по кнопке панели инструментов настройки анимации. В появившемся диалоговом окне, установим флажок сглаживание (рис. 48).
Рис.48 Режим сглаживания
Мы можете изменять скорость выполнения модели с помощью кнопок панели инструментов уменьшить скорость и увеличить скорость.
.2 Улучшенная модель жизненного цикла продукта
.2.1 Моделирование рекламных кампаний
Сейчас мы промоделируем рекламные кампании продукта, в результате проведения которых люди будут покупать наш продукт.
Создаем новые переменные.
. Открываем диаграмму класса Main двойным щелчком мыши по элементу Main в окне Проект.
. Создаем переменную adX типа real.
. Создаем переменную adY типа real.
. Создаем переменную adTime типа real. Задаем Начальное значение: -1.
. Создайте переменную adRange типа real. Задаем Начальное значение: 50.
Мы будем моделировать проведение рекламных кампаний с помощью таймера. Таймеры используются в AnyLogicдля планирования событий.
Создаем таймер
. Откроем диаграмму класса Main двойным щелчком мыши по элементу Main в окне проект.
. Щелкаем по кнопке панели инструментов таймер, а затем по диаграмме класса. Называем таймер adTimer.
. Нам нужно, чтобы таймер срабатывал несколько раз, поэтому проверим, чтобы был установлен флажок циклический (рис. 49).
Рис. 49 Настройка таймера
. Задаем таймаут (рис. 50):
Рис. 50 Задание таймаута
. Задаем действие при срабатывании (рис. 51):
Рис. 51 Задание действия при срабатывании
Этот код производит циклический перебор всех агентов модели. У агентов, попавших в область проведения кампании (в круг с радиусом adRange), генерируется событие стрейтчарта, в результате чего срабатывает переход стрейтчарта, моделирующий покупку продукта.
Поскольку теперь покупки моделируются с помощью таймера, нужно удалить переход стрейтчарта, который моделирует покупку продукта под влиянием рекламы.
Изменим стрейтчарт
. Откроем диаграмму стрейтчарта двойным щелчком мыши по элементу adoption в окне проект.
. Удалим переход из состояния PotentialAdopter в состояние Adopter (переход с таймаутом exponential(adEffect)), выделив его щелчком мыши и нажав delete.
Теперь внесем небольшие изменения в анимацию. Мы будем подсвечивать области проведения рекламных кампаний на анимации сиреневыми кругами.
Нарисуем круг
. Откроем анимационную диаграмму двойным щелчком мыши по элементу animation дерева модели.
. Щелкнем мышью по кнопке панели инструментов овал, затем щелкнем по анимационной диаграмме. Задаем следующие свойства фигуры (рис.52):
Рис. 52 Свойства фигуры
Местоположение круга на диаграмме определяется переменными adX и adY, хранящими координаты центра области проведения текущей кампании. Круг будет виден в течение 0.2 единиц модельного времени после момента проведения кампании.
. Щелкаем по закладке овал окна свойства и задаем радиусы овала с помощью созданной ранее переменной adRange (рис. 53):
Рис. 53 Задание свойств фигуры
Запускаем модель щелчком мыши по кнопке панели инструментов запустить.
.2.2 Изучение распространения нескольких продуктов
Созданная модель изучает динамику распространения только одного пр?/p>