РАССЧЕТ ХАРАКТЕРИСТИК СИСТЕМ МАССОВОГО ОБСЛУЖИВАНИЯ курсовая работа


МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«КУБАНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»
(ФГБОУ ВПО «КубГУ»)
Физико-технический факультет
Кафедра оптоэлектроники
КУРСОВАЯ РАБОТА
РАССЧЕТ ХАРАКТЕРИСТИК СИСТЕМ МАССОВОГО ОБСЛУЖИВАНИЯ
Работу выполнила Кучеренко Галина
Курс 3
Направление Информационные системы и технологии
Научный руководитель
канд. физ.-мат. наук, доцент А.И. Приходько
Нормоконтролер инженер. А. Прохорова
Краснодар 2013

1. Основные понятия теории массового обслуживания.
Определение и классификация СМО
При исследовании операций часто приходится сталкиваться с системами, предназначенными для многоразового использования при решении однотипных задач. Возникающие при этом процессы получили название процессов обслуживания, а системы – систем массового обслуживания (СМО). Примерами таких систем являются телефонные системы, ремонтные мастерские, вычислительные комплексы, билетные кассы, магазины, парикмахерские и т.п.
Каждая СМО состоит из определенного числа обслуживающих единиц (приборов, устройств, пунктов, станций), которые будем называть каналами обслуживания. Каналами могут быть линии связи, рабочие точки, вычислительные машины, продавцы и др. По числу каналов СМО подразделяют на одноканальные и многоканальные.
Заявки поступают в СМО обычно не регулярно, а случайно, образуя так называемый случайный поток заявок (требований). Обслуживание заявок, продолжается какое-то случайное время. Случайный характер потока заявок и времени обслуживания приводит к тому, что СМО оказывается загруженной неравномерно: в какие-то периоды времени скапливается очень большое количество заявок, в другие периоды СМО работает с недогрузкой или простаивает.
Предметом теории массового обслуживания является построение математических моделей, связывающих заданные условия работы СМО (число каналов, их производительность, характер потока заявок и т.п.) с показателями эффективности СМО, описывающими ее способность справляться с потоком заявок.
В качестве показателей эффективности СМО используются: среднее число заявок, обслуживаемых в единицу времени; среднее число заявок в очереди; среднее время ожидания обслуживания; вероятность отказа в обслуживании без ожидания; вероятность того, что число заявок в очереди превысит определенное значение и т.п.
СМО делят на два основных типа (класса): СМО с отказами и СМО с ожиданием (очередью). В СМО с отказами заявка, поступившая в момент, когда все каналы заняты, получает отказ, покидает СМО и в дальнейшем процессе обслуживания не участвует. В СМО с ожиданием заявка, пришедшая в момент, когда все каналы заняты, не уходит, а становится в очередь на обслуживание.
СМО с ожиданием подразделяются на разные виды в зависимости от того, как организована очередь: с ограниченной или неограниченной длиной очереди, с ограниченным временем ожидания и т.п.
Для классификации СМО большое значение имеет дисциплина обслуживания, определяющая порядок выбора заявок из числа поступивших и порядок распределения их между свободными каналами. По этому признаку обслуживание заявки может быть организовано по принципу «первая пришла – первая обслужена», «последняя пришла – первая обслужена» или обслуживание с приоритетом. Приоритет может быть как абсолютным, когда более важная заявка «вытесняет» из-под обслуживания обычную заявку, так и относительным, когда более важная заявка получает лишь «лучшее» место в очереди.
Марковские случайные процессы и потоки событий
Процесс работы СМО представляет собой случайный процесс. Под случайным (вероятностным или стохастическим) процессом понимается процесс изменения во времени состояния какой-либо системы в соответствии с вероятностными закономерностями.
Процесс называется процессом с дискретными состояниями, если его возможные состояния S1, S2, S3… можно заранее перечислить, а переходы системы из состояния в состояние происходит мгновенно (скачком). Процесс называется процессом с непрерывным временем, если моменты возможных переходов системы из состояния в состояние не фиксированы заранее, а случайны.
Процесс работы СМО представляет собой случайный процесс с дискретными состояниями и непрерывным временем.
Случайный процесс называется марковским или случайным процессом без последствия, если для любого момента времени t0 вероятностные характеристики процесса в будущем зависят только от его состояния в данный момент t0 и не зависят от того, когда и как система пришла в это состояние.
Пример марковского процесса: счетчик в такси.
Многие процессы можно приближенно считать марковскими. Например, процесс игры в шахматы.
В ряде случаев предысторией рассматриваемых процессов можно просто пренебречь и применять для их изучения марковские модели.
При анализе случайных процессов с дискретными состояниями удобно пользоваться геометрической схемой – так называемой графом состояний. Обычно состояния системы изображаются прямоугольниками (кружками), а возможные переходы из состояния в состояние – стрелками (ориентированными дугами), соединяющими состояния (рис. 1).

Рисунок 1 – Граф состояний.
Для математического описания марковского процесса с дискретными состояниями и непрерывным временем, протекающего в СМО, познакомимся с одним из важных понятий теории вероятности – понятием потока событий.
Под потоком событий понимается последовательность однородных событий, следующих одно за другим в какие-то случайные моменты времени (например, поток вызовов на телефонной станции, поток отказов ЭВМ, поток покупателей).
Поток характеризуется интенсивностью λ – частотой появления событий или средним числом событий, поступающих в СМО в единицу времени.
Поток событий называется регулярным, если события следуют одно за другим через определенные промежутки времени.
Поток событий называется стационарным, если его вероятностные характеристики не зависят от времени. В частности, интенсивность стационарного потока есть величина постоянная: .
Поток событий называется потоком без последействия, если для любых двух непересекающихся участков времени и число событий, попадающих на один из них, не зависит от числа событий, попадающих на другие. Например, поток пассажиров, входящих в метро, практически не имеет последствия. А, скажем, поток покупателей, отходящих с покупками от прилавка, уже имеет последствия (хотя бы потому, что интервал времени между отдельными покупателями не может быть меньше, чем минимальное время обслуживания каждого из них).
Поток событий называется ординарным, если вероятность попадания на малый (элементарный) участок времени ∆t двух и более событий пренебрежимо мала по сравнению с вероятностью попадания одного события. Другими словами, поток событий ординарен, если события появляются в нем поодиночке, а не группами.
Поток событий называется простейшим (или стационарным пуассоновским), если он одновременно стационарен, ординарен и не имеет последствия.
Простейший поток в качестве предельного получается при наложении (суперпозиции) достаточно большого числа n независимых, стационарных и ординарных потоков (сравнимых между собой по интенсивностям ) получается поток, близкий к простейшему с интенсивностью λ, равной сумме интенсивностей входящих потоков:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (1)
Рассмотрим на оси времени простейший поток событий как неограниченную последовательность случайных точек. (Рис. 2)

