Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
METHOD-rdo.doc
Скачиваний:
55
Добавлен:
31.03.2015
Размер:
606.72 Кб
Скачать

4.2. Объект требуемой статистики

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

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

В РДО имеется гибкая и мощная система сбора показателей, предоставляемая пользователю и позволяющая получить все интересующие его характеристики имитируемой СДС. Показатели, которые требуется собрать в процессе прогона модели, описываются в отдельном объекте, который создается, если в объекте прогона присутствует дескриптор, задающий имя объекта результатов.

Объект требуемой статистики имеет формат:

$Results

{<имя_показателя> : [trace | no_trace] <описание_показателя>}

$End

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

trace  производить трассировку показателя;

no_trace  не производить трассировку.

По умолчанию принимается значение признака no_trace, поэтому это значение можно не указывать. В объект трассировки данные по таким показателям не помещаются, а лишь создается объект результатов.

Показатели могут быть следующих видов:

  • watch_par  наблюдать значение параметра постоянного ресурса;

  • watch_state наблюдать состояние системы;

  • watch_quant  наблюдать количество временных ресурсов;

  • watch_value  наблюдать значение параметра временного ресурса в момент его уничтожения;

  • get_value  итоговые значения параметров постоянного ресурса в момент завершения прогона.

Если показатель имеет вид watch_par, то за этим зарезервированным словом в описании показателя должно следовать имя параметра ресурса.

Пример описания показателя вида watch_par:

Студентов_в_очереди : trace watch_par

Зачет_1.Опрошено_студентов

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

Если показатель имеет вид watch_state, то за этим зарезервированным словом в описании показателя должно следовать логическое выражение.

Пример описания показателя вида watch_state:

Занятость_преподавателя_1 : watch_state

Зачет_1.Занятость_экзаменатора = Занят

В этом случае в процессе прогона наблюдаются изменения указанного логического выражения, и по окончании выводится статистическая информация о времени, в течение которого это выражение было истинным. Этот показатель дает возможность собирать статистику о времени пребывания системы в некотором состоянии, при котором описанное логическое выражение имеет значение ИСТИНА.

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

Пример описания показателя вида get_value:

Время_окончания_прогона : get_value Time_now

Всего_опрошено : get_value Зачет_1.Опрошено_студентов +

Зачет_2ы.Опрошено_студентов

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

Показатель вида watch_quantслужит для вычисления статистической информации об изменении количества временных ресурсов определенного типа, состояние которых отвечает заданному условию во время моделирования. Среднее значение количества и сумма квадратов вычисляются с учетом времени сохранения каждого значения. Таким образом, после типа показателяwatch_quant в описании показателя следует имя одного из типов временных ресурсов и логическое выражение, которому должно удовлетворять состояние временного ресурса.

Пример описания показателя вида watch_quant:

Количество_студентов_в_системе : watch_quant

Студенты NoCheck

Готовы_отвечать : trace watch_quant

Студенты Студенты.Состояние = В_очереди

После показателя вида watch_value в описании показателя следуют имя одного из типов ресурсов, логическое выражение и арифметическое выражение. Имя типаэто имя одного из типов временных ресурсов, описанных в объекте типов. Логическое выражение описывает условие, которому должно удовлетворять состояние временного ресурса. Если состояние не имеет значение, то вместо логического выражения указывают зарезервированное словоNoCheck. Арифметическое выражение должно быть целого или вещественного типа. В процессе прогона собирается статистическая информация о значении указанного арифметического выражения в момент уничтожения какого-либо ресурса указанного типа, состояние которого удовлетворяет условию.

Пример описания показателя вида watch_value:

Время_пребывания_в_системе : trace watch_value

Студенты NoCheck Time_now – Студенты.Время_прихода

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]