Моделирование первого примера при применении блока GATE. Стандартная статистическая информация. Графики коэффициентов использования, страница 2

Исходя из этого, изменим µ на µ=5. После этого получим:

L_ EQU 12.5

MU_ EQU 5

GENERATE (Exponential(1,0,1/L_))

QUEUE 1

Transfer .33,comp1,comp2

comp1 Transfer .5,com1,com2

com1       Seize      2

DEPART            1

ADVANCE  (Exponential(2,0,1/MU_))

Release          2

TERMINATE    1

com2        Seize         3

DEPART            1

ADVANCE  (Exponential(3,0,1/MU_))

Release           3

TERMINATE   1

comp2           Seize         1

DEPART            1

ADVANCE  (Exponential(4,0,1/MU_))

Release           1

TERMINATE   1

;START 500,NP

;RESET

;START 1000

FACILITY

ENTRIES

UTIL.

AVE.TIME

AVAIL.

OWNER

PEND

INTER

RETRY

DELAY

1

353

0.867

0.207

1

0

0

0

0

0

2

325

0.819

0.212

1

999

0

0

0

0

3

324

0.744

0.193

1

1000

0

0

0

1

QUEUE

MAX

CONT.

ENTRY

ENTRY(0)

AVE.CONT

AVE.TIME

AVE.(-0)

RETRY

1

23

1

1003

184

7.717

0.648

0.793

0

Теперь коэффициент загрузки снизился до 0,7 - 0,8, что является нормой, а очередь упала до 23.

3. Программа и моделирование третьего примера в двух вариантах: с использованием блока GATE и блока TEST.

исследуем модель, где заявки поступают на обработку в устройство с ограниченным числом мест в очереди m, равным 3. Если очередь заполнена, то заявка покидает систему (теряется).

         GENERATE   8,2

         TEST L   Q$QUE1,2,OUT

         QUEUE      QUE1

         SEIZE      DEV

         DEPART     QUE1

         ADVANCE    10,4

         RELEASE    DEV

         SAVEVALUE  P_otk,(N$OUT/N1)

         TERMINATE

OUT      TERMINATE

        GENERATE            10000

               TERMINATE             1

            GENERATE                 200

            SAVEVALUE 99+,1

            SAVEVALUE X99,FR$DEV

            TERMINATE

START 1

Здесь, если длина очереди меньше 2, транзакт проходит блок TEST, иначе он отправляется к блоку с меткой OUT и теряется.

FACILITY

ENTRIES

UTIL.

AVE.TIME

AVAIL.

OWNER

PEND

INTER

RETRY

DELAY

DEV

1001

0.999

9.981

1

1298

0

0

0

2

QUEUE

MAX

CONT.

ENTRY

ENTRY(0)

AVE.CONT

AVE.TIME

AVE.(-0)

RETRY

QUE1

2

2

1003

1

1.523

15.187

15.202

0

Вероятность потерь P_otk = 0.198 (это доля потерянных заявок – отношение удаленных без обслуживания транзактов к общему числу транзактов, поступивших в систему).

Другой вариант программы:

MEM      STORAGE    2

         GENERATE   8,2

         GATE SNF   MEM,OUT

         ENTER      MEM

         SEIZE      DEV

         LEAVE      MEM

         ADVANCE    10,4

         RELEASE    DEV

                    SAVEVALUE P_otk,(N$OUT/N1)

         TERMINATE  1

OUT      TERMINATE

start 100

В данном случае ограничение на длину очереди накладывается размером памяти. При заполнении памяти МЕМ очередная заявка получает отказ. Этим управляет блок GATE: если память не полна (SNF), то транзакт проходит блок GATE, а если полна, то транзакт переходит к блоку с именем OUT и теряется.

FACILITY

ENTRIES

UTIL.

AVE.TIME

AVAIL.

OWNER

PEND

INTER

RETRY

DELAY

DEV

101

0.991

10.153

1

129

0

0

0

0

STORAGE

CAP.

REM.

MIN.

MAX.

ENTRIES

AVL.

AVE.C.

UTIL.

MEM

2

1

0

2

101

1

1.440

0.720

Вероятность потерь P_otk = 0.217