Рисунок 2.
Можно показать, что для простейшего потока число m событий (точек), попадающих на произвольный участок времени τ, распределено по закону Пуассона
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (2)
для которого математическое ожидание случайной величины равно ее дисперсии:
В частности, вероятность того, что за время τ не произойдет ни одного события (m = 0), равна
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (3)
Найдем распределение интервала времени T между произвольными двумя соседними событиями простейшего потока.
В соответствии с формулой GOTOBUTTON ZEqnNum208651 \* MERGEFORMAT REF ZEqnNum208651 \* Charformat \! \* MERGEFORMAT (3) вероятность того, что на участке времени длиной t не появится ни одного из последующих событий, равна
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (4)
а вероятность противоположного события, т.е. функция распределения случайной величины T, есть
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (5)
Плотность вероятности случайной величины есть производная ее функции распределения:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (6)
Распределение, задаваемое плотностью вероятности GOTOBUTTON ZEqnNum579463 \* MERGEFORMAT REF ZEqnNum579463 \* Charformat \! \* MERGEFORMAT (6) или функцией распределения GOTOBUTTON ZEqnNum468966 \* MERGEFORMAT REF ZEqnNum468966 \* Charformat \! \* MERGEFORMAT (5), называется показательным (или экспоненциальным). Таким образом, интервал времени между двумя соседними произвольными событиями имеет показательное распределение, для которого математическое ожидание равно среднему квадратическому отклонению случайной величины
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (7)
и обратно по величине интенсивности потока λ.
Важнейшее свойство показательного распределения (присуще только показательному распределению) состоит в следующем: если промежуток времени, распределенный по показательному закону, уже длился некоторое время τ, то это никак не влияет на закон распределения оставшейся части промежутка (Т-τ): он будет таким же, как и закон распределения всего промежутка Т.
Для простейшего потока с интенсивностью λ вероятность попадания на элементарный (малый) отрезок времени ∆t хотя бы одного события потока равна согласно GOTOBUTTON ZEqnNum468966 \* MERGEFORMAT REF ZEqnNum468966 \* Charformat \! \* MERGEFORMAT (5)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (8)
1.3. Уравнения Колмогорова. Предельные вероятности состояний
Рассмотрим математическое описание марковского процесса с дискретными состояниями и непрерывным временем на примере графа, изображенного на рисунке 1. Будем полагать, что все переходы системы из состояния Si в Sj происходят под воздействием простейших потоков событий с интенсивностями 𝜆ij (i, j=0, 1, 2, 3); так, переход системы из состояния S0 в S1 будет происходить под воздействием потока отказов первого узла, а обратный переход из состояния S1 в S0 — под воздействием потока "окончаний ремонтов" первого узла и т.п.
Граф состояний системы с проставленными у стрелок интенсивностями будем называть размеченным. Рассматриваемая система S имеет четыре возможных состояния: S0, S1, S2, S3.
Вероятностью i-го состояния называется вероятность pi(f) того, что в момент t система будет находиться в состоянии Si. Очевидно, что для любого момента t сумма вероятностей всех состояний равна единице:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 9)
Рассмотрим систему в момент t и, задав малый промежуток ∆t, найдем вероятность p0(t+∆t) того, что система в момент t+∆t будет находиться в состоянии S0. Это достигается разными способами.
1. Система в момент t с вероятностью p0(t) находилась в состоянии S0, а за время ∆t не вышла из него.
Вывести систему из этого состояния можно суммарным простейшим потоком с интенсивностью (λ01+λ02), т.е. в соответствии с GOTOBUTTON ZEqnNum551054 \* MERGEFORMAT REF ZEqnNum551054 \* Charformat \! \* MERGEFORMAT (8), с вероятностью, приближенно равной (λ01+λ02)∆t. А вероятность того, что система не выйдет из состояния S0, равна [l-(λ01+λ02)∆t]. Вероятность того, что система будет находиться в состоянии S0 по первому способу, равна по теореме умножения вероятностей:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 10)
2. Система в момент t с вероятностями p1(t) (или p2(t)) находилась в состоянии S1 или S2 и за время ∆t перешла в состояние S0.
Потоком интенсивностью λ10 система перейдет в состояние S0 с вероятностью, приближенно равной 𝜆10∆t (или 𝜆20∆t). Вероятность того, что система будет находиться в состоянии S0 по этому способу, равна p1(t)𝜆10∆t. Применяя теорему сложения вероятностей, получим

откуда

Переходя к пределу при ∆t→0 (приближенные равенства, связанные с применением формулы GOTOBUTTON ZEqnNum551054 \* MERGEFORMAT REF ZEqnNum551054 \* Charformat \! \* MERGEFORMAT (8), перейдут в точные), получим в левой части уравнения производную (обозначим ее для простоты ):

