Файл: А. А. Мицель математическое и имитационное.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 29.11.2023

Просмотров: 236

Скачиваний: 8

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

128
Рис. 11.3.Поэтапная последовательная проводка заявок
Установим модельное время на нуль. Будем рассматривать изолированный поток заявок первого приоритета так, как будто заявок второго приоритета не существует.
Применив способ последовательной проводки, можно установить моменты начала и окончания обслуживания заявок первого приоритета. Иначе говоря, в результате выполнения первого этапа моделирования можно определить значения элементов массива
1,1 1,2 1,3
{
,
,
,...}
н
н
н
T
T
T
и элементов массива
1,1 1,2 1,3
{
,
,
,...}
к
к
к
T
T
T
Можно также подсчитать число обслуженных заявок до конца периода обслуживания
кон
T
В данном случае заявки 1.1 и 1.3 обслуживаются сразу после их поступления, а заявка 1.2 обслуживается после некоторого ожидания, связанного с занятостью канала.
Второй этап моделирования
Вновь установим модельное время на нуль. Начинается этап моделирования процесса обслуживания заявок второго приоритета в условиях, что на временной оси располагаются уже обслуженные заявки первого приоритета. Следовательно, заявки второго приоритета могут занимать только свободные промежутки времени.
Распределение времени между соседними заявками будем считать известным.
Тогда с помощью жребия можно определить возможные значения случайных величин времени поступления заявок. Распределение времени обслуживания также будем считать известным. Тогда с помощью жребия можно определить планируемые интервалы времени обслуживания.
Заявка 2.1 поступает в момент, когда канал занят обслуживанием заявки 1.2.
Затем канал освобождается и начинается обслуживание заявки 2.1. Однако,

129 поступившая заявка первого приоритета 1.3 вытесняет заявку 2.1. Только после освобождения канала происходит процесс «дообслуживания» заявки 2.1.
Заявка 2.2 также некоторое время ожидает начала обслуживания, а затем обслуживается до конца. Для заявки 2.3 не хватает времени, так как наступает конец периода обслуживания.
Рассмотрим теперь, как формализуется процесс обслуживания заявок второго приоритета в присутствии заявок первого приоритета. При взаимодействии заявок двух различных приоритетов могут возникнуть три возможные ситуации.
Рис. 11.4. Схемы вариантов 1-ой ситуации: а – первый вариант; б – второй вариант
Ситуация 1. Ни одна из имеющихся
1
z
N
- заявок первого приоритета не препятствует обслуживанию заявки второго приоритета. Два возможных варианта этой ситуации иллюстрируются схемой, показанной на рис. 4.
Здесь
(1)
нi
T
– фактическое время начала обслуживания
i
- й заявки первого приоритета;
(1)
кi
T
– фактическое время окончания обслуживания
i
- и заявки первого приоритета;
(2)
нj
T
– первоначально намеченное время начала обслуживания
j
- й заявки второго приоритета (без учета возможности поступления заявки первого приоритета);
(2)
кj
T
– первоначально намеченное время окончания процесса обслуживания
j
- й заявки второго приоритета (без учета возможности поступления заявки первого приоритета).
Логическое условие, при котором создается 1-й или 2-й вариант 1-й ситуации, записывается так:
{
(2)
(1)}
{
(1)
(2)}
кj
нi
кi
нj
T
T
OR T
T


(11.1)


130
Если для
j
- й заявки второго приоритета условие (1) выполняется по отношению ко всем заявкам первого приоритета (
1 1,...,
z
i
N

),
то
j
– я заявка может быть обслужена. Ей может помешать только другая заявка 2-го приоритета, принятая ранее к обслуживанию.
Ситуация 2. Система приняла к обслуживанию заявку второго приоритета, и она начала обслуживаться. Однако до истечения расчетного времени окончания обслуживания поступила заявка первого приоритета, которая вытесняет данную заявку второго приоритета. Два возможных варианта этой ситуации иллю- стрируются схемой, показанной на рис. 11.5.
Рис. 11.5. Схемы вариантов 2-ой ситуации: а – первый вариант; б – второй вариант
Логическое условие, при котором создается любой из вариантов 2-й ситуации, записывается так:
{
(2)
(1)}
{
(1)
(2)}
нj
нi
нi
кj
T
T
AND T
T


