Прикладная теория систем массового обслуживания
Работа любой СМО состоит в выполнении поступающего на нее потока требований или заявок. Заявки поступают одна за другой в некоторые случайные промежутки времени. Обслуживание поступившей заявки продолжается какое-то время, затем канал освобождается и снова готов к обслуживанию очередной заявки. Каждая СМО в зависимости от числа каналов и их производительности, обладает какой-то пропускной… Читать ещё >
Прикладная теория систем массового обслуживания (реферат, курсовая, диплом, контрольная)
Исходные данные массовый обслуживание алгоритм модель Исходные данные для курсового проектирования приведены в таблице 1.
Таблица 1
Номер вар. | М 1/мин | p | q | A км | км/ч | I | n | Расчетные хар-ки | |
¼ | 0,57 | 2−4 | Pобс, ,. | ||||||
Дана система противоракетной обороны с отказами и упорядоченным обслуживанием. То есть рассматривается модель многоканальной СМО с n однотипными каналами с простейшими потоками событий обслуживания в каналах и на входе с интенсивностями и соответственно. Упорядоченное обслуживание состоит в том, что заявки строго распределяются по свободным каналам (нет случайного распределения заявок и нет взаимопомощи). Отказ в обслуживании имеет место, если при приходе очередной входной заявки все каналы заняты.
Граф состояний СМО с отказами и упорядоченным обслуживанием, показан на рис. 1.
Рис. 1.
* - интенсивность пуассоновского потока освобождений;
*=+
— интенсивность уходов заявок из системы;
— интенсивность потока заявок;
а — длина полосы обстрела;
— скорость налетающих ракет;
I — средний линейный интервал между ракетами;
n — общее число каналов наведения;
р — вероятность поражения цели одной ракетой.
В любой момент времени t рассматриваемая система может находиться в одном из следующих состояний:
x0 — в системе нет ни одной заявки (все каналы свободны);
x1 — одна заявка находиться в системе, она обслуживается одним (любым) каналом;
xk — ровно k заявок (1< k < n) находящихся в системе, все они обслуживаются (каждая заявка одним каналом);
xn — ровно n заявок обслуживаются n каналами.
Введение
Теория систем массового обслуживания является одной из наиболее развивающейся ветвей теории вероятностей, т. е. Опирается на ее аппарат, но является самостоятельной наукой Трудно даже перечислить все области практики, где находят применение методы теории СМО. Область применения математических методов теории СМО непрерывно расширяется и выходит за пределы задач, связанных на прямую с «обслуживающими организациями» в буквальном смысле слова. Многие задачи автоматизации производства оказываются близкими к теории массового обслуживания: потоки деталей, поступающих для выполнения над ними различных операций, могут рассматриваться как потоки заявок, ритмичность поступления которых нарушается за счет случайных причин.
Проблемы, родственные задачам массового обслуживания постоянно возникают в военном деле. Каналы наведения, линии связи, аэродромы, устройства сбора и обработки информации представляют собой своеобразные СМО. Системы массового обслуживания настолько велики и разнообразны, что описать их все не представляется возможным.
Система массового обслуживания состоит из какого-то числа обслуживающих единиц (каналов). СМО могут быть как одно — так и многоканальными.
Работа любой СМО состоит в выполнении поступающего на нее потока требований или заявок. Заявки поступают одна за другой в некоторые случайные промежутки времени. Обслуживание поступившей заявки продолжается какое-то время, затем канал освобождается и снова готов к обслуживанию очередной заявки. Каждая СМО в зависимости от числа каналов и их производительности, обладает какой-то пропускной способностью, позволяющей ей более или менее успешно справляться с потоком заявок.
Предмет теории СМО — установление зависимости между характером потока заявок, производительностью отдельного канала, числом каналов и эффективностью обслуживания. Существует ряд характеристик, описывающих степень приспособленности системы к выполнению потока заявок, иными словами — ее пропускную способность. Пропускная способность — это среднее число заявок, которое система может обслужить за единицу времени. Пропускная способность (и абсолютная, и относительная) в общем случае зависит не только от параметров системы, но и от характера потока заявок. То есть, процесс функционирования СМО представляет собой случайный процесс. Чтобы дать рекомендации по рациональности организации системы, необходимо изучить случайный процесс, протекающий в системе, и описать его математически.
Система массового обслуживания включает в себя четыре основных элемента:
· входящий поток;
· очередь;
· обслуживающее устройство;
· выходящий поток.
Рис. 2. Пример обобщенной СМО.
Основным параметром любой СМО является число каналов обслуживания — n. Каналом обслуживания называется вся совокупность технических устройств, обеспечивающих обслуживание заявки. Обслуживающее устройство может состоять из одного прибора (однолинейные системы) и нескольких (многолинейные системы).
Входящим потоком (потоком событий) в теории вероятностей понимается последовательность событий, происходящих одно за другим в какие-то моменты времени. В теории СМО под входящим потоком принято понимать последовательность вызовов, поступающих от абонентов или групп абонентов, поток неисправностей отдельных устройств, поток информации, поступающей на обработку в ЭВМ, поток заявок на измерения и т. д. Существуют детерминированные и случайные потоки.
Мы рассматриваем случайные потоки, которые в отличие от детерминированных происходят не в фиксированные моменты времени, а в случайные промежутки. Потоки классифицируются с точки зрения стационарности, ординарности и последействия.
Стационарность потока. Входящий поток заявок является стационарным, если при любом n совместный закон распределения числа заявок за промежутки времени от [t0,t1),[t0,t2)…,[t0,tn):
P{K (t0,ti), i=1,2,…n}, зависит только от длины промежутков времени и не зависит от момента времени. Это значит, что для стационарного потока вероятность поступления некоторого числа заявок за какой-то промежуток времени зависит от длины этого промежутка, но не зависит от его начала. В противном случае поток является нестационарным.
Ординарность потока. Поток заявок является ординарным, если вероятность поступления одновременно двух и более заявок в один времени практически равна нулю.
То есть если — вероятность поступления k и более заявок за промежуток [t, t+ф). Поток является ординарным, если при ф>0
где 0(ф) — величина более высокого порядка малости по отношению к ф.
Последействие потока Поток заявок является потоком без последействия, если вероятность поступления K (t0,ti) вызовов за промежутки [t0,ti)i=1,2…, n P{K (0,ti)K (0,t0)=K (t0,ti), i=1,2,…, n}, не зависит от вероятностного процесса поступления вызовов до момента t0. Иными словами, отсутствие последействия потока означает независимость течения случайного потока заявок после какого либо момента времени от его течения до этого момента.
К основным характеристикам входящего потока следует отнести параметр интенсивности потока л (t). Под л (t) в момент времени t понимается предел отношения вероятности поступления хотя бы одного вызова за время [t, t+ф) к длине этого отрезка времени ф при ф> 0:
то есть параметр потока есть плотность вероятности наступления вызывающего момента в момент t .
Интенсивностью стационарного потока м называется математическое ожидание числа заявок, поступающих в единицу времени. Для любых потоков м (t)>=л (t), причем для ординарных потоков м (t)=л (t). Для стационарных потоков интенсивность и параметры постоянны м (t)=м, л (t)=л. Следовательно, для любых стационарных потоков м >= л, для стационарных ординарных потоков м = л.
1. Разработка имитационной модели
1.1 Математическое описание имитационной модели Данная имитационная модель построена в среде программирования Borland Delphi (Enterprise v.7.0). В программе реализованы цепочки событий, начиная от входных параметров, полученных с использованием случайных величин, занятия и освобождения каналов в соответствии со случайным характером длительности обработки параметров. Результатом выполнения программы является получение искомых характеристик.
Расчет характеристик для имитационного моделирования:
Интенсивность пуассоновского потока освобождений () ;
(3.1.1)
где, — интенсивность уходов заявок из системы;
— интенсивность потока заявок;
Эффективная скорострельность одного канала ():
(3.1.2)
где p — средняя вероятность поражения цели одной ракетой;
g — количество пусковых установок;
— скорострельность каждой пусковой установки.
Поток освобождений канала ():
(3.1.3)
где з — интенсивность ухода заявки из-под обслуживания.
(3.1.4)
где, х — скорость налетающих ракет; а — длина полосы обстрела.
Интенсивность потока заявок ():
(3.1.5)
где, I — средний линейный интервал между ракетами.
Дисциплина обслуживания заявки — с отказами и упорядоченным обслуживанием.
Интенсивность поступления и обслуживания заявок распределены по пуассоновскому закону.
При разработке имитационной модели для реализации входного потока требований и потока обслуживания из равномерно распределенной случайной величины, генерируемой ЭВМ, необходимо получить случайную величину, распределенную по пуассоновскому закону.
Пусть r — случайная величина, равномерно распределенная в интервале (0,1). Для пуассоновского распределения примем
(3.1.6)
Осуществив интегрирование, получим:
(3.1.7)
Решая это уравнение относительно x, имеем:
(3.1.8)
Случайное число распределено равномерно в интервале (0,1), следовательно, также случайная величина, принадлежащая интервалу (0,1). Поэтому и распределены одинаково. Отсюда имеем:
(3.1.9)
Интервал времени между заявками определяется по формуле:
(3.1.10)
где RND — случайная величина в диапазоне (0,1), генерируемая ЭВМ.
Время обслуживания заявки (сумма времен обслуживания каждого канала):
(3.1.11)
Требуемые вероятностные характеристики СМО определяются по формулам:
Вероятность обслуживания:
, (3.1.12)
где Котк — количество отклоненных заявок,
К — общее количество заявок, пришедшее в систему при моделировании.
Средние число занятых каналов:
(3.1.13)
где, — интенсивность потока заявок; - скорострельность каждой пусковой установки.
Вероятность того, что канала (любой) будет занят:
. (3.1.14)
1.2 Описание блок-схемы алгоритма
1. Установка начальных значений:
; p=0,57; q=4; a = 40; х=1400?60; I=9; n=2−4.
p — вероятность поражения цели одной ракетой,
m — интенсивность обслуживания одного канала (скорострельность каждой пусковой установки),
q — число источников заявок в системе (число пусковых установок),
— средний линейный интервал между ракетами,
v — скорость налетающих ракет,
a — длина полосы обстрела ;
n — доступное количество каналов (вводится с клавиатуры);
z_ rasчисло реализаций.
Динамический тип:
type
TRequest=record
tprih:real; //время прихода заявки в систему
tosv:real; //время освобождения заявки
nn:byte; //требуемое для обслуживания число каналов =1
service:boolean; //признак обработки заявки
end;
2. Ввод числа доступных каналов n
3. Расчет необходимых параметров для моделирования:
mu — интенсивности потока обслуживаний одного канала;
nu — интенсивности потока уходов заявки из-под обслуживания;
mu1 — на занятый канал действует пуассоновский поток освобождений с такой интенсивностью;
l — интенсивность поступления заявок;
В системе моделируется приход z_ras заявок.
Определяю: время прихода очередной заявки в систему (t_in) и заносится в поле tprih, время обслуживания очередной заявки (t_serv + tprih) заносится в поле tosv.
4. Запускается цикл моделирующий поток заявок.
5. Проверяем наличие заявок в системе.
6. Моделируем процесс течения времени: счетчик отвечающий за время увеличиваем на единицу.
7. Проверяем наличие свободных заявок в системе. Если таковые имеются, то освобождаем канал, ее обслуживающий (увеличиваем счетчик свободных каналов).
8. Если пришла заявка, проверяем:
9. Есть ли свободный канал для ее обслуживания. Если нет, то заявка получает отказ и увеличивается счетчик заявок (z_otk), получивших отказ в обслуживании.
10. Если имеется свободный канал, то заявка поступает в обслуживание (значение mas[c]. service=true) находится там до тех пор, пока не истечет время обслуживания (time). В этом случае уменьшается счетчик свободных каналов (n_svob) .
11. Рассматриваем следующую заявку п. 4−10.
12. После рассмотрения всех заявок вычисляется вероятность отказа
(Ротк), средние число занятых каналов (), вероятность того, что (любой) канал будет занят () .
Описанная выше блок-схема приведена в приложении 1, текст программы приведен в приложении 2.
1.3 Анализ полученных результатов моделирования В результате выполнения программы имитационного моделирования были получены результаты (таблица 2.)
Таблица 2
n=2 | n=3 | n=4 | ||
0,31 | 0,47 | 0,7 | ||
1,37 | 2,13 | 3,14 | ||
0,68 | 0,71 | 0,78 | ||
При моделировании при увеличении числа каналов обслуживания от 2 до 4, прослеживается :
1. увеличение вероятности обслуживания заявки;
2. увеличивается среднее число занятых каналов;
3. увеличивается вероятность того, что канал будет занят.
Графики зависимости полученных величин от числа каналов показаны в приложении 5 (рис. 6, рис. 7, рис. 8).
2. Разработка аналитической модели
2.1 Математическое описание
1.Найдем эффективную скорострельность одного канала:
(4.1.1)
где p — средняя вероятность поражения цели одной выпущенной по ней ракетой;
g — количество пусковых установок;
м — скорострельность каждой пусковой установки.
2.Поток (пуассоновский) освобождений канала:
(4.1.2)
где з — интенсивность ухода заявки из-под обслуживания.
3., (4.1.3)
х — скорость налетающих ракет;
а — длина полосы обстрела.
4. Интенсивность потока заявок.
(4.1.4)
I — средний линейный интервал между ракетами.
5. Вычисляем коэффициент, для нахождения табличных функций пуассоновского распределения.
(4.1.5)
По найденным значениям можем составить графы состояний системы:
При n = 2 (Рис.3) :
§ X0 — в системе нет ни одной заявки (все каналы свободны);
§ X1 — одна заявка находится в системе, она обслуживается одним (любым) из n каналов;
§ X2 — в системе находятся две заявки, они обслуживаются двумя
каналами;
Рис. 3
Случай, когда система находится в состоянии. В этом состоянии на систему действует также два потока: а) поток заявок с интенсивностью, который стремится перевести систему в состояние; б) поток освобождений всех занятых каналов с интенсивностью который стремится перевести систему справа налево в состояние .
Если система находится в состоянии, то на нее действует только один поток событий с интенсивностью, переводящий систему справа налево в состояние. Данные процессы описываются системой уравнений (уравнения Эрланга).
(4.1.6)
Подставим численные значения л и м в систему уравнений (4.1.6) :
(4.1.7)
Система интегрируется при следующих начальных условиях:
что соответствует случаю, когда система в начальный момент времени t = 0 свободна. Решение системы при данных начальных условиях удовлетворяет нормировочному условию.
(4.1.8)
т.е.
.
Рассмотрим стационарный режим работы при t>?, так как система эргодична. Поэтому при t>? система (4.1.7) превращается в систему алгебраических уравнений :
(4.1.9)
Для решения данной системы уравнений введем обозначения:
тогда уравнения (4.1.9) примут вид:
(4.1.10)
Анализируя (4.1.10), убедимся, что ui = 0. Следовательно:
Используя нормировочное условие:
получаем:
Окончательно получим следующие формулы для вероятностных состояний (формулы Эрланга):
(4.1.11)
(4.1.11а) Подставив численные значения в (4.1.11а), имеем:
P1=0,75
P2=0,33
Введем обозначение
;
Преобразуем формулу Эрланга (4.1.11) к виду, удобному для вычислений (т. к. если n >? (большое число), то эти формулы становятся трудно используемыми). С этой целью используем б* и умножим числитель и знаменатель дроби на величину ?-б*.
(4.1.12)
где P (k, б*), R (n, б*) — табличные функции пуассоновского распределения.
Определяем основные характеристики данной системы:
(4.1.13)
С другой стороны, вероятность обслуживания заявки равна относительной пропускной способности системы:
(4.1.14)
Определяем среднее число занятых каналов :
(4.1.15)
Определяем вероятность того, что канал занят:
(4.1.16)
Подставив численные значения в (4.1.14), (4.1.15), (4.1.16), получаем:
При n = 3 (Рис.4):
Рис.4
Состояния системы описываются так:
§ X0 — в системе нет ни одной заявки (все каналы свободны);
§ X1 — одна заявка находится в системе, она обслуживается одним (любым) из n каналов;
§ X2 — в системе находятся две заявки, они обслуживаются двумя каналами;
§ X3 — в системе находятся три заявки, они обслуживаются тремя каналами;
Составим системы уравнений Эрланга:
Система интегрируется при следующих начальных условиях:
Решение системы при данных начальных условиях удовлетворяет нормировочному условию.
т.е.
Составим систему при стационарном режиме работы системы:
Введем обозначение:
тогда Убедимся, что ui = 0
Подставив численные значения, получаем :
P1=1,268
P2=0,563
P3=0,25
Определяем расчетные характеристики При n = 4 (Рис.5):
Рис.5
Состояния системы описываются так:
§ X0 — в системе нет ни одной заявки (все каналы свободны);
§ X1 — одна заявка находится в системе, она обслуживается одним (любым) из n каналов;
§ X2 — в системе находятся две заявки, они обслуживаются двумя каналами;
§ X3 — в системе находятся три заявки, они обслуживаются тремя каналами;
§ X4 — в системе находятся четыре заявки, они обслуживаются четырьмя каналами Составим системы уравнений Эрланга:
Система интегрируется при следующих начальных условиях:
Решение системы при данных начальных условиях удовлетворяет нормировочному условию.
т.е. .
Составим систему при стационарном режиме работы системы:
Введем обозначение:
тогда Убедимся, что ui = 0.
Подставив численные значения, получаем :
P1=2,285
P2=1,014
P3=0,45
Р4=0,2
Определяем расчетные характеристики
2.2 Описание блок-схемы алгоритма
1. Установка начальных значений:
; p=0,57; q=4; a = 40; х=1400?60; I=9; n=2−4.
p — вероятность поражения цели одной ракетой,
m — интенсивность обслуживания одного канала (скорострельность каждой пусковой установки),
q — число источников заявок в системе (число пусковых установок),
— средний линейный интервал между ракетами,
v — скорость налетающих ракет,
a — длина полосы обстрела ;
n — доступное количество каналов (вводится с клавиатуры);
z_ rasчисло реализаций.
2. Функция, вычисления факториал целого числа.
3. Функция, вычисления степень .
4. Вычисление функции пуассоновского распределения.
5. Ввод числа доступных каналов n.
6. Расчет необходимых параметров для моделирования:
mu — интенсивности потока обслуживаний одного канала;
nu — интенсивности потока уходов заявки из-под обслуживания;
mu1 — на занятый канал действует пуассоновский поток освобождений с такой интенсивностью;
l — интенсивность поступления заявок;
alfa — коэффициент, для нахождения табличных функций пуассоновского распределения.
7. Вывод результатов расчета mu, mu1, nu, l, alfa.
8. Вычисляем :
po — вероятность отказа;
k — среднее число занятых каналов;
pi — вероятность того, что (любой) канал будет занят.
9. Вывод результатов расчета.
2.3 Анализ полученных результатов моделирования В результате вычислений были получены расчетные характеристики
(таблица 3.)
Таблица 3
n=2 | n=3 | n=4 | ||
0,6 | 0,789 | 0,905 | ||
1,35 | 1,78 | 2,035 | ||
0,675 | 0,889 | 1,018 | ||
При увеличении числа каналов обслуживания от 2 до 4, прослеживается :
1. увеличение вероятности обслуживания заявки;
2. увеличивается среднее число занятых каналов;
3. увеличивается вероятность того, что канал будет занят.
Графики зависимости полученных величин от числа каналов показаны в приложении 5 (рис. 6, рис. 7, рис. 8).
3. Сопоставление разработанных моделей и полученных результатов В данном курсовом проекте были рассмотрены два способа исследования систем массового обслуживания: построение имитационной и аналитической моделей. Имитационное моделирование основано на моделировании самого процесса поступления и обработки заявок. Вычисление характеристик системы с помощью такой модели трудоемкий процесс, поэтому для вычислений используется ЭВМ. Данная модель наиболее приближена к реальной системе и дает более достоверные результаты. Аналитическая модель строится на основе математического вероятностного описания системы массового обслуживания. Эта модель в результате расчетов дает приближенные результаты. Убедиться в адекватности аналитической и имитационной моделей СМО, используем метод сравнения нескольких дисперсий генеральных совокупностей по выборкам одинакового объема. Требуется по исправленным дисперсиям () при уровне значимости проверить нулевую гипотезу (), состоящую в том, что генеральные дисперсии рассматриваемых совокупностях равны между собой:
Иными словами, требуется проверить, значимо или незначимо различаются исправленные выборочные дисперсии.
В качестве критерия проверки нулевой гипотезы примем критерий Кочрена — отношение максимальной исправленной дисперсии к сумме всех исправленных дисперсий:
Для того чтобы при заданном уровне значимости проверить гипотезу об однородности дисперсий нормально распределенных совокупностей, надо вычислить наблюдаемое значение критерия и по таблице найти критическую точку.
Если — нет оснований отвергнуть нулевую гипотезу.
Если — нулевую гипотезу отвергают.
Оцениваются дисперсии вероятности обслуживания (таблица 4).
Таблица 4
n | ||||
0,31 | 0,47 | 0,7 | ||
0,6 | 0,789 | 0,905 | ||
Определяю исправленные дисперсии независимых выборок:
Определяю значение критерия
Найдем по таблице, по уровню значимости 0,05, числу степеней свободы и числу выборок критическую точку
.
Так как — нет оснований отвергнуть нулевую гипотезу об однородности дисперсии.
Выводы по работе Целью данного курсового проекта было определение характеристик системы — вероятность обслуживания заявки, вероятность занятости любого канала системы, среднее число занятых каналов, а также разработка имитационной и аналитической моделей и их сравнение. Обе системы рассматриваются при следующих упрощениях: рассматривается простейший пуассоновский поток входящих заявок, простейший пуассоновский поток обслуживания, а также работа системы в стационарном режиме. Имитационная модель строилась с учетом всех особенностей функционирования реальной системы и поэтому она достаточно точно описывает все вероятностные процессы. В аналитической модели путем вычисления по известным формулам можно определить вероятностные характеристики системы — вероятность обслуживания заявки, плотность потока обслуживающих заявок, среднее время занятости канала только приближено.
1. Южаков А. А. Прикладная теория систем массового обслуживая:
Учебное пособие / ПГТУ, Пермь, 2004.-121 с.
2. Южаков А. А. Стохастические сети в проектировании технических систем: Учебное пособие / ПГТУ, Пермь, 1999. 131 с.
3. Южаков А. А. Прикладная теория систем массового обслуживая:
Учебное пособие / ПГТУ, Пермь, 2005.-60 с.
4. Гмурман В. Е. Теория вероятностей и математическая статистика:
Учеб. пособие для ВУЗов / 9-е изд., стер.- М.: Высш.шк., 2003.-479 с.: ил.
5. Вентцель Е. С., Овчаров Л. А. Прикладные задачи теории вероятностей:
М.: Радио и связь, 1983. — 416 с., ил.
6. Вентцель Е. С., Овчаров Л. А. теория случайных процессов и ее инженерные приложения. М.: Наука.Гл. ред. физ.-мат. лит. — 1991. 384 с.
Приложения Приложение 1
Блок схема (имитационная модель)
Приложение 2
Текст программы (имитационная модель).
program imit_unit;
{$APPTYPE CONSOLE}
uses
SysUtils;
const m=¼;p=0.57;q=4;a=40;v=1400/60;i=9;
type
//Тип описывающий структуру заявки
TRequest=record
tprih:real; //время прихода заявки в систему
tosv:real; //время освобождения заявки
nn:byte; //требуемое для обслуживания число каналов =1
service:boolean; //признак обработки заявки
end;
var
n:integer;
mas: array [1.1000] of TRequest;
mu, nu, mu1, l, k, pi, po: real;
z_ras, z_otk, n_svob, tserv, time, t_in:longint;
c, j: integer;
begin
writeln ('Введите доступное кол-во каналов обслуживания n: ');
readln (n);
//расчет параметров на основании данных
mu:=q*m*p;
nu:=v/a;
mu1:=mu+nu;
l:=v/I;
writeln ('—————————————————————');
writeln ('Эффективная скорострельность одного канала (mu) ', mu:5:7);
writeln ('Интенсивность ухода заявки из-под обслуживания (nu) ', nu:5:7);
writeln ('Интенсивность пуассоновского потока освобождений (mu1) ', mu1:5:7);
writeln ('Интенсивность потока заявок (l) ', l:5:7);
writeln ('—————————————————————');
z_otk:=0; //счетчик числа отказов
n_svob:=n; //счетчик числа свободных каналов в системе
time:=0; //текущее время
t_in:=0; //время прихода очередной заявки
z_ras:=100; //число заявок
randomize;
//организация последовательности заявок
for c:=0 to z_ras do
begin
t_in:=t_in+round (-ln ((random (1000)+1)/1001)/l);
// время обслуживания очередной заявки
repeat
tserv:=(round (-ln ((random (1000)+1)/1001)/mu));
until tserv<>0;
mas[c]. nn:=1;
mas[c]. tprih:=t_in;
mas[c]. tosv:=mas[c].tprih+tserv;
mas[c]. service:=false; // true — заявка обработана
end;
//обработка заявок
for c:=0 to z_ras do
begin
// проверка наличие заявки в сиситеме
while time
begin
time:=time+1;
// проверка наличия обработанных заявок
for j:=0 to c-1 do
// условие выполняется если заявка обработана
if (time=mas[j]. tosv) and (mas[j]. service=true) then
n_svob:=n_svob+mas[j]. nn;
end;
// проверка свободных каналов для обработка пришедшей заявки
if (time=mas[c]. tprih) and (n_svob>=mas[c]. nn) then
begin
n_svob:=n_svob-mas[c]. nn;
mas[c]. service:=true;
end
else z_otk:=z_otk+1;
end;
//Расчет выходных параметров
po:=1-z_otk/z_ras;
k:=(po*l)/mu;
pi:=k/n;
writeln ('Вероятность ослуживания (po) ', po:5:7);
writeln ('Среднее число занятых каналов (k) ', k:5:7);
writeln ('вероятность того, что (любой) канал будет занят (pi) ', pi:5:7);
readln;
end.
Приложение 3
Блок схема (аналитическая модель)
Приложение 4
Текст программы (аналитическая модель)
program analitic_model1;
{$APPTYPE CONSOLE}
uses
SysUtils;
const m=¼; p=0.57; q=4; a=40; v=1400/60; I=9;
var j, n: integer;
k, pi, mu, nu, mu1, l, alfa, po: real;
// функция, вычисления факториал целого числа
function fakt (k:integer):integer;
var x: integer;
begin
x:=1;
for j:=1 to k do
x:=x*j;
fakt:=x;
end;
//функция, вычисления степень XY
function stepen (x:real; y: integer):real;
var j: integer;
f:real;
begin
f:=1;
for j:=1 to y do
f:=f*x;
stepen:=f;
end;
// вычисление функции пуассоновского распределения
function R (t:integer; x: real):real;
var ff: real;
j:integer;
begin
ff:=0;
for j:=0 to t do
ff:=ff+stepen (x, j)*exp ((-1)*x)/fakt (j);
R:=ff;
end;
begin
writeln ('Введите число каналов n: ');
readln (n);
mu:=q*m*p;
nu:=v/a;
mu1:=mu+nu;
l:=v/I;
alfa:=l/mu1;
writeln ('mu ', mu:5:7);
writeln ('nu ', nu:5:7);
writeln ('mu1 ', mu1:5:7);
writeln ('l ', l:5:7);
writeln ('alfa ', alfa:5:7);
writeln ('———————————————-');
po:=(R (n-1,alfa))/(R (n, alfa));
k:=alfa*po;
pi:=k/n;
writeln ('Вероятность облуживания (po) ', po:5:7);
writeln ('Среднее число занятых каналов (k) ', k:5:7);
writeln ('вероятность того, что (любой) канал будет занят (pi) ', pi:5:7);
readln;
end.
Приложение 5
Рис. 6
Рис. 7
Рис. 8