Получили дифференциальное уравнение первого порядка, т.е. уравнение, содержащее как саму неизвестную функцию, так и ее производную первого порядка.
Рассуждая аналогично для других состояний системы S, можно получить систему дифференциальных уравнений Колмогорова для вероятностей состояний:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 11)
Сформулируем правило составления уравнений Колмогорова. В левой части каждого из них стоит производная вероятности i-го состояния. В правой части — сумма произведений вероятностей всех состояний (из которых идут стрелки в данное состояние) на интенсивности соответствующих потоков событий, минус суммарная интенсивность всех потоков, выводящих систему из данного состояния, умноженная на вероятность данного (i-го состояния).
В системе GOTOBUTTON ZEqnNum391775 \* MERGEFORMAT REF ZEqnNum391775 \* Charformat \! \* MERGEFORMAT (11) независимых уравнений на единицу меньше общего числа уравнений. Поэтому для решения системы необходимо добавить уравнение GOTOBUTTON ZEqnNum119931 \* MERGEFORMAT REF ZEqnNum119931 \* Charformat \! \* MERGEFORMAT (9).
Нужно задать начальные условия. Так, например, систему уравнений GOTOBUTTON ZEqnNum391775 \* MERGEFORMAT REF ZEqnNum391775 \* Charformat \! \* MERGEFORMAT (11) естественно решать при условии, что в начальный момент оба узла исправны и система находилась в состоянии S0, т.е. при начальных условиях p0(0)=1, p1(0)=p2(0)=p3(0)=0.
Уравнения Колмогорова дают возможность найти все вероятности состояний как функции времени. Особый интерес представляют вероятности системы рi(t) в предельном стационарном режиме, т.е. при t→∞, которые называются предельными (или финальными) вероятностями состояний.
В теории случайных процессов доказывается, что если число состояний системы конечно и из каждого из них можно (за конечное число шагов) перейти в любое другое состояние, то предельные вероятности существуют.
Предельная вероятность состояния Si имеет четкий смысл: она показывает среднее относительное время пребывания системы в этом состоянии. Например, если предельная вероятность состояния S0, т.е. p0=0.5, то это означает, что в среднем половину времени система находится в состоянии S0.
Так как предельные вероятности постоянны, то, заменяя в уравнениях Колмогорова их производные нулевыми значениями, получим систему линейных алгебраических уравнений, описывающих стационарный режим. Для системы S с графом состояний, изображенном на рисунке 1, такая система уравнений имеет вид: MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 12)
Систему GOTOBUTTON ZEqnNum206426 \* MERGEFORMAT REF ZEqnNum206426 \* Charformat \! \* MERGEFORMAT (12) можно составить непосредственно по размеченному графу состояний, если руководствоваться правилом, согласно которому слева в уравнениях стоит предельная вероятность данного состояния рi, умноженная на суммарную интенсивность всех потоков, ведущих из данного состояния, а справа — сумма произведений интенсивностей всех потоков, входящих в i-e состояние, на вероятности тех состояний, из которых эти потоки исходят.1.4. Процесс гибели и размножения
В теории массового обслуживания широкое распространение имеет специальный класс случайных процессов — так называемый процесс гибели и размножения.
Граф состояний процесса гибели и размножения имеет вид, показанный на рис. 3.

Рисунок 3 Граф состояний процесса гибели и размножения.
Рассмотрим упорядоченное множество состояний системы S0, S1, S2, ..., Sk. Переходы могут осуществляться из любого состояния только в состояния с соседними номерами, т.е. из состояния Sk, возможны переходы только либо в состояние Sk-1, либо в состояние Sk+1.
Предположим, что все потоки событий, переводящие систему по стрелкам графа, простейшие с соответствующими интенсивностями или .
По графу, представленному на рисунке 3, составим и решим алгебраические уравнения для предельных вероятностей состояний.
В соответствии с правилом составления таких уравнений получим: для состояния S0
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 13)
для состояния , которое с учетом GOTOBUTTON ZEqnNum700660 \* MERGEFORMAT REF ZEqnNum700660 \* Charformat \! \* MERGEFORMAT (13) приводится к виду
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 14)
Аналогично, записывая уравнения для предельных вероятностей других состояний, можно получить следующую систему уравнений:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 15)
к которой добавляется нормировочное условие
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (16)
Решая систему GOTOBUTTON ZEqnNum265089 \* MERGEFORMAT REF ZEqnNum265089 \* Charformat \! \* MERGEFORMAT (15), GOTOBUTTON ZEqnNum338688 \* MERGEFORMAT REF ZEqnNum338688 \* Charformat \! \* MERGEFORMAT (16), можно получить
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 17)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 18)
Легко заметить, что в формулах GOTOBUTTON ZEqnNum891465 \* MERGEFORMAT REF ZEqnNum891465 \* Charformat \! \* MERGEFORMAT (18) для p1,p2,…,pn коэффициенты при p0 есть слагаемые, стоящие после единицы в формуле GOTOBUTTON ZEqnNum682570 \* MERGEFORMAT REF ZEqnNum682570 \* Charformat \! \* MERGEFORMAT (17). Числители этих коэффициентов представляют произведение всех интенсивностей, стоящих у стрелок, ведущих слева направо до данного состояния Sk(k=1, 2, ...,n), а знаменатели — произведение всех интенсивностей, стоящих у стрелок, ведущих справа налево до состояния Sk.
2. Основные модели СМО.
2.1. СМО с отказами
В качестве показателей эффективности СМО с отказами будем рассматривать:
А — абсолютную пропускную способность СМО, т.е. среднее число заявок, обслуживаемых в единицу времени;
Q — относительную пропускную способность, т.е. среднюю долю пришедших заявок, обслуживаемых системой;
Ротк. — вероятность отказа, т.е. того, что заявка покинет СМО необслуженной;
— среднее число занятых каналов (для многоканальной системы).
2.1.1 Одноканальная система с отказами.
Рассмотрим задачу:
Имеется один канал, на который поступает поток заявок с интенсивностью λ. Поток обслуживаний имеет интенсивность μ1. Найти предельные вероятности состояний системы и показатели ее эффективности.
Система S (СМО) имеет два состояния: S0 — канал свободен, S1 — канал занят. Размеченный граф состояний представлен на рисунке 4.

Рисунок 4 Граф состояний.
В предельном, стационарном режиме система алгебраических уравнений для вероятностей состояний имеет вид
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (19)
т.е. система вырождается в одно уравнение. Учитывая нормировочное условие , найдем из GOTOBUTTON ZEqnNum491846 \* MERGEFORMAT REF ZEqnNum491846 \* Charformat \! \* MERGEFORMAT (19) предельные вероятности состояний
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (20)
которые выражают среднее относительное время пребывания системы в состоянии S0 (когда канал свободен) и S1 (когда канал занят), т.е. определяют соответственно пропускную способность Q системы и вероятность отказа Pотк:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (21)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (22)
Абсолютную пропускную способность найдем, умножив относительную пропускную способность Q на интенсивность потока отказов
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (23)
2.1.2Многоканальная система с отказами.
Рассмотрим классическую задачу Эрланга.
Имеется п каналов, на которые поступает поток заявок с интенсивностью λ. Поток обслуживании имеет интенсивность μ. Найти предельные вероятности состояний системы и показатели ее эффективности.
Система S (СМО) имеет следующие состояния (нумеруем их по числу заявок, находящихся в системе): So, S1, S2,…, Sk, ... Sn,где Sk — состояние системы, когда в ней находится k заявок, т.е. занято k каналов.
Граф состояний СМО соответствует процессу гибели и размножения и показан на рисунке 5.

