Создание и исследование имитационной модели системы массового обслуживания

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    361,17 Кб
  • Опубликовано:
    2013-12-25
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Создание и исследование имитационной модели системы массового обслуживания


Курсовая работа

Создание и исследование имитационной модели системы массового обслуживания


Задание

На станцию технического обслуживания согласно закону Эрланга второго порядка со средним временем прибытия 14 мин прибывают автомобили для технического обслуживания (36% автомобилей) и ремонта (64% автомобилей). На станции есть два бокса для технического обслуживания и три бокса для ремонта. Выполнение простого, средней сложности и сложного ремонтов - равновероятно. Время и стоимость выполнения работ по техническому обслуживанию и ремонту зависит от категории выполняемых работ. После технического обслуживания 12% автомобилей поступают для выполнения ремонта средней сложности.

Построить гистограмму времени обслуживания автомобилей. Оценить выручку СТО за пять дней работы.




Введение

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

Использование системы моделирования GPSS World не только значительно ускоряет процесс моделирования и исследования самых разнообразных систем массового обслуживания и непрерывных процессов, но и позволяет проводить оптимизационные эксперименты.

В данной работе будет рассмотрен процесс создания и исследования имитационной модели системы массового обслуживания, реализованной в среде моделирования GPSS World. Будет проведена серия экспериментов, ориентированных на поиск оптимальных значений переменных, а также будут предоставлен анализ результатов, листинг кода программы модели, отчет о результатах моделирования.

Целью данной курсовой работы является создание и исследование имитационной модели массового обслуживания. В первой главе рассмотрены теоретические сведения о моделировании систем. Во второй главе содержится практическая часть, разобран алгоритм построения имитационной модели для конкретной задачи.


1. Имитационное моделирование

1.1    Функциональная структура GPSS

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

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

верхний уровень, определяемый комбинацией функциональных основных объектов: устройств, памятей, ключей, очередей;

средний уровень, представляемый схемой из типовых блоков, между которыми перемещаются транзакты;

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

Транзакты. Функционирование объекта отображается в модели в виде перемещения транзактов от блока GENERATE в блок TERMINATE через промежуточные блоки. Транзакты, или сообщения являются абстрактными подвижными элементами, которые могут моделировать различные объекты реального мира: сообщения, программы, транспортные средства, людей и т.п. Перемещаясь между блоками модели, транзакты вызывают (и испытывают) различные действия. Возможны их задержки в некоторых точках модели, изменения маршрутов и направлений движения, расщепление транзактов на несколько копий и т.п. С каждым транзактом связан упорядоченный набор данных. Он включает номер транзакта; номер блока, в котором в данный момент находится транзакт; номер следующего блока; время перехода в следующий блок; приоритет, характеризующий очередность обработки транзактов в определенных случаях; а также набор параметров, с помощью которых каждому транзакту можно присвоить числовые значения, выражающие желаемые свойства или характеристики моделируемых объектов: вес, скорость, объем, цвет, время обработки и т.п.

Блоки, влияющие на атрибуты транзактов и на их движение в модели. В GPSS/PC существует ряд блоков, с помощью которых можно изменить значение параметров транзактов. Блок ASSIGN модифицирует значение параметра транзакта, входящего в этот блок. Блок INDEX изменяет значение параметра номер 1. Блок INCREMENT увеличивает значение параметра, блок DECREMENT уменьшает величину параметра.

Блок MARK записывает в указанный им параметр текущее значение таймера абсолютного времени или, если параметр не указан, заменяет значение отметки времени на текущее значение таймера.

С помощью блока USING осуществляется доступ текущего транзакта к параметрам другого транзакта модели. Блок LOCATE определяет и записывает в параметр текущего транзакта номер блока, в который должен войти определенный транзакт. Пересылка транзакта в требуемую точку модели осуществляется блоком TRANSFER. Блок ТЕSТ проверяя выполнение определенного условия, может также направлять транзакты в заданную точку модели, если условие не выполняется. В этом его действия аналогичны блоку GATE. Для организации в модели циклов используют блок LOOP, с помощью которого можно предусмотреть многократное прохождение транзактом заданной цепочки блоков. Изменение приоритета транзакта осуществляет блок PRIORITY. Блок BUFFER возобновляет просмотр списка текущих событий и используется, как правило, в качестве режима блока PRIORITY. С помощью блоков TRACE и UNTRACE осуществляют трассировку движения транзактов в модели.

