Вы находитесь на странице: 1из 30

РЕФЕРАТ

В работе описана имитационная модель RQ-системы с различными


видами входящего потока и обслуживания заявки.
Имитационная модель системы построена на основе дискретно
событийного подхода. Программная реализация имитационной модели
выполнена в среде разработки Microsoft Visual Studio 2015 Express с
использованием языка C#.
Цель работы: Разработка программной реализации имитационной
модели RQ-системы с вызываемыми заявками ориентированной на
конечного пользователя, не являющегося специалистом в программировании.
Объект исследования: система массового обслуживания
MMPP|GI|1|1 с вызываемыми заявками.
Ключевые слова: MMPP-поток, число заявок в системе, RQ-система,
имитационное моделирование.
Результат работы: Построена программная реализация RQ-системы с
вызываемыми заявками, позволяющая получать распределение числа заявок
в системе в виде графика.

3
Оглавление

Введение ............................................................................................... 5

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

2. Методы моделирования случайных величин .................................... 8

2.1 Распределение хи-квадрат ............................................................ 8


2.2 Гамма-распределение. .................................................................. 8

2.3 Бета-распределение. ..................................................................... 9

3. Моделирование случайных потоков однородных событий .............. 9

3.1 Моделирование MMPP потока ................................................... 10

3.2 Моделирование времени обслуживания заявок ......................... 12

4. Имитационная модель ..................................................................... 14

4.1 Описание имитационной модели ............................................... 14


4.2 Блок-схема.................................................................................. 18

4.3 Приложение к имитационной модели ........................................ 19

4.4 Интерфейс .................................................................................. 20

4.5 Пример результата функционирования программы................... 22

4.6 Численные примеры ................................................................... 24

Заключение ......................................................................................... 27

Список литературы ............................................................................. 28

4
Введение

В настоящее время изучению RQ-систем, которые являются


математическими моделям реальных систем call-центров,
телекоммуникационных сетей связи, компьютерных сетей, систем в
экономике уделяется большое внимание.
Такие системы характеризуются тем, что клиенты (заявки, звонки,
сообщения и т.д.) не могут быть обслужены и вынуждены ждать, после чего,
они вновь обращаются к прибору с целью обслужиться. Как правило,
рассматриваются RQ-системы, в которых входящие вызовы либо сразу
обслуживаются прибором, либо из-за его занятости уходят на орбиту и уже
обращаются за обслуживанием к прибору после случайной задержки. Однако
в настоящее время все чаще встречаются ситуации, в которых сервер имеет
возможность совершать исходящие запросы. Примером того может служить
обычный сотовый телефон, используя который мы имеем функции входящих
и исходящих звонков. В различных call-центрах операторы принимают
входящие звонки, но как только у них возникает свободное время, и они
находятся в режиме ожидания, они могут осуществлять исходящие вызовы с
целью рекламы, продвижения и продажи пакетов товаров и услуг центра.
В своей работе Фалин [1] получает интегральные формулы для
частичных производящих функций и некоторые явные выражения для
характеристик RQ-системы M|GI|1|1 с вызываемыми заявками. Цой с
соавторами [2] расширил модель Фалина на случай RQ-системы M|GI|1|1.
Арталехо и Ресинг [3] получили первые моменты для характеристик RQ-
системы M|GI|1|1, в которой времена обслуживания входящих и вызываемых
заявок различны.
Мартин и Арталехо [4] рассматривают RQ-системы M|GI|1|1 с
вызываемыми заявками, в которой заявки из ИПВ после экспоненциальной
задержки обращаются к прибору в порядке очереди.
В работе Арталехо и Фунг-Дука [5] рассматривается RQ-система
M|GI|1|1 с вызываемыми заявками и различным временем обслуживания
5
поступающих и вызываемых заявок. В работе авторами найдены явное
решение для двумерного распределения вероятностей состояний прибора и
числа заявок на орбите. Также найдены факториальные моменты, на основе
которых могут быть применимы предложенные численные и рекуррентные
алгоритмы
В предложенной работе представлена программа для моделирования
RQ-системы MMPP|GI|1|1 с вызываемыми заявками и показаны графики
распределения процесса i(t) – числа заявок в системе в зависимости от
введенных параметров.

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

В данной работе рассматривается RQ-система с MMPP входящим


потоком (Марковский модулированный пуассоновский поток). Заявка
входящего потока, поступая в систему и обнаруживая прибор свободным,
занимает его, а прибор начинает обслуживание по заданному закону
распределения 𝐵1 (𝑥) Если же заявка, поступая в систему, обнаруживает
прибор занятым, она мгновенно уходит на орбиту и осуществляет там
случайную задержку в течение экспоненциально-распределенного времени с
параметром σ.

Рисунок. 1 – RQ-система с вызываемыми заявками

Когда прибор свободен, он вызывает заявку извне с интенсивностью


α. Вызываемая заявка встает на свободный прибор и обслуживается по
заданному закону распределения 𝐵2 (𝑥).
Обозначим
i(t) – число заявок в системе в момент времени t,
k(t) – состояние прибора:
0 – прибор свободен
1 – прибор занят обслуживанием заявки входящего потока
2 – прибор обслуживает вызываемую заявку
Ставится задача нахождения распределения числа заявок в RQ-
системе с вызываемыми заявками. Основным содержанием работы является
описание имитационной модели данной системы.

7
2. Методы моделирования случайных величин

Случайные величины, распределенные по различным законам, можно


генерировать с помощью базовой случайной величины. Базовая случайная
величина – равномерно распределённая на отрезке [0,1] случайная величина.

2.1 Распределение хи-квадрат


Распределение хи-квадрат с числом степеней свободы k имеет
функцию распределения
𝑘 𝑥
γ( , )
𝐹𝑋2 (𝑘 ) (𝑥 ) = 2 2
𝑘
Γ( )
2
где γ и Γ – неполная и полная гамма-функции.
Случайная величина X, распределённая по хи-квадрат распределению
с k степенями свободы может быть сгенерирована с помощью суммирования
k нормально распределённых на [0,1] случайных величин.
𝑛

𝑋 = ∑ 𝑌𝑖
𝑖=1

где 𝑌𝑖 ~𝑁(0,1)

2.2 Гамма-распределение.
Гамма-распределение с параметром k и θ – коэффициент
масштабирования. Его функция распределения:
𝑥
𝑌( , 𝑘)
𝐹𝑋 (𝑥) = θ
Γ(𝑘)
Случайная величина X, имеющая гамма-распределение с параметрами k и θ
может быть сгенерирована с помощью k независимых случайных величин,
1
распределённых по экспоненциальному закону с параметром
θ
𝑘

𝑋 = ∑ 𝑌𝑖
𝑖=1

8
1
где 𝑌𝑖 ~𝑒𝑥𝑝( ).
θ

2.3 Бета-распределение.
Бета-распределение с параметрами α и β. Его функция распределения
не выражается в элементарных функциях. Плотность вероятности:
1
𝑓𝑋 (𝑥 ) = 𝑥 α−1 (1 − 𝑥)β−1
𝐵(α, β)
где B(α,β) бета-функция.
Случайная величина X, имеющая бета-распределение с параметрами α
и β может быть сгенерирована из случайных величин, имеющих гамма-
распределение.
𝑌
𝑋=
𝑍+𝑌
где 𝑌~Γ(α, 1), 𝑍~Γ(β, 1).

3. Моделирование случайных потоков однородных событий

Случайный поток – это последовательность случайных событий,


наступающих в отдельные моменты времени на интервале моделирования и
характеризующихся только моментами своего появления [𝑡0 ,𝑇] и
характеризующихся только моментами своего появления [5].
Далее будем предполагать, что моменты наступления событий
рассматриваемого потока упорядочены во времени по возрастанию, т. е.
𝑡0 ≤ 𝑡1 ≤ ⋯ ≤ 𝑡𝑖 ≤ ⋯ ≤ 𝑇. По-другому описать поток можно через длины
интервалов 𝜏𝑖 между моментами наступления событий τ𝑖 = 𝑡𝑖 − 𝑡𝑖−1
Процесс моделирования случайного потока состоит в
последовательной генерации упорядоченных по возрастанию моментов
наступления его событий.

9
3.1 Моделирование MMPP потока
Пусть задан некоторый случайный процесс k (t ) и множество

неотрицательных чисел  k  0 .
Случайный поток однородных событий будем называть
модулированным пуассоновским (MP-потоком), управляемым случайным
процессом k (t ) , если выполнены условия
Pm(t  t )  m  1 | m(t )  m, k (t )  k k t  o(t ) ,

Pm(t  t )  m  1 | m(t )  m, k (t )  k   o( t ) .
Частным случаем MP-потоков является класс модулированных
пуассоновских потоков (MMPP-потоков).
Модулированный пуассоновский поток называется MMPP-потоком,
если управляющий процесс k(t) является цепью Маркова с непрерывным
временем [6].
MMPP-поток задается матрицей инфинитезимальных характеристик
цепи Маркова k(t) 𝑸 = ‖𝑞𝑖𝑗 ‖ и вектором 𝚲 = {𝛌𝟏 , … , 𝛌𝒏 }, содержащим
𝑛×𝑛

значения интенсивности потока при каждом состоянии управляющей цепи


Маркова.
Для определения начального i-го состояния цепи Маркова
вычисляется стационарное распределение вероятностей состояний цепи.
После этого i-е состояние моделируется как дискретная случайная величина с
𝑙𝑛 (𝑈)
заданным рядом распределения. По формуле 𝑇𝑖 = вычисляется время
𝑞𝑖𝑖

пребывания цепи Маркова в этом состоянии, в течение которого


генерируются события простейшего потока с интенсивностью λ𝑖 . По
истечению этого времени цепь Маркова переходит в другое состояние.
Вероятности перехода из i-го состояния в любое другое находятся по
𝑞𝑖𝑗
формуле 𝑃𝑖𝑗 = − , 𝑖 ≠ 𝑗.
𝑞𝑖𝑖

Алгоритм моделирования MMPP-потока представлен на рисунке 2 [7].

10
Рисунок 2 – Алгоритм моделирования MMPP-потока

11
3.2 Моделирование времени обслуживания заявок
Случайный поток называется рекуррентным, если выполняются
следующие условия [8]:
 последовательность длин интервалов между моментами
наступления событий {𝜏𝑖 }𝑖≥2 – независимые случайные
величины;
 𝐴𝑘 (𝑥 ) = 𝐴(𝑥 ), 𝑘 ≥ 2 где 𝐴𝑘 (𝑥 ) = 𝑃{𝜏𝑘 < 𝑥 }, 𝑘 ≥ 1. Это
означает, что в рекуррентном потоке все интервалы между
моментами наступления событий, кроме первого, должны быть
распределены по одному закону;
 стационарность потока.
Для моделирования рекуррентного потока достаточно построить
необходимое число реализаций потока, то есть таких неслучайных
последовательностей 𝑡1, 𝑡2 , … моментов поступления заявок в систему,
интервалы между которыми 𝜏𝑖 = 𝑡𝑖 − 𝑡𝑖−1 являлись бы возможными
реализациями случайных величин 𝜏𝑖. Так как поток стационарный, можем
принять 𝑡0 = 0, тогда 𝜏1 = 𝑡1.
Процедура построения последовательности 𝑡1, 𝑡2 , … состоит в
следующем[9]. Если моделирование предполагает генерацию большого числа
событий потока (1 млн. и более), то этим свойством можно пренебречь, и
моделировать все интервалы, используя функцию распределения 𝐴(𝑥 ). Длина
промежутка 𝜏 генерируется как реализация случайной величины, имеющей
функцию распределения 𝐴(𝑥 ), каким-нибудь известным методом. Алгоритм
моделирования рекуррентного потока представлен на рисунке 3.

12
Рисунок 3 – Алгоритм моделирования рекуррентного потока

13
4. Имитационная модель

Суть имитационного моделирования заключается в том, что на


компьютере воссоздаётся достаточно точная модель изучаемой системы
массового обслуживания и моделируется её функционирование. В отличие от
аналитического моделирования, имитационное способно учесть всё
многообразие свойств исследуемого объекта. В отличие от аналитического
моделирования, имитационное способно учесть всё многообразие свойств
исследуемого объекта.

4.1 Описание имитационной модели


Имитационная модель строится на основе дискретно-событийного
подхода [6]. Типы событий, наступающих в системе с течением времени:
 Поступление заявки в систему;
 Завершение обслуживание заявки, пришедшей из потока или
орбиты;
 Завершение обслуживание заявки пришедшей по запросу
прибора;
 Запрос прибором заявки;
 Поступление заявки с орбиты.
Так как входящий поток Пуассоновский либо MMPP, время
поступление заявки моделируется исходя из выбранного пользователем
варианта. Генерируются интервалы между моментами наступления событий
потока τ𝑖 = 𝑡𝑖 − 𝑡𝑖−1 , 𝑖 = 1 … 𝑛.
Время обслуживания генерируется исходя из выбранного
пользователем распределения, интервалы между запросами заявки прибором
и поступления заявок с орбиты генерируются по экспоненциальному закону с
параметрами, заданными пользователем. Пользователь может задать время
моделирования.

