Сбор статистики использования ресурсов



Задание 21. Добавьте диаграмму для отображения средней занятости банкомата

1. Откройте палитру Статистика. Эта палитра содержит элементы сбора данных и статистики, а также диаграммы для визуализации данных и результатов моделирования. Перетащите элемент Столбиковая диаграмма из палитры Статистика на диаграмму:

2. Перейдите в секцию Данные свойств столбиковой диаграммы. Щелкните кнопку  Добавить элемент данных, чтобы задать данные для отображения в диаграмме.

3. Измените Заголовок на ATM utilization.

4. Введите ATM.statsUtilization.mean() в поле Значение. Здесь ATM - это имя нашего объекта Delay. У каждого объекта Delay есть встроенный набор данных statsUtilization, занимающийся сбором статистики использования этого объекта. Функция mean() возвращает среднее из всех измеренных этим набором данных значений. Вы можете использовать и другие методы сбора статистики, такие, как min() или max().

5. Перейдите в секцию Легенда панели Свойства. Измените расположение легенды относительно диаграммы (мы хотим, чтобы она отображалась справа).

6. И измените ее размер:

Задание 22. Добавьте диаграмму для отображения средней длины очереди

1. Аналогичным образом добавьте еще одну столбиковую диаграмму. Измените ее размер так, как показано на рисунке:

2. Перейдите в секцию Внешний вид панели Свойства и выберите последнюю опцию параметра Направление столбцов, чтобы столбцы столбиковой диаграммы росли влево. Также измените положение легенды в секции Легенда (как показано на рисунке ниже).

3. Добавьте элемент данных, который будет отображаться на диаграмме, в секции Данные. Задайте Заголовок: Queue length и задайте Значение: queue.statsSize.mean()
Здесь statsSize - это имя объекта типа «статистика» StatisticsContinuous, производящего сбор статистики размера очереди объекта Queue.

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

Сбор статистики по времени обслуживания

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

Вначале нам необходимо добавить два параметра в нашу модель.

Задание 23. Добавьте параметры

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

2. Откройте палитру Основная в панели Палитра.

3. Перетащите два элемента Параметр на диаграмму Customer.

4. Назовите параметры startWaiting и enteredSystem, оставьте тип double, заданный по умолчанию

5. Мы продолжим разрабатывать нашу модель на диаграмме Main.

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

Задание 24. Добавьте элементы сбора данных

1. Чтобы добавить объект сбора данных гистограммы на диаграмму, перетащите элемент Данные гистограммы с палитры Статистика на диаграмму агента Main.

2. Задайте свойства элемента.

o Измените Имя на waitTimeDistr.

o Сделайте Кол-во интервалов равным 50.

o Задайте Начальный размер интервала: 0.01.

3. Создайте еще один элемент сбора данных гистограммы. Ctrl+перетащите (Mac OS: Cmd+перетащите) только что созданный объект данных гистограммы, чтобы создать его копию. Измените Имя этого элемента на timeInSystemDistr.

Теперь нам нужно изменить свойства блоков нашей диаграммы процесса.

Задание 25. Измените свойства блоков диаграммы процесса

1. Измените свойства объекта source:

o Убедитесь, что тип агента Customer указан в поле Новый агент. Этот объект должен продолжать создавать агентов типа Customer.

o Введите agent.enteredSystem = time(); в поле действия При выходе в секции Действия. Этот код будет сохранять время создания агента-клиента в переменной enteredSystem нашего типа агента Customer. Функция time() возвращает текущее значение модельного времени.

2. Измените свойства объекта queue:

o Введите agent.startWaiting = time(); в поле действия При входе в секции Действия. Этот код запоминает время начала ожидания клиентом его очереди на обслуживание в переменной startWaiting нашего типа агента Customer.

o Введите waitTimeDistr.add(time() - agent.startWaiting); в поле действия При выходе. Этот код добавляет время, в течение которого клиент ожидал обслуживания, в объект сбора данных waitTimeDistr.

3. Измените свойства объекта sink:

o Введите timeInSystemDistr.add(time()-agent.enteredSystem); в поле действия При входе в секции Действия. Этот код добавляет полное время пребывания клиента в банковском отделении в объект сбора данных гистограммы timeInSystemDistr.

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

Теперь давайте добавим на диаграмму нашего типа агента гистограммы, которые будут отображать собранную нами временную статистику.

Задание 26. Добавьте две гистограммы для отображения распределений времен ожидания клиента и пребывания клиента в системе

3. Чтобы добавить гистограмму на диаграмму агента, перетащите элемент Гистограмма из палитры Статистика в то место графического редактора, куда Вы хотите ее поместить. Измените ее размер при необходимости.

4. Укажите, какой элемент сбора данных хранит данные, которые Вы хотите отображать на гистограмме: в секции Данные свойств гистограммы щелкните мышью по кнопке  Добавить данные и измените Заголовок отображаемых данных на Waiting time distribution.
Введите в поле Данные имя соответствующего элемента: waitTimeDistr

5. Добавьте еще одну гистограмму и расположите ее под ранее добавленной.
Измените Заголовок отображаемых данных на Time in system distribution.
В поле Данные введите имя элемента, хранящего данные, которые будут отображаться на гистограмме: timeInSystemDistr.

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

Самостоятельно, изменяя параметры модели, сделайте выводы и оформите отчет о практической работе.

Практическая работа №6


Дата добавления: 2020-04-25; просмотров: 229; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!