Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Дрейзин В.Э., Кочура А.В. - Управление качество...doc
Скачиваний:
4
Добавлен:
01.03.2025
Размер:
3.62 Mб
Скачать

6.4.3. Синтез безусловных тестов с использованием таблицы состояний

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

Правила отбора элементарных проверок при построении таких тестов из первоначальной таблицы состояний рассмотрим на том же примере.

В качестве первой проверки выбирается такая, которая разделяет все состояния на две примерно равные части (т.е. у которой число нулей и единиц примерно одинаково). В нашем случае к таким относятся все элементарные проверки с числом единиц 3 и 4. Таких проверок у нас 6: π2 , π3 , π4 , π6 , π8 и π9 . Из них следует выбрать самую дешёвую π2 . Она разделит всё множество состояний на две группы: Единице соответствуют состояния (S1 , S2 , S5 , S6), нулю – остальные (S3 , S4 , S7). Следующая проверка должна разделять каждую из этих групп на две также примерно равные подгруппы. Для этого данная проверка должна содержать по две единицы в каждой группе (для второй группы может быть и одна единица, поскольку в ней всего три состояния). Таких проверок 4: по две единицы в каждой группе даёт только одна проверка π8 ; две единицы в первой группе и одну единицу во второй дают проверки π4 , π6 и π9 . Из них самая дешёвая π4 . Её и выбираем. Она делит первую группу на две подгруппы (S1 , S6) и (S2 , S5), а вторую группу на (S3 , S4) и (S7). Теперь необходимо разделить каждую пару состояний первых двух подгрупп и одну пару состояний третьей подгруппы. Для наглядности построим преобразованную таблицу состояний после двух указанных проверок. У нас осталось три нераспознанных пары состояний, 7-е состояние уже распознано и его можно исключить из таблицы, а три нераспознанные пары состояний сгруппируем попарно в соответствии с группами, получившимися в результате проведения двух первых проверок. В итоге получим усечённую после проверок π2 и π4 таблицу (см. табл. 6.3).

Таблица 6.3

S1 S6

S2 S5

S3 S4

Cj

π1

1 0

1 1

1 0

1

π3

1 0

0 0

1 1

1,4

π5

1 0

0 1

0 0

2,0

π6

1 1

0 0

0 1

2,4

π7

1 1

1 0

0 1

2,8

π8

1 0

0 1

1 0

3,2

π9

1 0

1 0

0 1

3,6

Π10

1 1

1 1

0 0

4,0

Из данной таблицы видно, что разделяют все три сгруппированные пары состояний только две элементарные проверки π8 и π9 . Поэтому для получения минимального теста следует выбрать одну из них. Выбираем более дешёвую π8 . В итоге минимальный тест будет состоять из трёх проверок π2 π4 π8 . Стоимость его (в относительных единицах – за единицу принята стоимость самой дешёвой проверки) составит 1,2+1,6+3,2 = 6,0. Поэтому есть смысл проверить стоимость тестов состоящих из 4-х, но более дешёвых проверок. При этом первые две проверки относительно дёшевы, их суммарная стоимость составляет 2,8. Поэтому имеет смысл заменить самую дорогую проверку π8 двумя более дешёвыми с суммарной стоимостью менее 3,2. Из табл. 6.3 следует, что это действительно возможно. Для этого подойдут проверки π1 и π5 . Проверка π1 разделяет пары (S1 , S6) и (S3, S4), проверка π5 – пару (S2, S5), а их суммарная стоимость составит 1+2 = 3 < 3,2. Таким образом, оптимальным по стоимости будет тест, состоящий из 4-х проверок π2π4π1π5 с суммарной стоимостью 1,2+1,6+1+2 = 5,8.

Алгоритмы диагностики состояний объекта тестирования удобно отображать графически. В частности, алгоритмы диагностики, осуществляемой с помощью построенных выше безусловные тестов, представлены на рис. 6,2 (на рис. 6.2-а – с помощью минимального безусловного теста, на рис. 6.2-б – с помощью оптимального по стоимости безусловного теста).

