Файл: Оптимизация процессов грузовой работы..pdf

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

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

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

Добавлен: 09.04.2024

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

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

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

ПРИЛОЖЕНИЕ X

Операторы 1, 2, 8, 32, 35, 40, 54 — процедура &>х, позволяющие получать серию или одиночное случайное число по требуемому закону в нужные моменты про­ хождения программы.

Операторы 3, 5, 43 — логические операторы, осуществляющие набор необхо­ димого количества чисел, среди которых ведется поиск.

Оператор 7 используется при необходимости нахождения путей графа (проце­ дура &).

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

Оператор 15 проверяет логическое условие min /, <[ 0.

Операторы 16, 20 проверяют принадлежность выбранного случайного времен­ ного интервала заданному отрезку [О, Тр].

Оператор 26 характеризует степень избыточности системы.

Операторы 27, 36, 37 — признаки логических ветвей, характеризующих избы­ точность системы.

Операторы 30, 45 проверяют наличие свободных ремонтников.

Операторы 31, 46 проверяют принадлежность выбранного момента времени освобождения к интервалу [О, Т].

Оператор 47 проверяет логическое условие возможности восстановления за сеанс работы.

Оператор 48 проверяет условие возможности окончания профилактики за время Тр.

Оператор 52 проверяет логическое условие наличия і блоков в ЗИПе. Оператор 49 формирует времена т0ж, тпр и передает блокам, реализующим

процедуру <?у.

Операторы 4, 53 изменяют признак наличия і блоков в ЗИПе на единицу. Оператор 55 формирует новое число с учетом восстановления.

Оператор 38 проверяет логическое условие наличия у і-го блока резервных устройств.

Оператор 39 изменяет признак наличия резерва у t-го блока на единицу. Оператор 41 формирует новое число с учетом включения резервного уст­

ройства.

Оператор 28 проверяет логическое условие функционирования системы с пока­ зателем качества выше допустимого предела.

Оператор 22 формирует массив признаков отказавших блоков. Оператор 17 образует число, дополняющее до машинной единицы.

Оператор 29 определяет число срывов функционирования за время сеанса. Оператор 33 формирует число, соответствующее времени работы блока с мак­

симальным коэффициентом значимости.

Оператор 34 формирует новое случайное время работы і-го блока вместо ма­ шинной единицы в регистре і-го блока.

Оператор 42 формирует время освобождения ремонтника. Оператор 9 формирует новое случайное время восстановления.

Оператор 21 проверяет логическое условие необходимости проведения профи­ лактики.

Оператор 23 — ключ, характеризующий дисциплину проведения профилактики. Оператор 24 размещает блоки по степеням убывания коэффициентов значи­

мости. ■' Оператор 25 проверяет наличие ЗИПа у выбранных блоков.

Операторы 6, 44 формируют минимальное время освобождения ремонтников при проведении профилактики..

Операторы 13, 56 формируют суммарное время, затрачиваемое на замену і-го блока.

Оператор 51 формирует время, затрачиваемое на замену блока с меньшим коэффициентом значимости.

Оператор 57 определяет наличие вновь выбранного блока в ЗИПе. Оператор 18 проверяет наличие ЗИПа у всех отказавших блоков.

Оператор 11 определяет полученное после профилактики суммарное значение коэффициента значимости.

2 2 1


ПРИЛОЖЕНИЕ X

ПРИЛОЖЕНИЯ

|К ^у

Рис. П.7. Блок-схема

Моделирующего алгоритма,

2 2 2

223

 

ПРИЛОЖЕНИЯ

Оператор 14 проверяет логическое условие возможности включения системы после окончания профилактики в рабочий режим.

Оператор 19 проверяет логическое условие соответствия числа замен числу отказавших блоков.

Рассмотрим работу алгоритма.

В начальный момент времени t = 0 все блоки системы считаются новыми.

С помощью процедуры ЗРХ (оператор 1 — см. приложение IV) вырабатываются случайные времена исправной работы для всех основных блоков системы в соот­ ветствии с их законами распределения (оператор 3) и с помощью процедуры & (опе­ ратор 7 — см. приложение VI) в случае представления системы графом опреде­ ляется связность путей, после чего все числа передаются оператору 12, с которого начинается моделирование процесса функционирования в рабочем режиме одно­ значной либо многозначной системы, в соответствии с вариантами, рассмотренными в § 5.5. Если система описывается не графом, а другими способами, то управление с оператора 3 передается на оператор 12, минуя процедуру #*.

Оператор 12 выбирает ближайший момент изменения состояния блоков min ft-, где і = 1, 2, . . ., N {N — число блоков в системе). Так же как в приложениях VII—IX, будем считать, что время исправной работы берется со знаком плюс, а время восстановления со знаком минус. Если min /,• выбирается с признаком «отказ» (ветвь 0 логического оператора 15), то после этого проверяется, принадле­ жит ли минимальный интервал (оператор 20) заданному периоду времени работы [О, Г].

Если это условие не выполняется, то вся реализация считается положитель­ ной и время работы системы используется либо для формирования гистограммы, либо просто для учета числа реализаций с профилактикой (оператор 21). В случае выполнения указанного условия управление передается переключателю R і (опера­ тор 26), выбирающему одну из ветвей алгоритма в зависимости от наличия в системе избыточности и ее вида.

Рассмотрим последовательно эти ветви.

Ветвь 36, 45, 46, 47, 48, 52, 49, 53, 54, 55. В случае однозначной системы логи­ ческий оператор 45 определяет наличие ремонтников, способных восстанавливать системы. При их отсутствии случайное время работы фиксируется как время работы системы в данном сеансе. При выполнении условия М Ф 0 оператор 46 сравнивает минимальное время освобождения ремонтника с оставшимся временем рабочего цикла, т. е. проверяет условие min t0св < ta — Тр — min t[. Если это условие не выполняется, то min t0CB фиксируется как Тс\ если оно выполняется, то прове­ ряется следующее логическое условие (оператор 47), согласно которому время вос­ становления блока tB меньше допустимого времени простоя системы. При нару­ шении данного условия фиксируется срыв функционирования и tB классифици­ руется как Тс; при соблюдении условия рассматривается (оператор 48) одна из стра­ тегий [*пР] < U p], при которой момент начала профилактики выбирается до или после окончания рабочего цикла. Если профилактика начинается ранее конца рабо­ чего цикла, то проверяется наличие запасных блоков того же вида, что и отказав­ ший (оператор 52), и если их нет, то <min фиксируется как Тс. В случае начала профилактики после окончания рабочего цикла оператор 49 формирует времена ожидания и простоя системы и передает их для вычисления коэффициента готов­ ности.

Если число блоков в ЗИПе не исчерпано, то их количество уменьшается на 1 (оператор 53), определяется время исправной работы нового блока и время про­ филактики (оператор 54), отыскивается суммарное время (оператор 55), которое пере­ дается к оператору 12 для повторения цикла.

Ветвь 374L При наличии в однозначной системе структурной избыточности (резерва) вначале оператор 38 проверяет, имеются, ли резервные блоки. Если они исчерпаны, то управление передается операторам, рассмотренным в предыдущей ветви для моделирования процесса включения блоков из ЗИПа. Если имеются резервные блоки, то их число уменьшается на 1 (оператор 39), затем формируется случайное время исправной работы нового блока (оператор 40), определяется сум­ марное время (оператор 41) и управление передается на оператор 12. Следует ого­ вориться, что в том случае, когда восстановления резерва не предусмотрено, можно

- 2 2 4


ПРИЛОЖЕНИЕ X

определять общее время работы резервированной структуры и сразу отыскивать min t[.

Ветвь 27, 28, 22, 17, 2934, 42. При рассмотрении многозначной структуры фиксируется накопление отказов с учетом коэффициентов значимости (оператор 28).

При наличии структурной избыточности коэффициент значимости резервированного блока не уменьшается до отказа последнего устройства в структуре.

В том случае, когда суммарный коэффициент еще не превышает допустимое значение, фиксируются номера отказавших блоков {а;} (оператор 22), затем машин­ ный код времени этих блоков дополняется до 1 (оператор 17) и управление пере­ дается оператору 12 для дальнейшего поиска. Если суммарный коэффициент ока­

жется выше допустимого значения, фиксируется срыв функционирования (опера­ тор 29), определяется наличие ремонтника (оператор 30) и время его освобождения (оператор 31), и если ремонтник освобождается ранее конца рабочего цикла, то нахо­

дится случайное время исправной работы устройства с максимальным коэффициен­ том значимости (оператор 33). Далее суммарное время min ^ -j- | тах где 4-

соответствует блоку с максимальным коэффициентом значимости kß, засылается вместо машинной единицы в ячейку с кодом блока, и операция поиска продолжается. Одновременно формируется время освобождения ремонтника.

Теперь рассмотрим случай, когда логический оператор 15 выдает признак

«восстановление» и время восстановления не выходит за границы интервала [0, Гр] (оператор 16). В этом случае определяется момент времени очередного отказа і-го блока (оператор 8), полученное значение складывается с | min t( | (оператор 9),

причем в случае структурного резерва количество резервных блоков увеличивается на единицу при условии, что сумма будет больше начального числа блоков тр, а число запасных блоков т3 уменьшается на единицу (оператор 4).

Поскольку при моделировании конкретной системы работает только одна из рас­ смотренных ветвей алгоритма, то после окончания одной реализации фиксируется число срывов функционирования и времена работы и простоя за время рабочего цикла. Данные гистограммы обрабатываются с помощью процедуры, приведенной в приложении V. Общее число реализаций подсчитывается по одному из существую­ щих методов.

Таким образом, с помощью рассмотренного алгоритма реализуются все варианты функционирования в рабочем цикле.

Теперь рассмотрим профилактический цикл. В этом цикле используется ряд данных, полученных в процессе проведения моделирования рабочего цикла.

При отсутствии профилактики (оператор 21) min tL передается на построение

гистограммы; при наличии профилактики управление передается в ветвь алгоритма, моделирующего второй режим. Учитывая, что в процессе плавания отказавшие блоки не восстанавливаются, рассмотрим три возможных варианта восстановления:

1)замена части отказавших блоков в случае многозначной системы;

2)замена всех отказавших в рабочем цикле блоков;

3)обновление всех блоков, в том числе и неотказавших.