14
Алгоритм моделирования:
1. На основе введенных данных устанавливается время
моделирования.
2. Моделируются интервалы всех возможных на данный
момент типов событий системы; задаётся вектор состояния системы, в
котором содержится информация об абсолютном времени системы
(текущее время моделирования) (рис. 4); задается количество заявок на
орбите и состояние прибора.
3. Находится минимум полученных данных, если он больше
времени моделирования, то выводятся полученные данные, и работа
программы заканчивается. Иначе возможны пять вариантов:
3.1. Минимум соответствует моменту поступления заявки в
систему из потока, тогда к абсолютному времени системы
прибавляется найденный интервал:
3.1.1. Если прибор не занят, то заявка уходит на
обслуживание и генерируется интервал нахождения её на приборе.
3.1.2. Если прибор занят, то заявка уходит на орбиту и
генерируется время следующего запроса прибора с орбиты.
3.2. Минимум соответствует времени окончания обслуживания
заявки из потока или с орбиты, тогда к абсолютному времени системы
прибавляется найденный интервал, прибор освобождается, а
следующий момент наступления события обслуживания
устанавливается за пределами моделирования.
3.3. Минимум соответствует времени окончания обслуживания
запрошенной заявки, тогда к абсолютному времени системы
прибавляется найденный интервал, прибор освобождается, а
следующий момент наступления события обслуживания
устанавливается за пределами моделирования.

15
3.4. Минимум соответствует моменту запроса прибором заявки,
тогда к абсолютному времени системы прибавляется найденный
интервал:
3.4.1. Если прибор не занят, то заявка уходит на
обслуживание и генерируется интервал нахождения её на приборе.
3.4.2. Если прибор занят, то заявка теряется.
3.5. Минимум соответствует времени запроса прибора с
орбиты, тогда к абсолютному времени системы прибавляется
найденный интервал:
3.5.1. Если прибор свободен, то заявка с орбиты уходит на
обслуживание, генерируется интервал нахождения её на приборе и
количество заявок на орбите уменьшается на одну, при условии,
что заявка на орбите была не одна.
3.5.2. Если прибор занят, заявка остаётся на орбите.

16
Вектор моментов
Вектор состояний
наступления различных
системы
событий
• Поступление заявки из • Абсолютное время
потока системы
• Обслуживание заявки • Количество заявок
из потока или орбиты находящихся в данный
• Обслуживание момент на орбите
запрошенной заявки • Состояние прибора
• Запрос заявки
прибором
• Запрос прибора
заявкой с орбиты
Рисунок 4 – Структура данных имитационной модели

17
4.2 Блок-схема

Рисунок 5 – Блок-схема работы программы

18
4.3 Приложение к имитационной модели
Приложение позволяет выбрать одно из четырёх распределений для
времени каждого вида обслуживания:
 Экспоненциальное распределение с параметром λ;
 Распределение хи-квадрат с з заданными степенями свободы;
 Гамма-распределение;
 Бета-распределение.
Также есть возможность выбора входящего потока в систему:
 Простейший с параметром λ;
 MMPP.

19
4.4 Интерфейс
На рисунках 6-8 показан главное интерфейс приложения.
Пользователь имеет возможность задать входящий поток заявок,
распределение каждого типа обслуживания и параметры распределений для
всех типов событий в системе. Также на главной панели программы
находятся два блока для отображения графиков, полоска прогресса по
заполнению которой моделирование оканчивается, кнопки старт и очистить.
Результатом работы будет графики распределения процесса i(t) –
числа заявок в системе в момент времени t.

Рисунок 6 – Выбор входящего потока

Рисунок 7 – Выбор распределения типов обслуживания

20
Рисунок 8 – Интерфейс программы

21
4.5 Пример результата функционирования программы
На рисунке 9 показан результат работы программы при простейшем
входящем потоке с параметром λ = 1, экспоненциально распределённым, с
параметром μ1 = 2 временем обслуживания заявок поступающих из потока и
орбиты, экспоненциально распределённым, с параметром μ2 = 2 временем
обслуживания вызываемых заявок, экспоненциально распределённым, с
параметром α = 1 временем запроса прибором заявки, экспоненциально
распределённым, с параметром σ = 2 временем запроса прибора заявками с
орбиты. Время моделирования T = 1000000. Представлены графики
распределения процесса i(t) – числа заявок в системе.

Рисунок 9 – Пример работы программы

22
На рисунке 10 показан результат работы при входящем MMPP-потоке
с заданными параметрами интенсивности и матрицей инфинитезимальных
характеристик, хи-квадрат распределённым временем обслуживания заявок
поступающих из потока и орбиты, гамма-распределённым временем
обслуживания запрошенных заявок, экспоненциально распределённым, с
параметром α = 1 временем запроса прибором заявки, экспоненциально
распределённым, с параметром σ = 2 временем запроса прибора заявками с
орбиты. Время моделирования T = 1000000. Представлены графики
распределения процесса i(t) – числа заявок в системе.

