УДК 519.681+681.32
СХЕМНО-ПРОГРАММНЫЙ ПОДХОД К ОБНАРУЖЕНИЮ ДЕФЕКТОВ В ПАРАЛЛЕЛЬНОМ ПОТОКЕ ТЕХНОЛОГИЧЕСКИХ ОПЕРАЦИЙ
© 2004 С. А. Никищенков
Самарская государственная академия путей сообщения
Для организации контроля правильности функционирования технологических систем предлагается использовать схемно-программный подход к описанию и обнаружению дефектов на уровне операций. На основе результатов теории параллельного программирования доказана целесообразность применения спусковых функций в качестве универсального инструмента для обнаружения дефектов в параллельном потоке операций. Рассмотрены свойства диагностической модели реконфигурируемых технологических систем в виде информационно-логических схем процессов.
Модели и результаты теоретического параллельного программирования могут с успехом применяться не только для решения задач повышения производительности технологических систем (ТС), но и для их контро -ля и диагностики [1, 2]. Это обусловлено тем, что параллельные модели связаны с детальным исследованием информационного базиса процессов, а контроль ТС в свою очередь имеет целью предотвращение потерь материальных (в общем случае - любых используемых) ресурсов. Некоторые методы контроля (сетевые графики, способы блокировки и предотвращения конфликтных и опасных ситуаций, регламентация и ранжирование операций и т. д.) стали применяться раньше, чем возникли параллельные компьютеры, но именно с позиций теоретического программирования получили формальное обоснование и развитие.
В целом описание технологического процесса (ТП) включает вид и характеристики конечной продукции; промежуточное состояние на этапах процесса; состав, характеристики и порядок операций; оборудование и ресурсы (материальные, информационные, временные и т. д.). К характеристикам операции относятся тип, принадлежность к рабочему месту, вид преобразования (функция), входные и выходные информационно-материальные носители, временные параметры, отношения (связи) с другими операциями, параметры управления (порядок, регламент и признаки начала и окончания).
Определим поток операций как теоретико-множественное представление совокуп-
ности операций, принадлежащих ТП и рассматриваемых в контролируемый период времени:
А^ - подмножество операций т -го ТП, выполняемых в момент 1;;
А - . -я операция преобразования;
А.{ (Р) - операция по проверке логического условия;
тЛ. и вМЛ. - входные и выходные аргументы операции;
/А. и 1А. - преобразование и время операции; А^ - подмножество операций, запускаемых в момент 1;
А^ - подмножество операций, «готовых» для выполнения по условиям наличия всех аргументов и ресурсов.
При такой постановке обнаружение дефектов в ТП сводится к локальному или централизованному контролю соотношений между событиями в потоке операций. Эффективным представляется использование моделей ТП в виде операторных схем программ, а также их распараллеленных форм (параллельных граф-схем алгоритмов, спусковых функций, информационно-логических схем, счетчиковых сетей [3-7]) по следующей технологии:
- выбор диагностической модели, т. е. совокупности схемы ТП и списка дефектов в виде формальных соотношений;
- разработка алгоритмов обнаружения дефектов;
- разработка системы контроля (выбор способа съема диагностических признаков, организационно-техническая реализация и программирование диагностического про-
цессора);
- выполнение мероприятий по обеспечению эффективности контроля (определение зоны контроля, модификация диагностической модели и др.).
Параллельное (независимое, асинхронное) выполнение операторов (операций одного или разных ТП) определяется теоремой Бернштейна - Рассела - Нариньяни об отсутствии зависимостей между входными и выходными кортежами:
(тЛ. П оШЛ) и (1пЛ. П оШЛ) и (аШЛ. П оШЛ)=0.
В отличие от вычислительных систем, допускающих одновременное чтение одних данных разными операторами без разрушения памяти, в ТС такой вид конкуренцион-ной зависимости должен также учитываться, что приводит к дополненной теореме:
(тЛ. П гпЛ) и (тЛ. П оШЛ) и (1пЛ.П оШЛ) и и (оШЛ.П оШЛ)=0. (1)
Перспективным представляется рассмотрение (1) с точки зрения диагноста, т. е. как условия правильности функционирования (УПФ), переход от которого к признакам дефекта (ПД) осуществляется по принципу исключения из правил. При этом производится оценка последствий невыполнения условий независимости входных и выходных переменных для двух параллельно выполняемых операторов схемы. Для ТП выражение (1) означает асинхронное неупорядоченное (в том числе одновременное) использование элементов информационно-материального базиса с возможной конфликтной ситуацией, распознавание и недопущение которой является одной из задач контроля.
На рис. 1 приведены варианты условий пересечения кортежей переменных для каждого из четырех членов в формуле (1) и содержание соответствующих дефектов. Например, вариант с номером 1000 описывает случай, когда пересекаются только входные кортежи операторов. Типичной производственной аналогией является такая, когда операции на разных рабочих местах используют одну и ту же оснастку (или другой элемент информационно-материального базиса).
При неупорядоченном выполнении операций имеет место конкуренция, и оснастка оказывается занятой той операцией, которая начинает выполняться первой. Тем самым вторая задерживается или не выполняется, что приводит к искажению ТП.
Невыполнение (1) приводит к возникновению комбинаций таких дефектов, как занятость аргумента, подмена одного результата другим и отсутствие аргумента. Последний дефект связан с тем, что вид зависимости, описываемый двумя средними членами (1), требует обязательного следования одного оператора за другим, поскольку результат одного является аргументом другого.
Для описания всего ТП или его фрагмента используются модели в виде схем, описывающих операторы и связи между ними (рис. 2). Операторная схема на рис. 2, а описывает фрагмент процесса ремонта агрегата и представляет совокупность операторов А1 - А (А8 и А9 проверяют значение логических условий Р1 и Р2), кортежей входных и выходных переменных (например, .пЛ6 =а,Ь; оШЛ6 =/), передач переменных между операторами и логики их выполнения (при циклическом повторении и альтернативном выполнении).
Интерпретация схемы такова, что А1 -А5 соответствуют входной приемке деталей и комплектующих а, Ь, с, ё, е; А6, А9, А12, А -циклической обработке сборочного узла / с измерением Р2 и передачей / на операцию завершающей сборки агрегата А13; А8 проверяет е на допуск Р1 и обеспечивает альтернативную передачу на А13; А15 завершает сборку.
Операторная схема является основой для алгоритмизации - структурно-временного распределения операций в ресурсах ТС. Параллельная граф-схема алгоритма на рис. 2, б задает последовательности выполнения операций сборки на двух рабочих местах.
Спусковые функции (СФ) представляют собой конечные предикаты над множеством операторов и логических условий в схеме (включая в общем случае дополнительные, учитывающие историю процесса) и задают максимально параллельный асинхронный процесс (для класса так называемых
0 0 0 0 Нет дефектов
А
А
1 0 0 0 Занятость
А
А]
т
0 0 0 1 Подмена
А і
А
1 0 0 1 Занятость с подменой
А
А]
Т
0 0 1 0 Отсутствие
А
А
1 0 1 0 Занятость и отсутствие
А
А]
т
0 0 11 Подмена и отсутствие
А
А
1 0 1 1 Занятость, отсутствие и подмена
А
0 1 0 0 Отсутствие
А
А
'Г
11 0 0 Занятость и отсутствие
А
1
А]
0 1 0 1 Подмена и отсутствие
А
А
т
11 0 1 Занятость, отсутствие и подмена
А
0 1 1 0
Взаимное
отсутствие
А
111 0 Занятость и взаимное отсутствие
---------- \
А
6' \тт
0 1 1 1 Подмена и взаимное отсутствие
/\
/ ч ✓ \
^ \ / ^
А
/ \
-ч / ' ^ -' V
Ч/ '■
А
1111
Занятость, взаимное отсутствие и подмена
А
/\ А ] £0<тт
Рис. 1. Интерпретация дефектов в параллельных технологических операциях с применением дополненной теоремы Бернштейна-Рассела-Нариньяни
«свободных» схем), обеспечивая запуск операторов по мере готовности их входных аргументов.
Граф на рис. 2, в описывает такое управление, при этом используется два типа логики - И и Исключающее ИЛИ (символы & приняты по умолчанию и не показаны, Исключающее ИЛИ обозначено ® ). Например, для оператора А13 условие запуска будет следующим:
С13: = А9 (Р2]) & А10 & (Л8 (Р11) ф Лп) ^ Л13 ,
т. е. если выполнился Л9 со значением Р2 = 1 и
выполнился А , и выполнились либо Л со
10 8
значением Р1 = 1, либо А то запускается А
Управление по СФ предполагает наличие соответствующей архитектуры, обеспечивающей поток операций с выполнением соотношения
А| = А г = { Л.^ \С \,х = 1}. ()
Свойства СФ как результата максимального распараллеливания схемы позволяют эффективно использовать их для целей кон -троля процессов. В этом случае по значению СФ проверяется правильность или дефект запуска оператора в контролируемый период времени. Для Л13 контролирующая функция имеет вид
К13: = Л13 ^ А9 (Р21) & А10 & Л (Р1) ® Лц),(3)
и запуск считается правильным, если к его моменту выполнился Л9 со значением Р2 = 1 и выполнился А,„, и выполнились либо Л со
10 о
значением Р1 = 1, либо А11.
Для правильных (бездефектных) ТП справедлив ряд утверждений, базирующихся на результатах теоретического параллельного программирования.
1. Любой дискретный ТП может быть представлен в виде операторной схемы, для каждого оператора которой может быть задана конечная контролирующая функция.
2. Для ТП с внутренним параллелизмом существует множество способов генерации Аз* (методов управления) и правильных эквивалентных потоков операций, различающихся конфигурацией
V* АЗ с {Л, \ Ки = 1}.
3. В потоке операций правильного ТП имеет место соотношение
V * V Л с а; с аг с а; .
4. Для каждого ТП существует правильный максимально параллельный асинхронный конвейерный поток операций, соответствующий (2).
5. Любая конфигурация потока операций есть дополнительное структурно-временное упорядочение максимально параллельного потока операций.
Совокупность контролирующих функций для всех (или выборочных) операторов схемы, заданную в виде строковых выражений типа (3) или билогического графа, назовем информационно-логической схемой процесса (ИЛСП) [3, 7-10].
В алгебраической постановке ИЛСП есть тройка Б=(А, Ь, Б), в которой множество А состоит из операторов преобразователей и распознавателей; множество предикатов Ь=Р и 0 включает логические условия процесса Р и дополнительные предикаты 0, характеризующие его историю; множество К={Х.(А,Ь)} представляет совокупность логических функций в базисе алгебры Жегал -
2
3
4
5
в)
Рис. 2. Параллельные модели процесса сборки агрегата: а) - операторная схема программы;
б) - параллельный алгоритм; в) - ИЛСП
кина (И, Исключающее ИЛИ, 1), означающих выполнение предшественников из А для оператора Л. при заданных значениях Ь.
Граф ИЛСП представим как 0=
=(А, В, Ь, &, © ), где А - множество вершин; В - множество дуг, интерпретирующих отношения логического и информационного предшествования между операторами, такое, что В = 1 для вершин А.и А если А. входит аргументом в Ак; каждая вершина А. размечена входной логикой с помощью связок &, © между входящими дугами; каждая вершина, соответствующая оператору-распознавателю Л(Р) размечена выходной логикой с помощью связки © между альтернативными выходящими дугами, нагруженными различными значениям Р (Р1 или Р0 ), и связкой & меж] г’
ду дугами, нагруженными одинаковыми значениям Р.; транзитивные замыкания отсутствуют.
ИЛСП описывает необходимые информационно-логические отношения предшествования операторов и условия их правильного асинхронного (в том числе конвейерного) запуска, т. е. является инвариантом для множества эквивалентных ТП, различающихся структурно-временным распределением по блокам ТС и применяемым методом управления [7]. Согласно [11] ИЛСП в общем случае является простым непланарным слабосвязанным правильным управляющим графом со специальной разметкой вершин и дуг, семантика которого служит целям потокового анализа систем. Динамика ИЛСП может быть описана как процесс, состоящий из таких событий, как «включение» вершин и дуг, при этом естественным образом моделируются конвейерные процессы [12-13].
Правильное выполнение ИЛСП характеризуется тем, что множество запускаемых операторов Аз* есть непустое подмножество «готовых» операторов из Аг*:
(а; <= а; )а;| > 0).
(4)
Исключения из правил представляется следующими дефектами:
а< 3 А С а;)а;|)= 0, (5)
т. е. на ИЛСП заданы два типа дефектов -
«ложный запуск оператора» и «отсутствие запуска».
Совокупность конкретной ИЛСП и соотношений (4) и (5) представляет диагностическую модель ТС. В отличие от алгоритмического контроля подход при той же обнаруживающей способности (на классе дефектов, сводимых к списку «ложный запуск», «замена», «отсутствие запуска») позволяет при одной и той же настройке средств контролировать реконфигурируемые процессы (последовательные, статические и динамические параллельные, конвейерные, с произвольной диспетчеризацией и методом управления, самоорганизующиеся), т. е. ИЛСП является диагностическим инвариантом реконфигурируемых ТС.
В [7-10, 14] рассмотрены методики синтеза, анализа и графовой декомпозиция ИЛСП; примеры аппаратной реализации средств обнаружения дефектов; принципы организации систем контроля реконфигурируемых ТС; вопросы повышения эффективности контроля путем разметки ИЛСП параметрами/А и *А.; программы распараллеливания алгоритмов и процессов.
Список литературы
1. Основы технической диагностики: Модели объектов, методы и алгоритмы диагноза / Под ред. П. П. Пархоменко. - М.: Энергия, 1976.
2. Никищенков С. А. Функциональное диагностирование реконфигурируемых ин-формационно-управляющих систем на макроуровне // ВКСС. - 2002, № 6.
3. Нариньяни А. С. Теория параллельного программирования: формальные модели // Кибернетика. - 1974, №3, 4.
4. Котов В. Е., Нариньяни А. С. Асинхронные вычислительные процессы над памятью // Кибернетика. - 1966, № 3.
5. Котов В. Е. Введение в теорию схем программ. - Новосибирск: Наука, 1978.
6. Элементы параллельного программирования / В. А.Вальковский и др. - М.: Радио и связь, 1983.
7. Никищенков С. А. Функциональное диагностирование управляющей части реконфигурируемых многопроцессорных вычислительных систем по информационным схемам
алгоритмов. Дис. на соис. уч. степ. к.т.н. - Л.: ЛЭТИ, 1988.
8. Балакин В. Н., Барашенков В. В., Казак А. Ф., Никищенков С. А. Устройство для контроля блоков управления. А.с. N° 1365986. Бюл. № 1, 1988.
9. Никищенков С. А. Принципы функционального диагностирования управляющих систем по информационно-логическим схемам процессов. М.: ВНТИЦ, 2001, № 73200100204.
10. Никищенков С. А. Способы функционального диагностирования управляющих систем по информационно-логическим схемам процессов. М.: ВНТИЦ, 2001, № 73200100203.
11. Касьянов В. Н., Евстигнеев В. А. Графы в программировании: обработка, визуализация и применение. СПб.: БХВ - Петербург, 2003.
12. Рыжков А. П. Правильная билогическая граф-модель параллельного вычислительного процесса и его свойства // Известия АН СССР. Техническая кибернетика. - 1976, № 2.
13. Головкин Б. А. Расчет характеристик и планирования параллельных вычислительных процессов. - М: Радио и связь, 1983.
14. Бунич А. Л. и др. Параллельные вычисления и задачи управления (аналитический обзор) // Автоматика и телемеханика.
- 2002, №12.
THEORETICAL ISSUES OF DETECTING DEFECTS IN A PARALLEL HOW OF THECNOLOGICAL OPERATIONS
© 2004 S. A. Nikishchenkov Samara State Railway Academy
The paper proposes using a scheme-algorithmic approach to describing and detecting defects at the level of operation in order to organize control of correct functioning of technological systems. The expediency of using trigger functions as a unique tool for detecting defects in a parallel flow of operations on the basis of the results of parallel programming theory. Properties of the diagnostic model of reconfigured technological systems in the form of information and logical schemes processes are discussed.