Рисунок 5 Граф состояний гибели и размножения.
Поток заявок последовательно переводит систему из любого левого состояния в соседнее правое с одной и той же интенсивностью λ. Интенсивность же потока обслуживаний переводящих систему из любого правого состояния в соседнее левое состояние, постоянно меняется в зависимости от состояния. Действительно, если СМО находится в состоянии S2 (два канала заняты), то она может перейти в состояние S1 (один канал занят), когда закончит обслуживание либо первый, либо второй канал, т.е. суммарная интенсивность их потоков обслуживаний будет 2μ. Аналогично суммарный поток обслуживаний, переводящий СМО из состояния S3 (три канала заняты) в S2, будет иметь интенсивность 3μ т.е. может освободиться любой из трех каналов и т.д.
В формуле GOTOBUTTON ZEqnNum682570 \* MERGEFORMAT REF ZEqnNum682570 \* Charformat \! \* MERGEFORMAT (17) для схемы гибели и размножения получим для предельной вероятности состояния
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 24)
Где члены разложения …, будут представлять собой коэффициенты при p0 в выражениях для предельных вероятностей p1, р2, ..., pk,…,pn. Величина
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 25)
называется приведенной интенсивностью потока заявок или интенсивностью нагрузки канала. Она выражает среднее число заявок, приходящее за среднее время обслуживания одной заявки. Теперь
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 26)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 27)
Формулы GOTOBUTTON ZEqnNum474725 \* MERGEFORMAT REF ZEqnNum474725 \* Charformat \! \* MERGEFORMAT (26) и GOTOBUTTON ZEqnNum907835 \* MERGEFORMAT REF ZEqnNum907835 \* Charformat \! \* MERGEFORMAT (27)для предельных вероятностей получили названия формул Эрланга в честь основателя теории массового обслуживания.
Вероятность отказа СМО есть предельная вероятность того, что все п каналов системы будут заняты, т.е.
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (28)
Относительная пропускная способность — вероятность того, что заявка будет обслужена:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (29)
Абсолютная пропускная способность:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (30)
Среднее число занятых каналов есть математическое ожидание числа занятых каналов:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (31)
где рk — предельные вероятности состояний, определяемых по формулам GOTOBUTTON ZEqnNum474725 \* MERGEFORMAT REF ZEqnNum474725 \* Charformat \! \* MERGEFORMAT (26), GOTOBUTTON ZEqnNum907835 \* MERGEFORMAT REF ZEqnNum907835 \* Charformat \! \* MERGEFORMAT (27).
Однако среднее число занятых каналов можно найти проще, если учесть, что абсолютная пропускная способность системы А есть не что иное, как интенсивность потока обслуженных системой заявок (в единицу времени). Так как каждый занятый канал обслуживает в среднем μ заявок (в единицу времени), то среднее число занятых каналов
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 32)
или, учитывая GOTOBUTTON ZEqnNum615415 \* MERGEFORMAT REF ZEqnNum615415 \* Charformat \! \* MERGEFORMAT (30), GOTOBUTTON ZEqnNum746881 \* MERGEFORMAT REF ZEqnNum746881 \* Charformat \! \* MERGEFORMAT (25):
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (33)

2.2. СМО c неограниченной длиной очереди.
В качестве показателей эффективности СМО с ожиданием, кроме уже известных показателей — абсолютной А и относительной Q пропускной способности, вероятности отказа Ротк, среднего числа занятых каналов (для многоканальной системы) будем рассматривать также следующие: Lсист — среднее число заявок в системе; Тсист — среднее время пребывания заявки в системе; Lоч — среднее число заявок в очереди (длина очереди); Точ — среднее время пребывания заявки в очереди; Рзан, — вероятность того, что канал занят (степень загрузки канала).
2.2.1 Одноканальная система с неограниченной очередью.
На практике часто встречаются одноканальные СМО с неограниченной очередью (например, телефон-автомат с одной будкой). Рассмотрим задачу.
Имеется одноканальная СМО с очередью, на которую не наложены никакие ограничения (ни по длине очереди, ни по времени ожидания). Поток заявок, поступающих в СМО, имеет интенсивность λ, а поток обслуживании — интенсивность μ. Необходимо найти предельные вероятности состояний и показатели эффективности СМО.
Система может находиться в одном из состояний ,S0, S1,S2,… по числу заявок, находящихся в СМО: S0 — канал свободен; S1 — канал занят (обслуживает заявку), очереди нет; S2 — канал занят, одна заявка стоит в очереди; ... Sk — канал занят, (k— 1) заявок стоят в очереди и т.д.
Граф состояний СМО представлен на рисунке 6.

Рисунок 6 Граф состояний одноканальной СМО.
Это процесс гибели и размножения, но с бесконечным числом состояний, в котором интенсивность потока заявок равна λ, а интенсивность потока обслуживании μ.
Прежде чем записать формулы предельных вероятностей, необходимо быть уверенным в их существовании, ведь в случае, когда время t→∞, очередь может неограниченно возрастать. Доказано, что если 𝜌 < 1, т.е. среднее число приходящих заявок меньше среднего числа обслуженных заявок (в единицу времени), то предельные вероятности существуют. Если 𝜌 > 1, очередь растет до бесконечности.
Для определения предельных вероятностей состояний воспользуемся формулами GOTOBUTTON ZEqnNum682570 \* MERGEFORMAT REF ZEqnNum682570 \* Charformat \! \* MERGEFORMAT (17), GOTOBUTTON ZEqnNum891465 \* MERGEFORMAT REF ZEqnNum891465 \* Charformat \! \* MERGEFORMAT (18) для процесса гибели и размножения. Получим:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 34)
Так как предельные вероятности существуют лишь при ρ < 1, то геометрический ряд со знаменателем ρ< 1, записанный в скобках в формуле GOTOBUTTON ZEqnNum379928 \* MERGEFORMAT REF ZEqnNum379928 \* Charformat \! \* MERGEFORMAT (34), сходится к сумме, равной . Поэтому
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 35)
и с учетом соотношений GOTOBUTTON ZEqnNum891465 \* MERGEFORMAT REF ZEqnNum891465 \* Charformat \! \* MERGEFORMAT (18)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 36)
найдем предельные вероятности других состояний
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (37)
Предельные вероятности p0, р1, p2,..., pk, ... образуют убывающую геометрическую профессию со знаменателем ρ < 1, следовательно, вероятность p0 — наибольшая. Это означает, что если СМО справляется с потоком заявок (при ρ < 1), то наиболее вероятным будет отсутствие заявок в системе.
Среднее число заявок в системе Lсист. определим по формуле математического ожидания, которая с учетом GOTOBUTTON ZEqnNum725705 \* MERGEFORMAT REF ZEqnNum725705 \* Charformat \! \* MERGEFORMAT (37) примет вид
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (38)
Можно показать, что формула GOTOBUTTON ZEqnNum298403 \* MERGEFORMAT REF ZEqnNum298403 \* Charformat \! \* MERGEFORMAT (38) преобразуется (при ρ < 1) к виду
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (39)
Найдем среднее число заявок в очереди Loч. Очевидно, что
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (40)
где Lоб — среднее число заявок, находящихся под обслуживанием.
Среднее число заявок под обслуживанием равно вероятности того, что канал занят:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (41)
В силу GOTOBUTTON ZEqnNum984986 \* MERGEFORMAT REF ZEqnNum984986 \* Charformat \! \* MERGEFORMAT (35)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (42)
Теперь по формуле GOTOBUTTON ZEqnNum878277 \* MERGEFORMAT REF ZEqnNum878277 \* Charformat \! \* MERGEFORMAT (40) с учетом GOTOBUTTON ZEqnNum272353 \* MERGEFORMAT REF ZEqnNum272353 \* Charformat \! \* MERGEFORMAT (39) и GOTOBUTTON ZEqnNum337094 \* MERGEFORMAT REF ZEqnNum337094 \* Charformat \! \* MERGEFORMAT (42)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (43)
Доказано, что при любом характере потока заявок, при любом распределении времени обслуживания, при любой дисциплине обслуживания среднее время пребывания заявки в системе (очереди) равна среднему числу заявок в системе (в очереди), деленному на интенсивность потока заявок, т.е. MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (44)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (45)
Формулы GOTOBUTTON ZEqnNum621875 \* MERGEFORMAT REF ZEqnNum621875 \* Charformat \! \* MERGEFORMAT (44) и GOTOBUTTON ZEqnNum912513 \* MERGEFORMAT REF ZEqnNum912513 \* Charformat \! \* MERGEFORMAT (45) называются формулами Литтла. Они вытекают из того, что в предельном, стационарном режиме среднее число заявок, прибывающих в систему, равно среднему числу заявок, покидающих ее: оба потока заявок имеют одну и ту же интенсивность λ.
На основании формул GOTOBUTTON ZEqnNum621875 \* MERGEFORMAT REF ZEqnNum621875 \* Charformat \! \* MERGEFORMAT (44) и GOTOBUTTON ZEqnNum912513 \* MERGEFORMAT REF ZEqnNum912513 \* Charformat \! \* MERGEFORMAT (45) с учетом GOTOBUTTON ZEqnNum272353 \* MERGEFORMAT REF ZEqnNum272353 \* Charformat \! \* MERGEFORMAT (39) и GOTOBUTTON ZEqnNum130713 \* MERGEFORMAT REF ZEqnNum130713 \* Charformat \! \* MERGEFORMAT (43) среднее время пребывания заявки в системе определится по формуле:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (46)
а среднее время пребывания заявки в очереди —
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (47)
2.2.2 Многоканальная СМО с неограниченной очередью.
Рассмотрим задачу. Имеется n-канальная СМО с неограниченной очередью. Поток заявок, поступающих в СМО, имеет интенсивность λ., а поток обслуживаний — интенсивность μ. Необходимо найти предельные вероятности состояний СМО и показатели ее эффективности.
Система может находиться в одном из состояний .S0, S1, S2, ..., Sk .., Sn, ..., нумеруемых по числу заявок, находящихся в СМО: S0 — в системе нет заявок (все каналы свободны); S — занят один канал, остальные свободны; S2— заняты два канала, остальные свободны; Sk — занято k каналов, остальные свободны; Sn — заняты все n каналов (очереди нет); Sn+1 — заняты все п каналов, в очереди одна заявка; Sn+r — заняты все п каналов, r заявок стоит в очереди.
Граф состояний системы показан на рисунке 7. Обратим внимание на то, что в отличие от предыдущей СМО, интенсивность потока обслуживаний (переводящего систему из одного состояния в другое справа налево) не остается постоянной, а по мере увеличения числа заявок в СМО от 0 до n увеличивается от величины μ до n𝜇, так как соответственно увеличивается число каналов обслуживания. При числе заявок в СМО большем, чем n, интенсивность потока обслуживании сохраняется равной nμ.

Рисунок 7Граф состояний многоканальной СМО.
Можно показать, что при ρ/n < 1 предельные вероятности существуют. Если ρ/n ≥ 1, очередь растет до бесконечности. Используя формулы GOTOBUTTON ZEqnNum682570 \* MERGEFORMAT REF ZEqnNum682570 \* Charformat \! \* MERGEFORMAT (17) и GOTOBUTTON ZEqnNum891465 \* MERGEFORMAT REF ZEqnNum891465 \* Charformat \! \* MERGEFORMAT (18) для процесса гибели и размножения, можно получить следующие формулы для предельных вероятностей состояний n-канальной СМО с неограниченной очередью
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 48)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (49)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (50)

Вероятность того, что заявка окажется в очереди,
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 51)
Для n-канальной СМО с неограниченной очередью, используя прежние приемы, можно найти:
среднее число занятых каналов
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 52)
среднее число заявок в очереди
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 53)
среднее число заявок в системе
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT ( SEQ MTEqn \c \* Arabic \* MERGEFORMAT 54)
Среднее время пребывания заявки в очереди и среднее время пребывания заявки в системе, как и ранее, находятся по формулам Литтла GOTOBUTTON ZEqnNum912513 \* MERGEFORMAT REF ZEqnNum912513 \* Charformat \! \* MERGEFORMAT (45) и GOTOBUTTON ZEqnNum717840 \* MERGEFORMAT REF ZEqnNum717840 \* Charformat \! \* MERGEFORMAT (46).
Замечание. Для СМО с неограниченной очередью при ρ < 1 любая заявка, пришедшая в систему, будет обслужена, т.е. вероятность отказа Ротк = 0, относительная пропускная способность Q=1, а абсолютная пропускная способность равна интенсивности входящего потока заявок, т.е. А = λ.
2.3. СМО с ограниченной очередью.
СМО с ограниченной очередью отличаются лишь тем, что число заявок в очереди ограничено (не может превосходить некоторого заданного m). Если новая заявка поступает в момент, когда все места в очереди заняты, она покидает СМО необслуженной, т.е. получает отказ.
2.3.1 Одноканальная СМО с ограниченной очередью
Предельные вероятности:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (55)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (56)
Вероятность отказа:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (57)
Абсолютная пропускная способность
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (58)
Относительная пропускная способность
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (59)
Среднее число заявок в очереди
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (60)
Среднее число заявок под обслуживанием(среднее число занятых каналов)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (61)
Среднее число заявок в системе
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (62)
2.3.2 Многоканальная СМО с ограниченной очередью
Предельные вероятности:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (63)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (64)
Вероятность отказа:
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (65)
Абсолютная пропускная способность
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (66)
Относительная пропускная способность
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (67)
Среднее число заявок в очереди
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (68)
Среднее число заявок под обслуживанием(среднее число занятых каналов)
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (69)
Среднее число заявок в системе
MACROBUTTON MTPlaceRef \* MERGEFORMAT SEQ MTEqn \h \* MERGEFORMAT (70)

