Создание имитационной модели процесса




ЛАБОРАТОРНАЯ РАБОТА №10.

Основы моделирования в системе GPSSW

Система массового обслуживания – это совокупность последовательно связанных между собой входящих потоков требований на обслуживание (машин, самолетов, пользователей и т.д.), накопителей, очередей, каналов обслуживания (станций техобслуживания, аэродромов, ЭВМ и т.д.) и выходящих потоков требований после обслуживания.

Входящий поток требований – это последовательность входящих требований, нуждающихся в обслуживании в системе и подчиняющихся определенному закону.

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

Требование (транзакт) – это объект, поступающий в систему и нуждающийся в определенном обслуживании в данной системе. Требование является активным элементом в моделируемой системе. Под требованием можно понимать сообщение, машину, изделие, информацию, пользователя и т.д. Требование в системе GPSSW – это объект с набором определенных признаков, который определяется уникальным номером. Объекты нумеруются последовательно, начиная с номера 1.

Канал обслуживания – устройство, в котором выполняется обслуживание требования. Основным параметром канала обслуживания является время обслуживания, которое, как правило, является случайной величиной.

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

Имитационная модель

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

Имитационная модель СМО – это модель, отражающая поведение системы

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

Параметры входных потоков требований – внешние параметры СМО.

Выходными параметрами являются величины, характеризующие свойства системы – качество ее функционирования, – например такие, как:

• коэффициенты использования каналов обслуживания;

• максимальная и средняя длина очередей в системе;

• время нахождения требований в очередях и каналах обслуживания и т.д.

Имитационное моделирование – это численный метод определения параметров функционирования самых различных систем по многочисленным реализациям с учетом вероятностного характера протекания процесса.

Основой имитационного моделирования является метод статистических испытаний – метод Монте-Карло. Этот метод наиболее эффективен при исследовании сложных систем, на функционирование которых оказывают существенное влияние случайные факторы.

 

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

 

Модель в системе GPSSW – это последовательность операторов моделирования. Оператор моделирования может быть или оператором GPSS, или процедурой языка PLUS (Programming Language Under Simulation – Язык программирования для моделирования).

Моделирование работы магазина

Постановка задачи

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

• поток покупателей (требований), приходящих в магазин за покупками, равномерный;

интервал времени прибытия покупателей колеблется в пределах от 8,7 до

10,3 мин включительно, или 9,5±0,8 мин;

• время пребывания покупателей у кассового аппарата составляет 2,3±0,7 мин.

 

После этого покупатели подходят к продавцу для получения товара;

время, потраченное на обслуживание покупателей продавцом, составляет

10±1,4 мин.

 

Требуется определить параметры функционирования магазина:

• коэффициент загрузки кассира;

• коэффициент загрузки продавца;

• максимальное, среднее и текущее число покупателей в каждой очереди;

• среднее время обслуживания в каждом канале обслуживания;

• среднее время нахождения покупателя в каждой очереди и др.

 

Создание имитационной модели процесса

Создание имитационной модели начнем с построения заголовка модели, который может быть представлен, например, в таком виде:

 

; GPSSW File MAGAZIN.GPS

****************************************

* Моделирование работы магазина *

****************************************

 

Моделирование потока покупателей будем выполнять с помощью оператора GENERATE (Генерировать). В нашем примере он будет выглядеть так:

 

t_prod QTABLE Ocher_prod,0,2,32

GENERATE 9.5,0.8

 

Покупатель, пришедший в магазин, сначала встает в очередь к кассиру, если она есть. Это можно промоделировать оператором QUEUE (Очередь), который только в совокупности с соответствующим оператором DEPART (Выйти) собирает статистическую информацию о работе моделируемой очереди.

В нашем примере оператор QUEUE будет выглядеть так:

 

QUEUE Ocher_kassa

 

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

 

Следуя логике, покупатель может выйти из очереди только тогда, когда освободится кассир (канал обслуживания). Для этого вводится оператор SEIZE, который определяет занятость канала обслуживания, и при его освобождении очередное требование выходит из очереди и идет в канал на обслуживание. Это может выглядеть так:

 

SEIZE Kassir

 

Выход покупателя из очереди в кассу фиксируется оператором DEPART с соответствующим названием очереди. В нашем примере это будет выглядеть так:

 

DEPART Ocher_kassa

 

Далее должно быть промоделировано время пребывания покупателя, непосредственно обслуживаемого кассиром. Это время в нашем примере составляет 2,3±0,7 мин. Для моделирования этого процесса используется оператор ADVANCE (Задержать), который в нашей задаче будет выглядеть так:

 

ADVANCE 2.3,0.7

 

После обслуживания кассиром покупатель отправляется к продавцу за получением оплаченного товара. Однако перед этим системе должно быть послано сообщение об освобождении канала обслуживания. Это делается с помощью оператора RELEASE, который в нашей задаче записывается так:

 

RELEASE Kassir

 

Следует особо подчеркнуть, что парные операторы QUEUE и DEPART для каждой очереди должны иметь одно и то же, но свое уникальное имя. Это же относится и к операторам SEIZE и RELEASE.

После обслуживания в кассе покупатель направляется к продавцу – следующему каналу обслуживания. Процесс моделирования этой цепи аналогичен только что описанному. И в нашем примере он может быть представлен, например, в таком виде:

 

QUEUE Ocher_prod

SEIZE Prodavec

DEPART Ocher_prod

ADVANCE 10,1.4

RELEASE Prodavec

 

После обслуживания продавцом (каналом обслуживания) покупатель (требование) покидает систему. Это действие может быть представлено оператором TERMINATE (Завершить):

 

TERMINATE 1

 

В поле операнда А стоит число 1. Это означает, что систему обслуживания – магазин – покупатели покидают по одному. Завершающим оператором в нашей задаче является управляющая команда START (Начать), позволяющая начать моделирование:

 

START 100

 

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


; GPSSW File MAGAZIN.GPS

****************************************

* Моделирование работы магазина *

****************************************



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-04-27 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: