Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Надежность и диагностика автоматизированных систем. Курс лекций

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
Рис. 3.2. Блок-схема имитационной модели с дискретным характером
изменения состояний
31
32
Рис. 3.3. Блок-схема имитационной модели
восстанавливаемой системы
Рис. 3.4. Блок-схема комбинированной имитационной модели
33
Составление программы для ЭВМ. При составлении программы для последующего имитационного эксперимента надо решить три задачи:
составление самой программы;
1)
2)
задание начальных условий; генерирование недостающих данных.
3)
Составление программы обычно начинается с построения блок­схемы алгоритма. Составление блок-схемы полезно разбить на два этапа: составление укрупненной блок-схемы и детализация отдель­ных участков этой блок-схемы.
Выбор языка программирования зависит от типа ЭВМ или персо­нального компьютера. Следует отметить, что в настоящее время раз­работан ряд языков программирования для моделирования задач конкретной предметной области, например задач массового обслу­живании, имитационного моделирования, искусственного интеллекта и ряда других.
В имитационном эксперименте вычисляется поведение системы во времени. Это поведение существенно зависит от начальных усло­вий моделирования. При моделировании задач надежности этот во­прос, как правило, отпадает, так как считается что в этот момент t = 0 система находится в исправном состоянии, а причины, вызывающие постепенные отказы, имеют начальные, нулевые значения. В других случаях моделирования эта проблема решается методом проб и оши­бок, часто с применением генератора случайных чисел.
Оценка пригодности модели. Для оценки пригодности модели не­обходимо ответить на следующие вопросы:
1.
В какой степени имитированные значения выходных перемен­ных совпадают с известными величинами за прошлые периоды вре­мени?
2.
Насколько точно предсказание имитационной модели относи-
тельно поведения реальной системы в будущем?
При этом можно использовать конкретные методы оценки «точ­ности отладки» имитационной модели, т.е. степени совпадения во времени имитируемых и наблюдаемых выходов. К числу этих мето­дов относятся следующие.
Дисперсионный анализ, т.е. такая обработка результатов на-
1.
блюдений на реальном объекте и машинного эксперимента, при ко­торой можно проверить гипотезу о том, что среднее и дисперсия по­лученного при имитации временного ряда равны среднему и диспер­сии наблюдаемого ряда.
34
2. Критерий χ2, с помощью которого можно проверить гипотезу о
N
том, что результаты экспериментов с имитационной моделью имеют то же частотное распределение, что и фактические данные.
3.
Критерий Колмогорова – Смирнова, по которому определяется степень соответствия между распределением имитированного ряда и распределением фактических данных.
4.
Спектральный анализ. Анализ спектров (или корреляционных функций) дает дополнительную по сравнению с указанными выше методами информацию о поведении той или иной величины во вре­мени. Сравнивая спектры двух временных рядов (имитированного и реального), можно сделать вывод о пригодности модели. Спектраль­ный анализ временных рядов применяется для стационарных про­цессов. Если исследуемый процесс нестационарный, то предвари­тельно из него надо попытаться исключить нестационарную часть
(
типа тенденции или сезонных изменений) так, чтобы после исклю-
чения этой части процесс можно было бы считать стационарным.
Планирование эксперимента. В машинном имитационном экспе­рименте необходимо должное внимание уделить его планированию. Методы планирования эксперимента подробно изложены в работах
[3, 13].
При планировании эксперимента необходимо также решить вопрос, когда закончить каждую серию эксперимента. Если имита­ционная модель статическая (имитируется установившееся состоя­ние системы для некоторого момента времени), то для того чтобы вероятность попадания оценки математического ожидания искомой
величины x в доверительный интервал
число испытаний должно быть равно
=
была равна (1–α) %,
zxσ±
α 2
22
zNσ
2
α
, где
2
d
zdσ=
λ 2
–
N
доверительный интервал; σ – среднеквадратичное отклонение (или его оценка) величины x. Величина z
– оценка отклонения центри-
α/2
рованного и нормированного нормального распределения, остав­ляющая в «каждом хвосте» по α/2 % вероятности. Это правило при­менимо, когда N получается достаточно большим.
Обработка результатов эксперимента проводится по правилам математической статистики, знакомой по соответствующему разделу курса математики.
35
3.2. Генерирование случайных величин
большинстве случаев при имитационном моделировании ис-
В
пользуют программные методы получения случайных чисел. Такие числа уже нельзя назвать «случайными», но они обладают многими статистическими свойствами строго случайных чисел. В литературе они получили название «псевдослучайных» чисел. В настоящее вре­мя большинство программ, генерирующих псевдослучайные числа, используют конгруэнтную процедуру, при которой каждое после­дующее число x
получается из предыдущего xi. В основе конгру-
i+1
энтных процедур генерирования псевдослучайных чисел лежит ма­тематическое понятие сравнения (congruence). Целые числа a и b считаются сравнимыми по модулю m, если эти числа дают одинако­вые остатки при делении на m (или, что то же самое, разность этих чисел делится на m без остатка). Математически процедуру сравне­ния записывают следующим образом: a = b(mod m) и читают «a, сравнимое с b по модулю m».
Искомая последовательность псевдослучайных чисел получается
из соотношения: x
i+1
≡(аx
+b)(mod m).
i
Из этого выражения следует, что количество различных псевдо­случайных чисел не может быть больше m. После генерации m чисел последующие числа начинают повторяться. При неудачном выборе величин a и b период может быть меньше m. Существуют теоретиче­ские предпосылки, позволяющие осуществить выбор чисел a, b и m. В частном случае b = 0, т.е. X
= axi (mod m). Такой генератор назы-
i+1
вают мультипликативным, и он дает достаточно хорошие результаты
(
полученные числа имеют хорошие статистические характеристики).
Количество различных псевдослучайных чисел зависит от разрядно­сти процессора, так как обычно модуль m принимают равным 2
–
разрядность процессора.
к
–1, где к
Для удобства пользования псевдослучайными числами во всех ЭВМ имеется программа, дающая равномерное распределение в пре­делах 1 < x < 0. В языках программирования обращение к генератору случайных чисел осуществляется специализированными оператора­ми, например RND[(x)]. В языке Turbo-Basic, если х = 0, то повторя­ется последнее генерированное число, если х < 0, то генерируется новая последовательность случайных чисел, если х > 0 или х отсутст­вует, то генерируется очередное случайное число, но при повторном запуске последовательность повторяется.
36
В других языках программирования существуют аналогичные
2
12
правила и операторы.
Если необходимы случайные числа с другими распределениями вероятностей, то после обращения к генератору, дающему случайные числа R в интервале (0,1), используют простые преобразования [3].
Из теории вероятностей известно, что равномерное распределение в интервале (А, В) получается преобразованием X=A+(B–A)·R. Мате-
матическое ожидание в этом случае будет
)(2AB
VX−=
.
ABEX+
=
, а дисперсия
Для получения нормального распределения с нулевым средним производится суммирование 12 случайных чисел R. Из суммы вычи­тается 6, а результат умножается на величину заданного среднеквад­ратического значения, так как дисперсия суммы равна единице, т.е.
12
⎛ ⎜
∑
⎜
=
i
⎝
RX σ
−=
1
⎞ ⎟
6
. Если среднее значение отличается от нуля, то к
x
⎟ ⎠
этому выражению добавляется величина, равная среднему значению.
Для получения экспоненциального распределения P(x)=αe
–αx
α > 0, x ≥ 0, производится операция x = –(1/α)log(R). При этом мате-
матическое ожидание EХ=1/α и дисперсия VX = 1/α
2
= EX2.
3.3. Генерирование коррелированных случайных величин
многих практических примерах необходимо получать после-
Во
довательность случайных величин, в которой отдельные значения коррелированны между собой. Для такого ряда случайных величин можно воспользоваться так называемыми «процессами скользящего среднего» или «процессами авторегрессии» [15]. Пусть {a
} – после-
t
довательность независимых нормально распределенных чисел с ма-
2
тематическим ожиданием, равным нулю, и с дисперсией для последовательности {Z
муле: z
= αt – θ
t
⋅α
автокорреляционная функция равна
1
t–1
}, члены которой определяются по фор-
t
θ−
⎧
1
⎪
2
θ+
1
=ρ
⎨
k
1
⎪ ⎩
для
=
1
k
,
≥
2для0
k
σ
. Тогда
α
37
а дисперсия определяется из выражения
ρ−ρ
22
.
)1(
σθ+=γ
10
α
Такую последовательность называют процессом скользящего
среднего первого порядка.
Процесс скользящего среднего второго порядка Z
2
2
имеет дисперсию )1(
2
0
α
⎧ ⎪
1
⎪ ⎪
=ρ
⎨
k
1
⎪ ⎪ ⎪
θ+θ+σ=γ
и автокорреляционную функцию
2
1
θ−θ−
)1(
21
2
2
θ+θ+
2
1
θ−
2
2
2
θ+θ+
2
1
K
=
K
K
=
≥
1для
2для
.3для0
= αt – θα
t
t–1
– θ
⎩
α
2
t–2
Процесс авторегрессии первого порядка имеет вид z
Для его стационарности необходимо |Φ
|<1.
1
Автокорреляционная функция имеет вид ρ
2
σ
дисперсия процесса
2
z
α
=σ
1 Φ−
2 1
= Φ
к
= Φ
t
ρ
(для К>0),
1
к–1
1zt–1
Процесс авторегрессии второго порядка записывается в виде
z
t=Φ1zt–1+Φ2zt–2+αt
Для стационарности процесса необходимо, чтобы Φ
Φ
– Φ1 <1, –1< Φ2 <1. Автокорреляция имеет вид ρк = Φ
2
для К>0. Коэффициенты Φ
.
+ Φ2 <1,
1
ρ
+ Φ
1
к–1
и Φ2 можно определить из выражений
1
2
1 ρ−
ρ−ρ
12
.
2
1
)1(
21
=Φ
1
1
;
=Φ
2
ρ−
1
2
Эти выражения могут быть решены относительно переменных ρ
2
Φ
1
1
=ρ
1 Φ−
и
2
Φ
1
+Φ=ρ
22
1 Φ−
.
2
+ αt.
ρ
2
к–2
:
i
38
3.4. Моделирование систем массового обслуживания
3.4.1. Общие сведения
Теория
систем массового обслуживания (СМО) рассматривает сис-
темы, в которых производится обслуживание требований или заявок, поступающих извне в систему. Задачами теории СМО является анализ ситуаций, возникающих в таких системах, и определение таких харак­теристик, как длина очереди требований в системе, время ожиданий и т.п. Как правило, в СМО требования в систему поступают случайным образом; длительность обслуживания тоже случайна. Анализ ситуа­ций, возникающих в системе массового обслуживания, поддается ана­литическому решению лишь в простейших случаях, когда поток зая­вок и времена обслуживания описываются экспоненциальными рас­пределениями и когда наложен еще целый ряд дополнительных огра­ничений. Поэтому для изучения реальных систем, описываемых мето­дами теории массового обслуживания, широко используется имитаци­онное моделирование. В частности, эти методы можно использовать при моделировании восстанавливаемых систем.
В качестве примера рассмотрим процесс восстановления техноло­гического оборудования в цехе по производству полупроводниковых материалов, в котором работает несколько десятков независимых друг от друга агрегатов (печей), периодически требующих ремонта. Если для ремонта используется одна (единственная) бригада рабо­чих, осуществляющая все этапы ремонта, то такой процесс модели­руется одноканальной однофазной СМО. Очевидно, что необходи­мость (требование) ремонта эквивалентна заявке, поступающей из цеха в систему, производящую ремонт, т.е. в СМО.
Если ремонт осуществляется несколькими такими бригадами, не­зависимо друг от друга, то такой процесс восстановления описывает­ся многоканальной СМО.
И наконец, возможен случай, при котором ремонт осуществляется несколькими специализированными на различных видах работ бри­гадами, выполняющими последовательно разные этапы ремонта. Причем очередной этап ремонта возможен только после завершения предыдущего. Такой случай моделируется одноканальной многофаз­ной СМО.
39
Рассмотрим эти три модели массового обслуживания. В после­дующем описании алгоритмов и блок-схем использованы перемен­ные и их обозначения, приведенные в работе [3].
3.4.2. Одноканальная однофазовая модель
Одноканальная
однофазовая модель является простейшей моде-
лью систем массового обслуживания. Она состоит из одного блока обслуживания, на который поступают требования (заявки). Если блок свободен на момент поступления заявки, то он немедленно при­ступает к ее обслуживанию. В противном случае заявка ставится в очередь. При наличии очереди первой обслуживается заявка, посту­пившая раньше остальных. Промежуток времени между поступле­ниями заявок и продолжительность обслуживания обычно считаются случайными величинами с заданными законами распределения.
При анализе функционирования такой системы массового обслу­живания обычно интересуются такими величинами, как среднее время ожидания заявки в очереди, среднее время простоя системы обслужи­вания в ожидании очередной заявки, средняя длина очереди и т.п.
Рассмотрим имитационную модель, в которой необходимо опре­делить средние времена ожидания и простоя. Перечислим перемен­ные, используемые в модели.
1.
Выходные переменные:
EWT – среднее время ожидания требования;
EDТ – среднее время простоя системы в ожидании поступления
очередного требования.
Переменные состояния системы:
2.
WT
– время ожидания i-го требования, mi ,1= ;
i
DT
– время простоя в ожидании i-го требования,
i
3.
Входные переменные (случайные):
AT
– интервал времени между появлениями i-го и (i +1)-го требо-
i
.
mi ,1=
ваний;
ST
– время обслуживания i-го требования.
i
Предполагается знание законов распределения p(AT) и p(ST) вели­чин AT и ST, соответственно. Будем считать, что эти величины рас­пределены по экспоненциальному закону. Это позволит сравнить полученные при моделировании результаты с теоретическими, опре­деленными аналитически.
Искомые величины могут быть определены при моделировании по формулам
40
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]