3 Описание программ расчета характеристик СМО.
3.1. Описание программы расчета характеристик СМО с отказами.
Программа составлена на алгоритмическом языке Visual Basic for Applications (VBA) в среде Microsoft Office Excel. Текст программы с подробными комментариями представлен в приложении А.
Программа включает в себя следующие фрагменты:
– объявление динамических массивов и переменных;
– ввод исходных данных – числа каналов обслуживания, интенсивности потока заявок, интенсивности потока обслуживаний;
– расчет основных характеристик СМО – коэффициента нагрузки канала, вероятностей состояний, вероятности отказа, относительной пропускной способности и среднего числа занятых каналов;
– вывод результатов расчетов (при необходимости также выводится диаграмма вероятностей состояний СМО).
Основная программа содержит подпрограмму функцию, реализующую расчет основных характеристик СМО
Для вычисления факториала с помощью оператора «Application.WorksheetFunction.Fact(I)» в программе используется стандартная математическая функция Fact(I), входящие в состав библиотеки Microsoft Office Excel.
Окно диалога программы представлено на рисунке 8.
При проведении расчетов необходимо:
– открыть документ Microsoft Office Excel с программой;
– на открывшемся листе нажать кнопку «Расчет характеристик СМО с отказами»;
– в появившемся диалоговом окне программы (рис. 8) в поля «Число каналов обслуживания», «Интенсивность потока заявок», «Интенсивность потока обслуживаний» ввести требуемые значения;
– при необходимости поставить флажок в поле «Добавить диаграмму вероятностей состояний»;
– в диалоговом окне нажать кнопку «OK», и на листе появятся результаты расчета.

Рисунок 8 Окно диалога программы расчета характеристик
СМО с отказами
3.2. Описание программы расчета характеристик СМО с неограниченной длиной очереди
Программа составлена на алгоритмическом языке Visual Basic for Applications (VBA) в среде Microsoft Office Excel. Текст программы с подробными комментариями представлен в приложении В.
Программа включает в себя следующие фрагменты:
– объявление динамических массивов и переменных;
– ввод исходных данных – числа каналов обслуживания, интенсивности потока заявок, интенсивности потока обслуживаний, число выводимых дополнительных вероятностей состояний СМО по количеству заявок, стоящих в очереди;
– расчет основных характеристик СМО – коэффициента нагрузки канала, вероятностей состояний, вероятности отказа, относительной пропускной способности, среднего числа занятых каналов, среднего числа заявок в очереди.
– вывод результатов расчетов (при необходимости также выводится диаграмма вероятностей состояний СМО).
Окно диалога программы представлено на рисунке 9.
При проведении расчетов необходимо:
– открыть документ Microsoft Office Excel с программой;
– на открывшемся листе нажать кнопку «Расчет характеристик СМО с неограниченной длиной очереди»;
– в появившемся диалоговом окне программы (рис. 9) в поля «Число каналов обслуживания», «Интенсивность потока заявок», «Интенсивность потока обслуживаний», «Число выводимых дополнительных вероятностей состояний СМО по количеству заявок, стоящих в очереди» ввести требуемые значения;
– при необходимости поставить флажок в поле «Добавить диаграмму вероятностей состояний»;
– в диалоговом окне нажать кнопку «OK», и на листе появятся результаты расчета
.
Рисунок 9 Окно диалога программы расчета характеристик
СМО с неограниченной длинной очереди
3.3. Описание программы расчета характеристик СМО с ограниченной длиной очереди.
Программа составлена на алгоритмическом языке Visual Basic for Applications (VBA) в среде Microsoft Office Excel. Текст программы с подробными комментариями представлен в приложении С.
Программа включает в себя следующие фрагменты:
– объявление динамических массивов и переменных;
– ввод исходных данных – числа каналов обслуживания, интенсивности потока заявок, интенсивности потока обслуживаний, наибольшего числа заявок в очереди;
– расчет основных характеристик СМО – коэффициента нагрузки канала, вероятностей состояний, вероятности отказа, относительной пропускной способности, среднего числа занятых каналов, среднего числа заявок в очереди.
– вывод результатов расчетов (при необходимости также выводится диаграмма вероятностей состояний СМО).
Окно диалога программы представлено на рисунке 10.
При проведении расчетов необходимо:
– открыть документ Microsoft Office Excel с программой;
– на открывшемся листе нажать кнопку «Расчет характеристик СМО с ограниченной длиной очереди»;
– в появившемся диалоговом окне программы (рис. 10) в поля «Число каналов обслуживания», «Интенсивность потока заявок», «Интенсивность потока обслуживаний», «Наибольшее число заявок в очереди» ввести требуемые значения;
– при необходимости поставить флажок в поле «Добавить диаграмму вероятностей состояний»;
– в диалоговом окне нажать кнопку «OK», и на листе появятся результаты расчета

Рисунок 10 Окно диалога программы расчета характеристик
СМО с ограниченной длинной очереди