(11.2)
Если условие (2) выполняется хотя бы для какой-либо пары значений переменных
(2)
нj
T
и
(1)
кi
T
при изменении
i
от 1 до
1
z
N
,
то продолжение процесса обслуживания заявки второго приоритета откладывается до момента освобождения канала.
После этого рассматривается возможность «дообслуживания» заявки. С этой целью производится корректировка времени начала и окончания обслуживания заявки по формулам:
(2)
нj
к fix
T
T

;
(2)
[
(2)
]
кj
к fix
кj
н fix
T
T
T
T



, где
н fix
T
– фиксированное время начала обслуживания заявки первого приоритета, для которой выполняется условие (2);
к fix
T
– фиксированное время окончания обслуживания заявки первого приоритета, для которой выполняется условие (2).

131
После этого вновь рассматривается возникшая ситуация.
Ситуация 3. Заявка второго приоритета поступила в период обслуживания заявки первого приоритета. Следовательно, заявка второго приоритета не может быть принята к обслуживанию. Два возможных варианта этой ситуации иллюстрируются схемой, показанной на рис. 11.6.
Рис. 11.6. Схемы вариантов 3-ой ситуации: а – первый вариант; б – второй вариант
Логическое условие, при котором создается любой из вариантов 3-й ситуации, записывается так:
{
(1)
(2)}
{
(2)
(1)}
нi
нj
нj
кi
T
T
AND T
T


(11.3)
Если условие (3) выполняется для какой-либо пары значений переменных
(2)
нj
T
и
(2)
кi
T
при изменении
i
от 1 до
1
z
N
,
то производится «сдвиг» времени начала и окончания обслуживания заявки по формулам:
(2)
нj
к fix
T
T

;
(2)
[
(2)
(2)]
кj
к fix
кj
нj
T
T
T
T



,
После этого вновь рассматривается возникшая ситуация для «сдвинутой» заявки.
«Дообслуживаемая», или «сдвинутая», заявка, в свою очередь, может оказаться в одной из трех перечисленных выше возможных ситуаций.
В конечном счете процесс обслуживания может иметь два исхода:
1) заявка будет обслужена до конца;
2) истечет время функционирования системы, и заявка останется необслуженной (так же, как и все последующие заявки второго приоритета).


132
11.3. Задания по лабораторной работе №11
1.
Провести моделирование обслуживания неперекрывающихся заявок в одноканальной системе. Время поступления заявок и время обслуживания распределены по экспоненциальному закону. Рассмотреть ситуации с различными значениями параметра интенсивности потока

. Выполнить анализ системы для различных значений
T

и определить минимальный шаг, при котором не будет пропущена ни одна заявка.
2.
Рассмотреть метод последовательной проводки перекрывающихся заявок одинакового приоритета. Время поступления заявок и время обслуживания распределены по экспоненциальному закону. Рассмотреть ситуации с различными значениями параметра интенсивности потока

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

поступления и обслуживания заявок первого и второго приоритета. Определить среднее время ожидания обслуживания заявок.
4.
Написать программы в пакете Mathcad для моделирования поступления и обслуживания: а) неперекрывающихся заявок в одноканальной системе; б) перекрывающихся заявок одинакового приоритета; в) перекрывающихся заявок с разным приоритетом.
Примечание. Первые три задания можно выполнить с помощью встроенных функций Mathcad.

133
1   ...   6   7   8   9   10   11   12   13   14

