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

мод сис / V.Boev-GPSSvsAnyLogic

.pdf
Скачиваний:
88
Добавлен:
11.04.2015
Размер:
9.01 Mб
Скачать

Рис. 3.4. Объекты двух сегментов модели

5. Последовательно выделите объекты и установите им свойства согласно табл. 3.4.

Таблица 3.4

Свойства

Значение

Имя

Буфер

Отображать имя

Установить флажок

Класс заявки

Message

Вместимость

ѐмкость_буфера

Действие при входе

текущая_емкость_буфера++;

Действие при выходе

текущая_емкость_буфера--;

Разрешить вытеснение

Установить флажок

Имя

hold1

Отображать имя

Установить флажок

Класс заявки

Message

Изначально заблокирован

Установить флажок

Имя

hold

Класс заявки

Message

Имя

потер_сообщ_буфер

Отображать имя

Установить флажок

Класс заявки

Message

Действие при входе

if (entity.numPotok == 1)

 

потеряно_сообщ_потока1 ++;

 

if (entity.numPotok == 2)

 

потеряно_сообщ_потока2 ++;

 

всего_потеряно_сообщ ++;

Имя

основной_канал

Отображать имя

Установить флажок

121

 

 

Окончание табл. 3.4

 

 

 

Класс заявки

 

Message

Задержка задается

Явно

Время задержки

 

exponential(1/время_передачи_осн_кан)

Вместимость

 

1

Включить сбор

стати-

 

стики

 

Установить флажок

Имя

 

резерв_канал

Отображать имя

 

Установить флажок

Класс заявки

 

Message

Вместимость

 

1

Задержка задается

Явно

Время задержки

 

exponential(1/время_передачи_рез_кан)

Вместимость

 

1

Действие при входе

if (а==0)

 

 

 

в = время_передачи_рез_кан;

 

 

if (а==1)

 

 

{в = время_передачи_рез_кан +

 

 

время_вкл_рез_кан;

 

 

а=0;}

Действие при выходе

if (hold.isBlocked()== true)

hold1.setBlocked(false);

 

 

Включить сбор

стати-

Установить флажок

стики

 

 

Имя

 

sink

Отображать имя

 

Установить флажок

Класс заявки

 

Message

Действие при входе

if (entity.numPotok == 1)

 

 

{передано_сообщ_потока1 ++;

 

 

вероятность_передачи_сообщ_потока1

 

 

= передано_сообщ_потока1

 

 

/поступило_сообщ_потока1;}

 

 

if (entity.numPotok == 2)

 

 

{передано_сообщ_потока2 ++;

 

 

вероятность_передачи_сообщ_потока2

 

 

= передано_сообщ_потока2

 

 

/поступило_сообщ_потока2;}

 

 

всего_передано_сообщ ++;

 

 

вероятность_передачи_сообщ =

 

 

всего_передано_сообщ

 

 

/всего_сообщ_поступило;

 

 

вероятность_потери_сообщ = 1-

 

 

вероятность_передачи_сообщ;

 

 

 

122

3.3.3.3. Имитатор отказов основного канала связи

Данный сегмент предназначен для розыгрыша интервала времени до очередного отказа, блокирования основного канала, разблокирования резервного канала, имитации восстановления основного канала, его разблокирования и блокирования резервного канала.

Сегмент построен из объектов и элементов, показанных на рис. 3.5. Идея его работы заключается в следующем. Генератор вырабатывает одну заявку, и становится неактивным. Заявка поступает на объект задержки, разыгрывающий время до очередного отказа. После этого заявка поступает на второй объект задержки, имитирующий время восстановления основного канала.

C выхода второго объекта задержки заявка поступает опять на вход первого объекта задержки. Процесс имитации отказов повторяется в цикле.

Аналогичным образом построен сегмент имитации отказов основного канала и в GPSS-модели (см. п. 3.2).

Если построить сегмент так, что время до очередного отказа будет разыгрывать генератор, то это не логично, так как при таком варианте отсчет времени до очередного отказа не будет начинаться от момента окончания восстановления канала. Возникнут ситуации, когда очередной отказ придется на время, когда идет процесс восстановления канала.

Постройте сегмент имитации отказов основного канала связи.

1.Перетащите из библиотеки объекты, соедините их как на рис. 3.5.

2.Последовательно выделите и установите свойства объектов согласно табл. 3.5.

Рис. 3.5. Сегмент имитации отказов основного канала связи

123

Таблица 3.5

Свойства

Значение

Имя

source

Отображать имя

Установить флажок

Класс заявки

Entity

Заявки прибывают согласно

Интенсивности

Интенсивность прибытия

1

Ограниченное количество

 

прибытий

Установить флажок

Количество заявок, прибы-

 

вающих за один раз

1