Приложения
Приложение А. Текст программы расчета характеристик СМО с отказами
Private Sub UserForm_Click()End Sub
Private Sub ПолеЗаявки_Change()End Sub
Private Sub ПолеОбслуживания_Change()End Sub
Private Sub ФлажокДиаграмма_Click()End Sub
Private Sub КнопкаОтмена_Click()РасчетСМО.Hide
End Sub
Private Sub КнопкаРасчет_Click()Dim N, L, M, R, S As Double
Dim I, IC As Integer
Dim P(), X() As Double
If IsNumeric(ПолеКаналы.Text) = False Then
ICh = MsgBox("Введите правильно значение числа каналов!", vbExclamation)
ПолеКаналы.SetFocusExit Sub
End If
If IsNumeric(ПолеЗаявки.Text) = False Then
ir = MsgBox("Введите правильно значение интенсивности потока заявок!", vbExclamation)
ПолеЗаявки.SetFocusExit Sub
End If
If IsNumeric(ПолеОбслуживания.Text) = False Then
ir = MsgBox("Введите правильно значение интенсивности потока обслуживаний!", vbExclamation)
ПолеОбслуживания.SetFocusExit Sub
End If
N = CInt(ПолеКаналы.Text)
L = CDbl(ПолеЗаявки.Text)
M = CDbl(ПолеОбслуживания.Text)
R = L / M
ReDim P(N), X(N)
S = 0
For I = 0 To N
X(I) = I
S = S + R ^ I / Application.WorksheetFunction.Fact(I)
Next I
P(0) = 1 / S
For I = 1 To N
P(I) = R ^ I / Application.WorksheetFunction.Fact(I)
P(I) = P(I) / S
Next I
Worksheets(1).Cells(5, 1).Value = "Исходные данные:"
Worksheets(1).Cells(6, 1).Value = "-число каналов:"
Worksheets(1).Cells(6, 4).Value = N
Worksheets(1).Cells(7, 1).Value = "-интенсивность потока заявок:"
Worksheets(1).Cells(7, 4).Value = L
Worksheets(1).Cells(8, 1).Value = "-интенсивность потока обслуж.:"
Worksheets(1).Cells(8, 4).Value = M
Worksheets(1).Cells(9, 1).Value = "-коэффициент нагрузки канала:"
Worksheets(1).Cells(9, 4).Value = R
Worksheets(1).Cells(10, 1).Value = "Результаты расчета:"
Worksheets(1).Cells(11, 1).Value = "-вероятность отказа:"
Worksheets(1).Cells(11, 4).Value = P(N)
Worksheets(1).Cells(12, 1).Value = "-отн. пропускная способность:"
Worksheets(1).Cells(12, 4).Value = 1 - P(N)
Worksheets(1).Cells(13, 1).Value = "-ср. число занятых каналов:"
Worksheets(1).Cells(13, 4).Value = R * (1 - P(N))
Worksheets(1).Cells(14, 1).Value = "-вероятности состояний:"
For I = 0 To N
IC = I + 15
Worksheets(1).Cells(IC, 1).Value = I
Worksheets(1).Cells(IC, 2).Value = P(I)
Next I
If ФлажокДиаграмма = True Then
For I = 0 To N
If P(I) <= 0.000001 Then P(I) = 0
Next I
Call Diagramma(N, X, P)
End If
End Sub
Private Sub ПолеКаналы_Change()End Sub
Sub Diagramma(N, X, P)
Range("E20").Select
Charts.AddActiveChart.ChartType = xlColumnClusteredActiveChart.SetSourceData Source:=Sheets("Лист1").Range("E13")
ActiveChart.SeriesCollection.NewSeriesActiveChart.SeriesCollection(1).XValues = X
ActiveChart.SeriesCollection(1).Values = P
ActiveChart.SeriesCollection(1).Name = "Вероятности состояний СМО"
ActiveChart.Location Where:=xlLocationAsObject, Name:="Лист1"
ActiveChart.HasLegend = FalseEnd SubПриложение В. Текст программы расчета характеристик СМО с неограниченной очередью
Private Sub UserForm_Click()End Sub
Private Sub ПолеЗаявки_Change()End Sub
Private Sub ПолеОбслуживания_Change()End Sub
Private Sub ПолеЧисло_Change()End Sub
Private Sub ФлажокДиаграмма_Click()End Sub
Private Sub КнопкаОтмена_Click()РасчетСМО.Hide
End Sub
Private Sub КнопкаРасчет_Click()Dim N, L, M, R, S, SS, PS As Double
Dim I, NP, NM, IC As Integer
Dim P(), X() As Double
If IsNumeric(ПолеКаналы.Text) = False Then
ir = MsgBox("Введите правильно значение числа каналов!", vbExclamation)
ПолеКаналы.SetFocusExit Sub
End If
If IsNumeric(ПолеЗаявки.Text) = False Then
ir = MsgBox("Введите правильно значение интенсивности потока заявок!", vbExclamation)
ПолеЗаявки.SetFocusExit Sub
End If
If IsNumeric(ПолеОбслуживания.Text) = False Then
ir = MsgBox("Введите правильно значение интенсивности потока обслуживаний!", vbExclamation)
ПолеОбслуживания.SetFocusExit Sub
End If
If IsNumeric(ПолеЧисло.Text) = False Then
ir = MsgBox("Введите правильно значение числа вероятностей!", vbExclamation)
ПолеЧисло.SetFocusExit Sub
End If
N = CInt(ПолеКаналы.Text)
L = CDbl(ПолеЗаявки.Text)
M = CDbl(ПолеОбслуживания.Text)
NP = CInt(ПолеЧисло.Text)
R = L / M
If R / N < 1 Then
NM = N + NP
ReDim P(NM), X(NM)
For I = 0 To NM
X(I) = I
Next I
S = 0
For I = 0 To N
X(I) = I
S = S + R ^ I / Application.WorksheetFunction.Fact(I)
Next I
SS = R ^ (N + 1) / ((N - R) * Application.WorksheetFunction.Fact(N))
P(0) = 1 / (S + SS)
For I = 1 To N
P(I) = R ^ I / Application.WorksheetFunction.Fact(I) * P(0)
Next I
S = R ^ N / Application.WorksheetFunction.Fact(N)
For I = 1 To NP
P(N + I) = S * (R / N) ^ I * P(0)
Next I
PS = N * R ^ (N + 1) * P(0) / ((N - R) ^ 2 * Application.WorksheetFunction.Fact(N))
Worksheets(1).Cells(5, 1).Value = "Исходные данные:"
Worksheets(1).Cells(6, 1).Value = "-число каналов:"
Worksheets(1).Cells(6, 4).Value = N
Worksheets(1).Cells(7, 1).Value = "-интенсивность потока заявок:"
Worksheets(1).Cells(7, 4).Value = L
Worksheets(1).Cells(8, 1).Value = "-интенсивность потока обслуж.:"
Worksheets(1).Cells(8, 4).Value = M
Worksheets(1).Cells(9, 1).Value = "-коэффициент нагрузки канала:"
Worksheets(1).Cells(9, 4).Value = R
Worksheets(1).Cells(10, 1).Value = "Результаты расчета:"
Worksheets(1).Cells(11, 1).Value = "-вероятность отказа:"
Worksheets(1).Cells(11, 4).Value = 0
Worksheets(1).Cells(12, 1).Value = "-отн. пропускная способность:"
Worksheets(1).Cells(12, 4).Value = 1
Worksheets(1).Cells(13, 1).Value = "-ср. число занятых каналов:"Worksheets(1).Cells(13, 4).Value = R
Worksheets(1).Cells(14, 1).Value = "-ср. число заявок в очереди:"Worksheets(1).Cells(14, 4).Value = PS
Worksheets(1).Cells(15, 1).Value = "-вероятности состояний:"
For I = 0 To NM
IC = I + 16
Worksheets(1).Cells(IC, 1).Value = I
Worksheets(1).Cells(IC, 2).Value = P(I)
Next I
If ФлажокДиаграмма = True Then
For I = 0 To NM
If P(I) <= 0.000001 Then P(I) = 0
Next I
Call Diagramma(NM, X, P)
End If
Else
ir = MsgBox("Финальные вероятности не существуют и очередь неограниченно возрастает.", vbExclamation)
End If
End Sub
Private Sub ПолеКаналы_Change()End Sub
Sub Diagramma(NM, X, P)
Range("E20").Select
Charts.AddActiveChart.ChartType = xlColumnClusteredActiveChart.SetSourceData Source:=Sheets("Лист1").Range("E20")
ActiveChart.SeriesCollection.NewSeriesActiveChart.SeriesCollection(1).XValues = X
ActiveChart.SeriesCollection(1).Values = P
ActiveChart.SeriesCollection(1).Name = "Вероятности состояний СМО"
ActiveChart.Location Where:=xlLocationAsObject, Name:="Лист1"
ActiveChart.HasLegend = FalseEnd SubПриложение С. Текст программы Текст программы расчета характеристик СМО с ограниченной очередью
Private Sub НадписьНагрузка_Click()End Sub
Private Sub НадписьЧисло_Click()End Sub
Private Sub ПолеВремя_Change()End Sub
Private Sub ПолеЗаявки_Change()End Sub
Private Sub ПолеОбслуживания_Change()End Sub
Private Sub ПолеЧисло_Change()End Sub
Private Sub ФлажокДиаграмма_Click()End Sub
Private Sub UserForm_Click()End Sub
Private Sub КнопкаОтмена_Click()РасчетСМО.Hide
End Sub
Private Sub КнопкаРасчет_Click()Dim N, NP, L, M, R, S, S1, S2, PS, NQ As Double
Dim I, NM, IC As Integer
Dim P(), X() As Double
If IsNumeric(ПолеКаналы.Text) = False Then
ICh = MsgBox("Введите правильно значение числа каналов!", vbExclamation)
ПолеКаналы.SetFocusExit Sub
End If
If IsNumeric(ПолеЗаявки.Text) = False Then
ir = MsgBox("Введите правильно значение интенсивности потока заявок!", vbExclamation)
ПолеЗаявки.SetFocusExit Sub
End If
If IsNumeric(ПолеОбслуживания.Text) = False Then
ir = MsgBox("Введите правильно значение интенсивности потока обслуживаний!", vbExclamation)
ПолеОбслуживания.SetFocusExit Sub
End If
If IsNumeric(ПолеЧисло.Text) = False Then
ir = MsgBox("Введите правильно значение наибольшего числа заявок в очереди!", vbExclamation)
ПолеЧисло.SetFocusExit Sub
End If
N = CInt(ПолеКаналы.Text)
L = CDbl(ПолеЗаявки.Text)
M = CDbl(ПолеОбслуживания.Text)
NP = CDbl(ПолеЧисло.Text)
R = L / M
NM = N + NP
ReDim P(NM), X(NM)
For I = 0 To NM
X(I) = I
Next I
S = 0
For I = 0 To N
S = S + R ^ I / Application.WorksheetFunction.Fact(I)
Next I
S1 = 0
S2 = 0
For I = 1 To NP
S1 = S1 + (R / N) ^ I
S2 = S2 + I * (R / N) ^ I
Next I
S1 = S1 * R ^ N / Application.WorksheetFunction.Fact(N)
P(0) = 1 / (S + S1)
NQ = S2 * R ^ N / Application.WorksheetFunction.Fact(N) * P(0)
For I = 1 To N
P(I) = R ^ I / Application.WorksheetFunction.Fact(I) * P(0)
Next I
For I = 1 To NP
P(N + I) = R ^ (N + I) / (N ^ I * Application.WorksheetFunction.Fact(N)) * P(0)
Next I
Worksheets(1).Cells(5, 1).Value = "Исходные данные:"
Worksheets(1).Cells(6, 1).Value = "-число каналов:"
Worksheets(1).Cells(6, 4).Value = N
Worksheets(1).Cells(7, 1).Value = "-интенсивность потока заявок:"
Worksheets(1).Cells(7, 4).Value = L
Worksheets(1).Cells(8, 1).Value = "-интенсивность потока обслуж.:"
Worksheets(1).Cells(8, 4).Value = M
Worksheets(1).Cells(9, 1).Value = "-коэффициент нагрузки канала:"
Worksheets(1).Cells(9, 4).Value = R
Worksheets(1).Cells(10, 1).Value = "-длина очереди:"
Worksheets(1).Cells(10, 4).Value = NP
Worksheets(1).Cells(11, 1).Value = "Результаты расчета:"
Worksheets(1).Cells(12, 1).Value = "-вероятность отказа:"
Worksheets(1).Cells(12, 4).Value = P(N + NP)
Worksheets(1).Cells(13, 1).Value = "-отн. пропускная способность:"
Worksheets(1).Cells(13, 4).Value = 1 - P(N + NP)
Worksheets(1).Cells(14, 1).Value = "-ср. число заявок в очереди:"
Worksheets(1).Cells(14, 4).Value = NQ
Worksheets(1).Cells(15, 1).Value = "-ср. число занятых каналов:"Worksheets(1).Cells(15, 4).Value = R * (1 - P(N + NP))
Worksheets(1).Cells(16, 1).Value = "-вероятности состояний:"
For I = 0 To NM
IC = I + 17
Worksheets(1).Cells(IC, 1).Value = I
Worksheets(1).Cells(IC, 2).Value = P(I)
Next I
If ФлажокДиаграмма = True Then
For I = 0 To N + NP
If P(I) <= 0.000001 Then P(I) = 0
Next I
Call Diagramma(NM, X, P)
End If
End Sub
Private Sub ПолеКаналы_Change()End Sub
Sub Diagramma(NM, X, P)
Range("E20").Select
Charts.AddActiveChart.ChartType = xlColumnClusteredActiveChart.SetSourceData Source:=Sheets("Лист1").Range("E13")
ActiveChart.SeriesCollection.NewSeriesActiveChart.SeriesCollection(1).XValues = X
ActiveChart.SeriesCollection(1).Values = P
ActiveChart.SeriesCollection(1).Name = "Вероятности состояний СМО"
ActiveChart.Location Where:=xlLocationAsObject, Name:="Лист1"
ActiveChart.HasLegend = FalseEnd Sub

Приложенные файлы

  • docx kursovayarabota
    Курсовая работа на тему: рассчет характеристик систем массового обслуживания
    Размер файла: 361 kB Загрузок: 0

Добавить комментарий