Памяти. Памяти служат для моделирования объектов, обладающих определенной емкостью. Памяти моделируются блоками ENTER и LEAVE. Входящий в блок ENTER транзакт занимает определенную часть памяти. При входе транзакта в блок LEAVE память освобождается. Емкость памяти задают с помощью оператора STORAGE, который не является блоком GPSS и относится к числу служебных карт.

Очереди. Транзакты в процессе движения могут задерживаться перед блоками, вход в которые в данных условиях невозможен. При поступлении транзактов на вход задерживающих блоков образуются очереди. Для сбора статистики об очередях в местах задержки ставят блоки QUEUE. Эти блоки сами по себе не создают очередь, а лишь являются средством ее регистрации. При входе транзакта в блок QUEUE текущая длина очереди получает приращение. Уход из очереди отображается блоком DEPART.

Таблицы. Для сбора статистических данных о различных отчетах модели и их представления в стандартной табличной форме используют таблицы. Занесение информации в таблицу осуществляется блоком TABULATE в момент входа очередного транзакта в этот блок. описание структуры таблицы и типа заносимых данных (СЧА) осуществляется картой TABLE.

Ячейки. Для записи в процессе моделирования текущих значений СЧА используют ячейки. Занесение информации в ячейку осуществляет блок SAVEVALUE. При входе транзакта в этот блок требуемое значение СЧА фиксируется в ячейке, номер которой определяется операндом блока SAVEVALUE. Ячейки имеют различные форматы (слово, полуслово, с плавающей точкой). Изменение содержимого ячеек может осуществляться блоками SDECREMENT и SINCREMENT. Блок SDECREMENT вычитает заданное значение из величины, содержащейся в ячейке. Блок SINCREMENT добавляет требуемое приращение к содержимому ячейки.

Функции и переменные. Функции служат для отображения зависимостей между двумя СЧА. В GPSS/PC имеется два типа функций: непрерывные (С) и дискретные (D). Функцию задают набором пар точек - координат. Непрерывная функция воспроизводится в виде ломаной кривой, отрезки которой соединяют соседние точечные значения. Дискретная функция имеет вид ступенчатой кривой.

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

Список будущих событий содержит транзакты, которые смогут начать движение в модели в будущие моменты времени. Это те транзакты, для которых моменты начала движения определены в блоках GENERATE и ADVANCE.

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

Захват и освобождение устройства моделируются соответственно блоками SEIZE и RELEASE. Для проверки состояния устройств используют GATE. Прерывание моделирует блок PREEMPT, снятие прерывания - блок RETURN.

1.2    Системы массового обслуживания

Под системой массового обслуживания понимается абстрактный объект, который выполняет последовательность операций и который включает в себя совокупность приборов обслуживания, которые связаны в определенном логическом порядке. В соответствии с этой логикой происходит движение материальных носителей - заявок на обслуживание. Структура системы массового обслуживания представлена на рисунке 1.1.

Рис. 1.1. Структура системы массового обслуживания

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

Постоянно поступающие заявки на обслуживание образуют поток заявок - совокупность заявок, распределенную во времени. Поток заявок может быть однородным (с точки зрения обслуживания все заявки равноправны) и неоднородным. Основным параметром потока заявок является промежуток времени между моментами поступления двух соседних заявок. Поток заявок может быть стационарныминестационарным (изменяться во времени).

Поток заявок рассматривается как случайный процесс, характеризующийся функцией распределения периода поступления заявок (например, простейший поток, поток Эрланга).

Элемент системы, в котором происходят операции, называется обслуживающим устройством. В момент выполнения операций оно занято, в противном случае - свободно. Если обслуживающее устройство свободно, то заявка принимается к обслуживанию.