Имя

розыгрыш_инт_до_отказа

Отображать имя

Установить флажок

Класс заявки

Entity

Задержка задается

Явно

Время задержки

exponential

 

(1/время_нараб_отказ_осн_кан)

Вместимость

1

Действие при выходе

hold.setBlocked(true);

 

if (основной_канал.size()!=0)

 

{основ-

 

ной_канал.remove((Message)

 

основной_канал.get(0));

 

всего_потеряно_сообщ ++;}

 

hold1.setBlocked(false);

Включить сбор статистики

а=1;

 

 

Установить флажок

Имя

имитация_восст_осн_кан

Класс заявки

Entity

Задержка задается

Явно

Время задержки

exponential

 

(1/время_восстан_осн_кан )

Вместимость

1

Действие при выходе

hold.setBlocked(false);

 

hold1.setBlocked(true);

Включить сбор статистики

Установить флажок

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

124

новного канала резервный канал выключается. Резервный канал выключается, но передача сообщения по нему, если это было в момент включения в работу основного канала, продолжается. Таким образом, какое-то время каналы работают параллельно. Потерь сообщений при выключении резервного канала нет.

Также организовано и в GPSS-модели, но для этого использована сохраняемая ячейка Kont (см. 2).

В модели AnyLogic после занятия сообщением резервного канала элемент hold1 блокируется. Может быть так, что в процессе передачи сообщения резервным каналом возобновит работу основной канал, то есть элемент hold будет разблокирован, и сообщения пойдут на основной канал. Чтобы такая ситуация учитывалась и в GPSS-модели, в нее добавлена команда

UNLINK Nak,Prov3,1

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

3.4. Оценка результатов моделирования

Модели построены. Проведите моделирование в GPSS World и AnyLogic и оцените полученные результаты. Результаты наших экспериментов приведены в табл. 3.6.

Всего выполнено 32 эксперимента, которые делятся на четыре группы. Отличительный признак каждой группы — ѐмкость входного буфера: 5, 10, 20 и 30 сообщений.

Вкаждой группе — восемь экспериментов, четыре — в GPSS World и четыре — в AnyLogic. Отличительный признак каждого из четырех экспериментов как в GPSS World, так и в AnyLogic, начальные числа генераторов случайных чисел, выбранные произ-

вольно: 13, 137, 2729, 52687.

ВAnyLogic начальное число устанавливается один раз перед началом моделирования. Нужно в панели Проект щелкнуть Экс-

перимент. На странице Основные установить Фиксированное начальное число (воспроизводимые прогоны). В соответст-

вующее поле ввести начальное число.

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

125

Таблица 3.6

Показатели функционирования направления связи

 

 

 

 

 

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

 

 

 

Показатели

 

 

GPSS World

 

 

 

 

 

AnyLogic

 

 

 

Начальные числа генераторов случайных чисел

 

 

 

 

 

 

 

13

137

2729

 

52687

 

13

 

137

2729

52687

 

Ёмкость входного буфера 5 сообщений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вероятность_передачи_сообщ

 

0,751

0,752

0,751

 

0,752

 

0,775

 

0,776

0,774

0,774

вероятность_передачи_сообщ_потока1

 

0,751

0,753

0,751

 

0,751

 

0,775

 

0,776

0,775

0,774

вероятность_передачи_сообщ_потока2

 

0,751

0,751

0,752

 

0,752

 

0,774

 

0,776

0,775

0,775

1 вероятности_передачи_сообщ

 

 

 

1 = |0,7515

- 0,775| = 0,0235

 

 

вероятность_потери_сообщ

 

0,249

0,248

0,249

 

0,248

 

0,225

 

0,224

0,226

0,226

коэф_использ_осн_кан

 

0,776

0,777

0,777

 

0,778

 

0,754

 

0,754

0,755

0,755

коэф_использ_рез_кан

 

0,151

0,150

0,149

 

0,149

 

0,225

 

0,225

0,223

0,225

сум_коэф_использ_кан

 

 

0,927

 

 

 

 

 

0,979

 

 

Ёмкость входного буфера 10 сообщений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вероятность_передачи_сообщ

 

0,800

0,798

0,800

 

0,798

 

0,827

 

0,829

0,827

0,829

вероятность_передачи_сообщ_потока1

 

0,800

0,798

0,800

 

0,799

 

0,827

 

0,829

0,827

0,829

вероятность_передачи_сообщ_потока2

 

0,800

0,798

0,801

 

0,797

 

0,827

 

0,829

0,828

0,828

2 вероятности_передачи_сообщ

 

 

 

 

2 = |0,799

- 0,828| = 0,029

 

 

вероятность_потери_сообщ

 

0,200

0,202

0,200

 

0,202

 

0,173

 

0,171

0,173

