Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
МОДЕЛИРОВАНИЕ ОДНОКАНАЛЬНЫХ УСТРОЙСТВ
Теоретическая часть Устройства используются при моделировании систем для имитации работы оборудования единичной емкости, например, процессор, канал передачи данных, человек, компьютер. Устройство в любой момент времени может обрабатывать только одно сообщение (транзакт). Если в процесс обслуживания появляется новый транзакт, то он должен:
Для использования одноканального устройства транзакту необходимо выполнить следующие шаги. - ждать очереди, если необходимо; - когда подходит очередь занять устройство; - устройство находится в состоянии занятости, пока не закончится обслуживание, для обслуживания необходим некоторый интервал времени; - когда обслуживание закончится, освободить устройство. Второй и четвертый шаги реализуются блоками SEIZE и RELEASE. Блок SEIZE (занять) имеет следующий формат: SEIZE A Графическое представление блока имеет вид: Свободный блок SEIZE позволяет вошедшему в него сообщению занять указанное устройство. Блок SEIZE задерживает сообщение, если устройство занято или находится в состоянии недоступности. В поле А задается номер (имя) занимаемого устройства. Сообщение, занявшее устройство, затем пытается перейти к следующему по номеру блоку. Устройство остается занятым до тех пор, пока занимающее его сообщение не войдет в соответствующий блок RELEASE. Прежде чем освободить устройство, сообщение может пройти через неограниченное число блоков. Блок RELEASE (освободить) имеет следующий формат: RELEASE A Графическое представление блока имеет вид: Блок RELEASE предназначен для освобождения устройства тем сообщением, которым в поле А задается номер (имя) освобождаемого устройства. Примеры: 1. Автомобиль занял бензиновую колонку (название колонки - Kol): SEIZE Kol 2. Автомобиль освободил бензиновую колонку: RELEASE Kol Транзакты обслуживаются устройствами в течение некоторого промежутка времени. Для моделирования такого обслуживания, т.е. для задержки транзактов на определенный отрезок модельного времени (реализация шага 3), служит блок ADVANCE (задержать), имеющий следующий формат: ADVANCE A,B Операнды в полях A и B имеют тот же смысл, что и в соответствующих полях блока GENERATE. Следует отметить, что транзакты, входящие в блок ADVANCE, переводятся из списка текущих событий в список будущих событий, а по истечении вычисленного времени задержки возвращаются назад, в список текущих событий, и их продвижение по блок-схеме продолжается. Если вычисленное время задержки равно 0, то транзакт в тот же момент модельного времени переходит в следующий блок, оставаясь в списке текущих событий. Графическое представление блока имеет вид:
Примеры: 1. Клиент в банке обслуживается в среднем за 6 ± 2 минуты: ADVANCE 6,2 2. Автомобиль занимает колонку Kol и заправляется в течение 2 мин, затем освобождает колонку (составить сегмент модели): SEIZE Kol ... ADVANCE 2 RELEASE Kol
3. Транзакты, поступающие в модель из блока GENERATE через случайные интервалы времени, имеющие равномерное распределение на отрезке [60;140], попадают в блок SEIZE и занимают устройство с номером 1. Далее в блоке ADVANCE определяется случайное время задержки транзакта, имеющее равномерное распределение на отрезке [30;130], и транзакт переводится в список будущих событий. По истечении времени задержки транзакт возвращается в список текущих событий и входит в блок RELEASE и освобождает устройство 1. Заметим, что в списке будущих событий, а значит и в блоке ADVANCE может одновременно находиться произвольное количество транзактов. GENERATE 100,40 SEIZE 1 ADVANCE 80,50 RELEASE 1
В рассмотренных выше примерах случайные интервалы времени подчинялись равномерному закону распределения вероятностей. Для получения случайных величин с другими распределениями в GPSS используются вычислительные объекты: переменные и функции. |
Последнее изменение этой страницы: 2019-04-11; Просмотров: 460; Нарушение авторского права страницы