КОМПЬЮТЕРНЫЕ^
УДК 681.3+681.5:007
ПОМЕХОУСТОЙЧИВЫЙ ПОИСК ТОЧКИ С ХАРАКТЕРНЫМ ПРИЗНАКОМ И КОДИРОВАНИЕ ИНФОРМАЦИИ
АЛИПОВ Н.В.____________________________
Устанавливаются различия в построении кодов, контролирующих ошибки при передаче информации по дискретному каналу, и алгоритмов помехоустойчивого поиска точки с характерным признаком. Строятся алгоритмы помехоустойчивого поиска. Показывается: каким образом следует использовать результаты теории помехоустойчивого поиска в теории помехоустойчивого кодирования информации.
Каждый знает, как много времени тратится на различные поиски при покупке товаров, просмотре телевизионных передач, поиске положенных куда-то на работе документов и т.д.
Все это говорит о том, что поиск в нашей жизни занимает одно из важнейших мест и тема “ Поиск” исключительно широка и сложна.
В работе рассматриваются проблемы помехоустойчивого одномерного поиска точки x с характерным признаком, исходным интервалом неопределенности для которой является (од) характерным признаком — ее координата. Среди множества возможных алгоритмов поиска точки с характерным признаком разрабатываются алгоритмы, состоящие из i шагов (i — длина поиска) и выполняющие на каждом шаге алгоритма эксперимент
(тест) в k точках, принадлежащих интервалу (о,і).
По итогам выполненного эксперимента на основе решающих правил [1] уменьшают длину исходного интервала неопределенности и выбирают согласно принятой стратегии поиска [1] точки следующего эксперимента.
Следует заметить, что к процессу поиска точки с характерным признаком сводятся следующие процессы: аналого-цифровое преобразование [2], поиск данных и неисправного элемента [4,5],состав-ление помехоустойчивых вопросников [6]. До сих пор теория поиска в основном развивалась, перенося закономерности из теории кодирования и теории информации. К настоящему моменту она достаточно полно развита для тестов (экспериментов), свободных от помех (теория префиксных и алфавитных кодов). При поиске в условиях случайных возмущений в основном используется стоха-
82
стическая аппроксимация [1,7,8], являющаяся обобщением классической теории поиска нулей и экстремумов функции [1], а также некоторые результаты решения информационных задач передачи сообщений через канал с обратной связью. Однако, как справедливо отмечает М.В. Малютов в дополнении к работе [1], между каналом с обратной связью и поиском не всегда существует аналогия, есть существенные различия: с одной стороны, в информационных задачах “кодер” и “декодер” разнесены в пространстве, а при поиске они находятся под контролем одного устройства; с другой — в информационных задачах передаваемое сообщение считается известным передатчику, а при поиске оно неизвестно (процесс поиска направлен на нахождение неизвестного). Эти принципиальные отличия не позволяют перенести результаты информационной теории передачи сообщений в теорию поиска. Применение же стохастической аппроксимации приведет к существенному снижению быстродействия (необходимо многократно повторять процесс поиска, состоящий из i шагов).
По этой причине к настоящему времени из-за сложности решения задач помехоустойчивого поиска не найдено достаточно хороших решений, как, например, префиксные и алфавитные коды для тестов (экспериментов), свободных от помех [1], алгоритм Кифера [1,9] поиска точки экстремума унимодальной функции, не создано оснований более широкой теории, которая охватывала бы результаты Кифера совместно с результатами, относящимися к стохастической аппроксимации.
В теории кодирования, как известно, наряду с префиксными и алфавитными кодами достаточное развитие получили помехоустойчивые коды (коды, контролирующие ошибки [10]). Появление помехоустойчивых кодов, обнаруживающих либо исправляющих ошибки при передаче информации в дискретном канале, не повлияло на развитие алгоритмов помехоустойчивого поиска. Это связано с тем, что хотя для их построения используется одна и та же операция разбиения, но над различными множествами: для помехоустойчивого поиска — операция разбиения исходного интервала неопределенности (множества символов входного алфавита) на новые подинтервалы (подмножества символов); для помехоустойчивых кодов — операция разбиения разрядов кодовой комбинации отдельного символа входного алфавита (образование контрольных сумм над разрядами кодовой комбинации символа входного алфавита).
Известно [10], что помехоустойчивый код обнаруживает либо корректирует ошибки, возникающие в процессе передачи информации в дискретном канале тогда, когда его кодовое расстояние удовлетворяет одному из условий:
обнаружение ошибки d > t +1;
коррекция ошибки (1)
d > 2t +1,
РИ, 2000, № 4
где d — кодовое расстояние; t — кратность ошибки.
При помехоустойчивом поиске неисправностей [5] и аналого-цифровом преобразовании [6] в условиях действия помех для получения более достоверного результата принимают такой подход: один и тот же эксперимент повторяют на соседних шагах алгоритма. При этом между максимально возможной длительностью помехи l и количеством повторов R в зависимости от вида случайной последовательности (однополярная, двуполярная [6]), накладываемой на процесс поиска, существуют такие закономерности:
однополярная последовательность R = l +1;
двухполярная последовательность (2)
R = 21 + 1.
Такой подход к обнаружению помех при поиске в работе [6] назван принципом “повторных сравнений”.
Хотя соотношения (1), (2) совпадают по своей структуре, однако между ними существуют принципиальные отличия: соотношения (1) описывают состояние дискретного устройства передачи либо приема информации в один и тот же момент времени t; равенства (2) — состояние устройства поиска в различные моменты времени:
ство точек эксперимента; j — номер шага алгоритма,
j = 1, i; i — длина поиска (количество шагов алгоритма).
Для оценки эффективности алгоритмов поиска воспользуемся минимаксным критерием [6]:
ls1 = min max & (x,s)} (4)
SeM1 xe[0,l] , (4)
где li (x, S) — длина интервала неопределенности, полученного на последнем шаге S -м алгоритмом; M1 — множество возможных алгоритмов поиска.
Обратную величину от LS1 обозначим ,
которая показывает, на сколько равных частей длины LS1 ( Ls1 — дискретность преобразования по
уровню) разбивается алгоритмом поиска первоначальный интервал неопределенности.
Как было отмечено, для обнаружения помех, накладываемых на процесс поиска, можно воспользоваться принципом “повторных сравнений”. Однако такой подход к решению задачи синтеза помехоустойчивых алгоритмов приведет к снижению быстродействия устройств поиска.
В работе [11] описан другой подход алгоритмического подавления помех (принцип “пересечения”), суть которого заключается в следующем: если в
для однополярных помех
t,t + At,...,t + lAt; для двухполярных помех
результате выполнения j -го шага алгоритма относительно (x + C(t)) выделен полуоткрытый интер-
вал неопределенности
_xq, xq+1
)■
то x є
xr,xq:J,
j
q ’
j,2
Vo
t,t + At,...,t + 2lAt,
где ^(t) — случайное возмущение,накладываемое
где At — длительность шага алгоритма поиска; t — момент начала поиска.
Помеха при поиске проявляется только на соседних шагах алгоритма; в дискретных устройствах, использующих помехоустойчивые коды, под действием помехи искаженными могут быть любые t разрядов (соседние и несоседние) кодовой комбинации.
Эти отличия не позволяют перенести закономерности теории помехоустойчивых кодов в теорю поме -хоустойчивого поиска. Для того чтобы описать задачу синтеза помехоустойчивых алгоритмов по -иска, введем ряд определений.
В дальнейшем под экспериментом (тестом) будем понимать определение истинности предиката
р{г
X
j
р-1
X
(3)
где x — координата искомой точки; x є [0,1;
на процесс поиска; q = 0, H
j _ lxq - A,xq - A ^ xp U;
xq | i-U
|x ^ ’ в противном случае,
j,2
S+1 _
x-* + A, x-^. + A > x j J,’2;
q+1 ’ q+1 p+1 ’
x р+1 в противном случае; p = 0, k,
j xj
xq, x
q+1
)e [xP_1,xГ+1
(5)
J-1,1 =
x! 1 - A, xі 1 - A > xi 2,1;
q
j-2,1
P
в противном случае,
j—1,2 _ "p+1 _
xp+1 + A,xJp+\ + A ^x ^f2;
x p^2 в противном случае, p = 0, k,
xp_1, xjp — координаты (p-і) -й, p -й точек эксперимента (эталонных точек), р = 1, k ; k — количе-
xy,1 =
xy - A, xy - A > 0;
0 в противном случае,
РИ, 2000, № 4
83
xi,2 _Jxy+i + A xy+i + A ^ i; x ^+1 К
[ 1 в противном случае,
A — максимально возможное значение амплитуды случайного возмущения. Известно [12,13], что случайную импульсную последовательность наиболее полно можно описать максимально возможной амплитудой A, максимально возможной длительностью импульсов L, минимально возможной паузой между двумя соседними импульсами H . Выразим эти параметры безразмерными величинами:
где 5 — дискретность преобразования исходного интервала (0,l). Однополярную последовательность будем в дальнейшем обозначать Ai (a, l, h) -последовательностью, двухполярную — A2(a, l, h) -последовательностью.
С учетом введенных определений задачу синтеза помехоустойчивых алгоритмов поиска точки с характерным признаком сформулируем в таком виде:
область поиска — отрезок [0,1] ; точка с характерным признаком не меняет в процессе поиска своего местоположения; на процесс поиска накладывается
A v (a, l, h) -последовательность, v = 1,2; на каждом шаге алгоритма выполняется эксперимент (3), для формирования нового интервала неопределенности относительно точки с характерным признаком используется принцип “пересечения” (5). Требуется для a > 0, h > 0, l > 1, а также параметров алгоритма i > 1, k > 1 построить помехоустойчивый алгоритм поиска (для каждого шага алгоритма поиска найти решающие правила и стратегию поиска [1]), удовлетворяющий минимаксному критерию (4).
Сформулированная задача решается методом индукции по i : первоначально алгоритм поиска строят для i = 1, затем для i = 2 , и т.д. Приведем примеры такого построения.
Пусть величина a превосходит исходный интервал неопределенности относительно X , l = 1, k = 1, h > 1; на процесс поиска накладывается однополярная последовательность, посредством которой точка x смещается в направлении 0 ^ 1 (последовательность положительной полярности). Тогда на основании соотношений (2) устанавливаем:
Ф(0,1) = 1; ф(1,1) = 1; Ф(2,1) = 2 . (6)
Действительно, пусть i = 2 и некоторым образом выбрана точка первого эксперимента x1 є (0,1. В
результате выполнения первого шага алгоритма может возникнуть один из исходов:
а) x + C(t) є [0, x 1);
б) x + C(t) Є Ид).
Поскольку на процесс поиска накладывается однополярная положительная последовательность, то для исхода типа а) устанавливаем, что x є 0, x 1).
Для этого случая в распоряжении алгоритма остается (2 -1 шагов, что позволяет помехоустойчивому алгоритму поиска разбить выделенный полуоткрытый интервал на ф(2 -1,1 = 1 равных частей.
В том случае, когда по итогам выполнения первого шага алгоритма формируется исход типа б), на втором шаге алгоритма применяем принцип “повторных сравнений”(повторяем эксперимент)
x2 = x1.
В результате выполнения второго (последнего) шага алгоритма может появиться один из исходов:
61) x + C(t) є [0, x 1 ^;
62) x + C(t) є |x1,1).
Нетрудно заметить, что исход б 1) противоречит исходу б). Это противоречие свидетельствует о действии A1 (a, l, h) -последовательности на первом шаге алгоритма. На этом основании устанавливаем: x є [0, x1).
Поскольку в распоряжении алгоритма не осталось ни одного шага, то на основании соотношений (2) заключаем: x1 = 5ф(0,1) = 5 .
Исход типа б 2) подтверждает исход типа б), что свидетельствует о том (см. соотношения (2)), что на первых двух шагах алгоритма A1 (a, l, h) -последовательность не проявлялась.Это позволяет утверждать, что x є [xU).
Этот полуоткрытый интервал неопределенности за оставшиеся шаги алгоритма будет разбит на ф(2 - 2,1 равных частей.
На основании анализа исходов, возникающих в процессе поиска, устанавливаем
ф(2,1 = 2ф(2 - 2,1 = 2 . (7)
Предположим, что по такой же схеме построены помехоустойчивые алгоритмы поиска для i = 1,2,..., (i -1). Построим помехоустойчивый алгоритм поиска для произвольного i .
Пусть некоторым образом выбрана точка первого эксперимента x1 є (0,1. Тогда по итогам выполнения первого шага алгоритма может возникнуть один из исходов: а) либо б).
Пусть возникает исход типа а). Тогда, исходя из того, что однополярная последовательность смеща-
84
РИ, 2000, № 4
ет точку x в направлении 0 ^ 1, устанавливаем x є [о, xlj.
Поскольку в распоряжении алгоритма остается (i -1) шагов, то выделенный полуоткрытый интервал неопределенности будет разбит на ф(і -1,2) равных частей.
Анализ всевозможных исходов, возникающих в процессе поиска точки с характерным признаком, позволяет построить такую логическую схему алгоритма помехоустойчивого поиска:
1-й шаг: выполнить эксперимент в точке х1 = 8ф(і -1,1.
Если же возникает исход типа б), то повторяют 2 1
эксперимент: х^ = х^
По итогам выполнения второго шага алгоритма может появиться один из исходов: б1) или б2). Для исхода типа б 2) характерно действие A1(a,l,h) -последовательности на первом шаге алгоритма. Как следует из определения A1 (a, l, h) -последовательности, она не будет также наблюдаться на последующих (h -1) шагах алгоритма, затем на последующих (і -1 - (h -1)) шагах она может снова проявиться. Это позволяет для исхода б2) применить такую комбинацию алгоритмов поиска: на последующих (h -1) шагах алгоритма применить классический непомехоустойчивый алгоритм поиска, а на оставшихся (i - (h -1) - 2) шагах — помехоустойчивый алгоритм поиска. Такая комбинация алгоритмов позволяет разбить полуоткрытый интервал неопределенности 0, х 1 ] на Т(і - 2,1 равных частей. Для этой функции справедливо соотношение
Т(і - 2,1 = 2h_1 ф(і - h - 1,1. (8)
В том случае, когда по итогам выполнения второго шага алгоритма формируется исход типа б2), то, как это уже было показано, х є [х{ ,1.
Выделенный таким образом полуоткрытый интервал неопределенности [хід) за оставшиеся (і-2) шагов алгоритма будет разбит на ф(і - 2,1 равных частей.
2- й шаг: если по итогам первого шага алгоритма формируется исход типа а), то х є [о, х1 ] и второй
шаг есть первый шаг (і -1 -шагового помехоустойчивого алгоритма поиска, примененного к полуоткрытому интервалу [о, х1 ];
если по итогам первого шага алгоритма формируется исход типа б), то х2 = х1.
3- й шаг: если по итогам выполнения второго шага алгоритма формируется исход типа 61), то после -
дующие (h -1 шаги алгоритма являются шагами классического непомехоустойчивого алгоритма поиска, следующий шаг—первым шагом (і - h -1 -шагового помехоустойчивого алгоритма поиска;
если по итогам выполнения второго шага алгоритма формируется исход типа б 2), то х є |х1,1) и следующий шаг является первым шагом (і - 2) -шагового помехоустойчивого алгоритма поиска, примененного к полуоткрытому интервалу |х! ,1).
Следует заметить, что на основании соотношений (6)—(10) для произвольного значения параметра h можно построить алгоритм помехоустойчивого поиска точки с характерным признаком (опреде-
Выполненный анализ возможных исходов, возникающих на первых двух шагах алгоритма, позволяет утверждать, что один и тот же полуоткрытый интервал неопределенности [о, х 1 ] для исхода типа а) разбивается на ф(і -1,1 равных частей, а для исхода типа бД — на т(і - 2,1 равных частей.
Оценка алгоритма поиска в этом случае будет функция ф(і -1,1, для которой имеет место такое соотношение (см. выражение (4)):
ф(і -1,1 = тіп{ф(і -1,1, ¥(і - 2Д)} . (9)
Итак, в самом неблагоприятном случае полуоткрытый интервал неопределенности [о, х 1) будет разбит
на ф(і -1,1 равных частей, а для функции ф(і,1) будет истинным такое выражение:
ф(і,1) = тіп jp(i -1,1,2 h 1 ф(і - h - 1Д)}+
+ ф(і - 2,1,
(10)
РИ, 2000, № 4
і h о 1 2 3 4 5 6 7 8 9 10
3 1 1 2 3 5 6 12 19 31 47 78
2 1 1 2 3 4 7 1о 15 24 35 54
1 1 1 2 2 4 4 8 8 16 16 32
лить координату точки первого эксперимента и значения функции ф(і,1)).
Значения функции ф(і,1) для h = 1,2,3 приведены в таблице.
Эти значения функции ф(і,1) задают ряды целых положительных чисел. Каждый из этих рядов можно использовать для построения избыточных представлений десятичных чисел. С этой целью необходимо значение і -го члена ряда отождествить с весом
і -го разряда некоторой новой позиционной системы. Затем представить десятичное число как сумму весов разрядов новой позиционной системы. Нетрудно заметить, что для каждого десятичного числа существует несколько таких представлений, что говорит об избыточности таких систем. Все множе-
85
ство комбинаций для одного и того же десятичного числа разобьем на разрешенные и запрещенные кодовые комбинации. Для первых двух систем разрешенными будут такие кодовые комбинации, которые не содержат двух и более единиц в соседних разрядах; для третьей системы разрешенными комбинациями будут такие, которые состоят из групп единиц, расположенных в соседних разрядах, каждая группа содержит две единицы, группа от группы отделена хотя бы одним нулем [14].
Примером таких комбинаций являются 11011011, 11001100, 00110000. Заметим, что две первые системы позволяют обнаруживать сбои типа о ^ 1, последняя система позволяет обнаруживать сбои типа о ^ 1 и типа 1 ^ о [14].
Для обнаружения сбоя в i -м разряде кодовой комбинации необходимо проверять правильность формы представления. Для третьей системы это выполняется с помощью такого соотношения:
Уі = Xi uXi+iXiXi_i u Xi+iXiXi_i, (И)
где Xi — переменная і -го разряда кодовой комбинации.
С помощью таких представлений можно организовать не только обнаружение, но и коррекцию сбоев. С этой целью для последней позиционной системы дополнительно формируют три контрольные суммы по модулю два некоторых разрядов кодовой комбинации. В первую сумму включают разряды Xi, X4, X7, X10,... , во вторую — X2,X5,X8,X11,... , в третью — X3, Xg, X9, X12, X15,_
Поясним описанные преобразования на примере. Пусть имеется кодовая комбинация такого вида:
bi b2 Ьз
11011000 .
87654321
Заметим, что десятичными цифрами указаны номе -ра разрядов кодовой комбинации, прямоугольниками выделены дополнительные разряды (Ь1,Ь2,Ьз). Определяем значения переменных
bi,(i = 13):
b1 = X1 © X4 © X7 = 0 ©1 ©1 = 0; b2 = X2 © X5 © X8 = 0 ©1 ©1 = 0;
Ьз = X3 © Xg = 0 © 0 = 0.
С учетом дополнительных разрядов формируем такую комбинацию 11011000000 и передаем ее по дискретному каналу.
Пусть принята такая комбинация: 87654000°00. При приеме определяются значения переменных формы yi (см. соотношение (11)):
У 8 = 1,У7 = 0,У6 = 0,У5 = 0,У4 = 1,У3 = 1,У2 = 1,У1 = 1.
Анализ значений переменных Уі позволяет утверждать, что искаженными могут быть разряды {7,6,5} = M1.
Затем определяют значения контрольных сумм: Ь = b1 © X1 © X4 © X7 = 0 © 0 ©1© 1 = 0;
Ь2 = b2 © X2 © X5 © X8 = 0 © 0 ©1©1 = 0;
Ь3 = b3 © X3 © X6 = 0 © 0 ©1 = 1.
Поскольку ь3 = 1, то искаженным может быть один из разрядов {3,6} = M2 . Номер искаженного разряда определяют путем операции:
M1П M2 = {7,6,5} П {3,6} = {6}.
Итак, решая задачу синтеза помехоустойчивых алго -ритмов поиска точки с характерным признаком, синтезируем не только алгоритмы поиска, но и новые позиционные системы представления десятичных чисел, обладающие дополнительными свойствами: обнаружения и коррекции сбоев. Это доказывает истинность утверждения: каждый помехоустойчивый алгоритм поиска точки с характерным признаком порождает избыточную позиционную систему представления десятичных чисел. Этот факт позволяет также утверждать, что некоторые закономерности теории помехоустойчивого поиска могут быть перенесены в теорию помехоустойчивых кодов.
Литература: 1 .Альсведе Р, Вегенер И. Задачи поиска. М.: Мир, 1982. 365с. 2. Алипов Н.В. Алгоритмические и структурные методы повышения надежности функционирования преобразователей напряжение-код // Автореф. дис. на соиск. уч. степени канд. техн. наук. Харьков: ХИРЭ, 1970. 30с. 3. Александров В.В., Арсентьев А.В, Горский Н.Д Некоторые вопросы построения рекурсивных баз данных // УСИМ. 1981. № 4. С. 3-7. 4. Мозгалев-ский А.В. Автоматический поиск неисправностей. Л.: Машиностроение, 1967. 260с. 5. Кузнецов П.И., Пчелинов А.А, Гайденко В.С. Контроль и поиск неисправностей в сложных системах. М.: Сов. радио, 1969. 240с. 6. Алипов Н.В. Разработка теории и методов решения задач помехоустойчивого поиска и преобразования информации // Автореф. дис. на соиск. уч. степени д-р техн. наук.Харь-ков: ХИРЭ, 1986. 50с. 7. Малютов М.В. Об одновременном итерационно-квадратичном оценивании среднего и компонент дисперсии регрессионной модели // Теория вероят. и примен. 1981. XXVI, № 1. С. 203-206. 8. Малютов М.В. Планирование отсеивающих экспериментов // Теория вероят. и примен. 1980. № 3. С. 657-658. 9. Уайлд Д.Дж. Методы поиска экстремума: Пер. с англ. М.: Мир, 1967. 264с. 10. Блейхут Р. Теория и практика кодов, контролирующих ошибки. М.: Мир, 1986. 576с. 11. Алипов Н.В. Принцип “пересечения” и его применение при алгоритмическом синтезе преобразователей информации // Проблемы создания преобразователей формы информации. К.: Наук. думка, 1980. 4.1. С. 10-13. 12. Алипов Н.В. Об одном подходе к построению оптимальных алгоритмов аналого-цифрового преобразования, нечувствительных к случайным импульсным последовательностям // Труды III Всесоюзного симпозиума “Проблемы создания преобразователей формы информации”. К.: Наук. думка, 1976. 4.1. С. 77-81. 13. Венскаускас К.К., МалаховЛ.М. Импульсные помехи и их воздействие на системы радиосвязи (обзор) // Зарубежная радиоэлектроника, 1978. № 1. С. 95-125. 14. Алипов Н.В. Об одном способе повышения надежности функционирования ЦВМ // УСИМ. 1979. № 1. С. 53-58.
Поступила в редколлегию 23.06.2000
Рецензент: д-р. техн. наук, проф. Руденко О.Г.
Алипов Николай Васильевич, д-р техн. наук, профессор кафедры проектирования и эксплуатации электронных аппаратов ХТУРЭ. Научные интересы: алгоритмизация задач автоматизированного проектирования электронных вычислительных средств, защита информации. Адрес: Украина, 61089, Харьков, ул. Иртышская,8, тел. 40-94-94.
86
РИ, 2000, № 4