МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • Моделирование на GPSS

    При входе транзакта в блок ENTER текущее содержимое МКУ увели-

    чивается на число единиц, указанное в поле B . Если свободная

    емкость МКУ меньше значения поля B, то транзакт не может войти в

    блок ENTER и остается в предыдущем блоке, образуя очередь в списке

    текущих событий.

    При входе транзакта в блок LEAVE текущее содержимое МКУ умень-

    шается на число единиц, указанное в поле B. Не обязательно освобож-

    дается такое же число каналов МКУ, какое занималось при входе дан-

    ного транзакта в блок ENTER, однако текущее содержимое МКУ не долж-

    но становиться отрицательным.

    Многоканальные устройства имеют следующие СЧА: S - текущее со-

    держимое МКУ; R - свободная емкость МКУ; SR - коэффициент использо-

    вания в долях 1000; SA - целая часть среднего содержимого МКУ; SM -

    максимальное содержимое МКУ; SC - число занятий МКУ; ST - целая

    часть среднего времени занятия МКУ.

    Воспользуемся блоками ENTER-LEAVE и оператором STORAGE для мо-

    делирования двухканальной СМО с ожиданием (рис. 8). Если текущее

    содержимое МКУ с именем STO2 меньше 2, т.е. в блоке ADVANCE нахо-

    дится один или ни одного транзакта, то очередной транзакт, поступа-

    ющий в модель через блок GENERATE, может войти в блок ENTER и затем

    в блок ADVANCE. Если же текущее содержимое МКУ равно 2, то очеред-

    ной транзакт остается в блоке GENERATE, образуя очередь в списке

    текущих событий. По истечении задержки одного из двух обслуживаемых

    транзактов в блоке ADVANCE и после входа его в блок LEAVE первый из

    заблокированных транзактов сможет войти в блок ENTER.

    STO2 STORAGE 2

    EXP FUNCTION RN1,C24

    0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915

    .7,1.2/.75,1.38/.8,1.6/.84,1.85/.88,2.12/.9,2.3

    .92,2.52/.94,2.81/.95,2.99/.96,3.2/.97,3.5/.98,3.9

    .99,4.6/.995,5.3/.998,6.2/.999,7/.9998,8

    GENERATE 100,FN$EXP

    ENTER STO2

    ADVANCE 160,FN$EXP

    LEAVE STO2

    TERMINATE 1

    Рис. 8

    К аппаратным объектам относятся также логические переключатели

    (ЛП), которые могут находиться в двух состояниях: "включено" и

    "выключено". В начале моделирования все ЛП находятся в состоянии

    "выключено". Отдельные переключатели могут быть установлены в на-

    чальное состояние "включено" с помощью оператора INITIAL (инициали-

    зировать), имеющего следующий формат:

    INITIAL LS$ имя

    INITIAL LS j

    Здесь имя и j - соответственно имя и номер ЛП, устанавливаемого в

    начальное состояние "включено".

    Для включения, выключения и инвертирования логических переклю-

    чателей в процессе моделирования служит блок LOGIC (установить ЛП),

    имеющий следующий формат:

    имя LOGIC X A

    В поле A указывается имя или номер ЛП. Вспомогательный операнд

    X указывает вид операции, которая производится с логическим перек-

    лючателем при входе транзакта в блок: S - включение, R - выключе-

    ние, I - инвертирование. Например:

    LOGIC S 9

    LOGIC R FLAG

    Логические переключатели имеют единственный СЧА с названием

    LS. Значение СЧА равно 1, если ЛП включен, и 0, если он выключен.

    2.3. Блоки для сбора статистических данных

    Два последних примера в предыдущем параграфе представляют со-

    бой законченные модели одноканальной и многоканальной СМО с ожида-

    нием. Однако такие модели разрабатываются обычно для исследования

    различных характеристик, связанных с ожиданием заявок в очереди:

    длины очереди, времени ожидания и т.п., а в приведенных примерах

    очередь транзактов образуется в списке текущих событий и недоступна

    исследователю. Для регистрации статистической информации о процессе

    ожидания транзактов в модели должны присутствовать статистические

    объекты: очереди или таблицы.

    Объекты типа очередь создаются в модели путем использования

    блоков - регистраторов очередей: QUEUE (стать в очередь) и DEPART

    (уйти из очереди), имеющих следующий формат:

    имя 0QUEUE A,B

    имя DEPART A,B

    В поле A указывается номер или имя очереди, а в поле B - число

    единиц, на которое текущая длина очереди увеличивается при входе

    транзакта в блок QUEUE или уменьшается при входе транзакта в блок

    DEPART. Обычно поле B пусто, и в этом случае его значение по умол-

    чанию принимается равным 1.

    Для сбора статистики о транзактах, заблокированных перед ка-

    ким-либо блоком модели, блоки QUEUE и DEPART помещаются перед и

    после этого блока соответственно. При прохождении транзактов через

    блоки QUEUE и DEPART соответствующим образом изменяются следующие

    СЧА очередей: Q - текущая длина очереди; QM - максимальная длина

    очереди; QA - целая часть средней длины очереди; QC - общее число

    транзактов, вошедших в очередь; QZ - число транзактов, прошедших

    через очередь без ожидания (число "нулевых" входов); QT - целая

    часть среднего времени ожидания с учетом "нулевых" входов; QX - це-

    лая часть среднего времени ожидания без учета "нулевых" входов.

    Дополним приведенную на рис. 7 модель одноканальной СМО блока-

    ми QUEUE и DEPART (рис. 9). Теперь транзакты, заблокированные перед

    блоком SEIZE из-за занятости устройства SYSTEM, находятся в блоке

    QUEUE, внося свой вклад в статистику о времени ожидания, накаплива-

    емую в статистическом объекте типа "очередь" с именем LINE. При

    освобождении устройства первый из заблокированных транзактов войдет

    в блок SEIZE и одновременно в блок DEPART, прекращая накопление

    статистики об ожидании этого транзакта.

    EXP FUNCTION RN1,C24

    0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915

    .7,1.2/.75,1.38/.8,1.6/.84,1.85/.88,2.12/.9,2.3

    .92,2.52/.94,2.81/.95,2.99/.96,3.2/.97,3.5/.98,3.9

    .99,4.6/.995,5.3/.998,6.2/.999,7/.9998,8

    GENERATE 100,FN$EXP

    QUEUE LINE

    SEIZE SYSTEM

    DEPART LINE

    ADVANCE 80,FN$EXP

    RELEASE SYSTEM

    TERMINATE 1

    Рис. 9

    Очень часто исследователя интересует не только среднее значе-

    ние времени ожидания в очереди, но и дисперсия этого времени, а

    также статистическое распределение выборки времени ожидания,

    представляемое обычно графически в виде гистограммы. Имея такое

    распределение, можно оценить вероятность того, что время ожидания

    превысит или не превысит некоторое заданное значение. Для сбора и

    обработки данных о выборочном распределении времени ожидания в оче-

    реди служат статистические объекты типа Q-таблица.

    Для создания в модели такой таблицы она должна быть предвари-

    тельно определена с помощью оператора определения QTABLE (Q-табли-

    ца), имеющего следующий формат:

    имя QTABLE A,B,C,D

    Здесь имя - имя таблицы, используемое для ссылок на нее; A - номер

    или имя очереди, распределение времени ожидания в которой необходи-

    мо получить; B - верхняя граница первого частотного интервала таб-

    лицы; C - ширина частотных интервалов; D - количество частотных ин-

    тервалов.

    Диапазон всевозможных значений времени ожидания в очереди,

    указанной в поле A, разбивается на ряд частотных интервалов, коли-

    чество которых указано в поле D. Первый из этих интервалов имеет

    ширину от минус бесконечности до величины, указанной в поле B,

    включительно. Второй интервал включает значения, большие, чем вели-

    чина первой границы в поле B, но меньшие или равные B+C, и т.д. Все

    промежуточные интервалы имеют одинаковую ширину, указанную в поле

    C. Наконец, последний интервал включает все значения, большие, чем

    последняя граница. Значения операндов B, C и D должны задаваться

    целыми константами. Операнд B может быть неположительным, хотя для

    Q-таблицы это не имеет смысла, так как время не может быть отрица-

    тельным. Операнды C и D должны быть строго положительными.

    При прохождении транзакта через блоки QUEUE и DEPART его время

    ожидания фиксируется, и к счетчику частотного интервала таблицы, в

    который попало это время, добавляется 1. Одновременно в таблице на-

    капливается информация для вычисления среднего значения и средне-

    квадратического отклонения (корня из дисперсии) времени ожидания.

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

    отклонение времени ожидания, а также счетчики попаданий в различные

    частотные интервалы выводятся в стандартный отчет GPSS/PC.

    Таблицы, как и другие объекты GPSS/PC, имеют СЧА: ТС - общее

    число транзактов, вошедших в очередь, связанную с таблицей; TB -

    целая часть среднего времени ожидания в очереди; TD - целая часть

    среднеквадратического отклонения времени ожидания в очереди.

    Дополним модель из примера на рис. 9 оператором QTABLE для по-

    лучения распределения времени ожидания в очереди с именем LINE

    (рис. 10).

    WTIME QTABLE LINE,50,50,10

    EXP FUNCTION RN1,C24

    0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915

    .7,1.2/.75,1.38/.8,1.6/.84,1.85/.88,2.12/.9,2.3

    .92,2.52/.94,2.81/.95,2.99/.96,3.2/.97,3.5/.98,3.9

    .99,4.6/.995,5.3/.998,6.2/.999,7/.9998,8

    GENERATE 100,FN$EXP

    QUEUE LINE

    SEIZE SYSTEM

    DEPART LINE

    ADVANCE 80,FN$EXP

    RELEASE SYSTEM

    TERMINATE 1

    Рис. 10

    Оператор определения таблицы с именем WTIME разбивает ось вре-

    мени на 10 частотных интервалов. Первый интервал включает значения

    от 0 до 50, второй - от 50 до 100, третий - от 100 до 150 и т.д.

    Последний, десятый, интервал включает значения, превышающие 450.

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

    составило 145 единиц модельного времени, то к счетчику третьего

    частотного интервала будет добавлена 1. Следует заметить, что ин-

    формация в таблицу с именем WTIME заносится автоматически, при вхо-

    де транзактов в блоки QUEUE и DEPART, и никаких специальных мер для

    этого принимать не требуется.

    Таблицы в GPSS/PC могут использоваться в более общем случае не

    только для табулирования времени ожидания в очереди, но и для полу-

    чения выборочных распределений произвольных СЧА любых объектов мо-

    дели. Для определения таблиц служит оператор TABLE (таблица), фор-

    мат которого совпадает с форматом оператора QTABLE. Отличие состоит

    лишь в том, что в поле A оператора TABLE записывается стандартный

    числовой атрибут, выборочное распределение которого необходимо по-

    лучить, а операнды B, C и D определяют разбиение на частотные ин-

    тервалы диапазона всевозможных значений этого СЧА.

    Занесение информации в таблицу, определяемую оператором TABLE,

    уже не может быть выполнено симулятором автоматически, как в случае

    Q-таблиц. Для этого используется специальный блок TABULATE (табули-

    ровать), имеющий следующий формат:

    имя TABULATE A

    В поле A указывается номер или имя таблицы, определенной соот-

    ветствующим оператором TABLE.

    При входе транзакта в блок TABULATE текущее значение табулиру-

    емого аргумента таблицы, указанного в поле A оператора TABLE, за-

    носится в нее в соответствии с заданным в операторе TABLE разбиени-

    ем области значений аргумента на частотные интервалы. Одновременно

    корректируются текущие значения СЧА таблицы: счетчик входов в таб-

    лицу TC, среднее время ожидания TB и среднеквадратическое отклоне-

    ние времени ожидания TD.

    Пусть, например, в модели многоканальной СМО, приведенной на

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

    системе, включающего время ожидания в очереди и время обслуживания.

    Это может быть обеспечено способом, показанным на рис. 11.

    Оператор TABLE определяет таблицу с именем TTIME, аргументом

    которой служит СЧА М1 - время пребывания транзакта в модели. В

    рассматриваемой модели значение СЧА M1 одновременно будет являться

    временем пребывания транзакта в СМО в том случае, если занесение

    информации в таблицу производить перед выходом транзакта из модели.

    Поэтому блок TABULATE, заносящий информацию о времени пребывания

    каждого транзакта в модели в таблицу TTIME, располагается перед

    блоком TERMINATE. Диапазон возможных значений времени пребывания

    транзакта в модели разбит в операторе TABLE на 12 частотных интер-

    валов, ширина которых (кроме последнего) равна 100 единицам модель-

    ного времени.

    TTIME TABLE M1,100,100,12

    STO2 STORAGE 2

    EXP FUNCTION RN1,C24

    0,0/.1,.104/.2,.222/.3,.355/.4,.509/.5,.69/.6,.915

    .7,1.2/.75,1.38/.8,1.6/.84,1.85/.88,2.12/.9,2.3

    .92,2.52/.94,2.81/.95,2.99/.96,3.2/.97,3.5/.98,3.9

    .99,4.6/.995,5.3/.998,6.2/.999,7/.9998,8

    GENERATE 100,FN$EXP

    ENTER STO2

    ADVANCE 160,FN$EXP

    LEAVE STO2

    TABULATE TTIME

    TERMINATE 1

    Рис. 11

    2.4. Блоки, изменяющие маршруты транзактов

    В приведенных выше примерах транзакты, выходящие из любого

    блока, всегда поступали в следующий блок. В более сложных моделях

    возникает необходимость направления транзактов к другим блокам в

    зависимости от некоторых условий. Эту возможность обеспечивают бло-

    ки изменения маршрутов транзактов.

    Блок TRANSFER (передать) служит для передачи входящих в него

    транзактов в блоки, отличные от следующего. Блок имеет девять режи-

    мов работы, из которых рассмотрим здесь лишь три наиболее часто

    используемых. В этих трех режимах блок имеет следующий формат:

    имя TRANSFER A,B,C

    Смысл операндов в полях A, B и C зависит от режима работы блока.

    В режиме безусловной передачи поля A и C пусты, а в поле B

    указывается имя блока, к которому безусловным образом направляется

    транзакт, вошедший в блок TRANSFER. Например:

    TRANSFER ,FINAL

    В режиме статистической передачи операнд A определяет вероят-

    ность, с которой транзакт направляется в блок, указанный в поле C.

    С вероятностью 1-A транзакт направляется в блок, указанный в поле B

    (в следующий, если поле B пусто).

    Вероятность в поле A может быть задана непосредственно деся-

    тичной дробью, начинающейся с точки. Например, блок

    TRANSFER .75,THIS,THAT

    с вероятностью 0,75 направляет транзакты в блок с именем THAT, а с

    вероятностью 0,25 - в блок с именем THIS.

    Если же поле A начинается не с десятичной точки и не содержит

    одного из ключевых слов - признаков других режимов работы блока, то

    его значение рассматривается как количество тысячных долей в веро-

    ятности передачи. Например, предыдущий блок TRANSFER можно записать

    также в следующем виде:

    TRANSFER 750,THIS,THAT

    В режиме логической передачи в поле A записывается ключевое

    слово BOTH (оба). Транзакт, поступающий в блок TRANSFER, сначала

    пытается войти в блок, указанный в поле B (или в следующий блок,

    если поле B пусто), а если это не удается, т.е. блок B отказывает

    транзакту во входе, то в блок, указанный в поле C. Если и эта по-

    пытка неудачна, то транзакт задерживается в блоке TRANSFER до изме-

    нения условий в модели, делающего возможным вход в один из блоков B

    или C, причем при одновременно возникшей возможности предпочтение

    отдается блоку B. Например:

    TRANSFER BOTH,MET1,MET2

    Блок TEST (проверить) служит для задержки или изменения марш-

    рутов транзактов в зависимости от соотношения двух СЧА. Он имеет

    следующий формат:

    имя TEST X A,B,C

    Вспомогательный операнд X содержит условие проверки соотноше-

    ния между СЧА и может принимать следующие значения: L (меньше); LE

    (меньше или равно); E (равно); NE (не равно); GE (больше или рав-

    но); G (больше). Поле A содержит первый, а поле B - второй из срав-

    ниваемых СЧА. Если проверяемое условие A X B выполняется, то блок

    TEST пропускает транзакт в следующий блок. Если же это условие не

    выполняется, то транзакт переходит к блоку, указанному в поле C, а

    если оно пусто, то задерживается перед блоком TEST.

    Например, блок

    TEST LE P$TIME,C1

    не впускает транзакты, у которых значение параметра с именем TIME

    Страницы: 1, 2, 3, 4, 5


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.