Если имеет место первый вариант, то после определения необходимости профи­ лактики (ключ Ян, оператор 23) происходит ранжировка по величинам коэффициента значимости (оператор 24) и проверка наличия ЗИПа у блоков с максимальными коэффициентами значимости (оператор 25). Затем вырабатываются времена замен t3

в том количестве, которое выбрано на основании заданных критериев (например, восстановление до уровня эффективности 0,8 и т. п.) (операторы 35 и 43), и минималь­ ные времена освобождения ремонтных бригад (оператор 44). После этого выясняется

принадлежность интервала времени освобождения ремонтника заданному интервалу профилактики (оператор 10). В случае, если min іосв > Дп, берется блок со сле­ дующим (меньшим) значением коэффициента значимости (оператор 51), определяется наличие блока в ЗИПе и управление передается к оператору 35. Если Дп [> min /осв,

то время замены (оператор 43) складывается с временем освобождения, при этом формируются новые значения t0св.

При втором варианте работает ветвь алгоритма, идущая через оператор 18,

который проверяет наличие ЗИПа у всех отказавших устройств, взятых в массиве [а,-]. Затем управление передается оператору 2, выполняющему те же функции, что и оператор 35. Отличие от рассмотренной уже ветви 44, 50, 56, 51, 57 состоит

15 А . Г . В а р ж а п е т я п

2 2 5


ПРИЛОЖЕНИЯ

в том, что в случае неполного проведения профилактики из суммарного коэффи­ циента значимости, равного единице, вычитается коэффициент значимости невос­ становленного блока (при аддитивных kE) либо решается одно из известных пра­ вил [10] (при неаддитивных kE) (оператор 11), а затем проверяется условие

kE доп (оператор 14). В случае выполнения этого условия ведется дальней-

І

шая проверка восстановления, в случае его невыполнения фиксируется срыв профи­ лактики и отказ системы по крайней мере на следующий сеанс работы.

При восстановлении по третьему варианту моделирование проводится так же, только вместо числа отказавших блоков берется общее число блоков.

Вся последующая обработка ведется на основе полученной статистики за N реа­

лизаций.

 

 

Приложение

ПРОЦЕДУРА ПОЛУЧЕНИЯ ВРЕМЕНИ

XI

РАБОТЫ И ВРЕМЕНИ ВОССТАНОВЛЕНИЯ

 

ПРИ ПОСЛЕДОВАТЕЛЬНОМ СОЕДИНЕНИИ

 

ВОССТАНАВЛИВАЕМЫХ ЭЛЕМЕНТОВ

 

Н А ЗН А Ч ЕН И Е

Процедура служит для получения случайного времени работы и восстановления при последовательном соединении. Блок-схема приведена на рис. П. 8.

О Б Р А Щ ЕН И Е К П РО Ц ЕД УРЕ

 

 

 

Процедура !Р„. с. в (л, сЗ, с4, с5,

tp, /в,

d) включает в себя: я — переменную

Типа integer;

d, tp, ів — переменные

типа

real; сЗ, с4, с5 — массивы.

 

Обращение к процедуре может быть записано и без формальных параметров,

если в основной программе ввести следующие обозначения:

 

 

tp — время работы;

 

 

 

 

ів — время восстановления;

 

 

 

я — число последовательно соединенных элементов;

 

 

сЗ — массив для записи параметров законов распределения вре­

 

мени работы;

 

 

времени

с4 [1 : я] — массив для записи номеров законов распределения

с5 [л +

работы;

 

 

 

1 : 2л 1 — массив для записи номеров законов времени восстановления;

 

d — постоянная, которая в начале каждой реализации

равна 1,

авнутри реализаций равна 0.

ОПИ САН И Е ПРО Ц ЕД УРЫ *

При значении входного параметра d — 1 присваиваем величинам k и Т нуле­ вые значения и полагаем гІ:—гЗ:= 1. Далее выполняем одно обращение к процедурефункции !РХ. Затем получаем случайные интервалы времени t [і] всех элементов

* При использовании этой и последующих (см. приложения XII—XVIII) про­ цедур в одной программе целесообразно присваивать счетчикам и массивам времен индексы, соответствующие назначению процедуры. В настоящей работе эти индексы опущены,

2 2 6


ПРИЛОЖЕНИЕ XII

и отыскиваем минимальный. При d 1 сразу переходим к поиску min | I [І]|. Находим

/1 [t'] := (abs (I [I] — I min) x sign (I [t])

и прибавляем 1 min к T (время от одного состояния системы до другого). Элемент, у которого И [t ] = 0 (т. е. время его пребывания в исследуемом состоянии было минимальным), на у-м шаге изменил свое состояние. Если он работал, то находим время его восстановления и наоборот, причем для удобства программирования время восстановления записываем со знаком минус. Остальные элементы своего состояния

не меняют, и после /-го шага 1 [I] := И [і]. Если среди элементов

есть такие,

у которых І[і] < 0, то система восстанавливается.

 

Если система на у-м шаге не изменила своего состояния, то переходим к отыска­

нию минимального из полученных на у'-м шаге I [I]. Если состояние

изменилось,

то полученное к этому моменту значение Т заносим в массивы Ів либо Ір (в зависи­ мости от того, работала система до этого или восстанавливалась). Затем Т пола­ гаем равным нулю и обращаемся к началу процедуры, причем все необходимые вели­ чины оказываются подготовленными к (у + 1)-му шагу.

Таким образом, при каждом выходе из процедуры получаем или Ір, или Ів (первый раз Ір, затем эти величины чередуются). В зависимости же от d либо реали­

зация будет продолжаться (при

d =/= 1), либо будет начинаться

новая реализация

(при

d = 1).

с. в. необходимо описать г 1, гЪ — переменные

типа

В программе, использующей

real; I [1 : п] — массив, так же, как в приложении IX.

 

 

 

 

Приложение

ПРОЦЕДУРА ПОЛУЧЕНИЯ ВРЕМЕНИ

ХИ

РАБОТЫ И ВРЕМЕНИ ВОССТАНОВЛЕНИЯ

 

ПРИ НАГРУЖЕННОМ

 

 

ОБЩЕМ ДУБЛИРОВАНИИ

 

 

Н А ЗН А Ч ЕН И Е

Процедура служит для получения случайного времени работы и восстановления при нагруженном дублировании.

Блок-схема процедуры приведена на рис. П.9.

О Б РА Щ ЕН И Е К ПРО Ц ЕДУРЕ

 

Процедура

0. д (п, сЗ, с4, с5, !р, Ів, d) включает

в себя: п — переменную

типа integer; d,

Ір, Ів — переменные типа real; сЗ, с4,

с5 — массивы.

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

Ір — время работы; Ів — время восстановления;

п — число элементов основной цепочки (резервной цепочки); сЗ — массив для записи параметров законов распределения вре­

мени работы и времени восстановления;

15’

2 2 7