Рисунок 10 – Пример работы программы

23
4.6 Численные примеры
В дальнейшем предполагается исследование системы M|M|1|1
методом асимптотического анализа в различных предельных условиях (при
σ → 0, α → ∞ и μ2 → 0).

Рисунок 11 – λ = 1 μ1 = 2 μ2 = 2 α = 1 σ = 0,1

Рисунок 12 – λ = 1 μ1 = 2 μ2 = 2 α = 1 σ = 0,03

24
Рисунок 13 – λ = 1 μ1 = 2 μ2 = 2 α = 10 σ = 1

Рисунок 14 – λ = 1 μ1 = 2 μ2 = 2 α = 100 σ = 1

25
Рисунок 15 – λ = 1 μ1 = 2 μ2 = 0.1 α = 1 σ = 1

Рисунок 16 – λ = 1 μ1 = 2 μ2 = 0.03 α = 1 σ = 1

26
Заключение

В работе представлено описание имитационной модели для


моделирования RQ-системы MMPP|GI|1|1 с вызываемыми заявками. В ходе
разработки были изучены возможности применения методов имитационного
моделирования, в частности был подробно рассмотрен дискретно –
событийный подход. Также были изучены некоторые методы генерирования
случайных величин и случайных потоков.
Получены распределения исследуемого процесса для различных
параметров, дающая, своего рода, наглядное представление о поведении RQ-
системы MMPP|GI|1|1 с вызываемыми заявками.
К сожалению, аналитических результатов исследования по
рассмотренным RQ-системам в научной литературе пока нет. Поэтому
имитационное моделирование, которое можно выполнить с помощью
разработанной программы, является пока единственным способом
исследования таких систем массового обслуживания. Далее при получении
аналитических результатов можно будет сравнить из с результатами
имитационного моделирования.

27
Список литературы

1. Falin, G.I. 1979. Model of coupled switching in presence of


recurrent calls. Engineering Cybernetics Review 17, 53-59.
2. Choi, B.D., Choi, K.B. and Lee, Y.W. 1995. M|G|1 retrial
queueing systems with two types of calls and finite capacity. Queueing Systems
19, 215-229.
3. Artalejo, J.R. and Resing J.A.C. 2010. Mean value analysis of
single server retrain queues. Asia-Pacific Journal of Operational Research 27,
335-345.
4. Martin, M. And Artalejo, J.R. 1995. Analysis of an M|G|1
queue with two types of impatient units. Advances in Applied Probability 27,
840-861.
5. Дигрис, А.В. Дискретно-событийное моделирование
[Электронный ресурс]: курс лекций / А.В. Дигрис. – Минск: БГУ, 2011. –
Режим доступа: http://www.elib.bsu.by/, ограниченный.
6. Мещеряков, Р.В. Применение параллельных вычислений в
имитационном моделировании сетей массового обслуживания /
Р.В.Мещеряков, А.Н. Моисеев, А.Ю. Демин, В.А. Дорофеев, С.А. Матвеев
// Известия Томского политехнического университета. – 2014. – Т. 325, №
5. – С. 99–109.
7. Даммер, Д.Д. Имитационное моделирование: учебно-
методическое пособие / Д.Д. Даммер, Н.Ю. Марголис, С.А. Цой. – Томск:
ТГУ, 2010 – 32 с.
8. Назаров, А.А., Терпугов, А.Ф. Теория массового
обслуживания: учебное пособие. – 2-е изд., испр. – Томск: Изд-во НТЛ,
2010. – 228 с.
9. Бусленко, Н.П. Метод статистического моделирования. –
М: Статистика, 1970. – 113 с.

28
10. Artalejo, J.R. and Tuan, P.D. 2012. Markovian retrial queueing
with two way communication. Journal of industrial and management
optimization, 8(4). 781-206
11. Вишневский, В.М Теоритические основы проектирования
компьютерных сетей. – Москва: Техносфера, 2003. –512 с.
12. Назаров, А.А. Метод асимптотического анализа в теории
массового обслуживания / Назаров А.А., Моисеева С.П. – Томск:
Издательство НТЛ, 2006. – 112 с.
13. Марголис, Н.Ю. Имитационное моделирование: учебное
пособие – Томск ТГУ, 2015 – 129 с.

29

Оценить