Одноканальная СМО с детерминированным потоком заявок и равномерно распределенной длительностью обслуживания (D/U/1)
Простейшая GPSS-модель, имитирующая работу СМО с однородным потоком заявок и позволяющая получить представление об операторах GPSS World. Стандартный отчет, формируемый автоматически по завершении моделирования и содержащий результаты моделирования.
Рубрика | Коммуникации, связь, цифровые приборы и радиоэлектроника |
Вид | лабораторная работа |
Язык | русский |
Дата добавления | 17.09.2014 |
Размер файла | 628,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Саратовский государственный технический университет имени Гагарина Ю.А.»
Лабораторная работа №1
по курсу «Моделирование систем»
на тему «Одноканальная СМО с детерминированным потоком заявок и равномерно распределенной длительностью обслуживания (D/U/1)»
Выполнил:
Студент гр. ИСТ-41
Резников К
Проверил:
доцент каф. ИСТ
Ивженко С.П.
Саратов, 2013
Задание
Положим, что система содержит один обслуживающий прибор (рис.6.6). В СМО поступает детерминированный поток заявок с интервалом 10 секунд. Заявки выбираются на обслуживание из накопителя неограниченной ёмкости в порядке поступления, то есть по правилу «первым пришел - первым обслужен» (дисциплина обслуживания FIFO - First In First Out).
Длительность обслуживания заявок в приборе - величина случайная,
распределенная по равномерному закону в интервале от 4 до 12 секунд
(8±4 секунды) со средним значением 8 секунд.
Листинг программы
*******************************************************************
GENERATE 10; формирование детерминированного потока заявок
QUEUE 1; отметка момента поступления заявки в очередь 1
SEIZE uzel; занятия прибора с именем uzel
DEPART 1; отметка момента покидания заявкой очереди 1
ADVANCE 8,4; задержка на время 8±4 единицы времени
RELEASE uzel; освобождение прибора с именем uzel
TERMINATE 1; удаление заявки из модели
*******************************************************************
START 100000
*******************************************************************
Отчет
По завершении моделирования результаты формируются
автоматически в виде стандартного отчета, представленного на рисунке 1.
Рис.1. Стандартный отчет Модели 1
Анализ отчета
Стандартный отчет рассматриваемой модели содержит следующую информацию:
1. Заголовок с именем GPSS-модели:
GPSS World Simulation Report - Untitled Model 1.1.1
2. Дату и время проведения имитационного моделирования (эксперимента):
Wednesday, February 19, 2014 22:12:29
3. Время старта и завершения моделирования, количество блоков
(операторов), одноканальных устройств (приборов) и многоканальных
устройств (памятей) в GPSS-модели:
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 1000005.010 7 1 0
4. Перечень заданных в модели символических имен (блоков, устройств, памятей) и присвоенные им числовые значения (начиная с 10000):
NAME VALUE
UZEL 10000.000
5. Перечень (BLOCK TYPE) пронумерованных (LOC) блоков c присвоенными им в модели метками (LABEL):
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 100000 0 0
2 QUEUE 100000 0 0
3 SEIZE 100000 0 0
4 DEPART 100000 0 0
5 ADVANCE 100000 0 0
6 RELEASE 100000 0 0
7 TERMINATE 100000 0 0
Кроме того, для каждого блока указывается:
ENTRY COUNT - количество транзактов, вошедших в данный блок за время моделирования;
CURRENT COUNT - количество транзактов, в данном блоке на момент
завершения моделирования;
RETRY - количество транзактов, ожидающих выполнения некоторого
специфического условия.
6. Результаты моделирования и дополнительная информация по
устройствам:
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
UZEL 100000 0.801 8.008 1 0 0 0 0 0
Здесь:
FACILITY - символическое имя или номер устройства;
ENTRIES - количество транзактов, вошедших в данное устройство за время моделирования;
UTIL. - коэффициент использования (загрузка) устройства;
AVE.TIME - среднее время занятия устройства одним транзактом (средняя длительность обслуживания заявок);
AVAIL. - состояние устройства на момент завершения моделирования: 1 -
устройство доступно (не занято), 0 - устройство недоступно (занято);
OWNER - номер транзакта, находящегося в устройстве на момент завершения моделирования;
PEND - количество транзактов, ожидающих выполнения с прерыванием других транзактов;
INTER - количество прерванных транзактов на момент завершения моделирования (в списке прерываний);
RETRY - количество транзактов, ожидающих выполнения некоторого специфического условия;
DELAY - количество транзактов, ожидающих занятия устройства.
7. Результаты моделирования и дополнительная информация по очередям:
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
1 1 0 100000 69780 0.040 0.405 1.339 0
Здесь:
QUEUE - имя или номер очереди;
MAX - максимальное количество транзактов в очереди за время моделирования;
CONT. - текущее количество транзактов в очереди на момент завершения моделирования;
ENTRY - количество транзактов, прошедших через очередь за время моделирования;
ENTRY(0) - количество транзактов, прошедших через очередь за время моделирования с нулевым временем ожидания;
AVE.CONT. - средняя длина очереди за время моделирования;
AVE.TIME - среднее время нахождения транзакта в очереди (среднее время ожидания заявок);
AVE.(-0) - среднее время нахождения транзакта в очереди без учета транзактов с нулевым временем ожидания;
RETRY - количество транзактов, ожидающих выполнения некоторого специфического условия;
8. Список будущих событий (FEC):
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
100001 0 1000010.000 100001 0 1
Здесь:
FEC - Future Events Chain;
XN - номера всех транзактов, находящихся в списке будущих событий (в данном примере это единственный транзакт с номером 100001);
PRI - приоритет транзакта;
BDT - момент времени, когда транзакт должен покинуть блок, а,
следовательно, и список будущих событий;
ASSEM - номер семейства данного транзакта;
CURRENT - номер блока, в котором находился транзакт на момент
завершения моделирования;
NEXT - номер следующего блока, в который будет передан транзакт;
PARAMETER - имя или номер параметра транзакта;
VALUE - значение параметра.
Описание операторов и команд:
GENERATE (ГЕНЕРИРОВАТЬ)
Назначение оператора: генерирование транзактов в соответствии с заданным правилом формирования интервалов между транзактами.
Формат оператора:
GENERATE [A],[B],[C],[D],[E]
Значения операндов:
A - средний интервал времени между генерируемыми транзактами или вероятностное распределение интервала из встроенной библиотеки процедур, заключённое в круглые скобки;; [по умолчанию - ноль];
B - величина полуинтервала равномерно распределенного интервала или модификатор таблично заданной функции; [по умолчанию - ноль];
С - смещение - момент формирования первого транзакта; [по умолчанию - ноль];
D - ограничитель - число генерируемых данным оператором транзактов; [по умолчанию - не ограничено];
Е - уровень приоритета от 0 до 127 (чем больше номер, тем выше приоритет); [по умолчанию - ноль].
Примечание. Несмотря на то, что операнды A и D - необязательные
операнды, в операторе GENERATE обязательно должен использоваться один из них: либо операнд A , либо операнд D.
Примеры:
GENERATE 25; интервал времени между генерируемыми транзактами - величина детерминированная равная 25, количество генерируемых транзактов не ограничено.
GENERATE ,,,25;операнды A, B и C не используются, и их
значения равны нулю по умолчанию; это означает, что в нулевой момент
модельного времени будут сгенерированы ровно 25 транзактов.
GENERATE 25,10; интервал времени между транзактами - величина случайная, равномерно распределенная в интервале (25±10), т.е. от 15 до 35.
Раздел 6. Имитационное моделирование 273
GENERATE 25,FN$Erlang; интервал времени между транзактами - величина случайная, распределенная по закону, заданному в виде табличной функции Erlang.
GENERATE 25,10,100,250,5; интервал времени между транзактами - равномерно распределенная величина в интервале от 15 до 35; момент формирования первого транзакта равен 100 единицам модельного
времени; всего за время моделирования этим оператором будет сгенерировано 250 транзактов, после чего формирование транзактов прекратится; всем сгенерированным транзактам будет присвоен приоритет, равный 5.
GENERATE (Exponential(1,0,50)); интервал времени между транзактами - величина случайная, распределенная по экспоненциальному закону со средним значением 50.
Следует обратить внимание, что в последнем примере имя библиотечной процедуры с параметрами Exponential(1,0,50) заключается в круглые скобки. Параметры процедуры Exponential имеют следующий смысл: первый параметр - номер встроенного генератора равномерно распределённых в интервале (0; 1) случайных чисел (может иметь значения от 1 до 999); второй и третий параметры - соответственно смещение (минимальное значение) и среднее значение (математическое ожидание) случайной величины, распределённой по экспоненциальному закону.
TERMINATE (ЗАВЕРШИТЬ)
Назначение оператора: удаление транзактов из модели.
Формат оператора:
TERMINATE [A]
Значения операндов:
A - указатель уменьшения счетчика завершений (целое положительное число); [по умолчанию - ноль].
Примеры:
TERMINATE 1; транзакт, поступивший в данный блок, удаляется
из модели, и счетчик завершения процесса моделирования, начальное значение которого устанавливается командой START, уменьшается на 1.
TERMINATE; транзакт удаляется из модели, при этом значение счетчика завершения процесса моделирования не изменяется.
ADVANCE (ЗАДЕРЖАТЬ)
Назначение оператора: задержка транзакта на заданное время.
Формат оператора:
ADVANCE [A],[B]
Значения операндов:
A - среднее время задержки или вероятностное распределение из встроенной библиотеки процедур, заключённое в круглые скобки; [по умолчанию - ноль];
274 Раздел 6. Имитационное моделирование
B - величина полуинтервала равномерно распределенного интервала задержки или модификатор таблично заданной функции; [по умолчанию -ноль].
Примеры:
ADVANCE 50; поступивший транзакт задерживается в данном блоке на 50 единиц времени.
ADVANCE 50,10; время задержки транзакта - величина случайная, равномерно распределенная в интервале от 40 до 60 (50 ± 10).
ADVANCE 50,FN$Erl_1; время задержки транзакта - величина
случайная, распределенная по закону, заданному в виде табличной функции Erl_1, со средним значением 50.
ADVANCE (Exponential(33,10,50)); время задержки - величина случайная, распределенная по экспоненциальному закону (из встроенной
библиотеки процедур) со средним значением 50; номер встроенного генератора равномерно распределённых случайных чисел равен 33;
смещение равно 10, то есть случайная величина, распределённая по экспоненциальному закону, принимает значения, начиная от 10.
SEIZE (ЗАНЯТЬ)
Назначение оператора: занятие транзактом прибора.
Формат оператора:
SEIZE A
Значения операндов:
A - идентификатор (число или имя) занимаемого прибора.
Примеры:
SEIZE 4; транзакт пытается занять прибор с номером 4; если прибор занят другим транзактом, то поступивший транзакт помещается в список задержки этого прибора, где находится до момента освобождения прибора, после чего этот транзакт занимает освободившийся прибор и продолжает свое движение к следующему блоку.
SEIZE Pribor_Disk; транзакт пытается занять прибор с именем Pribor_Disk; далее по аналогии с предыдущим примером.
RELEASE (ОСВОБОДИТЬ)
Назначение оператора: удаление транзакта из прибора (освобождение прибора).
Формат оператора:
RELEASE A
Значения операндов:
A - идентификатор (число или имя) освобождаемого прибора.
Примеры:
RELEASE 4; транзакт освобождает прибор с номером 4.
RELEASE Pribor_Disk; транзакт освобождает прибор с именем
Pribor_Disk.
Раздел 6. Имитационное моделирование 275
QUEUE (СТАТЬ В ОЧЕРЕДЬ)
Назначение оператора: занесение транзакта в очередь (точнее - регистрация статистики очереди, связанная с фиксацией момента поступления транзакта в очередь и увеличением ее длины).
Формат оператора:
QUEUE A,[B]
Значения операндов:
A - идентификатор (число или имя) очереди;
B - количество элементов, на которое должна увеличиться длина очереди; [по умолчанию - один].
Примеры:
QUEUE 3; присоединение транзакта к очереди с номером 3 и увеличение ее длины на 1 (по умолчанию).
QUEUE Jeck,5;присоединение транзакта к очереди с именем Jeck и увеличение ее длины на 5.
DEPART (ПОКИНУТЬ ОЧЕРЕДЬ)
Назначение оператора: удаление транзакта из очереди (точнее - регистрация статистики очереди, связанная с уменьшением ее длины и фиксацией момента удаления транзакта из очереди с целью определения времени ожидания).
Формат оператора:
DEPART A,[B]
Значения операндов:
A - идентификатор (число или имя) очереди;
B - количество элементов, на которое должна уменьшиться длина
очереди; [по умолчанию - один].
Примеры:
DEPART 3; удаление транзакта из очереди с номером 3 и уменьшение ее длины на 1 (по умолчанию).
DEPART Jeck,5;удаление транзакта из очереди с именем Jeck и уменьшение ее длины на 5.
START (НАЧАТЬ)
Назначение: запуск процесса моделирования.
Формат команды:
START A,[B],,[D]
Значения операндов:
A - начальное значение «счетчика завершений»;
B - признак вывода статистики: значение NP (no printout) блокирует
вывод стандартной статистики; необязательный операнд;
D - признак вывода списков: значение 1 включает вывод списков
будущих и текущих событий в стандартный отчет; необязательный
операнд.
Операнд С остался от предыдущих версий GPSS и не используется в
GPSS World.
Вывод
одноканальная модель оператор
В ходе выполнения данной лабораторной работы были изучены:
Операторы блоков GPSS World
GENERATE
QUEUE
SEIZE
DEPART
ADVANCE
RELEASE
TERMINATE
TEST
ENTER
LEAVE
Команды GPSS World
START
STORAGE
Так же была рассмотрена простейшая GPSS-модель, имитирующая работу СМО с однородным потоком заявок и позволяющая получить представление об основных операторах GPSS World.
Для модели было представлено подробное описание моделируемой системы с указанием конкретных значений параметров. Далее был изучен текст GPSS-модели и детально рассмотрен каждый оператор.
Приведен и подробно описан стандартный отчет, формируемый автоматически по завершении моделирования и содержащий результаты моделирования.
Размещено на Allbest.ru
Подобные документы
Описание языка программирования GPSS. Моделирование системы обработки информации содержащей мультиплексный канал. Словесное описание системы и схема модели. Текст программы, имитирующей работу модели на GPSS World. Проверка стабильности работы системы.
курсовая работа [280,0 K], добавлен 15.06.2014Технология Ethernet, построение схемы сети и алгоритм работы. Показатели работы сети до и после ввода дополнительных станций, результатов аналитического и имитационного моделирования. Запуск процесса моделирования и анализ результатов базовой модели.
курсовая работа [357,5 K], добавлен 17.04.2012Устройство и принцип действия открытых систем сети массового обслуживания с простейшим входящим потоком. Понятие квазиобратимости. Сети с переключением режимов при определенном количестве заявок в узле. Примеры открытых сетей с переключением режимов.
курсовая работа [286,6 K], добавлен 21.02.2010Обслуживание потоков сообщений. Модель с явными потерями. Характеристики качества обслуживания и пропускная способность системы. Простейшая модель обслуживания и модель потока требований. Свойства пуассоновского потока запросов. Нестационарный поток.
реферат [241,8 K], добавлен 30.11.2008Имитационное моделирование работы переговорного пункта после реконструкции в среде GPSS WORLD. Определение среднего числа посетителей в переговорном пункте: количество ожидающих вызовов; среднее время ожидания и обслуживания; расчет коэффициента загрузки.
лабораторная работа [163,8 K], добавлен 19.11.2012Определение нагрузки, поступающей на станцию системы массового обслуживания. Определение необходимого числа каналов для полнодоступной системы при требуемом уровне потерь. Моделирование в среде GPSS World СМО с потерями от требуемого числа каналов.
курсовая работа [972,3 K], добавлен 15.02.2016Анализ аппаратуры концентрации цифровых каналов. Основные функции цифрового концентратора. Система сети UltraNet, Fast Ethernet, Fiber Distributed Data Interface, 100VG-AnyLAN, DSL-Stinger. Преимущества и особенности языка моделирования на GPSS.
дипломная работа [1,2 M], добавлен 01.05.2015Цепь Маркова и Марковские процессы. Сеть массового обслуживания. Мультипликативность стационарного распределения в открытых сетях с многорежимными стратегиями обслуживания. Анализ изолированного узла. Стационарное распределение сети. Обслуживание заявок.
курсовая работа [200,1 K], добавлен 08.01.2014Разработка и унификация аналоговых и импульсных интегральных схем. Сущность экспериментального моделирования. Описание математического моделирования. Программа моделирования работы схемы содержит ряд типовых подпрограмм. Оптимизация схемы (модели).
реферат [1006,5 K], добавлен 12.01.2009Изучение методов проектирования, расчета и моделирования усилителей с использованием САРП. Расчёт коэффициента усиления напряжения разомкнутого усилителя. Выходной, входной каскад и расчет емкостных элементов. Коэффициент усиления и цепь обратной связи.
курсовая работа [327,1 K], добавлен 05.03.2011