0,171

коэф_использ_осн_кан

 

0,831

0,832

0,830

 

0,832

 

0,807

 

0,808

0,808

0,807

коэф_использ_рез_кан

 

0,152

0,153

0,152

 

0,151

 

0,241

 

0,242

0,242

0,241

сум_коэф_использ_кан

 

 

0,983

 

 

 

 

 

1,050

 

126

Окончание табл. 3.6

 

 

 

 

 

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

 

 

 

Показатели

 

 

GPSS World

 

 

 

 

AnyLogic

 

 

 

Начальные числа генераторов случайных чисел

 

 

 

 

 

 

 

13

137

2729

 

52687

13

 

137

2729

52687

 

Ёмкость входного буфера 20 сообщений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вероятность_передачи_сообщ

 

0,829

0,826

0,829

 

0,827

0,862

 

0,861

0,861

0,862

вероятность_передачи_сообщ_потока1

 

0,829

0,826

0,829

 

0,827

0,862

 

0,861

0,861

0,863

вероятность_передачи_сообщ_потока2

 

0,829

0,826

0,830

 

0,827

0,862

 

0,861

0,861

0,862

3 вероятности_передачи_сообщ

 

 

 

3 = |0,828 - 0,8615| = 0,0335

 

 

вероятность_потери_сообщ

 

0,171

0,174

0,171

 

0,173

0,138

 

0,139

0,139

0,138

коэф_использ_осн_кан

 

0,863

0,862

0,862

 

0,863

0,840

 

0,840

0,838

0,839

коэф_использ_рез_кан

 

0,155

0,154

0,153

 

0,154

0,252

 

0,253

0,254

0,250

сум_коэф_использ_кан

 

 

1,018

 

 

 

 

1,092

 

 

Ёмкость входного буфера 30 сообщений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вероятность_передачи_сообщ

 

0,837

0,835

0,838

 

0,838

0,875

 

0,876

0,875

0,875

вероятность_передачи_сообщ_потока1

 

0,836

0,836

0,838

 

0,838

0,876

 

0,875

0,874

0,875

вероятность_передачи_сообщ_потока2

 

0,837

0,835

0,838

 

0,838

0,875

 

0,876

0,876

0,875

4 вероятности_передачи_сообщ

 

 

 

4 = |0,8365 - 0,875| = 0,0385

 

 

вероятность_потери_сообщ

 

0,163

0,165

0,162

 

0,162

0,125

 

0,124

0,125

0,125

коэф_использ_осн_кан

 

0,873

0,872

0,871

 

0,873

0,852

 

0,852

0,852

0,852

коэф_использ_рез_кан

 

0,155

0,157

0,158

 

0,155

0,254

 

0,254

0,257

0,256

сум_коэф_использ_кан

 

 

1,028

 

 

 

 

1,107

 

127

Для

получения результатов моделирования

с точностью

0,01

и доверительной вероятностью

0,95

в GPSS World

необходимо выполнить 9604 прогонов модели. В каждом эксперименте выполнялось 10 000 прогонов.

Время моделирования в AnyLogic было увеличено в 10 000 раз

исоставляло 72 000 000 единиц модельного времени. Следует заметить, что если в GPSS World выполнить с этим же модельным временем один прогон, то результаты получаются такими же, что

ипри 10 000 прогонов модели.

Согласно данным табл. 3.6 вероятность передачи сообщений в

AnyLogic-модели больше на 1 = 0,0235… 4 = 0,0385.

Коэффициент использования основного канала выше в GPSSмодели на 0,200…0,024. Коэффициент же использования резервного канала больше у AnyLogic-модели на 0,070…0,075. В сумме коэффициент использования основного и резервного каналов также больше у AnyLogic-модели на 0,052…0,079. Тем не менее, как видно, превышение вероятности передачи сообщений у AnyLogicмодели примерно в два раза ниже, чем превышение использования обоих каналов.

Вероятность передачи сообщений растет с увеличением ѐмкости входного буфера. Однако этот рост после ѐмкости в 20 сообщений незначительный и составляет 0,012…0,014.

Если продолжать увеличивать ѐмкость входного буфера (40, 50, 60 сообщений), то рост вероятности передачи сообщений составит 0,003…0,004. Дальнейший рост вероятности передачи сообщений ограничивается временами передачи данных по основному и резервному каналам.

Проведем еще 16 экспериментов. В GPSS-модели произвольным образом будем устанавливать различные начальные числа во всех обращениях к генераторам случайных чисел. В AnyLogic ис-

пользуем опцию Случайное начальное число (уникальные прогоны).

Результаты экспериментов приведены в табл. 3.7. Они свидетельствуют о том, что тенденция изменения количественных показателей, а значит и величины различия результатов моделирования в GPSS World и AnyLogic практически одни и те же.