Опознавателями различных состояний объекта являются двоичные слова, образованные результатами проведённых элементарных проверок. Для их получения достаточно пройти дерево решений от корня до каждой висячей вершины. Для минимального теста они приведены в табл. 6.4, для оптимального по стоимости – в табл. 6.5.

Таблица 6.4

Si

S1

S2

S3

S4

S5

S6

S7

Коды

Состояний

111

110

101

011

100

010

001

Опознаватели

Состояний

111

100

001

000

101

110

011

Таблица 6.5

Si

S1

S2

S3

S4

S5

S6

S7

Коды

Состояний

111

110

101

011

100

010

001

Опознаватели

Состояний

1111

1011

0010

0000

1010

1100

0110

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

Однако, из рис. 6.3 видно, что даже при использовании минимального теста одно из состояний S7 можно диагностировать не по трём, а по двум элементарным проверкам. А при использовании теста, оптимального по стоимости, лишь для различения двух состояний S2 и S5 необходимы все 4 элементарных проверки. Состояние S7 как и в предыдущем тесте можно диагностировать уже после двух первых проверок, а остальные требуют трёх проверок. Это значит, что если использовать те же тесты, но анализировать результаты проверок не после окончания всего теста, а уже после второй проверки, и останавливать тестирование, если получен опознаватель 01, соответствующий состоянию S7, а после третьей проверки, если получим опознаватели 111, 001, 000, 110, соответствующие состояниям S1, S3, S4, S6, то тестирование в среднем займёт меньше времени и обойдётся дешевле. Такие тесты получили название безусловных тестов с условной остановкой. В самом деле, если учитывать вероятности отдельных состояний, то можно рассчитать среднюю стоимость тестирования при использовании безусловного теста с условной остановкой и сравнить её со стоимостью тестирования безусловного теста с безусловной остановкой, которая уже была подсчитана выше (для второго теста) и равнялась 5,8. Для определения средней стоимости тестирования с помощью безусловного теста с условной остановкой необходимо просуммировать произведения стоимости диагностирования каждого состояния Сi на их вероятности PSi :

. (6.8)

Стоимость диагностирования каждого состояния легко подсчитать, суммируя стоимости необходимых для их идентификации элементарных проверок. С учётом этого для второго теста получим

Сср = (С2 + С4S7 + (С2 + С4 + С1S1 + (С2 + С4 + С1S6 + (С2 + С4 + С1S3 +

+ (С2 + С4 + С1S4 + (С2 + С4 + С1 + С5S2 + (С2 + С4 + С1 + С5S5 =

= (1,2+1,6)·0,0002 +(1,2+1,6+1)·0,9411+(1,2+1,6+1)·0,0003+(1,2+1,6+1)·0,0192+ +(1,2+1,6+1)·0,0095+(1,2+1,6+1+2)·0,0291+(1,2+1,6+1+2)·0,0006 = 3,8592.

Таким образом, получили, что тестирование тестом с условной остановкой дешевле тестирования таким же тестом, но с безусловной остановкой на 2 единицы, т.е. на 35%.

Но если посмотреть внимательней на подсчёт средней стоимости, то окажется, что основную её долю составляет диагностирование исправного состояния, поскольку оно встречается чаще всего. Поэтому выигрыш в стоимости получился бы ещё больше, если бы это самое вероятное состояние определялось бы самым коротким тестом (из двух элементарных проверок). Таким образом, при синтезе безусловного теста с условной остановкой, как и при синтезе условных тестов, для получения тестов, оптимальных по стоимости, необходимо учитывать не только стоимости элементарных проверок, но и вероятности диагностируемых состояний объекта. Такой учёт мы проделаем при синтезе условного теста в следующем параграфе.