Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОМСК ПОСОБИЕ.doc
Скачиваний:
10
Добавлен:
02.09.2019
Размер:
528.9 Кб
Скачать

3.10. Управляющие блоки

Блок SIMULATE означает начало имитации и указывает симуля-тору на необходимость выполнения моделирования. В этом блоке мо­жет использоваться поле А, в котором в этом случае указывается ко­личество повторений моделирования. Например, SIMULATE 5 пока­зывает, что модель должна быть выполнена пять раз. По умолчанию модель выполняется один раз.

Блок START воспринимается как команда симулятору начать выполнение прочитанной части модели. В этом блоке в поле А также задается начальное значение счетчика транзактов. Здесь также может быть использовано поле В в значении NP, что означает – не выво­дить статистику по окончании моделирования. Если задан блок

START 1,NP,

то подавляется вывод всей информации об устройствах, памятях, очередях, таблицах и ячейках. В этом случае выводится только ин­формация о переменных, указанных в блоках PRINT. Блок PRINT вы­водит информацию о переменных, СЧА которых указано в поле А этого блока.

В поле С блока START можно задать начальное значение счет­чика промежуточной печати. Содержимое этого счетчика уменьшается при входе транзактов в блок TERMINATE так же, как содержимое счетчика в поле А. Когда значение счетчика в поле С становится равным нулю или отрицательным, производится выдача статистики в обычном формате и восстанавливается начальное значение этого счет­чика. После этого выполнение модели продолжается. Например, при использовании карты

START 5„1

совместно с блоком TERMINATE 1 выдача статистики в процессе мо­делирования будет произведена 5 раз.

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

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

Однако многоцелевой характер имитационного моделирования ни в коей мере не отрицает необходимости как можно более полной и конкретной формулировки комплекса задач исследования объекта имитационного моделирования.[3]

Результативность проведённого изучения объекта систематизируется, а затем излагается как в словесной форме, так и в графическом виде (различного рода диаграммы, графики, блок-схемы и др.). Полученное изложение представляет собой искомое содержательное описание исследуемого объекта, используемого для построения его концептуальной модели.[3]

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

Контрольные задания

1. Запишите блок GENERATE, который генерирует транзакты через каждые 7 ± 2 единицы времени в течение всего времени модели­рования. Если время прихода третьего транзакта равно 21, то в какие моменты времени может прийти четвертый транзакт?

2. Запишите блок GENERATE, который генерирует транзакты:

а) через каждые шесть единиц модельного времени;

б) через каждые шесть единиц модельного времени, но первый транзакт должен прийти в момент времени, равный 15;

в) через каждые шесть единиц модельного времени, но всего должно быть сгенерировано 100 транзактов

3. Запишите блок GENERATE, который генерирует транзакты через 15 ± 5 единиц времени:

а) с уровнем приоритета, равным 0;

б) с уровнем приоритета, равным 9.

4. Интервалы времени блока GENERATE распределены равно­ мерно и заданы целыми числами:

а) 4, 5, 6, 7 и 8. Запишите блок GENERATE, который работает именно таким образом;

б) 4, 5, 6, 7, 8, и 9. Можете ли вы записать блок GENERATE для таких чисел?

5. При использовании блока GENERATE 4,5,6 во время про­хождения этой модели через ЭВМ возникает ошибка Можете ли вы объяснить причину еб возникновения?

6. Почему блок GENERATE 5, 2,„-3 неверен?

7. Какой из блоков записан неверно и почему?

а) GENERATE 10„12;

б) GENERATE 10,12.

8. Транзакты должны входить в блок GENERATE каждые 0,6 ± 0,2 дня. Укажите, какие значения должны принимать операнды А и В в блоке GENERATE, если выбранная единица времени равна а) 0,1 дня; б) 1/5 дня; в) 0,3 ч; г) 0,1 ч?

9. В чем различие между двумя сегментами:

GENERATE 10, 3 GENERATE 10, 3

SEIZE 1 QUEUE 1

SEIZE 1

10. Имеется следующая модель:

GENERATE 4

SEIZE 1

ADVANCE 9

RELEASE 1

TERMINATE 1

START 4

а) В какой момент времени 1-й транзакт войдет в блок GENER­ATE?

б) В какой момент времени в блок GENERATE войдет его последователь?

в) В какой момент времени последователь выйдет из блока GENERATE?

г) В какой момент третий транзакт войдет в блок GENERATE?

д) В какой момент устройство будет занято в третий раз?

е) Сколько времени проходит между последовательными выходами транзактов из блока GENERATE?

ж) В какой момент времени завершится моделирование?

11. Модель состоит из четырех сегментов:

GENERATE 95

GENERATE 90

GENERATE 95, 5

GENERATE 90

QUEUE 1

ADVANCE 50

QUEUE 1

ADVANCE 50,50

QUEUE 1

QUEUE 1

1 сегмент

2 сегмент

3 сегмент

4 сегмент

а) В какие моменты времени первые три транзакта войдут в блок QUEUE в сегменте 1?

б) В какие моменты времени первые три транзакта войдут в блок QUEUE в сегменте 2?

в) Каковы наибольшее и наименьшее возможные значения вре­мени, в которые первые три транзакта в сегменте 3 могут войти в блок QUEUE?

г) Каковы наибольшее и наименьшее возможные значения времени, в которые первые три транзакта в сегменте 4 могут войти в блок QUEUE?

12. Каким образом можно изменить маршрут транзакта?

13. С какой целью используется в GPSS блок SEIZE? Укажите все его операнды. Пусть некоторый транзакт попал в блок SEIZE. Ко­гда в него сможет попасть следующий транзакт?

14. Запишите блоки ВСТАТЬ В ОЧЕРЕДЬ и ПОКИНУТЬ ОЧЕ­РЕДЬ. Укажите все возможные операнды этих блоков. Опишите, что происходит при входе транзакта в блок СТАТЬ В ОЧЕРЕДЬ.

15. Что понимают под прибором в GPSS? Что такое имя прибора?

16. Как описывается многоканальное устройство в GPSS?

17. Что означают следующие записи:

a) TRANSFER .25, WORK, PLAY;

б) TRANSFER .333„BYPAS;

в) TRANSFER BOTH, BYBYE .

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