Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Моделирование систем. Практикум

.pdf
Скачиваний:
7
Добавлен:
12.11.2023
Размер:
17.79 Mб
Скачать
3.1.7,
F A C IL 2

GPSS/PC Report file REPORT.GPS. (V 2, # 37349) 06-10-2001 07:25:31 page 1

START

TIME

END

TIME

BLOCKS

FACILITIES STORAGES

FREE

MEMORY

 

0

 

586

17

 

2

 

1

83344

 

LINE

LOC

 

BLOCK_TYPE

ENTRY_COUNT

CURR£NT_COUNT

RETRY

10

1

 

GENERATE

 

100

 

0

 

0

20

2

 

GATE

 

 

100

 

0

 

0

30

3

 

ENTER

 

 

45

 

0

 

0

40

FACI LI

 

SEIZE

 

 

45

 

0

 

0

50

5

 

LEAVE

 

 

45

 

0

 

0

60

6

 

ADVANCE

 

 

45

 

0

 

0

70

7

 

RELEASE

 

 

45

 

0

 

0

80

8

 

TRANSFER

 

45

 

0

 

0

100

FACIL2

 

SEIZE

 

 

55

 

0

 

0

200

10

 

ADVANCE

 

 

55

 

0

 

0

300

11

 

RELEASE

 

 

55

 

0

 

0

400

EXIT

 

TERMINATE

 

100

 

0

 

0

500

13

 

GENERATE

 

20

 

0

 

0

510

14

 

SUNAVAIL

 

20

 

0

 

0

520

15

 

ADVANCE

 

 

20

 

1

 

0

530

16

 

SAVAIL

 

 

19

 

0

 

0

550

17

 

TERMINATE

 

19

 

0

 

0

FACILITY

ENTRIES

U T IL .

AVE._TIME

AVAILABLE

OWNER PEND

INTER RETRY DELAY

1

45

0 .9 8 9

1 2 .8 9

1

0

0

0

0

0

2

55

0 .8 4 3

 

8 .9 8

1

0

0

0

0

0

STORAGE

CAP.

REMAIN. MIN.

MAX.

ENTRIES

AVL. AVE.C.

U TIL.

RETRY DELAY

NAK

3

 

3

0

3

45

0

2 .2 7

0 .7 5 5

0

0

XACTJ3ROUP

 

GRoUP_SIZE

 

RETRY

 

 

 

 

 

POSITION

 

 

0

 

 

0

 

 

 

 

 

 

Р и с .

3.47. Стандартный отчет EXAM23.RPT

 

 

Может быть, режим доступности блока G A T E отвечает в определен­ ном смысле более действенным образом, так как блок S U N A V A IL на зна­ чительную часть времени делает накопитель недоступным и поэтому блок G A T E через поле < В > отправляет транзакты в альтернативный блок с меткой — во 2-е устройство.

Блоки GATHER, MATCH, LOGIC

Блок GATHER осуществляет накопление сообщений (транзактов), принадлежащих одному и тому же набору (ансамблю), с по­ следующей попыткой одновременной передачи их к следующему блоку. Действие блока GATHER аналогично действию блока ASSEMBLE. Отличие состоит в том, что после накопления в блоке

91

числа транзактов, указанного в поле <А>, они все передаются в следующий блок.

Блок MATCH предназначен для синхронизации продвижения двух транзактов одного ансамбля (семейства), движущихся по раз­ ным путям модели. Для синхронизации необходимы два блока MATCH, находящиеся в соответствующих местах моделирующей программы и называемые сопряженными.

Для представления в модели коммутируемых объектов исполь­ зуют логические ключи, моделируемые блоками LOGIC и GATE. Блок LOGIC устанавливает положение ключа, которое может быть проверено любым транзактом в любой части модели. Блок LOGIC используется для «включения», «выключения» или инвертирова­ ния состояния ключа. Блок GATE, в зависимости от состояния ло­ гического ключа, осуществляет управление потоком транзактов.

Пример 3.21. Смоделировать процесс прохождения 100 деталей на производственном участке сборочного цеха. На участок сборки подшип­ ников поступают обоймы и шарики с интервалом времени 25 ± 4 едини­ цы. На контроль обоймы затрачивается 4 + 1 единицы времени; контроль шариков осуществляется последовательно со временем 2 ± 1 единиц вре­ мени на шарик. Операция сборки требует одновременного поступления обоймы и всех шариков и производится со временем 4 ± 2 единицы. В од­ ной обойме должно быть 8 шариков. Все процессы подчиняются равно­ мерному закону. Решение для данного примера после представления процесса сборки в виде Q-схем ы приведено под именем EXAM24.GPS на рис. 3.48.

SIMULATE

10 GENERATE 25,4„100

20 SPLIT 8,CHAN2

30 СНАМ SEIZE 1

40 ADVANCE 4,1

50 RELEASE 1

60 TRANSFER,COMM 70CHAN2 SEIZE 2

80 ADVANCE 2,1

90 RELEASE 2

100 GATHER 8

110 COMM ASSEMBLE 9 120CHAN3 SEIZE 3

130 ADVANCE 4,2

140 RELEASE 3

150 EXIT TERMINATE 1 START 100

END

Р и с . 3.48. Программа EXAM24.GPS

92

Формат записи блока GATHER имеет вид:

100 GATHER <А>

В поле <А> задается число транзактов, принадлежащих одному се­ мейству, которое надо накопить (в программе 8 транзактов). Операнд поля <А> может быть именем, положительным целым (как в программе число 8), СЧА, СЧА с параметром (СЧА$<параметр>). При входе транзакта в блок GATHER, интерпретатор G P S S /P C просматривает семейст­ во, к которому он принадлежит, и проверяет, находится ли в данном бло­ ке GATHER другой транзакт из того же семейства. Если в блок GATHER не вошло заданное число транзактов, транзакты, находящиеся в блоке, остаются в состоянии синхронизации.

После поступления в блок GATHER 8 транзактов (8 шариков) они все выходят из блока и поступают в следующий по номеру блок — блок под номером 110 ASSEMBLE. Блок ASSEMBLE по своему функционально­ му назначению собирает 9 транзактов и отправляет в следующий по номе­ ру блок один транзакт. С помощью блока ASSEMBLE моделируется про­ цесс сборки подшипника — 8 шариков и одна обойма.

Пример 3.22. Детали на участок поступают с интервалом времени 300 ± 50 единиц, их обрабатывают двое рабочих. После завершения опе­ рации обработки, выполняемой 1-м рабочим со временем 90 единиц и 2-м со временем 60 единиц, осуществляется операция сверки, время вы­ полнения которой принимается равной нулю. Затем 3-й рабочий произ­ водит сборку изделия из этих деталей со временем 40 единиц. Сборка на­ чинается только после поступления всех деталей. Смоделировать процесс прохождения 100 деталей.

Программа решения задачи моделирования процесса прохождения деталей на участок обработки, формализованного в виде Q -схемы, для примера 3.22 представлена под именем EXAM25.GPS на рис. 3.49.

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

заметно больше

суммарного времени обработки: 300 + 50 против

90 + 60 + 40 = 190.

В программе в блоке GENERATE не используется

поле <D> с установкой числа 100. Синхронизация прохождения транзак­ тов (деталей) по модели осуществляется с помощью двух блоков MATCH. Один блок MATCH установлен как бы в 1-м устройстве, а другой — во 2-м. Транзакты (детали) не отправляются в блок ASSEMBLE (на сборку) до тех пор, пока оба устройства (оба рабочих) не закончат требуемую об­ работку. Так, с помощью блока MATCH осуществляется синхронизация продвижения транзактов по модели.

Формат записи блоков MATCH имеет вид:

50 SSS1 MATCH <А>

100 SSS2 MATCH <А>

В поле <А> блока MATCH (под номером 50 и меткой SSS1 в програм­ ме EXAM21.GPS) задается имя сопряженного блока MATCH (метка SSS2 под номером 100). Синхронизация движения транзактов осуществляется

93

SIMULATE

10 GENERATE 300,50

20 SPLIT LCHAN2

30 CHAN! SEIZE 1

40 ADVANCE 90

50 SSS1 MATCH SSS2

60 RELEASE 1

70 TRANSFER,COMM 80CHAN2 SEIZE 2

90 ADVANCE 60 100SSS2 MATCH SSSI 110 RELEASE 2

120 COMM ASSEMBLE 2

130 SEIZE 3

140 ADVANCE 40

150 RELEASE 3

200 TERMINATE 1 START 100

END

Р и с . 3.49. Программа EXAM25.GPS

путем подбора пар транзактов из одного ансамбля и задержки этих транзактов до тех пор, пока оба транзакта из одной пары не поступят в задан­ ные точки модели (в программе EXAM21.GPS это выходы уст­ ройств — блоки RELEASE под номерами 60 и 110, откуда они поступают далее на сборку в блок ASSEMBLE).

Рассмотрим пример без условия синхронизации.

Пример 3.23. Детали на участок поступают с интервалом времени 300 ± 50 единиц, их обрабатывают двое рабочих. После операции обра­ ботки, выполняемой 1-м рабочим со временем 90 единиц и 2-м рабочим со временем 60 единиц, детали отправляются на сборку к 3-му рабочему, который осуществляет сборку изделия из этих деталей со временем 40 единиц. Смоделировать процесс прохождения 100 деталей.

Программа решения процесса обработки деталей, формализованно­ го в виде Q -схемы, для примера 3.23 представлена под именем EXAM26.GPS на рис. 3.50.

Пример 3.24. На обработку в Q -схему поступает 101 заявка с интерва­ лом времени 7 ± 1 единицы. Нечетные по номеру заявки обрабатываются в 1-м канале со временем 15 единиц, четные — на 2-м канале со временем 17 единиц. Смоделировать процесс прохождения и обработки заявок в

Q -схеме.

Решение примера 3.24 приведено в программе EXAM27.GPS (рис. 3.51). Формирование потока четных и нечетных по номеру заявок осуще­ ствляется блоками LOGIC и GATE (в режиме LS).

Формат записи блока LOGIC имеет вид:

20 LOGIC <Х> <А>

94

SIMULATE

10 GENERATE 300,50

20 SPLIT 1,CHAN2

30 CHAN1 SEIZE I

40 ADVANCE 90

50 RELEASE 1

60 TRANSFER ,COMM

70 CHAN2 SEIZE 2

80 ADVANCE 60

90 RELEASE 2

100 COMM ASSEMBLE 2

110 SEIZE 3

120 ADVANCE 40

130 RELEASE 3

200 TERMINATE 1 START 100

END

Р и с . 3.50. Программа EX A M 26.G PS

SIMULATE

10 GENERATE I0,l„101

20 LOGIC I KEY1

30 GATE LS KEY1,CHAN2 40CHAN1 SEIZE 1

50 ADVANCE 15

60 RELEASE 1

70 TRANSFER,EXIT

80CHAN2 SEIZE 2

90 ADVANCE 17

100 RELEASE 2

200 EXIT TERMINATE 1 START 101

END

Р и с . 3.51. П рограмма E X A M 27.G PS

Во вспомогательном поле операций <Х> задается мнемоническое обозначение I — логический ключ под именем KEY1 инвертируется. В поле <А> задается номер или имя (в программе имя KEY1) логического ключа. Ссылка на имя ключа может происходить в любом месте програм­ мы. В поле <Х> могут быть также заданы следующие мнемонические обо­ значения:

S — логический ключ устанавливается в состояние «включен»; R — логический ключ устанавливается в состояние «выключен».

Формат записи блока GATE для проверки логических ключей имеет

вид:

30 GATE <Х> <А>.<В>

95

GPSS/PC Report file REPORT.GPS. (V 2, # 37349) 06-10-2001 07:27:35 page 1

START

TIME

END TIME

BLOCKS

FACILITIES

STORAGES

FREE_MEM0RY

 

0

2512

15

3

 

0

83840

 

LINE

LOC

BLOCK_TYPE

ENTRY_ COUNT

CURRENT_COUNT

RETRY

10

1

GENERATE

100

 

0

 

0

20

2

SPLIT

100

 

0

 

0

30

CKAN1

SEIZE

100

 

0

 

0

40

4

ADVANCE

100

 

0

 

0

50

5

RELEASE

100

 

0

 

0

60

6

TRANSFER

100

 

0

 

0

70

CHAN2

SEIZE

800

 

0

 

0

80

8

ADVANCE

800

 

0

 

0

90

9

RELEASE

BOO

 

0

 

0

100

10

GATHER

BOO

 

0

 

0

110

COMM

ASSEMBLE

900

 

0

 

0

120

CHAN3

SEIZE

100

 

0

 

0

130

13

ADVANCE

100

 

0

 

0

140

14

RELEASE

100

 

0

 

0

150

EXIT

TERMINATE

100

 

0

 

0

FACILITY

ENTRIES

U TIL.

AVE.JTIME

AVAILABLE

OWNER PEND

INTER

RETRY DELAY

1

100

0 .1 5 6

3 .9 2

1

0

0

0

0

0

2

800

0 .6 3 6

2 .0 0

1

0

0

0

0

0

3

100

0 .1 5 1

3 .8 0

1

0

0

0

0

0

XACT_GR0UP

GROUP_SIZE

RETRY

POSITION

 

0

0

 

Р и с .

3.52. Стандартный отчет EXAM24.RPT

Во вспомогательном поле <Х> задается один из следующих логиче­

ских операторов:

 

 

LS — логический

ключ, заданный в поле <А>, включен;

LR — логический

ключ,

заданный в поле <А>, выключен.

В поле <А> задается номер или имя логического ключа, состояние которого проверяется (в программе KEY1). В поле <В> задается номер блока, к которому переходит транзакт, если логический оператор вспо­ могательного поля <Х> имеет значение «ложь» (в программе устройство с меткой CHAN2). Если значение логического оператора «истина», тран­ закт переходит к следующему по номеру блоку (в устройство с меткой CHAN1 под номером 40).

Если в программе EXAM27.GPS вместо блока GATE с полем LS по­ ставить блок GATE с полем LR, то четный и нечетный потоки поменяют­ ся местами: 1-е устройство будет обслуживать четные заявки, а 2-е уст­ ройство — нечетные. Если же в поле <Х> блока LOGIC поставить S или R, то обработка всех поступающих заявок будет осуществляться одним из устройств.

Файл стандартного отчета для решения задачи моделирования Q -cxe- мы примера 3.21 приведен под именем EXAM24.RPT на рис. 3.52. Про­ цесс прохождения сборки подшипников начинается с блока GENERATE,

96

GPSS/PC Report file

REPORT.GPS. (V 2, # 37349)

06-10-2001

07.31:41

page 1

START

TIME

END_TIME

BLOCKS

FACILITIES

STORAGES

FREE_MEMORY

 

0

 

29041

16

3

 

0

 

84256

 

LINE

LOC

 

 

BLOCK_TYPE

ENTRY_ COUNT

CURRENT_COUNT

RETRY

10

1

 

 

GENERATE

100

 

 

0

0

20

2

 

 

SPLIT

100

 

 

0

0

30

CHAN1

 

 

SEIZE

100

 

 

0

0

40

4

 

 

ADVANCE

100

 

 

0

0

50

SSS1

 

 

MATCH

100

 

 

0

0

60

6

 

 

RELEASE

100

 

 

0

0

70

7

 

 

TRANSFER

100

 

 

0

0

во

СHAN2

 

 

SEIZE

100

 

 

0

0

90

9

 

 

ADVANCE

100

 

 

0

0

100

SSS2

 

 

MATCH

100

 

 

0

0

110

11

 

 

RELEASE

100

 

 

0

0

120

COMM

 

 

ASSEMBLE

200

 

 

0

0

130

13

 

 

SEIZE

100

 

 

0

0

140

14

 

7

ADVANCE

100

 

 

0

0

150

15

 

RELEASE

100

 

 

0

0

 

 

 

 

200

16

 

 

TERMINATE

100

 

 

0

0

FACILITY

ENTRIES

 

UTIL

 

AVE._TIME

AVAILABLE

OWNER PEND

INTER RETRY DELAY

1

100

0 .3 0 1

 

9 0 .0 0

1

0

0

0

0

0

2

100

0 .3 0 1

 

9 0 .0 0

1

0

0

0

0

0

3

100

0

134

 

4 0 .0 0

1

0

0

0

0

0

XACT_GROUP

 

GR0UP_SIZE

RETRY

 

 

 

 

 

POSITION

 

 

 

0

 

0

 

 

 

 

 

 

Р и с .

3.53. Стандартный отчет EXAM25.RPT

 

 

который формирует обойму с 8 шариками, что соответствует одному транзакту. Блок SPLIT моделирует разборку подшипника на 8 шариков (число копий транзактов) и одну обойму. Пустая обойма (один транзакт) идет в 1-е устройство на обслуживание, а 8 шариков (8 транзактов) от­ правляются по метке на 2-е устройство, где они проходят обработку и со­ бираются по 8 штук в блоке GATHER. Из отчета видно, что во 2-м устрой­ стве проходят 800 транзактов, а в 1-м — 100. Блок ASSEMBLE моделиру­ ет сборку подшипника: 8 шариков плюс одна обойма, в общем 900 тран­ зактов. Из блока ASSEMBLE выходит один собранный подшипник, а всего их — 100. Из 900 транзактов блок ASSEMBLE уничтожил 800 тран­ зактов. Отличие блока ASSEMBLE от блока GATHER в данном случае со­ стоит в том, что первый принимает заданное количество транзактов и вы­ пускает только один транзакт, а второй также принимает (собирает) за­ данное количество транзактов и столько же отправляет к следующему по номеру блоку (к блоку ASSEMBLE).

Для анализа результатов моделирования с условием синхронизации прохождения транзактов (деталей) рассмотрим файл стандартного отчета EXAM25.RPT (рис. 3.53), который соответствует программе EXAM24.GPS.

7 - 3083

97

GPSS/PC Report file REPORT GPS

(V 2,

в 37349) 06-10-2001 07:45:57

page

1

START_ TIME

END_TIME

BLOCKS

FACILITIES

STORAGES

FREE_MEMORY

 

 

0

29841

14

 

3

 

0

84560

 

LINE

LOC

BLOCK_TYPE

ENTRY_COUNT

CURRENT_COUNT RETRY

10

1

GENERATE

100

 

0

 

0

20

2

SPLIT

 

100

 

0

 

0

30

CHAN1

SEIZE

 

100

 

0

 

0

40

4

ADVANCE

 

100

 

0

 

0

50

5

RELEASE

 

100

 

0

 

0

60

6

TRANSFER

100

 

0

 

0

70

CHAN2

SEIZE

 

100

 

0

 

0

80

8

ADVANCE

 

100

 

0

 

0

90

9

RELEASE

 

100

 

0

 

0

100

COMM

ASSEMBLE

2 0 0

 

0

 

0

110

11

SEIZE

 

100

 

0

 

0

120

12

ADVANCE

 

100

 

0

 

0

130

13

RELEASE

 

100

 

0

 

0

200

14

TERMINATE

lo o

 

0

 

0

FACILITY

ENTRIES

U TIL.

AVE._TIME

AVAILABLE

OWNER PEND

INTER RETRY PE LAY

1

100

0 .3 0 1

9 0 .0 0

1

o

0

0

0

0

2

100

0 .2 0 1

6 0 .0 0

1

0

0

0

0

0

3

100

0 .1 3 4

4 0 .0 0

1

0

0

0

0

0

XACT_GROUP

 

GROUP_SIZE

 

RETRY

 

 

 

 

 

POSITION

 

0

 

 

0

 

 

 

 

 

Р и с . 3.54. Стандартный отчет EXA M 26.RPT

В этой программе синхронизация движения транзактов по модели реали­ зована с помощью двух блоков MATCH: один под номером 50 и с меткой SSS1, другой под номером 100 и с меткой SSS2. Один блок MATCH нахо­ дится в 1-м устройстве, другой блок MATCH — во 2-м устройстве.

Из приведенного отчета видно, что, несмотря на различные времена обслуживания двух устройств (каналов) CHAN1 и CHAN2, итоговые вре­ мена обслуживания определяются наибольшим временем 1-го устройст­ ва 90 отн. ед. (поле AVE_TIME). При этом коэффициенты использования каждого из устройств равны между собой — 0.301 (поле UTIL). Блок ASSEMBLE осуществляет сборку двух комплектующих в одну готовую деталь. Через все блоки, кроме ASSEMBLE, проходят 100 транзактов. Че­ рез ASSEMBLE — 200. Здесь предполагается по условию примера, что каждый из рабочих свою операцию выполняет с различным временем, но начало сборки деталей может начинаться только тогда, когда все ком­ плектующие будут готовы. Для этого применены блоки синхронизации MATCH. Из 2-го устройства детали не отправляются на сборку до тех пор, пока не будут готовы детали в 1-м устройстве. А 1-е устройство менее бы­ стродействующее, чем 2-е, его время обслуживания равно 90 условных единиц. Поэтому число 90 и определяет время обработки каждого устрой-

98

GPSS/PC

Report file

REPORT.GPS. (V 2, # 37349)

06-10-2001

07:59:37

page 1

START__TIME

END_TIME

BLOCKS

FACILITIES

STORAGES

FREE_MEMORY

 

0

 

1028

 

11

2

 

0

84944

 

LINE

LOC

 

BLOCK_TYPE

ENTRY_COUNT

Cti&RENTjCOUNT

RETRY

10

1

 

 

GENERATE

101

 

0

 

0

20

2

 

 

LOGIC

101

 

0

 

0

30

3

 

 

GATE

101

 

0

 

0

40

CHANl

 

 

SEIZE

 

51

 

0

 

0

50

5

 

 

ADVANCE

 

51

 

0

 

0

60

6

 

 

RELEASE

 

51

 

0

 

0

70

7

 

 

TRANSFER

 

51

 

0

 

0

80

CHAN2

 

 

SEIZE

 

50

 

0

 

0

90

9

 

 

ADVANCE

 

50

 

0

 

0

100

10

 

 

RELEASE

 

50

 

0

 

0

200

EXIT

 

 

TERMINATE

101

 

0

 

0

FACILITY

ENTRIES

 

U TIL.

AVE._TIME

AVAILABLE

OWNER PEND

INTER

RETRY DELAY

1

51

0 .7 4 4

 

1 5 .0 0

1

0

0

0

0

0

2

50

0 .8 2 6

 

1 7 .0 0

1

0

0

0

0

0

XACT_GROUP

GROUP_SIZE

RETRY

 

 

 

 

 

POSITION

 

 

 

0

 

0

 

 

 

 

 

LOGICSWITCH

 

VALUE

RETRY

 

 

 

 

 

KEY1

 

 

 

1

 

0

 

 

 

 

 

 

Р и с .

3.55. Стандартный отчет EX A M 27.R PT

 

 

ства. Формально детали из 2-го устройства будут отправлены на сборку (в блок ASSEMBLE) тогда, когда 1-е устройство произведет свое обслужи­ вание. Детали во 2-м устройстве ожидают окончания обслуживания в 1 -м устройстве.

В файле стандартного отчета EXAM26.RPT (рис. 3.54) приведены ре­ зультаты моделирования, когда два устройства независимо друг от друга обслуживают 100 деталей. Из рис. 3.54 видно, что времена обслуживания каждого из устройств (поле AVEJTIME) соответствуют заданным значе­ ниям (90 — для 1-го устройства и 60 — для 2-го устройства). Коэффици­ енты загрузки устройств также различны: 0.301 для 1-го и 0.201 для 2-го устройства.

Файл стандартного отчета решения задачи моделирования Q-схемы примера 3.24 приведен под именем EXAM27,RPT (рис. 3.55). Заданное число обрабатываемых заявок (в примере 101) позволяет проследить дви­ жение транзактов через каждое из устройств.

7 *

99

Через 1-е устройство проходит 51, а через 2-е — 50транзактов,т.е. все нечетные по номеру заявки обслуживаются в 1 -м устройстве, а все четные обслуживаются во 2-м устройстве. Блок LOGIC в режиме инвертирова­ ния ключа (в поле <Х> задается I) устанавливает его то в состояние «включено», то в состояние «выключено». Каждый входящий транзакт в блок LOGIC инвертирует ключ KEY1. Поэтому блок GATE фиксирует че­ рез свое вспомогательное поле <Х> — LS то «истину», то «ложь». В случае «истины» транзакты отправляются к следующему по номеру блоку (в 1 -е устройство), в случае «ложь» — транзакты по метке CHAN2 отправляются во 2-е устройство. Еще отметим, что имя или номер логического ключа задается пользователем произвольно.

В файле стандартного отчета появилось поле LOGICSWITCH, кото­ рое определяет заданное имя логического ключа KEY1. Далее поле VALUE определяет значение логического переключателя в конце периода моделирования: число 1 означает «установлен во включенное состояние» или «истина», число 0 означает «сброшен» или «ложь». Поле RETRY оп­ ределяет количество транзактов, ожидающих наступления специальных условий, зависящих от состояния логического переключателя (таких ус­ ловий в программе EXAM25.GPS нет).

3.2.ПРОГРАММИРОВАНИЕ ДЛЯ СТАТИСТИЧЕСКОЙ

ИЗАПОМИНАЮЩЕЙ КАТЕГОРИЙ ЯЗЫКА МОДЕЛИРОВАНИЯ GPSS/PC

Статистическими объектами языка GPSS/PC являются очере­ ди и таблицы. Статистическая информация об очереди формиру­ ется QUEUE и DEPART. Регистрация частот попадания табулиро­ ванной величины или заданного СЧА осуществляется блоком TABULATE. Табулируемая величина заносится в таблицу, имя и характеристики которой определяются оператором TABLE. На ос­ нове сформированных таблиц возможно построение гистограмм.

Для сохранения и запоминания в модели числовой информа­ ции, различных СЧА в GPSS/PC отводятся специальные ячейки основной памяти. Совокупности ячеек могут быть организованы в матрицы. Для записи числовой информации в ячейки служит блок SAVEVALUE, в матрицы — блок MSAVEVALUE, который работа­ ет совместно с оператором описания матриц MATRIX. Присвое­ ние начальных значений ячейкам и матрицам осуществляется с помощью оператора INITIAL.

3.2.1.Блоки QUEUE, DEPART, SAVEVALUE

ВGPSS/PC блоки QUEUE и DEPART описывают объекты типа «очередь». Статистика об очередях собирается в моменты входа со­ общения (транзакта) в блок QUEUE (вход в очередь) или в блок

100

Соседние файлы в папке книги