12.
Лабораторная работа № 12. Моделирование
процессов обслуживания заявок в условиях отказов
12.1 Описание модели
В системах, включающих технические подсистемы, возможно возникновение отказов. Различают два рода отказов.
Отказы первого рода (неисправности) приводят к временному прекращению процесса обслуживания очередной заявки с сохранением достигнутого состояния.
После устранения отказа процесс обслуживания заявки может продолжаться. В качестве примера можно указать отказ оборудования бензоколонки. После устранения неисправности заправка автомашины продолжается.
Отказы второго рода (аварии) приводят к такому состояний системы, что после устранения отказа процесс обслуживания заявки начинается сначала.
Примером может служить временное отключение электропитания при работе персонального компьютера во время решения расчетной задачи. После устранения аварии процесс решения задачи начинается сначала.
Время возникновения отказов в системе следует считать случайным событием.
Период устранения отказа также может рассматриваться как случайный отрезок времени. Принято считать, что период безотказной работы и период устранения отказа имеют показательные распределения с определенными параметрами.
Функция плотности для времени безотказной работы
0 0
0 0
(
)
exp(
)
f


 


, где
0

– время безотказной работы;
0

– параметр (интенсивность потока отказов).
Функция плотности для времени устранения отказа
(
)
exp(
)
y
y
y y
f


 


, где
y

– время устранения отказа;
y

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

и
y

Можно показать, что композиция этих распределении приводит к обобщенному потоку Эрланга 2-го порядка, плотность которого имеет вид:
0 0
0
[exp(
) exp(
)]
( )
y
y
y
f
 
 
 








Схема алгоритма формирования одиночного отказа показана рис. 1.
Оператор 1 обращается к датчику случайных чисел с равномерным распределением в интервале (0,1). Условный оператор 2 служит для розыгрыша по жребию рода отказа. Если условие
отк
z
P

выполняется (где
отк
P
-
вероятность появления отказа первого рода), то считается, что произошел отказ первого рода. В противном случае считается, что произошел отказ второго рода.


134
Рис. 12.1 Схема алгоритма формирования одиночного отказа
Оператор 5 вновь обращается к датчику случайных чисел с равномерным распределением в интервале (0,1), а оператор 6 формирует время появления отказа по формуле
( )
отк
уст
отк ср
T
T
T
Ln z



где
уст
T
– время устранения предыдущего отказа (в начале работы системы
уст
T
= 0);
отк ср
T
– среднее время безотказной работы системы.
Оператор 7 еще раз обращается к датчику случайных чисел с равномерным распределением в интервале (0,1), а оператор 8 формирует время устранения отказа по формуле
( )
уст
отк
уст ср
T
T
T
Ln z



, где
отк
T
- время появления отказа;
уст ср
T
– среднее время устранения отказа.
Если в процессе функционирования системы отказы могут возникать неоднократно, то обращение к процедуре формирования отказов производится несколько раз.
Укрупненная схема алгоритма процесса функционирования системы с отказами показана на рис. 12.2.
Рассматривается одноканальная система массового обслуживания с однородными заявками. Оператор 1 используется для обнуления глобальных переменных. Оператор 2 представляет собой заголовок циклического перебора случайных реализаций. Оператор 3 служит для обнуления локальных

135 переменных. Оператор 4 обращается к процедуре формирования одиночного отказа, схема которой приведена на рис. 12.1.
Рис. 12.2. Укрупненная схема алгоритма процесса функционирования системы с отказами
Оператор 5 на рис. 12.2 обращается к процедуре формирования одиночной заявки. В этой процедуре определяется случайное время поступления заявки с учетом возможного времени ожидания начала обслуживания. Здесь же определяется возможное время окончания обслуживания без учета возможности появления отказа.
Оператор 6 обращается к процедуре обслуживания заявок при условии возникновения отказов. Внутри этой процедуры имеются операторы обращения к процедуре формирования одиночных отказов и к процедуре «Анализ».
Условный оператор
7 проверяет условие окончания процесса функционирования системы. Если это условие не выполняется, то управление в алгоритме передается вновь оператору 5 для формирования очередной заявки.
Если условие выполнено, то управление в алгоритме передается на начало цикла случайных реализаций.
После окончания расчетов оператор 8 выводит на экран результаты моделирования.
Схема алгоритма процедуры «Анализ» приведена на рис. 12.3.
Оператор 1 устанавливает на нуль числовой признак
F
.
Условный оператор 2 проверяет условие
к
отк
T
T

(условие 1). Если оно выполняется, то числовому признаку
F
присваивается значение 1, а управление передается на конец процедуры.