logo
Обработка данных / Томашевский_Имитационное моделирование в среде GPSS_2003

4.2. Часы модельного времени

Разные события реальных систем происходят в течение некото­рого периода времени. Например, покупатели приходят в магазин, когда подходит их очередь, они попадают на обслуживание. Когда покупки сделаны, покупатели покидают магазин. Если все эти собы­тия представить в модели, то их возникновение должно происходить на фоне модельного времени. Интерпретатор автоматически обслуживает ЧАСЫ модельного времени.

В момент начала моделирования интерпретатор планирует по­явление первого транзакта. После этого ЧАСЫ модельного времени устанавливаются на значение времени, которое соответствует момен­ту появления первого транзакта в модели. Этот транзакт (и другие, если они приходят в этот же момент времени) входит в модель. Далее он передвигается через все возможные блоки модели, которые ему встречаются. События, которые возникают вследствие перемещения транзакта через блоки, планируются на дальнейшие моменты време­ни. Естественно, что в этот первый отмеченный момент времени ни­чего больше в системе не происходит. Интерпретатор GPSS продвигает дальше значения ЧАСОВ к тому значению времени, на которое запланировано следующее ближайшее событие. Если во второй, от­меченный ЧАСАМИ момент времени, нет транзактов, которые нужно перемещать. ЧАСЫ снова продвигаются вперед и т.д. Именно так, от события к событию, и происходит смена модельного времени.

Особенности ЧАСОВ GPSS:

1. ЧАСЫ в GPSS регистрируют целые значения (за исключени­ем языкаGPSS World, где время может иметь действительные значе­ния), то есть события могут появляться только в целые моменты времени. Это сделано с целью ускорения процесса моделирования, по­скольку целочисленная арифметика выполняется процессором ЭВМ быстрее и требует меньше памяти.

2. Единица модельного времени определяется разработчиком. Эту единицу времени интерпретатору не сообщают. Значение приня­той единицы модельного времени выражают в неявном виде в форме временных данных модели. Так, если все данные выражены в мину­тах, то единицей времени будет минута, то есть масштаб времени в модели будет такой: одна единица модельного времени равна одной минуте реального времени. Если все данные выражены в миллисе­кундах, то единицей модельного времени будет миллисекунда. Разра­ботчик может задавать такую единицу времени, которая ему удобна для того, чтобы правильно отобразить события реальной системы в модели.

3. Система GPSS является интерпретатором «следующего собы­тия». Иначе говоря, после того, как модель полностью скорректиро­вана в данный момент дискретно изменяющегося времени, ЧАСЫ перемещаются к следующему моменту времени, на который заплани­ровано следующее событие. Таким образом, ЧАСЫ модельного вре­мени продвигаются от одного события к другому.