Машинное время выполнения модели (в AnyLogic в виртуальном режиме) в обеих системах практически одинаковое и составляет 5…7 сек.

128

 

 

 

 

 

 

 

 

 

 

Таблица 3.7

Показатели функционирования направления связи

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

 

 

Показатели

 

 

GPSS World

 

 

 

 

AnyLogic

 

 

 

1

2

3

 

4

5

 

6

7

8

 

Ёмкость входного буфера 5 сообщений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

вероятность_передачи_сообщ

 

0,752

0,752

0,752

 

0,754

0,774

 

0,774

0,774

0,774

вероятность_передачи_сообщ_потока1

 

0,751

0,752

0,753

 

0,754

0,774

 

0,774

0,774

0,774

вероятность_передачи_сообщ_потока2

 

0,752

0,752

0,752

 

0,754

0,775

 

0,775

0,775

0,775

вероятности_передачи_сообщ

 

 

 

 

= |0,752 - 0,774| = 0,022

 

 

вероятность_потери_сообщ

 

0,248

0,248

0,248

 

0,246

0,226

 

0,226

0,226

0,226

коэф_использ_осн_кан

 

0,777

0,777

0,777

 

0,778

0,755

 

0,755

0,755

0,755

коэф_использ_рез_кан

 

0,149

0,148

0,150

 

0,149

0,225

 

0,225

0,225

0,225

сум_коэф_использ_кан

 

 

0,927

 

 

 

 

0,980

 

 

Ёмкость входного буфера 10 сообщений

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9

10

11

 

12

13

 

14

15

16

вероятность_передачи_сообщ

 

0,802

0,800

0,799

 

0,799

0,829

 

0,829

0,829

0,829

вероятность_передачи_сообщ_потока1

 

0,802

0,800

0,799

 

0,798

0,829

 

0,829

0,829

0,829

вероятность_передачи_сообщ_потока2

 

0,802

0,800

0,800

 

0,799

0,828

 

0,828

0,828

0,828

вероятности_передачи_сообщ

 

 

 

 

= |0,799 - 0,828| = 0,029

 

 

вероятность_потери_сообщ

 

0,198

0,200

0,201

 

0,201

0,171

 

0,171

0,171

0,171

коэф_использ_осн_кан

 

0,830

0,831

0,829

 

0,829

0,807

 

0,807

0,807

0,807

коэф_использ_рез_кан

 

0,152

0,151

0,154

 

0,152

0,241

 

0,241

0,241

0,241

сум_коэф_использ_кан

 

 

0,983

 

 

 

 

1,048

 

129

, ..., TвКn
, ..., TотКn
, TотК2

ГЛАВА 4. МОДЕЛЬ ФУНКЦИОНИРОВАНИЯ СЕТИ СВЯЗИ

4.1. Модель в AnyLogic

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

Всети связи имеются n1 абонентов, обменивающихся между

собой сообщениями. Адресация сообщений организована посредством маршрутизаторов. На маршрутизатор поступают сообщения через случайные промежутки времени от n1 абонентов со средни-

ми интервалами времени T1 , T2 ,..., Tn1 .

Сообщения могут быть n2 категорий с вероятностями их появ-

ления pк1 , pк 2

, ..., pкn

( pк1

pк 2 ...

pкn

1) и вычислительными

 

2

 

 

2

сложностями обработки S1

, S2

, ..., Sn

операций соответственно.

 

 

 

 

2

 

 

Маршрутизатор имеет k входов и k выходов, входной буфер 1 ѐмкостью L1 байт для хранения сообщений, ожидающих обработки. В маршрутизаторе сообщения обрабатываются вычислительным комплексом (ВК) с производительностью Q операций/с. В случае полного заполнения буфера 1 поступающие на маршрутизатор сообщения теряются. Принято допущение, что одна операция вычислительной сложности соответствует одному байту при размещении сообщения в буфере.

После обработки сообщения в зависимости от направления передачи поступают в соответствующие буферы, стоящие на входах

каждого i-го направления связи, i 1, k . Каждый буфер имеет ѐм-

кость L2i байт, i 1, k . В случае полного заполнения буфера на-

правления поступающее сообщение теряется.

Из буферов сообщения передаются по своим направлениям. Каждое направление имеет основной и резервный каналы связи. Скорость передачи сообщений по основному и резервному кана-

лам связи каждого из направлений Vпi бит/с, i 1, k .

ВК и основные каналы связи имеют конечную надѐжность. Интервалы времени TотВК и TотК1 между отказами ВК и

каналов связи случайные. Длительности восстановления ВК и каналов связи TвВК и TвК1 , TвК2 также случайные.

При отказе обрабатываемые ВК и передаваемые по каналам связи сообщения теряются.

130