Проблема генерирования псевдослучайных последовательностей составных распределений для имитации СМО
Автор: Тарасов В.Н., Бахарева Н.Ф., Казачков Н.А.
Журнал: Инфокоммуникационные технологии @ikt-psuti
Рубрика: Теоретические основы технологий передачи и обработки информации и сигналов
Статья в выпуске: 3 т.20, 2022 года.
Бесплатный доступ
В данной статье представлены полученные результаты по разработке генератора псевдослучайных последовательностей для имитационного моделирования СМО с гиперэрланговским входным распределением второго порядка. В зарубежной и русскоязычной научной литературе, включая веб-ресурсы, данные в этой предметной области авторами не обнаружены. Известно, что этот закон распределения является наиболее общим распределением непрерывной неотрицательной случайной величины с широким диапазоном изменения коэффициента вариации. Последний играет важную роль при оценке задержки требований в очереди в системах массового обслуживания, т. к. средняя задержка требований в очереди связана с коэффициентами вариаций интервалов поступлений и обслуживания квадратичной зависимостью. Использование указанного распределения более высокого порядка затруднительно для вывода решения для среднего времени ожидания из-за нарастающей вычислительной сложности. Для гиперэрланговского закона распределения второго порядка авторами ранее получены численно-аналитические результаты на основе метода спектрального решения интегрального уравнения Линдли. В статье представлены полученные алгоритм и программа на GPSS WORLD для имитации функционирования СМО с гиперэрланговским входным распределением. Адекватность полученных результатов подтверждена сравнением результатов имитации с результатами численного моделирования в среде Mathcad. Авторы надеются, что представленные результаты будут востребованы специалистами в области имитационного моделирования в среде GPSS WORLD.
Система моделирования gpss world, смо he2/m/1, среднее время ожидания в очереди, средняя длина очереди
Короткий адрес: https://sciup.org/140300665
IDR: 140300665 | DOI: 10.18469/ikt.2022.20.3.03
Текст научной статьи Проблема генерирования псевдослучайных последовательностей составных распределений для имитации СМО
Универсальная среда дискретно-событийного моделирования GPSS WORLD широко используется при моделировании систем массового обслуживания, а также при моделировании производственных систем [1–4]. Она включает множество библиотечных программ, в том числе генераторы псевдослучайных последовательностей для различных законов распределений. В то же время в этой системе отсутствуют генераторы гиперэкспоненциальных и гиперэрланговских распределений. Этот факт препятствует моделированию систем массового обслуживания G/G/1 и G/G/m. Настоящая статья посвящена частичному устранению этого пробела.
Как известно, например из [3], гиперэрлан-говский закон распределения представляет собой вероятностную смесь нормированных распределений Эрланга. К примеру, функция плотности гиперэрланговского закона второго порядка имеет вид f (t) = 4 p Х2 te " t + 4 (1 - p )X2 te2' t (1) и обеспечивает коэффициент вариации c e (1 / V2, да).
Также известно, что обычно используется распределение Эрланга второго порядка как частный случай более общего гамма-закона распределения:
f ( t ) = * 2 te-x t . (2)
Генератор гамма-распределения GAMMA (Stream, Locate, Scale, Shape) позволяет получить псевдослучайную последовательность для распределения Эрланга второго порядка (2). Распределение (2) отличается от нормированного распределения f ( t ) = 4 X 2 te^2X t числовыми характеристиками, кроме коэффициента вариации. В связи с тем, что нормированное распределение вызывает сложности генерации, сформируем из
-
(2) новый гиперэрланговский закон второго порядка (HE2) с функцией плотности
a ( t ) = p 2 2 te-x ' 1 + (1 - p ) 2 2 te-x 2 1 (3) как вероятностную смесь обычных распределений Эрланга с целью его использования в генераторе GAMMA. Заметим, что числовые характеристики распределений (1) и (3), кроме коэффициента вариации, также отличаются.
Настоящая статья посвящена моделированию СМО HE2/M/1 с гиперэрланговским (HE2) и экспоненциальным (M) входными распределениями в среде GPSS WORLD. В открытом доступе авторам не удалось обнаружить каких-либо результатов для такой СМО.
Постановка задачи
В статье ставится задача построения имитационной модели для СМО HE2/M/1 и подтверждения адекватности построенной математической модели путем численного моделирования в пакете Mathcad. При построении удачной модели для указанной системы построение имитационных моделей систем, включающих распределение HE2 в любой позиции по шкале Кендалла, не будет вызывать затруднения.
Решение задачи
Для построения имитационной модели необходимо задавать значения моментных характеристик распределений HE2 и M, и придется определить неизвестные параметры этих распределений. Моментные характеристики определим через преобразование Лапласа функции (3):
+ ( 1 - P )
' 2 2
^^ 2 + S
A Ч s ) = P
V 2 1 + s
Тогда два первых начальных момента будут:
– для интервалов поступлений
2 p 2 ( 1 - p ) ?=6 p 6(l- p)
-
T 2 . + . , l x.2 + л 2 , (V
2 1 2 2 2 1 2 2
– для времени обслуживания
T = 1 / H T 2 = 21 H 2 .
Из уравнений моментов (4) найдем неизвестные параметры распределения (3) 21, 22, p. Для этого к (4) добавим выражение для квадрата коэффициента вариации c2 =
Т 2 - ( т2 )2 ( т )2
как связующее условие между (4). Исходя из вида первого уравнения (4) положим
-
2 1 = 4 P / Т 2 , 2 2 = 4 ( 1 - P^ Т 2 (6)
и потребуем выполнения условия (5) [5; 6]. Подставив выражения (6) с учетом (4) в (5), получим уравнение четвертой степени относительно неизвестного параметра p: p(1 - p)[8(1 + c2)p2 -- 8(1 + c2)p + 3] = 0. Отбросив тривиальные решения p = 0 и p = 1, получим квадратное уравнение 8(1 + c\)p2 - 8(1 + c2)p + 3 = 0, решив которое выберем для однозначности больший корень для параметра p:
= 1 + 2(1 + c 2 ) - 3 p 2 ^ 8(1 + c 2 )
Отсюда следует, что коэффициент вариации c 2 > 1 / V2. Подставив (7) в (6), определяем все три неизвестных параметра распределения (3) [5; 6].
Для построения и отладки имитационной модели для системы HE2/M/1 возьмем коэффициент загрузки р = тц / т2 = 0,9, коэффициент вариации интервалов поступлений c2 = 2 и единичное время обслуживания тц = 1. Тогда исходные данные для имитационной модели p = £ + 2(1 + c2) 3 = о, 918, 1 - p = о, 082, 2 N 8(1 + c 2)
2 1 = 3,305, 2 2 = 0,295.
Отсюда средние значения для первой и второй фаз гиперэрланговского распределения 2 / 2 1 = = 0,605, 2 / 2 2 = 6,78 единиц времени.
Приемы аппроксимации законов распределений более подробно описаны в [10–14].
Первый этап построения имитационной модели
На первый взгляд, при построении имитационной модели можно было бы обойтись логическим оператором TEST для перенаправления транзактов в модели с вероятностью p на первую фазу гиперэрланговского закона, а с вероятностью 1 – p – на вторую фазу, как это показано в тексте имитационной модели. Здесь отмечается полная аналогия с аналитической моделью (3) гиперэрланговского закона распределения, т. к. в аналитической модели предполагается мгновенная передача заявок с заданной вероятностью p на первую фазу, а с вероятностью 1 – p – на вторую фазу [7–9; 12].
Анализ результатов прогона модели (рисунок 1) показывает, что в этом случае на первую фазу направляется примерно 82 тыс. транзактов, а на вторую фазу 918 тыс. тразактов, что полностью соответствует заданным вероятностям 0,082 и 0,918. Коэффициент загрузки равен 0,9 и среднее время обслуживания – единица, т. е. исходные
10 ERL1 FVARIABLE (GAMMA(1,0,0.605,2))
20 ERL2 FVARIABLE (GAMMA(1,0,6.78,2))
30 TEST L (RN1),082,MET_1
40 GENERATE V$ERL2
50 TRANSFER ,MET_2
60 MET_1 GENERATE V$ERL1
70 MET_2 QUEUE QCHAN
80 SEIZE CHAN
90 DEPART QCHAN
100 ADVANCE (Exponential (1,0,1.0))
110 RELEASE CHAN
120 TERMINATE 1
130 START 1000000
; Переменная для первой фазы гиперэрланга ; Переменная для второй фазы гиперэрланга ; Если значение случайной величины меньше p
; то генерировать первую фазу и встать в
; очередь к устройству «CHAN», если нет, то
; переход по метке 1 для генерирования
; второй фазы
; Встать в очередь к устройству «CHAN»
; Занять устройство «CHAN»
; Покинуть очередь к устройству «CHAN»
; Задержать транзакт на единичное время
; Освободить устройство «CHAN»
; Удалять по одному транзакту
; Прогон 1 млн транзактов
GPSS World Simulation Report - Untitled Model 1.2.1 Sunday, November 27, 2 022 11:0 0:01
START TIME 0.000' NAME CHAN ERL1 ERL2 MET_1 MET_2 QCHAN |
END TIME 1111087.428 |
BLOCKS FACILITIES STORAGES |
|
10 1 0 |
|||
VALUE |
|||
10003.000 |
|||
10000.000 |
|||
10001.000 |
|||
4.000 |
|||
5.000 |
|||
10002.000 |
|||
LABEL MET_1 MET_2 FACILITY |
LOC BLOCK TYPE
10' TERMINATE ' ENTRIES UTIL |
ENTRY COUNT CURRENT COUNT RETRY 0 0 0 81886 0 0 81886 0 0 918139 0 0 1000025 24 0 IC'C'C'C'C'l 1 0 1000000 0 0 1000000 0 0 1000000 0 0 1000000 0 0 . AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY |
|
CHAN |
IC'C'C'C'C'l 0.90'1 |
1.001 |
1 1000001 0 0 0 24 |
QUEUE |
MAX CONT. ENTRY ENTRY(0} |
AVE.CONT. AVE.TIME AVE.(-0) RETRY |
|
QCHAN |
58 25 | 1000025 128109 |
5.898 6.553 7.515 0 |
Рисунок 1. Результаты прогона имитационной модели

Рисунок 2. Формирование двухфазного гиперэрланговского распределения
данные и результаты моделирования совпадают. Коэффициент загрузки ρ в аналитике так же, как и в имитационном моделировании, определяется отношением средних интервалов р = Тц / Тх . Результат по среднему времени ожидания в очереди 6,553 не соответствует аналитической модели [5; 6], которая дает 22,59 единиц времени.
Второй этап построения имитационной модели
Выше мы убедились, что копирование аналитики в имитационном моделировании не дает нужного эффекта. Дискретно-событийное моделирование работает по своим установленным алгоритмам. Внимательно смотрим на двухфазное формирование гиперэрланговского распределения для имитационного моделирования (рисунок 2).
На рисунке 2 показано, что с вероятностью p сформированный транзакт отправляется на пер-
10 P_1 EQU 0.082
20 P_2 EQU (1-P_1)
30 T_1 EQU 3.39
40 T_2 EQU 0.302
50 GENERATE ,,,1
60 Switch TRANSFER P_1,Met_2,Met_1
70 Met_1 TRANSFER ,Kl_1
80 Met_2 TRANSFER ,Kl_2
90 Kl_1 LOGIC S Kluch1
100 ADVANCE (T_1#3.1)
110 LOGIC R Kluch1
120 TRANSFER ,Switch
130 Kl_2 LOGIC S Kluch2
140 ADVANCE (T_2#3.1)
150 LOGIC R Kluch2
160 TRANSFER ,Switch
170 GENERATE (GAMMA(11,0,T_1,2))
180 GATE LS Kluch1,Met_10
190 TRANSFER ,Met_20
200 GENERATE (GAMMA(21,0,T_2,2))
210 GATE LS Kluch2,Met_10
вую фазу гиперэрланговского закона со средним интервалом 2/λ1, а с вероятностью 1 – p – на вторую фазу со средним интервалом 2/λ2. В схему включены логические переключатели – объекты, которые могут находиться только в двух состояниях: включен, выключен. Эти два состояния управляются с помощью логического оператора LOGIC X A. Здесь A – имя логического ключа, X – логический оператор, задающий тип операции: S – включить, R – выключить.
В схеме попеременно в зависимости от значения вероятности p должны будут работать два переключателя, которые в тексте программы обозначены Kluch1 и Kluch2. Введение в схему логических переключателей еще не решает проблему создания имитационной модели, т. к. в соответствующие фазы нужно впустить сгенерированный прежде транзакт при включенном переключателе.
; Значение вероятности р1 1-й эрланговской
; фазы гиперэрланговского распределения
; Значение вероятности р2 2-й эрланговской
; фазы; гиперэрланговского распределения
; Значение среднего интервала 1-й
; эрланговской фазы
; Значение среднего интервала 2-й
; эрланговской фазы
; Генерация одного транзакта управления
; ключами выбора эрланговской фазы
; Включение 1-го ключа с вероятностью р1,
; а 2-го – с вероятностью р2
; Отправить транзакт на 1-й ключ «Kl_1»
; Отправить транзакт на 2-й ключ «Kl_2»
; Включить ключ 1-й эрланговской фазы
; Время работы ключа
; Выключить ключ 1-й эрланговской фазы
; Отправить транзакт на выбор рабочего ключа
; «Switch»
; Включить ключ 2-й эрланговской фазы
; Время работы ключа
; Выключить ключ 2-й эрланговской фазы
; Отправить транзакт на выбор рабочего ключа
; «Switch»
; Генерация 1-й эрланговской фазы
; Определения состояния 1-го ключа (если
; «включен»–переход к следующей строке
; программы, если «выключен» – переход на
; Met10)
; Переход по метке
; Генерация 2-й эрланговской фазы
; Определение состояния 2-го ключа
; аналогично 1-му
220 Met_20 QUEUE QCHAN
230 SEIZE CHAN
240 DEPART QCHAN
250 ADVANCE (Exponential(31,0,1.0))
260 RELEASE CHAN
270 TERMINATE 1
280 Met_10 TERMINATE
290 START 1000000
; Встать в очередь к устройству «CHAN»
; Занять устройство «CHAN»
; Освободить одно место в очереди
; Задержать на обслуживании на единичное
; время
; Освободить устройство «CHAN»
; Удалять по одному транзакту
; Удалить транзакты из модели
-
; Прогон 1 млн. транзактов
GPSS World Simulation Report - Untitled Model 1.3.1
Wednesday, |
November 24, 2 022 |
11:22:02 |
|
START TIME |
END TIME BLOCKS |
FACILITIES STORAGES |
|
0.000' |
1114430.513 24 |
1 0 |
|
NAME |
VALUE |
||
CHAN |
1C0C6. COO' |
||
KLUCH1 |
10'007.000 |
||
KLUCH2 |
10004.000' |
||
KL_1 |
5. COO' |
||
KL_2 |
9.000' |
||
MET_1 |
3. COO' |
||
MET_10 |
24 . COO' |
||
MET_2 |
4 . COO' |
||
MET_2C |
18 . COO' |
||
P_1 |
0.082 |
||
P_2 |
0.918 |
||
QCHAN |
1000'5. COO' |
||
SWITCH |
2 . COO' |
||
T_1 |
3.390 |
||
T 2 |
0.302 |
||
LABEL LOC |
BLOCK TYPE |
ENTRY COUNT CURRENT COUNT RETRY |
|
1 |
GENERATE |
1 |
O' O' |
SWITCH 2 |
TRANSFER |
645960' |
O' 0 |
MET_1 3 |
TRANSFER |
53243 |
O' 0 |
MET_2 4 |
TRANSFER |
592717 |
O' O' |
KL_1 5 |
LOGIC |
53243 |
O' 0 |
6 |
ADVANCE |
53243 |
1 O' |
7 |
LOGIC |
53242 |
0' 0' |
8 |
TRANSFER |
53242 |
O' 0 |
KL_2 9 |
LOGIC |
592717 |
O' O' |
10 |
ADVANCE |
592717 |
O' 0 |
11 |
LOGIC |
592717 |
O' O' |
12 |
TRANSFER |
592717 |
O' O' |
13 |
GENERATE |
163979 |
O' 0 |
14 |
GATE |
163979 |
O' O' |
15 |
TRANSFER |
82361 |
O' O' |
16 |
GENERATE |
1844133 |
O' 0 |
17 |
GATE |
1844133 |
O' O' |
MET_20 18 |
QUEUE |
1000002 |
1 0 |
19 |
SEIZE |
1000001 |
1 O' |
20' |
DEPART |
1000000 |
O' O' |
21 |
ADVANCE |
100000 O' |
O' 0 |
22 |
RELEASE |
1000000 |
O' O' |
23 |
TERMINATE |
100000 O' |
O' O' |
MET 10 24 |
TERMINATE |
1008110' |
O' 0 |
FACILITY ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY
CHAN 1000001 0.898 1.000 1 2008099 0 0 O' 1
OCHAN 175 2 1000002 52010 20.300 22.623 23.864 0
Это достигается следующим логическим оператором GATE (впустить). Его формат: GATE X A,[B], где A – имя проверяемого объекта; B – номер блока, к которому переходит транзакт, если положение объекта не отвечает условию проверки; X – логический оператор с множеством значений, проверяющий условие, которое должно быть выполнено для объекта в текущий момент для успешного завершения проверки. В нашем случае объектом A является переключатель Kluch1 или Kluch2, а положение объекта LS – логический ключ включен.
В имитационной модели с применением логических ключей необходимо указать еще продолжительность их работы, в тексте программы – это время для первого ключа равно T_1#3.1, а для второго – T_2#3.1. Здесь T_1 и T_2 – средние интервалы для фаз, # операция арифметического умножения. Константа 3.1 должна подбираться экспериментально так, чтобы показатели работы СМО не отклонялись от реальных значений. В этом состоит недостаток имитационной модели с использованием составных распределений и логических переключателей.
Из результатов имитации на рисунке 3 следует, что коэффициент загрузки равен 0,9 и среднее время обслуживания – единица, т. е. исходные данные для примера и результаты моделирования совпадают. Среднее время ожидания заявок в очереди в 22,623 единицы времени практически совпадает с результатом численного моделирования 22, 59. Средняя длина очереди в модели 20,30 также практически совпадает с результатом численного моделирования 20,33.
Заключение
В работе представлены разработанные алгоритм и имитационная модель для имитации функционирования СМО HE2/M/1 с гиперэрлан-говским входным распределением второго порядка. В ходе разработки имитационной модели был использован сложный механизм логических переключателей фаз закона распределения, что позволило построить адекватную имитационную модель продвижения транзактов внутри модели. Полученные результаты публикуются впервые.
Список литературы Проблема генерирования псевдослучайных последовательностей составных распределений для имитации СМО
- Боев В.Д. Моделирование систем. Инструментальные средства GPSS World: учеб. пособие. СПб.: БХВ-Петербург, 2004. 368 с.
- Кудрявцев Е.М. GPSS World. Основы имитационного моделирования различных систем. М.: ДМК Пресс, 2004. 320 с.
- Алиев Т.И. Основы моделирования дискретных систем. СПб.: СПбГУ ИТМО, 2009. 363 с.
- Шрайбер Т.Дж. Моделирование на GPSS. М.: Машиностроение, 1980. 592 с.
- Тарасов В.Н. Анализ и сравнение двух систем массового обслуживания с гиперэрланговскими входными распределениями // Радиоэлектроника, информатика, управление. 2018. № 4 (47). С. 61–70.
- Тарасов В.Н., Бахарева Н.Ф., Када О. Математическая модель телетрафика на основе системы HE2/M/1 // Информационные технологии. 2019. № 4. С. 205–210.
- Тарасов В.Н., Липилина Л.В., Бахарева Н.Ф. Автоматизация расчета характеристик систем массового обслуживания для широкого диапазона изменения их параметров // Информационные технологии. 2016. № 12. С. 952–957.
- Тарасов В.Н., Бахарева Н.Ф. Компьютерное моделирование вычислительных систем. Теория, Алгоритмы, Программы. Оренбург: ОГУ, 2005. 183 с.
- Бахарева Н.Ф. Уравнения равновесия потоков в сетевых моделях на основе математических операций мультиплексирования и демультиплексирования // Известия высших учебных заведений. Поволжский регион. Технические науки. 2009. № 4 (12). С. 12–25.
- Myskja A. An improved heuristic approximation for the GI/GI/1 queue with bursty arrivals // Teletraffic and Datatraffic in a Period of Change, ITC-13. 1991. P. 683–688.
- Whitt W. Approximating a point process by a renewal process: two basic methods // Operation Research. 1982. Vol. 30, no. 1. P. 125–147.
- Алиев Т.И. Аппроксимация вероятностных распределений в моделях массового обслуживания // Научно-технический вестник информационных технологий, механики и оптики. 2013. № 2 (84). С. 88–93.
- Gromoll H.C., Terwilliger B., Zwart B. Heavy traffic limit for a tandem queue with identical service times // Queueing Systems. 2018. Vol. 89, no. 3. P. 213–241.
- Legros B. M/G/1 queue with event-dependent arrival rates // Queueing Systems. 2018. Vol. 89, no. 3. P. 269–301.