Сбор статистики о времени обслуживания клиента.
Необходимо определить, сколько времени клиент проводит в банковском отделении и сколько времени он теряет, ожидая своей очереди. Соберем эту статистику с помощью специальных объектов сбора данных и отобразим собранную статистику распределения времени обслуживания клиентов с помощью гистограмм.
Создадим класс сообщения Customer. Сообщения этого класса будут представлять клиентов банковского отделения. Выберите базовый класс Entity (сообщения), добавьте параметры для хранения информации о проведенном времени:
в панели Проект, щелкните правой кнопкой мыши по элементу модели и выберите Создать | Java класс из контекстного меню (рис. 3.25);
Рис. 3.25 Добавление Java- класса.
появится диалоговое окно Новый Java класс. В поле Имя введите имя нового класса Customer;
сделайте так, чтобы этот класс наследовался от базового класса заявки Entity (рис. 3.26): выберите из выпадающего списка Базовый класс полное имя данного класса: com.xj.anylogic.libraries.enterprise.Entity;
Рис. 3.26 Задание свойств Java- класса.
щелкните мышью по кнопке Далее. На второй странице Мастера вы можете задать параметры создаваемого Java-класса. Создайте параметры:
enteredSystem типа double для сохранения момента времени, когда клиент пришел в банковское отделение;
startWaiting типа double для сохранения момента времени, когда клиент встал в очередь к банкомату;
щелкните мышью по кнопке Готово. Вы увидите редактор кода созданного класса. Можете закрыть его, щелкнув мышью по крестику в закладке с его названием.
Теперь вычислим время, которое тратится персоналом банка на обслуживание клиентов, и время, которое клиенты тратят на ожидание своей очереди.
Для этого добавьте элементы сбора статистики по времени ожидания клиентов и времени пребывания клиентов в системе. Эти элементы будут запоминать соответствующие значения времени для каждого клиента и предоставят пользователю стандартную статистическую информацию: среднее, минимальное, максимальное из измеренных значений, среднеквадратичное отклонение, доверительный интервал для среднего и т.п.:
чтобы добавить объект сбора данных гистограммы на диаграмму, перетащите элемент Данные гистограммы с палитры Статистика на диаграмму активного класса;
задайте свойства элемента (рис. 3.27).
Измените Имя на waitTimeDistr.
Измените Заголовок на Waiting time distribution.
Сделайте Кол-во интервалов равным 50.
Задайте Начальный размер интервала: 0.01;
Рис. 3.27 Задание свойств гистограммы.
создайте еще один элемент сбора данных гистограммы (Ctrl + перетащите только что созданный объект данных гистограммы, чтобы создать его копию). Измените Имя этого элемента на timeInSystemDistr, а Заголовок на Time in system distribution.
Измените свойства блоков вашей диаграммы процесса. Задайте следующие свойства объектов диаграммы:
блок source, свойство Новая заявка – введите new Customer(). Введите Customer в поле Класс заявки. Это позволит напрямую обращаться к полям класса заявки Customer в коде динамических параметров этого объекта. Введите entity.enteredSystem = time(); в поле Действие при выходе. Этот код будет сохранять время создания заявки-клиента в переменной enteredSystem нашего класса заявки Customer. Функция time() возвращает текущее значение модельного времени;
блок tellerLines (блок Service) – введите Customer в поле Класс заявки. Добавьте код в поля:
Действие при входе: entity.startWaiting = time();
Действие при выходе: waitTimeDistr.add(time() - entity.startWaiting);
блок queue – введите Customer в поле Класс заявки. Добавьте код в поля: Действие при входе: entity.startWaiting = time();
Действие при выходе: waitTimeDistr.add(time()-entity.startWaiting)
Данный код добавляет время, в течение которого клиент ожидал обслуживания в объект сбора данных waitTimeDistr;
блок ATM (блок delay) – введите Customer в поле Класс заявки;
блок sink – введите Customer в поле Класс заявки. Напишите следующий код, чтобы сохранить в наборах данных данные о клиенте, покидающем банковское отделение (Действие при входе):
timeInSystemDistr.add(time()-entity.enteredSystem);
Данный код добавляет полное время пребывания клиента в банковском отделении в объект сбора данных гистограммы timeInSystemDistr.
Добавьте две гистограммы для отображения распределений времен ожидания клиента и пребывания клиента в системе.
Чтобы добавить гистограмму на диаграмму класса активного объекта, перетащите элемент Гистограмма из палитры Статистика в то место, куда вы хотите ее поместить. Укажите, какой элемент сбора данных хранит данные, которые хотите отображать на гистограмме: щелкните мышью по кнопке Добавить данные и введите в поле Данные имя соответствующего элемента – waitTimeDistr.
Аналогичным образом добавьте еще одну гистограмму и расположите ее под ранее добавленной. В поле Данные введите timeInSystemDistr. Измените заголовки отображаемых данных.
Запустите модель. Включите режим виртуального времени и посмотрите, какой вид примет распределение времени ожидания и времени пребывания клиента в системе.
- Лабораторная работа №1. Аналитическое моделирование.
- I.Статичные аналитические модели оптимизации. Построение в среде ms Excel.
- Задача линейного программирования (злп).
- I этап: Анализ словесного описания задачи
- II этап: Построение математической модели
- III этап: Формирование задачи выбора наилучшей стратегии
- Решение задач линейного программирования с помощью надстройки «поиск решений» в среде excel
- Задача оптимального использования ресурсов
- Запуск «Поиска решения»
- Создание отчета по результатам поиска решения
- Индивидуальные варианты заданий.
- II. Статичные аналитические модели, описываемые уравнениями. Построение в среде MathCad.
- Решение уравнений средствами Mathcad
- Построение графиков в MathCad
- Рекомендации по использованию функции root.
- Нахождение корней полинома
- Символьное решение уравнений
- Индивидуальные варианты заданий.
- III. Динамические аналитические модели. Построение в среде MatLab.
- Решение обыкновенных дифференциальных уравнений в matlab.
- Решение систем обыкновенных дифференциальных уравнений с заданными начальными условиями.
- Решение дифференциальных уравнений второго порядка.
- Интегрирование систем линейных дифференциальных уравнений в матричном виде.
- Варианты заданий. Общие задания.
- Индивидуальные задания.
- Лабораторная работа №2. Построение аналитической модели по результатам эксперимента.
- I. Построение модели в среде Excel.
- II. Построение модели в среде Statistica. Общие сведения о программе Statistica.
- III. Построение модели в среде Origin Pro.
- Индивидуальные варианты заданий.
- Лабораторная работа №3. Модели массового обслуживания.
- I. Построение модели в среде AnyLogic.
- Пользовательский интерфейс
- Общая информация о создании моделей в Enterprise Library
- Моделирование одноканальной смо с очередью.
- Моделирование многоканальной смо с очередью.
- Сбор статистики о времени обслуживания клиента.
- Индивидуальные варианты заданий.
- Лабораторная работа №4. Моделирование интеллектуальных систем. Нейросеть обратного распространения ошибки.
- I. Обзор использования пакета Excel Neural Package.
- II. Обзор использования пакета Deductor.
- III. Обзор использования пакета statistica Neural Networks.
- Индивидуальные варианты заданий.
- Лабораторная работа №5. Моделирование интеллектуальных систем. Нейронная сеть для кластеризации.
- I. Теоретические сведения.
- II. Проектирование карты Кохонена в пакете Excel Neural Package.
- III. Проектирование карты Кохонена в пакете Deductor.
- IV. Проектирование карты Кохонена в пакете Statistica.
- Индивидуальные варианты заданий.
- Лабораторная работа №6. Моделирование интеллектуальных систем. Система нечеткого вывода.
- I. Постановка задачи.
- II. Процесс разработки системы
- Индивидуальные варианты заданий.