close

Вход

Забыли?

вход по аккаунту

?

лаба 4

код для вставкиСкачать
 Федеральное агентство по образованию
Балтийский федеральный университет им. И. Канта
Институт современных образовательных технологий
Кафедра компьютерного моделирования и информационных систем
Практическая работа по дисциплине
"Компьютерное моделирование"
по теме "Моделирование обслуживания в многоканальных СМО"
Вариант 6
Выполнил:
студент 3 курса очного отделения направления "физико-математическое образование", профиля "информатика" Вежливцев Василий
Проверил:
Васильев Д.В.
Калининград
2011
Очень часто в поле зрения исследователей попадают многоканальные СМО с параллельно работающими приборами, однородными по свойствам, например, времени обслуживания заявки. Язык предоставляет для моделирования таких параллельно работающих приборов специальное средство - "Многоканальное устройство".
В модели может быть несколько многоканальных устройств, различающихся символическими или числовыми именами. Число приборов, моделируемых многоканальным устройством, определяется пользователем и называется емкостью многоканального устройства.
Многоканальное устройство вводится парой взаимодополняющих друг друга блоков - ENTER (войти) и LEAVE (выйти). Когда транзакт входит в первый из них, моделируется событие "Занятие одного из группы параллельноработающих приборов", а когда он попадает во второй - "Освобождение параллельно работающего прибора".
Общий вид блоков:
ENTER А, В
LEAVE А, В.
Операнд А указывает имя многоканального устройства (по умолчанию - ошибка), а В - число приборов, занимаемых при входе одного транзакта (по умолчанию - единица). Графическое изображение блоков приведено на рисунке 1.
Рисунок 1 - Графическое изображение блоков ENTER (слева) и LEAVE (справа)
В конце прогона интерпретатор автоматически распечатывает статистику по многоканальным устройствам. Емкость многоканального устройства задается оператором STORAGE (многоканальное устройство).
Общий вид оператора: Имя STORAGE А, где "Имя" - соответствует символическому или числовому наименованию многоканального устройства (операнд А в блоках ENTER и LEAVE). Операнд А определяет емкость многоканального устройства.
Пример 1. В порту пять причалов, время обслуживания судов на каждом из них составляет 10±3 суток. Написать сегмент GPSS-модели, моделирующий параллельную обработку судов.
Введем многоканальное устройство с именем PORT, тогда PORTSTORAGE5
.
.
.
ENTERPORT
ADVANCE10.3 LEAVEPORT
Оператор STORAGE помещается в программе перед оператором GENERATE.
Блок TRANSFER (передать) обеспечивает передачу транзактов в указанный блок. Блок TRANSFER имеет девять режимов передачи транзактов:
Режим безусловной передачи. Используется, когда возникает необходимость передать транзакт безусловным образом в блок, отличный от последующего. Форма представления: TRANSFER, B
Наличие запятой указывает на безусловный режим использования блока.
Операнд В указывает положение, занимаемое блоком, в который транзакт должен сделать попытку входа. Положение блока может задаваться либо символически, либо в виде номера блока. Символьное имя использовать более удобно. В режиме безусловной передачи блок TRANSFER не может отказать транзакту во входе. Когда транзакт входит в блок он сразу же пытается занять его. Если этот блок отказывает в приеме, то транзакт остаётся в блоке TRANSFER и в цепи текущих событий. При каждом последующем просмотре цепи снова делается попытка поместить транзакт в блок В (TRANSFER , NN1- перейти в блок NN1) . Графическая интерпретация блока TRANSFER в режиме безусловной передачи представлена на рисунке 2:
(В)
Рисунок 2 - Блок TRANSFER в режиме безусловной передачи.
Режим статистической передачи. Используется когда необходимо передать транзакт в один из блоков случайным образом, при этом необходимо выбрать одну из двух возможностей:
TRANSFERA , B , C
A - частота, с которой транзакт, вошедший в блок TRANSFER, должен переходить в блок С, Во всех остальных случаях транзакт переходит в блок, определяемый операндом В (TRANSFER .4 , NN1 , NN2 - перейти в блок NN2 с вероятностью 40%, иначе - в блок NN1) .
В режиме статистической передачи блок никогда не запрещает транзакту входить в него. Когда транзакт входит в блок, то происходит выбор следующего блока. Затем транзакт пытается войти в выбранный блок. Если вход запрещён, то транзакт остаётся в блоке TRANSFER и в цепи текущих событий. При каждом следующем просмотре цепи делается новая попытка войти в выбранный блок.
Графическое изображение блока TRANSFER представлено на рисунке 3.
(C)
(B)
Рисунок 3 - Блок TRANSFER в статистическом режиме передачи.
Режим BOTH (оба). Используется для посылки транзакта в любой из двух блоков, готовый принять его. Форма представления блока такая же как и при режиме статистической передачи, но вместо операнда А используется слово BOTH:
TRANSFERBOTH , B , C
Транзакт, входящий в блок TRANSFER, работающий в режиме BOTH, сразу же пытается войти в блок В. Если вход невозможен, то транзакт пытается войти в блок С. Если и этот блок отказывает транзакту, он остаётся в цепи текущих событий и при каждом последующем просмотре цепи текущих событий интерпретатор снова пытается ввести его в блок В, а если вход по-прежнему невозможен, то в блок С (TRANSFER BOTH, NN1 , NN2 - перейти в блок NN2, иначе - в блок NN1) .
Графическое изображение блока TRANSFER в режиме BOTH представлено на рис.5:
(C)
(B)
Рисунок 4 - Блок TRANSFER в режиме передачи BOTH.
Режим ALL. Данный режим является обобщением режима BOTH. Когда транзакт входит в блок TRANSFER, работающий в режиме ALL, интерпретатор последовательно проверяет все блоки в определённом ряду в поисках первого, способного принять транзакт. Как только блок найден, транзакт входит в этот блок и продолжает своё дальнейшее движение. Если же такого блока нет, транзакт остаётся в блоке TRANSFER и в цепи текущих событий.
Режим PICK (выборочный). Когда транзакт входит в блок TRANSFER, работающий в режиме PICK, интерпретатор выбирает наудачу блок из заданного ряда. Выбранный блок становится для транзакта следующим блоком для входа. Каждый блок в заданном ряду может стать следующим входным блоком для транзакта с равной вероятностью.
Режим FN (функциональный). Если транзакт входит в блок TRANSFER, работающий в режиме FN, то номер следующего блока, куда он войдёт, должен быть равен значению функции, номер которой указан в операнде В. Если используется операнд С, то номер следующего блока определяется как сумма величины функции и числа, стоящего в операнде С.
Режим Р (параметрический). Если транзакт входит в блок TRANSFER, работающий в режиме Р, то номер следующего блока, куда он направится, должен быть равен величине параметра, номер которого задан в операнде В. Если используется операнд С (что необязательно), то номер следующего блока равен сумме величины параметра и числа, слоящего в операнде С.
Режим SBR (подпрограммный). При входе в блок TRANSFER, работающий в режиме SBR, номер следующего блока, куда транзакт будет направлен, должен быть равен величине, стоящей в операнде B. Перед тем как произойдёт передача транзакта, номер самого блока TRANSFER помещается в параметр, номер которого указан в операнде C, то есть перед тем, как транзакт перейдёт к подпрограмме, в этом параметре запоминается местоположение того блока, откуда будет совершён переход. Последним блоком, таким образом, может быть блок TRANSFER, работающий в режиме P, который возвратит транзакт обратно в ту точку модели, откуда был произведён переход.
Режим SIM (одновременный). Путём использования блока TRANSFER, работающего в режиме SIM, дальнейшее движение транзакта в модели может быть приостановлено до тех пор, пока не будет одновременно выполнен ряд условий. Данный способ использования блока TRANSFER остался от системы GPSS III, когда в языке не было булевских переменных, и оставлен в целях совместимости. Для обеспечения работы блока TRANSFER в данном режиме каждый транзакт имеет индикатор задержки. Графическое изображение блока TRANSFER в режимах передачи (4-9) имеют тот же самый вид, что и для режимов статистической передачи и передачи в режиме BOTH.
ЗАДАНИЕ
В модели, построенной при выполнении лабораторной работы №3, нужно учесть то, что, получив справку у оператора ПК, а затем книги у библиотекаря, все читатели работают в читальном зале Rr часов. Такова основная линия перемещения читателей по библиотеке. Но согласно указанной в варианте схеме движения (Табл.2) некоторые читатели заходят в отдел абонемента, другие посещают зал периодики, читают газеты в холле библиотеки и т.п.
Необходимо (в соответствии с вариантом задания) дополнить модель работы объекта из предыдущей лабораторной работы подробным и четким описанием перемещения всех групп читателей по отделам и залам библиотеки. Провести моделирование в течение заданного в предыдущей лабораторной работе R- часового рабочего дня и ответить на предложенные вопросы.
Результаты, полученные при моделировании, трактовать в терминах работы библиотеки.
ДОПОЛНЕНИЯ К ОПИСАНИЮ ОБЪЕКТА МОДЕЛИРОВАНИЯ
Библиотека университета предоставляет читателям для работы несколько отделов и залов, имеющих определенное число мест:
- читальный зал - для работы студентов,
- зал дипломного проектирования - для работы дипломников и аспирантов с нормативными документами, научными отчётами, действующими стандартами,
- преподавательский зал - для работы научных сотрудников и преподавателей,
- зал периодики - для работы с научно-техническими изданиями (журналами, сборниками статей и тезисов),
- отдел специального фонда, который имеет свой читальный зал, библиотекаря и хранилище, где собраны редкие научные издания в одном экземпляре, литература служебного пользования для читателей, имеющих к ней доступ,
- абонементные отделы: научно-технический и художественный, где можно получить литературу для работы дома,
- огромный холл, в котором оборудованы места для чтения газет и установлен аппарат для ксерокопирования.
Вопросы, на которые необходимо ответить в процессе моделирования, приведены ниже.
Согласно варианту ответить на указанные вопросы и определить:
4. среднее время, проведенное дипломниками в очередях;
14. максимальное число дипломников, одновременно стоящих в очередях;
Дополнительная схема движения некоторой группы читателей в библиотеке выбирается согласно заданному варианту (Табл. 5); остальные читатели, получив книги, направляются работать в читальный зал на указанное время, после чего уходят из библиотеки.
Д - Pr процентов вошедших дипломников, которые начинают заходить в библиотеку после 12 часов каждые 2-7 минут (либо указанного времени в предыдущей работе), берут у библиотекаря книги и идут работать на Rj часа в зал дипломного проектирования, остальные направляются в научно-технический отдел на Tr минут;
М - Pr процентов вошедших в библиотеку читателей сразу же идут работать в читальный зал на Tr минут, не обращаясь за справкой и книгами;
ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ
1. Ознакомиться с методическими указаниями.
2. Составить полное и подробное описание конкретного объекта моделирования в соответствии с заданным вариантом и с учетом требований предыдущей работы.
3. Перевести все временные параметры в соответствии с выбранной ранее единицей модельного времени
4. Построить формализованную схему дополненного объекта моделирования.
5. Заполнить таблицу определений (элементы GPSS - интерпретация).
6. Разработать блок - схему и указать все параметры блоков.
7. Составить программу на языке GPSS.
8. Выписать результаты моделирования (статистические данные).
9. Провести анализ результатов моделирования и ответов на поставленные вопросы.
10. Оформить отчет по лабораторной работе.
СОДЕРЖАНИЕ ОТЧЕТА
1.Назначение и использование блоков ENTER, LEAVE, TRANSFER (безусловный, статистический, BOTH режимы).
2. Назначение и использование оператора STORAGE.
3. Задание к лабораторной работе с указанием всех исходных параметров, т.е. строка таблицы данной лабораторной работы, а также вопросы, соответствующие варианту. 4. Постановка задачи для конкретного объекта моделирования, сформулированная в соответствии с заданным вариантом. Составлять описание работы объекта моделирования необходимо в строгом соответствии с указанными параметрами: все дополнения к предыдущему описанию конкретно заданного объекта моделирования должны быть включены в соответствующие места текста по смыслу изложения задания.
5. Таблица пересчета всех значений параметров в соответствии с выбранной единицей модельного времени в предыдущей лабораторной работе.
6. Формализованная схема объекта моделирования.
7. Таблица определений (элементы GPSS - интерпретация).
8. Блок - схема модели.
9. Программа на языке GPSS.
10. Результаты моделирования (подробно все статистические данные).
11. Анализ статистических данных и ответы на указанные в варианте вопросы.
12. Внесение изменений в модель (если это необходимо), а также вновь полученные результаты при изменении определенных параметров.
13. Выводы о работе библиотеки и предложения по правильной организации её работы.
Таблица 2
ВариантСхема движенияPrTrRrRjUrВопросы%МинЧасЧасмест6Д , М61 - 63 - 3,50,5-24 , 14
Ход выполнения
Формализованная схема объекта моделирования.
Объект библиотекиОбъект GPSSСимволическое имяCтудентТранзакт первого сегментаТаймерТранзакт третьего сегментаДипломникТранзакт второго сегментаОчередь к ПКРегистратор очередиOC1Очередь к библиотекарюРегистратор очередиOC2ПКПриборPKБиблиотекарьПриборBIBЗал дипломного проектированияПриборPRO
EEE STORAGE 25
GENERATE 195,105 TRANSFER .06,NNN,MMM NNN QUEUE OC1
SEIZE PK
DEPART OC1
ADVANCE 90,3
RELEASE PK
QUEUE OC2
SEIZE BIB
DEPART OC2
ADVANCE 345,195
RELEASE BIB
MMM ENTER EEE
ADVANCE 210,150
LEAVE EEE
TERMINATE EEE STORAGE 25
GENERATE 270,150,15480 TRANSFER .06,SSS,RRR SSS QUEUE OC4
QUEUE OC1
SEIZE PK
DEPART OC1
DEPART OC4
ADVANCE 90,3
RELEASE PK
QUEUE OC3 QUEUE OC2
SEIZE BIB
DEPART OC2
DEPART OC3
ADVANCE 345,195
RELEASE BIB
SEIZE PRO
ADVANCE 4500,2700
RELEASE PRO
RRR ENTER EEE
ADVANCE 210,150
LEAVE EEE
TERMINATE GENERATE 39600 TERMINATE 1
START 1
Блок-схема модели
Протокол работы модели
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 39600.000 41 3 1
NAME VALUE BIB 10004.000
EEE 10000.000
MMM 13.000
NNN 3.000
OC1 10001.000
OC2 10003.000
OC3 10006.000
OC4 10005.000
PK 10002.000
PRO 10007.000
RRR 36.000
SSS 19.000
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 206 0 0
2 TRANSFER 206 0 0
NNN 3 QUEUE 190 0 0
4 SEIZE 190 0 0
5 DEPART 190 0 0
6 ADVANCE 190 0 0
7 RELEASE 190 0 0
8 QUEUE 190 92 0
9 SEIZE 98 0 0
10 DEPART 98 0 0
11 ADVANCE 98 1 0
12 RELEASE 97 0 0
MMM 13 ENTER 113 0 0
14 ADVANCE 113 1 0
15 LEAVE 112 0 0
16 TERMINATE 112 0 0
17 GENERATE 85 0 0
18 TRANSFER 85 0 0
SSS 19 QUEUE 80 0 0
20 QUEUE 80 0 0
21 SEIZE 80 0 0
22 DEPART 80 0 0
23 DEPART 80 0 0
24 ADVANCE 80 0 0
25 RELEASE 80 0 0
26 QUEUE 80 0 0
27 QUEUE 80 61 0
28 SEIZE 19 0 0
29 DEPART 19 0 0
30 DEPART 19 0 0
31 ADVANCE 19 0 0
32 RELEASE 19 15 0
33 SEIZE 4 0 0
34 ADVANCE 4 1 0
35 RELEASE 3 0 0
RRR 36 ENTER 8 0 0
37 ADVANCE 8 0 0
38 LEAVE 8 0 0
39 TERMINATE 8 0 0
40 GENERATE 1 0 0
41 TERMINATE 1 0 0
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
PK 270 0.613 89.834 1 0 0 0 0 0
BIB 117 0.990 335.154 1 124 0 0 0 153
PRO 4 0.375 3713.760 1 87 0 0 0 15
QUEUE MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY
OC1 2 0 270 176 0.105 15.328 44.026 0
OC2 153 153 270 2 60.764 8911.992 8978.499 0
OC4 1 0 80 35 0.048 23.555 41.875 0
OC3 61 61 80 0 21.537 10660.731 10660.731 0
STORAGE CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY
EEE 25 24 0 3 121 1 0.634 0.025 0 0
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
292 0 39613.734 292 14 15
293 0 39644.143 293 0 1
294 0 39691.108 294 0 17
124 0 39710.866 124 11 12
87 0 41682.278 87 34 35
295 0 79200.000 295 0 40
4. среднее время, проведенное дипломниками в очередях = 10702.606 сек
14. максимальное число дипломников, одновременно стоящих в очередях =62
4
Автор
EscapadO
Документ
Категория
Без категории
Просмотров
247
Размер файла
173 Кб
Теги
лаба
1/--страниц
Пожаловаться на содержимое документа