МОДЕЛИРОВАНИЕ ОДНОКАНАЛЬНЫХ СИСТЕМ МАССОВОГО ОБСЛУЖИВАНИЯ. 

Структура модели. Понятие транзакта.

Дальнейшее изложение материала будет ориентировано на одну из наиболее популярных систем имитационного моделирования GPSS(General Purpors Simulation System -системы имитационного моделирования общего назначения). Эта система является интерпретатором, т.е. сочетает перевод текста модели с его выполнением.


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

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

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

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

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

Когда начинается моделирование, в интерпретаторе планируется приход первого транзакта. После этого таймер модельного времени устанавливается в значение времени, соответствующее приходу первого транзакта. Этот транзакт (а также другие, если они приходят в тот же моменте времени) входит в модель. Далее он (или они, друг за другом) продвигается через все возможные блоки модели, которые ему встречаются. Интерпретатор GPSS продвигает далее значение таймера до значения времени, когда происходит следующее (или следующие) событие, которое им запланировано. Эти события, возникающие как следствие продвижения транзактов через блоки, возникают в последующие моменты времени. Когда в этот второй отмеченный таймером момент времени не остается транзакта, который надо перемещать, таймер опять продвигается, и т.д.

Отметим следующие важные особенности GPSS и его таймера:

В блок-схеме модели каждый блок занимает вполне определенное место. Глаголы, описывающие основные функциональные назначения блоков. Каждый из блоков характеризуется своим собственным предписанным ему глаголом, например, GENERATE (ГЕНЕРИРОВАТЬ), LEAVE (ВЫЙТИ) и т.п. Блоки могут содержать различные связанные с ним операнды. Операнды блоков задают информацию, специфичную для действия данного. Под значениями операндов могут подразумеваться значения аргументов, используемых при обращениях к подпрограммам. Число операндов зависит от типа блока. Одни операнды некоторых блоков должны быть специфицированы всегда, а другие могут задаваться или не задаваться. В некоторых случаях, когда операнды, задаваемые по выбору, в явном виде не заданы, интерпретатор предполагает значения этих операндов заданными по умолчанию. 

 

        
Hosted by uCoz