Обслуживание каждой заявки каналом означает задержку в нем заявки на время, равное периоду обслуживания. После обслуживания заявка покидает прибор обслуживания. Таким образом, обслуживающее устройствохарактеризуется временем обслуживания заявки. При случайном характере поступления заявок образуются очереди.

Существуют алгоритмы, по которым заявки принимаются к обслуживанию, например:

-       в порядке очереди (FIFO, очереди с приоритетами и др.),

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

Реальный процесс функционирования систем массового обслуживания следует представлять в виде последовательности фаз обслуживания, выполняемых различными устройствами. Примеры многофазного обслуживания: обслуживание покупателей в магазине (прилавок, касса); производственно-технологический процесс (обработка деталей на станках) и т.п. Причем эти многофазные системы могут иметь сложную структуру (стохастические сети), как показано на рисунке1.2.

Рис. 1.2. Стохастическая сеть


Обслуженная заявка покидает прибор обслуживания и покидает систему (поглотитель заявок), либо движется дальше в соответствии с технологической схемой работы системы.

Различают следующие типы систем массового обслуживания:

-       одноканальные и многоканальные (по количеству каналов);

-       с ожиданием и без ожидания (с отказами);

-       с ограничением на длину очереди (или с ограниченным ожиданием) и без ограничения;

-       с упорядоченной очередью и с неупорядоченной очередью;

-       с приоритетами и без приоритетов и др.

Модель системы массового обслуживания разрабатывается и реализуется с целью оценить определенные показатели качества. Приведем основные показатели качества обслуживания:

-       общее количество обслуженных заявок, за какой-либо промежуток времени;

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

-       доля обслуженных заявок;

-       доля заявок, получивших отказ;

-       время пребывания заявки в системе (от момента поступления заявки в систему до момента завершения ее обслуживания);

-       среднее время обслуживания (функция распределения времени обслуживания);

-       средняя длина очереди;

-       среднее время ожидания;

-       загрузка каналов или коэффициент использования каналов (доля времени, в течение которого обслуживающее устройство было занято; характеризует степень простоя обслуживающего устройства).

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

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


2. Реализация модели

Описанная в данной курсовой работе модель, представляет собой имитацию работы СТО по обслуживанию автомобилей. Моделирование происходит в течении 5 рабочих дней с перерывами. Автомобили прибывают в среднем каждые 14 минут. Автомобили делается на 2 категории. Одна на тех. обслуживание 36%, другая на ремонт 64%. Для технического обслуживания работает два бокса, после чего 12% процентов поступает на ремонт в боксы ремонта, которые делятся на категории сложности. В боксы ремонта автомобили поступают равновероятно. Ниже представлена блок-схема.

Рис. 2.1 Блок-схема

Листинг кода:

       FUNCTION RN1, C24

,0/.100.104/.200.222/.300.355/.400.509

.690/.600.915/. 700,1.200/. 750,1.380

,1.600/. 840,1.830/. 880,2.120/. 900,2.300

,2.520/. 940,2.810/. 950,2.990/. 960,3.200

,3.500/. 980,3.900/. 990,4.600/. 995,5.300

,6.200/. 999,7/1,8

FUNCTION RN1, D3

,1/. 66,2/1,3

       , 1            ADVANCE        7, FN$EXPDIS 7, FN$EXPDIS1, SDFG

.36, ll_remont, ll_to

_to assign time, (uniform (1,10,55))cost, (uniform (2,100,400))toP$timeto.12, ll_summing, ll_remont_middle

_remont assign type, FN$RASPe P$type, 1, ll_test2time, (uniform (4,12,45))cost, (uniform (5,50,450)), ll_enter

_test2 test e P$type, 2, ll_remont_hard_remont_middle assign time, (Normal (6,45,5))cost, (uniform (7,100,1400)), ll_enter_remont_hard assign time, (uniform (8,50,150))cost, (uniform (9,350,2550)), ll_enter_enter enter remontP$timeremont_summing savevalue sum+, P$costt_time72001

start 1

Отчет:TIME END TIME BLOCKS FACILITIES STORAGES

.000 7200.000 31 0 2

VALUE10007.00010003.000_ENTER 24.000_REMONT 12.000_REMONT_HARD 21.000_REMONT_MIDDLE 18.000_SUMMING 27.000_TEST2 17.000_TO 6.00010004.00010001.0002.00010008.00010006.00010000.00010005.000_TIME 10002.000

LOC BLOCK TYPE ENTRY COUNT CURRENT COUNT RETRY

GENERATE 1 0 02 ADVANCE 493 0 0

ADVANCE 493 1 0

SPLIT 492 0 0

TRANSFER 492 0 0_TO 6 ASSIGN 187 0 0

ASSIGN 187 0 0

ENTER 187 0 0

ADVANCE 187 1 0

LEAVE 186 0 0

TRANSFER 186 0 0_REMONT 12 ASSIGN 305 0 0

TEST 305 0 0

ASSIGN 102 0 0

ASSIGN 102 0 0

TRANSFER 102 0 0_TEST2 17 TEST 203 0 0_REMONT_MIDDLE 18 ASSIGN 125 0 0

ASSIGN 125 0 0

TRANSFER 125 0 0_REMONT_HARD 21 ASSIGN 101 0 0

ASSIGN 101 0 0

TRANSFER 101 0 0_ENTER 24 ENTER 328 0 0

ADVANCE 328 1 0

LEAVE 327 0 0_SUMMING 27 SAVEVALUE 490 0 0

TABULATE 490 0 0

TERMINATE 490 0 0

GENERATE 1 0 0

TERMINATE 1 0 0

CAP. REM. MIN. MAX. ENTRIES AVL. AVE.C. UTIL. RETRY DELAY2 1 0 2 187 1 0.834 0.417 0 03 2 0 3 328 1 2.507 0.836 0 0

MEAN STD.DEV. RANGE RETRY FREQUENCY CUM.%_TIME 47.549 30.048 0

.000 - 11.000 4 0.82

.000 - 21.000 60 13.06

.000 - 31.000 65 26.33

.000 - 41.000 105 47.76

.000 - 51.000 131 74.49

.000 - 61.000 38 82.24

.000 - 71.000 15 85.31

.000 - 81.000 12 87.76

.000 - 91.000 10 89.80

.000 - 101.000 10 91.84

.000 - 111.000 6 93.06

.000 - 121.000 5 94.08

.000 - 131.000 12 96.53

.000 - 141.000 7 97.96

.000 - 151.000 10 100.00

RETRY VALUE0 304957.798

XN PRI BDT ASSEM CURRENT NEXT PARAMETER VALUE

0 7214.399 1 9 1040.046259.086

0 7230.841 1 3 4

0 7325.886 1 25 26140.7291988.4393.000

495 0 14400.000 495 0 30

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

Из отчета видно, что на этапе подготовки двигателя было задействовано 0.614 процентов мощности, подготовки насоса 0.579 процентов, подготовки фундамента 0.316.

Так же была построена гистограмма.


Рис. 2.2 Гистограмма


В ходе данной курсовой работы была разработана и выполнена имитационная модель работы по сборке насосов средствами GPSS World. Данная модель отображает процесс работы СТО по ремонту автомобилей и техническому обслуживанию. Данная модель позволяет оценить работу СТО в течении пяти рабочих дней.

После того, как полученная модель была исследована и проанализирована, была выявлена взаимосвязь и факт влияния интервалов поступления транзактов на эффективность работы системы. Главной целью созданной модели было оценить выручку СТО за пять дней работы.


Библиографический список

программа моделирование дискретный листинг

1. Елизарова Ю.М., Тихонова Н.А. Создание имитационных моделей в системе GPSS WORLD. Учебное пособие. - Издательство ОмГТУ, 2011. - 104 с.

.   Томашевский В., Жданова E. Имитационное моделирование в среде GPSS. - М.: Бестселлер, 2003. - 416 c.

3.      Система GPSSWorld. [Электронный ресурс] http://www.elina-computer.ru/pakgpss.htm, Режим доступа: свободный. Дата считывания информации: 21.05.2012.

Похожие работы на - Создание и исследование имитационной модели системы массового обслуживания

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!