Файл: Варжапетян, А. Г. Готовность судовых систем управления.pdf

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

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

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

Добавлен: 17.10.2024

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

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

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

ПРИЛОЖЕНИЕ 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 — ТЧ - М + 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

— постоянные;

 

 

 

 

 

213


ПРИЛОЖЕНИЯ

Рис. П .5. Блок-схема процедуры

п

214

 

 

 

 

 

 

 

 

 

 

 

 

ПРИЛОЖЕНИЕ

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 )

содержит время восстановления.

описании

данного алгоритма

используется обычная (неалгольная)

форма

записи.

215


ПРИЛОЖЕНИЯ

Затем составляем вторую реализацию.

Для получения т[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 — время

работы;

 

 

 

 

 

 

 

<в — время

восстановления;

путей графа;

 

 

 

 

 

ак — конечная

вершина

всех

 

 

216


ПРИЛОЖЕНИЕ 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. При последующих обращениях к про­ цедуре процесс повторяется.