ПРИЛОЖЕНИЕ VIII
После этого проверяем выполнение условий |
|
|
|(Гр1а — Т р 2 а ) І Т р \ а \ ^ . el и | (Твіа — Гв2а)/Гв1а |
е2. |
(П.15) |
Если хотя бы одно неравенство не выполняется, то проводим еще 200 реализаций и опять делаем проверку и т. д., пока условие (П.15) не выполнится. Если условие (П.15) выполняется, то выводим на печать среднее время работы, восстановления, коэффициент готовности и количество реализаций. Если же условие (П.15) не выпол няется, а количество реализаций N больше N max, то выводятся на печать среднее время работы и среднее время восстановления за N реализаций и за /V — 100 реали заций.
|
Приложение |
ПРОЦЕДУРА ПОЛУЧЕНИЯ |
Ѵ Ш |
ХАРАКТЕРИСТИК НАДЕЖНОСТИ |
|
ВОССТАНАВЛИВАЕМЫХ СИСТЕМ |
|
ПО РЕАЛИЗАЦИЯМ |
|
АЛЬТЕРНИРУЮ ЩЕЙ ПОСЛЕДОВАТЕЛЬНОСТИ |
|
(ДАННЫЕ НЕСТАЦИОНАРНОГО ПЕРИОДА) |
|
НАЗНАЧЕНИЕ
Процедура была составлена для получения коэффициента k r (t{) в заданные мо менты времени по формуле
ММ = Р ( и 6 [Т2Л-1>т2п]) (і= 1, 2, . . ., L )
и |
вероятности исправного функционирования |
системы на заданном интервале (t , |
t |
-|- Д t): |
|
|
P ( t , t -|- Ai ) = Р (т; ё |
и , і + Ы ] ) , |
где
т 2к — т 2 * - 1 4 “ М б т 2 *+ 1 — Т2к Ч - М + 1 (k — 1 , 2 , . . . );
т0 = 0 ; тг = /рг;
М— случайные времена работы; /в*>— случайные времена восстановления. Блок-схема процедуры представлена на рис. П.5.
ОБРАЩЕНИЕ К ПРОЦЕДУРЕ И ЕЕ ОСОБЕННОСТИ
Процедура 0>н. п (ф , (в, d, бв, |
k l , k2, |
ТО, |
te, |
A t e , T ie , M шах, L, Д) |
вклю |
чает в себя k2 — |
переменную типа integer; |
ф , ts, |
d, |
k \ , ТО, /в, Дйз, М max, L, Д — |
переменные типа |
real; бв, Т і в — массивы типа real. |
|
|
Среди указанных обозначений k2, d — выходные параметры, а остальные |
пара |
метры входные. |
|
|
|
|
|
|
|
Пусть |
в основной программе: |
|
|
|
|
|
|
ф — случайное время работы; |
|
|
|
|
Ф — случайное время |
восстановления; |
|
|
d |
— число, равное 1 |
или 0 ; |
|
|
|
|
k l , |
k2 |
— постоянные; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ПРИЛОЖЕНИЕ |
VIII |
|
|
|
ГО — величина |
рассматриваемого интервала |
времени; |
|
|
|
|
|
|
/в, |
Д /в — величины |
времени для вычисления Р |
(/, |
/ -(- Д/); |
|
|
|
|
|
/'/max — число, которым |
ограничивается |
количество |
реализаций; |
/ |
) |
; |
|
|
L |
количество— |
точек |
іі, в которых |
вычисляется |
/гг ( |
/ |
|
|
А — погрешность, |
с |
которой |
вычисляется |
Р |
(/, |
/4 - Д /) ; |
|
|
|
бв |
[1 |
; L] — погрешности, |
с |
которыми |
вычисляются |
kr |
[//]; |
|
|
|
|
Гів |
[1 : L] — интервалы времени, для |
которых вычисляется |
kr. |
|
|
|
|
Тогда обращение к процедуре может быть |
записано |
и |
без формальных |
пара |
|
метров. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Процедура |
имеет следующие |
особенности: |
|
|
|
|
|
|
|
|
|
|
1. При |
первом обращении |
к процедуре |
надо |
положить |
k l |
= |
0, |
в результате |
|
чего величинам присваиваются начальные значения, а для дальнейшего счета надо положить /гі =f= 0 .
|
2. |
В программе, где используется процедура 5°,,. п, |
необходимо описать сле |
дующие переменные: /в — переменную типа integer; Р в , |
Р ів, Гв, N в, Пв, / в, /1 в — |
переменные типа real; A T , Air [1 : L] — массивы типа |
real. |
|
3. |
В программе, где используется процедура £Рп, п, необходимо предусмотреть |
переключатель с двумя метками |
|
|
|
|
sw itch L1 : = |
N 1, N2 , |
|
где |
N 1 |
: процедура получения /р и /в; ^ н. п; |
go to LI [А2]: |
|
N 2 |
: продолжение программы. |
|
|
|
4. |
Процедура построена так, что при первом обращении к процедуре получения |
/р |
и /в должно обязательно получаться только время работы, а при втором обраще |
нии — только время восстановления и т. д., т. е. при нечетном обращении должно
|
|
|
|
|
получиться время |
работы, а при четном — время восстановления. |
5. |
В процедуру введена постоянная d, которая принимает значение 1, когда начи |
нается |
новая реализация, и значение 0 , когда идет продолжение одной реализации |
в течение времени |
ТО. |
|
|
6 . Процедура |
п выдает на печать массив чисел, причем сначала идут значе |
ния kr в точках і/і |
(і = |
1, . . ., L), а (L -)- 1)-м |
идет число Р (/, / -)- Д /)., Если же |
количество реализаций |
N в больше или равно |
N max, а приводимое ниже условие |
(П.16) не выполняется, то выдаются два следующих массива чисел: в первом массиве печатаются L значений Аг и (L + 1)-м значение Р (/, / — Д /), которые получаются в результате N реализаций, а во втором массиве — те же самые значения, полученные за N — 100 реализаций.
ОПИСАНИЕ ПРОЦЕДУРЫ *
Для вычисления Аг (/;) и Р (/, |
I |
Д 0 получаем первую реализацию альтерни |
рующей последовательности тг|1), |
|
.......... тАѴ,г д е т іѴ |
таково, |
что |
т£1) 1 < |
Г0, |
а |
rs; Т0, причем когда получаем т[г), то полагаем d — 1, а при получении после |
дующих |
чисел первой реализации |
берем |
d = |
0. По этой |
реализации проверяется |
выполнение события |
/,.£ ( T^ J , |
|
т^ ) , |
і = |
1, . . ., L, |
и |
т(1; £ |
(/, |
t - \ - At ), |
т. е. |
|
|
kr [//] = |
( |
kr (/,) + |
1 , |
если |
/; |
лежит в рабочем |
интервале; |
|
|
|
|
{ |
, ,, . |
если |
|
, |
|
|
в |
интервале |
восстановления, |
|
|
|
|
[ яг (/;), |
/,• лежит |
|
и |
|
Р в -|- 1, |
|
если интервал |
(/, |
/ |
|
At ) |
не содержит |
интервала времени |
|
|
|
|
|
|
{ |
|
восстановления; |
|
|
|
|
|
|
|
|
|
* |
В |
Р в , |
|
если интервал |
(/, |
/ + |
At ) |
содержит время восстановления. |
описании |
данного алгоритма |
используется обычная (неалгольная) |
форма |
записи.
ПРИЛОЖЕНИЯ
Затем составляем вторую реализацию.
Для получения т[2) опять берем d — 1, а для получения следующих членов пола
гаем d = 0. Сначала получаем 100 реализаций с номерами от 1 до 100 и подсчитываем вероятность указанных событий как отношение числа опытов, в которых события
выполнялись, к общему числу опытов, |
т. е. |
находим /г ^ (іг), . . |
(tL) и |
P (1* (t, |
t -)- At ), затем получаем еще 100 новых реализаций с номерами от 101 до 200 |
и подсчитываем указанную |
вероятность исходя из 200 опытов, т. е. находим |
fcj.2) (/г ), |
. . ., |
(tL) и P (2) (t, t |
+ At ). После |
этого |
проверяем условия |
|
К2Чгі)-^Чч>к6г,
| ^ ( / 2 ) - é < 1 ) ( ^ ) | ^ 6 2;
|
|
|
|
|
|
|
(П.16) |
|
|Р (2) (t, |
t + A t ) — P {1) {t, t - \ - A t ) |
Д. |
|
|
В случае невыполнения |
условий (П.16) |
получаем |
еще |
100 |
новых |
реализаций |
с номерами реализации от 201 до 300 и т. д. |
Когда условие, |
аналогичное условиям |
(П.16), |
выполнится, печатаются следующие |
результаты: |
к Г |
( h ) .......... |
/гг ( і / ) и |
Р (/, / + |
At ). |
|
|
|
|
|
|
|
|
|
|
|
|
Приложение |
ПРОЦЕДУРА ПОЛУЧЕНИЯ |
|
|
|
|
IX |
ВРЕМЕНИ РАБОТЫ И ВРЕМЕНИ |
|
|
|
|
|
ВОССТАНОВЛЕНИЯ СИСТЕМЫ, |
|
|
|
|
|
ЗАДАННОЙ ГРАФОМ |
|
|
|
|
|
|
НАЗНАЧЕНИЕ
Процедура £Рр , в служит для получения случайного времени работы и восстановления системы, заданной графом.
Блок-схема процедуры приведена на рис. П .6 .
ОБРАЩЕНИЕ К ПРОЦЕДУРЕ И ЕЕ ОСОБЕННОСТИ
ак, |
Процедура tPp . в (Ч> |
п > aK> о і. |
с і, |
сЗ, с4, с5, <р, Ів) включает |
в |
себя: |
т), |
п — переменные типа |
integer; d, |
tp, |
t s — переменные типа real; |
a l, |
а2, |
cl, |
сЗ, |
с4, |
с5 — массивы. |
|
|
|
|
|
|
|
Обращение к процедуре может быть записано и без формальных параметров, |
если ввести |
в основной программе следующие обозначения: |
|
|
|
|
|
tp — время |
работы; |
|
|
|
|
|
|
|
<в — время |
восстановления; |
путей графа; |
|
|
|
|
|
ак — конечная |
вершина |
всех |
|
|
ПРИЛОЖЕНИЕ IX
|
п — исходное число дуг; |
|
|
|
|
|
|
1) •— ориентировочное число путей |
(взятое |
с запасом); |
|
аі, а2 |
[1 : я] — массивы для записи входных и выходных дуг графа; |
|
сі |
[1 : т ] — массивы для |
записи |
путей |
графа; |
|
|
|
сЗ — массив для записи параметров законов распределения |
времени |
|
работы; |
|
|
|
|
|
|
с4 |
[1 ; я ] — массив для |
записи |
номеров |
законов |
распределения |
времени |
|
работы; |
|
|
|
|
|
|
с5 [я + |
1 : 2я] — массив для |
записи |
номеров |
законов |
распределения |
времени |
|
восстановления; |
|
|
|
|
|
|
<1—-постоянная, |
которая |
в начале |
каждой реализации равна 1, |
|
а внутри реализаций равна |
0 . |
|
|
|
В программе, в которой используется процедура |
в, необходимо, кроме того, |
описать: гі, г2, г З —-переменные типа real, характеризующие содержимое |
счетчи |
ков; t [1 : я] — массив, содержащий случайные времена работы. |
|
До использования в программе процедуры |
в необходимо обратиться к про |
цедуре |
После этого в массиве cl |
[1 : яі] оказываются записанными все пути графа. |
ОПИСАНИЕ ПРОЦЕДУРЫ
В начале процедуры осуществляем присваивание величинам начальных значе ний. Затем в случае начала новой реализации (при d = 1) полагаем содержимое счетчиков равным нулю и после первого обращения к процедуре-функции 3>х полу чаем случайные интервалы времени t [і] для всех дуг графа. После этого, подгото вив соответствующие величины, переходим к поиску min ( t [t ]). К этому же мы при ходим от начала процедуры в случае продолжения старой реализации (при d =4= 1).
Устройство, описываемое дугой, которой соответствует t min, на у'-м шаге изменило свое состояние. Если оно до этого работало, то для него ищем время восстановления, если же восстанавливалось, то ищем время работы, причем для удобства программи рования время восстановления записываем со знаком минус. Остальные устройства своего состояния не изменили, и соответствующие им интервалы времени на ('/ -)-1)-м
шаге будут:
t \ [і] : = (abs (t [i]) — t min) |
X sign (t [i]). |
Среди i = 1 ........it фиксируем номера тех дуг, |
которые соответствуют устрой |
ствам, находящимся в процессе восстановления. После этого все пути графа прове ряем, выясняя, входит ли в них каждая из дуг, соответствующих восстанавливаю щимся устройствам, или нет. Если есть хоть один путь, где устройства работают, то система считается работоспособной и t min прибавляется к <р (в противном слу чае система считается отказавшей и /в : = /в -|- / min). После этого проверяем, изменила ли система свое состояние по сравнению с предыдущим шагом. Если нет, то переходим к поиску очередного t min; если да, то обращаемся к началу процедуры соответственно со значением либо ф , либо fe. При последующих обращениях к про цедуре процесс повторяется.