Автор работы: Пользователь скрыл имя, 20 Января 2014 в 16:35, курсовая работа
Формальное описание процессов в виде системы массового обслуживания широко применяется в самых различных областях науки и практики. Теоретической базой построения и исследования СМО является теория массового обслуживания (ТМО). Теория массового обслуживания – это область прикладной математики, занимающаяся анализом процессов в СМО, в которых события повторяются многократно. С помощью этой теории разрабатываются методы решения типовых задач массового обслуживания, строятся модели СМО и определяются их количественные характеристики.
Введение………………………………………………………………...…..2
Глава I. Теоретические основы имитационного моделирования систем с приоритетным обслуживанием и отказами……………………………………3
1.1. Методика определения приоритетов обслуживания заявок……......3
1.2. Одноканальные СМО с неоднородным потоком заявок…................7
1.2.1. Характеристики и свойства ДО БП……………………………..9
1.2.2. Характеристик и свойства ДО ОП……………………………...11
1.2.3. Характеристики и свойства ДО АП……………………………..14
1.3. Система массового обслуживания с отказами ………........................16
1.4. Особенности имитационного моделирования систем массового обслуживания……………………………………………………………………19
Глава II. Построение имитационной модели на языке GPSS World.…….26
2.1. Постановка задачи………………………………………………......... 26
2.2. Функциональная схема..........................................................................27
2.3 Создание ИМ на языке GPSS…………………………………………28
2.4. Анализ результатов моделирования…………………………………32
Заключение…………………………………………………………………35
Список литературы …………………………………………………….….36
Приложение 1…………………………………………………..…………..37
Приложение 2………………………………………………………………38
Рис.1.Структурная схема.
Для описания СМО, как непрерывно-стохастических процессов, используют Q-схемы, отражающие элементы и структуру СМО. В соответствии с построенной моделью и символикой Q–схем структурную схему данной СМО (рисунок 1) можно представить в виде, показанном на рис. 2.
Рис.2. - Q-схема моделируемой СМО.
2.3. Создание ИМ на языке GPSS.
Программа, реализующая алгоритм, создана в среде GPSS. Листинг программы приводится в приложении 1. В ходе создания имитационной модели в среде GPSS были использованы следующие блоки: - Generate; - Gate; - Seize и Release; - Advance; - Terminate; - Transfer; - Start. Блок GENERATE Блок GENERATE (генерировать) служит для создания транзактов, входящих в модель. Он имеет следующий формат: имя GENERATEA,B,C,D,E. В поле A задается среднее значение интервала времени между моментами поступления в модель двух последовательных транзактов. Если этот интервал постоянен, то поле B не используется. Если же интервал поступления является случайной величиной, то в поле B указывается модификатор среднего значения, который может быть задан в виде модификатора-интервала или модификатора-функции. Модификатор-интервал используется, когда интервал поступления транзактов является случайной величиной с равномерным законом распределения вероятностей. В этом случае в поле B может быть задан любой СЧА, кроме ссылки на функцию, а диапазон изменения интервала поступления имеет границы A-B, A+B. В данной задаче блок использован в следующих форматах: - Generate 10, 5,,, 2 – через каждые 10±2 минуты выруливают самолеты для взлета с приоритетом 2. -Generate 10,2,,,1 - показывает, что самолеты прибывают каждые 10±5 минут с приоритетом 1. . Блок GATE Блок GATE (впустить) служит для задержки или изменения маршрутатранзактов в зависимости от состояния аппаратных объектов. Блок имеет следующий формат:
имя GATEXA,B
Вспомогательный операнд
X содержит код состояния проверяемого
аппаратного объекта, а в поле A указывается
имя или номер этого объекта. Если проверяемый
объект находится в заданном состоянии,
то блок GATE пропускает транзакт к следующему
блоку. Если же заданное в блоке условие
не выполняется, то транзакт переходит
к блоку, указанному в поле B, а если это
поле пусто, то задерживается перед блоком
GATE. Блоки Seize и Release. Одноканальные
устройства создаются в текущей модели
при использовании блоков SEIZE (занять)
и RELEASE (освободить), имеющих следующий
формат: имя SEIZE A имя RELEASE A. В поле A указывается
номер или имя устройства. Если транзакт
входит в блок SEIZE, то устройство, указанное
в поле A, становится занятым и остаётся
в этом состоянии до тех пор, пока этот
же транзакт не пройдёт соответствующий
блок RELEASE, освобождая устройство. Если
устройство, указанное в поле A блока SEIZE,
уже занято каким-либо транзактом, то никакой
другой транзакт не может войти в этот
блок, и остаётся в предыдущем блоке. Транзакты,
задержанные (заблокированные) перед блоком
SEIZE, остаются в списке текущих событий
и при освобождении устройства обрабатываются
с учетом приоритетов и очередности поступления.
Каждое устройство имеет следующие СЧА:
- F - состояние устройства (0 - свободно,1
- занято); - FR - коэффициент использования
в долях 1000; - FC - число занятий устройства;
FT - целая часть среднего времени занятия
устройства. Блок ADVANCE. Для
задержки транзактов на определенный
отрезок модельного времени, служит блок
ADVANCE (задержать), имеющий следующий формат: имя ADVANCE A,B Операнды
в полях A и B имеют тот же смысл, что и в
соответствующих полях блока GENERATE. Следует
отметить, что транзакты, входящие в блок
ADVANCE, переводятся из списка текущих событий
в список будущих событий, а по истечении
вычисленного времени задержки возвращаются
назад, в список текущих событий, и их продвижение
по блок-схеме продолжается. Если вычисленное
время задержки равно 0, то транзакт в тот
же момент модельного времени переходит
в следующий блок, оставаясь в списке текущих
событий. Только блоки GENERATE и ADVANCE позволяют
поместить транзакты в список будущих
событий. С помощью этих блоков моделируется
продолжительность какого-либо события
или промежуток времени между наступлениями
каких-либо событий. Согласно условиям
задачи, самолеты занимают полосу 2 минуты,
то есть Advance 2. В случае, когда самолет
делает повторный круг, операнд А равен
4. Блок TERMINATE Блок
TERMINATE (завершить) служит для удаления
транзактов из модели, и имеет следующий
формат: имя TERMINATEA Значение поля
A указывает, на сколько единиц уменьшается
содержимое так называемого счетчика
завершений при входе транзакта в данный
блок TERMINATE. Если поле A не определено, то
оно считается равным 0, и транзакты, проходящие
через такой блок, не уменьшают содержимого
счетчика завершений. Начальное значение
счетчика завершений устанавливается
управляющим оператором START (начать), предназначенным
для запуска прогона модели. Поле A этого
оператора содержит начальное значение
счетчика завершений. Прогон модели заканчивается,
когда содержимое счетчика завершений
обращается в 0. Таким образом, в модели
должен быть хотя бы один блок TERMINATE с непустым
полем A, иначе процесс моделирования никогда
не завершится. Блок TRANSFER. Блок
TRANSFER имеет следующий формат: TRANSFER [<A>],[<B>],[<C>],[<D>] Б
2.4. Анализ результатов моделирования.
Согласно стандартному отчету GPSS World (Приложение 2) была смоделирована работа аэропорта на протяжении 1440 минут (сутки). Из отчета можно сделать выводы: количество самолетов 287, общее количество приземлившихся самолётов равно 144, взлетевших самолетов равно 143, а коэффициент загрузки полосы равен 0,399.
Элементы стандартного отчета.
Строка заголовка стандартного отчета содержит имя файла модели, который создал отчет. Также в нее включена дата и время прогона модели.
GPSS World Simulation Report - Untitled Model 1.2.1
Wednesday, December 26, 2012 17:50:37
Общая информация о результатах работы модели
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 1440.000 18 1 0
START TIME — начальное время. Абсолютное
модельное время в момент
END TIME — конечное время. Абсолютное
модельное время, когда
BLOCKS — количество блоков, использованных в текущей модели, к момент завершения моделирования;
FACILITIES — количество устройств, использованных в модели, к моменту завершения моделирования;
STORAGES - количество многоканальных
устройств, использованных в
Информация об именах
Файл статистики содержит информацию об именах, которые просматривает GPSS в ходе моделирования
NAME VALUE
POLOSA 10000.000
SVOBODNO 7.000
ULET 16.000
ZANAT 12.000
NAME - перечень заданных
VALUE - числовое значение, присваиваемое имени Система начинает отсчет с 10000;
Информация о блоках.
LABEL LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY
1 GENERATE 143 0 0
2 SEIZE 143 0 0
3 ADVANCE 143 0 0
4 RELEASE 143 0 0
5 TERMINATE 143 0 0
6 GENERATE 144 0 0
SVOBODNO 7 GATE 181 0 0
8 SEIZE 144 0 0
9 ADVANCE 144 0 0
10 RELEASE 144 0 0
11 TERMINATE 144 0 0
ZANAT 12 ASSIGN 37 0 0
13 TEST 37 0 0
14 ADVANCE 37 0 0
15 TRANSFER 37 0 0
ULET 16 TERMINATE 0 0 0
17 GENERATE 1 0 0
18 TERMINATE 1 0 0
LABEL - метка, алфавитно-цифровое имя данного блока (если оно задано),
LOC - числовой номер позиции данного блока в модели;
BLOCK TYPE - тип блока GPSS;
ENTRY COUNT - количество транзактов, вошедших в данный блок, с начала работы программы или после последнего выполнений оператора RESET или CLEAR;
CURRENT COUNT - количество транзактов, находящихся в данном блоке к моменту завершения моделирования;
RETRY - количество транзактов, ожидающих специального условия, зависящего от состояние этого блока.
Информация об объектах типа «устройство».
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
POLOSA 287 0.399 2.000 1 0 0 0 0 0
Элементы статистики, представленные в данном разделе, имеют следующее содержание:
FACILITY - имя или номер устройства;
ENTRIES — количество раз, когда
устройство было занято или
занято с прерыванием с начала
моделирования или после
UTIL. — коэффициент использования, доля времени моделирования, в течение которого устройство было занято;
AVE.TIME — среднее время занятия
устройства одним транзактом
в течение времени
AVAIL. — состояние устройства в конце моделирования (равно 1, если устройство доступно; 0 - если недоступно);
OWNER — номер транзакта, который занимает устройство (0 — устройство не занято);
PEND — количество транзактов, ожидающих
выполнения с прерыванием
INTER — количество транзактов, прерванных
на данный момент (количество
транзактов в списке
RETRY — количество транзактов, ожидающих
выполнения специального
DELAY — количество транзактов, ожидающих
занятия устройства (входят также
транзакты, ожидающие занятия
устройства в режиме
Информация о списках будущих событии
Элементы статистики для FEC, представленные в данном разделe, имеют следующее содержание:
XN — номер каждого транзакта, находящегося в списке текущих событий,
PRI — приоритет транзакта;
BDT— момент абсолютного молельного времени, когда транзакт покинет список будущих событий (породившего данный транзакт);
ASSEM — номер семейства данного транзакта;
CURRENT — номер блока, в котором находится транзакт в конце моделирования;
NEXT — номер следующего блока, в который должен был войти транзакт
PARAMETER — имя или номер параметра транзакта;
VALUE — значение параметра.
FEC XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE
289 2 1443.043 289 0 1
290 1 1446.717 290 0 6
291 0 2880.000 291 0 17
Заключение.
В данной работе были раскрыты
теоретические основы имитационного
моделирования систем с приоритетным
обслуживанием и отказами, классификация
систем массового обслуживания и
их элементов. Перечислены основные
понятия систем массового обслуживания.
По составу СМО бывают одноканальные (с
одним обслуживающим устройством) и многоканальными
(с большим числом обслуживающих устройств).
СМО делят на два основных типа: системы
с отказами и системы с ожиданием. Отказы
в СМО появляются по двум основным причинам:
либо отсрочка обслуживания для поступающих
заявок невозможна, либо в СМО отсутствуют
свободные места для ожидания (или их вообще
нет). По дисциплине очереди (т.е. по критерии
выбора из очереди очередной заявки)
СМО подразделяются на системы с приоритетом
и без приоритета. Перечислены особенности
имитационного моделирования систем массового
обслуживания
Список литературы.
ПРИЛОЖЕНИЕ 1
Листинг программы.
Generate 10,2,,,2
Seize polosa
Advance 2
Release polosa
Terminate
Generate 10,5,,,1
Svobodno Gate NU polosa,zanat
Seize polosa
Advance 2
Release polosa
Terminate
zanat Assign 1+,1
Test LE p1,5,ulet
Advance 4
Transfer,svobodno
ulet Terminate
Generate 1440
Terminate 1
Start 1
Приложение 2.
GPSS World Simulation Report - Untitled Model 1.2.1
Wednesday, December 26, 2012 17:50:37
START TIME END TIME BLOCKS FACILITIES STORAGES
0.000 1440.000 18 1 0
Информация о работе Имитационного моделирования систем с приоритетным обслуживанием и отказами