Кинетическая машина Кирдина и задача восстановления утерянных данных

517.97:539.37

М. Ю. Сенашова, А. Г. Рубцов, М. Г. Садовский

КИНЕТИЧЕСКАЯ МАШИНА КИРДИНА И ЗАДАЧА ВОССТАНОВЛЕНИЯ УТЕРЯННЫХ ДАННЫХ

Изложены предварительные результаты решения проблемы восстановления пропусков в символьных последовательностях при помощи кинетической машины Кирдина (далее КМК). КМК это мелкозернистый высокопараллельный распределенный вычислительный формализм. Предложен модифицированный имитатор КМК, специализированный для данной задачи. Имитатор работает с частью частотного словаря, содержащей лишь реагентоспо-собные слова. Решение задачи проиллюстрировано рядом примеров. Обсуждены дальнейшие направления применения КМК для задач восстановления утерянных данных.

ВВЕДЕНИЕ

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

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

1 ПОСТАНОВКА ЗАДАЧИ

В качестве данных будем рассматривать конечные символьные последовательности. Будем полагать, что алфавит, в котором записаны изучаемые последовательности, заранее известен. Отсутствие части такой последовательности будем рассматривать как потерю данных; будем также считать, что длина утерянной части последовательности известна, а сама утерянная часть (далее будем называть ее лакуной) представляет собой связный диапазон. В такой постановке проблема весьма актуальна для самых различных областей знания - от теории передачи данных до молекулярной биологии.

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

2 КРИТЕРИИ ПРАВИЛЬНОСТИ ЗАПОЛНЕНИЯ ЛАКУН В ПОСЛЕДОВАТЕЛЬНОСТИ

Пусть N - длина всей (восстанавливаемой) последовательности:

N = N1 + Ь + N2,

где N и N2 - длины известных частей последовательности, а Ь - длина участка, который необходимо восстановить. Словом длины д будем называть любую связную последовательность этой длины, составленную

© Сенашова М. Ю., Рубцов А. Г., Садовский М. Г., 2007

из символов алфавита Q. Опорным частотным словарем W толщины q будем называть список всех слов этой длины, встречающихся в доступных исследователю частях, с указанием частот этих слов fffl. Пополненным частотным словарем W будем называть частотный словарь (толщины q), составленный по той последовательности, которая возникает в результате заполнения лакуны. Очевидно соотношение

1 < q < min{Nb N2}.

Левой (соответственно, правой) опорой длины t, 0 < t < q - 1 будем называть слово этой длины, расположенное сразу слева (соответственно, сразу справа) от лакуны. Тем самым, в зависимости от величины t, восстанавливаемая часть имеет длину L + 21, при том условии, что первые и последние t символов являются фиксированными. Отметим, что для построения заполнения длина лакуны L должна быть больше длины слова q.

Построить заполнение лакуны означает построить из слов длины q цепочку

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

S -

I f

• ln

' f. ^ и

опорного частотного словаря W (д) относительно пополненного W(д) достигнет минимума. Здесь - частота слов в опорном частотном словаре, а - частота слов в словаре, построенном по всей последовательности, полученной в результате заполнения лакуны (пополненного); понятно, что = 0 для некоторых <в, в то время, как /<> 0.

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

Ю1,Ю2,Юз, ...,ЮХ + 2t - q,.L + 2t - q + 1

длиной Ь + 2 Ь, у которого первые Ь и последние Ь символов заданы, а для каждой пары соседних слов выполнялось условие

- г<.iq - + 1,

J 1 q J +1

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

S -

-£{ /»• lnf.}

пополненного частотного словаря W(д), где - частота слов, вычисленная по тексту, полученному в результате заполнения лакуны. Вне зависимости от того, существует или нет заполнение лакуны словами из опорного словаря, можно строить заполнение лакуны всеми возможными в данном алфавите словами. Очевидно, что такое заполнение существует всегда и не единственно.

3 КИНЕТИЧЕСКАЯ МАШИНА КИРДИНА В ЗАДАЧЕ ВОССТАНОВЛЕНИЯ УТЕРЯННЫХ ДАННЫХ И ЕЕ ПОСЛЕДОВАТЕЛЬНЫЙ ИМИТАТОР

Прежде, чем излагать процедуру заполнения утерянных данных, кратко рассмотрим понятие кинетической машины Кирдина (далее КМК). КМК [1-3] является идеальным мелкозернистым параллельным вычислительным формализмом, по степени абстракции подобным машине Тьюринга. Известно, что КМК алгоритмически полна [3], то есть любой мыслимый алгоритм представим в ее терминах. Отличительной чертой КМК является мелкозернистый параллелизм. Обрабатываемой единицей является ансамбль слов M из

алфавита Q, который отождествляется с функцией Fm

*

с конечным носителем на Q , принимающей неотрица-

*

тельные целые значения Fm'- ^ ^ 0}. Значение

Fm(ю) интерпретируется как число экземпляров слова ю в ансамбле M.

Обработка ансамблей в КМК состоит в совокупности элементарных событий, происходящих недетер-минировано и параллельно. Элементарное событие S-M ^ M' состоит в том, что из ансамбля M изымается ансамбль K и добавляется ансамбль K+, т. е. Fm' = Fm - Fr- + F +. Ансамбли K и K+ однозначно задаются правилами или командами, которые объединяются в программу. Команды могут быть только трех видов: распад uvw ^ uf + gw, синтез uk + dk ^ usw и прямая замена uvw ^ usw. Здесь u и w - произволь-

.

.

ные слова, а слова V, f, д, £, й и 5 суть некоторые фик-*

сированные слова из О (подробности см. в [1-6]).

Неформально КМК можно представить себе как аналог химического реактора, в котором происходят реакции [7]. Имеется химический реактор идеального смешения, в котором плавают слова. В реактор добавляются правила-катализаторы; одни из них, взаимодействуя со словами, способствуют их распаду, другие, встречая пару подходящих слов, способствуют их синтезу, и, наконец, третьи заменяют в словах некоторые подцепочки.

Перейдем теперь к изложению способа заполнения лакуны в последовательности в терминах КМК. Для этого приведем программы для КМК, описывающие алгоритмы построения частотного словаря и заполнения лакун. Пусть у нас имеется текст Т, по которому требуется составить частотный словарь ^ . Программа для КМК, реализующая этот процесс, состоит из одной команды и выглядит следующим образом:

А а -11 Л а - 1 . а - 11

щ V д т — щ V + V д т,

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

Программа, реализующая процесс заполнения лакуны в терминах КМК выглядит следующим образом:

q - t q - t *

a¡ + a¡v — a¡v ;

q -1 * q -1

v' ar + ar — a

q-1*, q -1 i q-1 i* uv *+ v v ^ uv v *;

1 q-1 q-1 1 q-1

y v + *v w *v v w,

u + *v -

Первые две строчки программы осуществляют инициализацию затравок, т. е. обеспечивают взаимодействие правой (левой, соответственно) опоры длины с подходящим словом длины а. Третья и четвертая строчки осуществляют рост затравок, в ходе которого, собственно, и строится заполнение лакуны. И, наконец, последняя строка склеивает левые и правые части. Символ < * > не принадлежит алфавиту О и используется в программе, чтобы помечать те слова, которые успешно прошли стадию инициации.

Исходным ансамблем для программы, реализующей заполнение лакуны, является некоторое количество копий «затравок» (левая (аг) и правая (аг) опоры) и не-

которое количество копии словарей, полученных применением к опоре предыдущей программы.

В КМК элементарные события происходят недетер-минировано и параллельно. Тем не менее, программа построена так, что вначале в ансам6ле просто нет таких слов, к которым 6ы могли примениться три последние команды. Таким образом, всю программу работы КМК по заполнению лакуны в последовательности можно представить состоящей из трех последовательных этапов.

Первый этап - инициализации затравок - заключается в присоединение к левой (a¡) и правой (ar) опорам слов из W.

Второй этап - рост заполнений - начинается, как только в ансамбле будет достаточное количество слов, помеченных символом < * >. Следует отметить, что число слов, помеченных символом < * >, зависит от структуры фрагментов, имеющихся в распоряжении исследователя; может случиться так, что опорный словарь W не будет содержать ни одного слова, которое обеспечивало бы инициализацию. Последовательное и многократное применение команд этого этапа позволяет получить слова вида a¡u* и *var, длина которых составляет приблизительно L / 2.

На третьем этапе остается «склеить» слова вида a¡u* и *var. Полученные таким образом слова будут составлять финальный словарь для данной программы и вышеописанного исходного ансамбля, так как ни одна из команд программы будет к ним уже не применима. Поскольку КМК функционирует не детерминиро-ванно и параллельно, в этом финальном ансамбле будут слова разной длины. Самое короткое из них может иметь длину q + 2. Теперь нам нужно выбрать из ансамбля слова длины L + 2t и исследовать полученные заполнения лакуны в соответствии с предложенными критериями.

Работа КМК аналогична кинетике химической реакции. Справедливым здесь будет утверждение о том, что время надежного вычисления нужной (в нашем случае) цепочки, являющейся заполнением лакуны, существенно зависит от «концентрации» тех слов, которые могут породить подходящие продолжения опоры (точнее, время построения подходящей цепочки определяется произведением таких «концентраций» с точностью до некоторого коэффициента, не зависящего от них). Высокий параллелизм вычислений для заполнения лакуны означает, что мы можем параллельно вычислять любое наперед заданное число продолжений одной и той же опоры.

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

*

на обычной последовательной машине фон Неймановского типа, который необходим для решения нашей конкретной задачи, а не всех алгоритмов, которые могут быть представимы в КМК. Мы делаем это для исключения нерезультативных шагов КМК и создания более оптимальной программы, решающей нашу задачу заполнения лакун. Эффективность работы такого имитатора очень сильно падает с уменьшением «концентрации» реагентоспособных слов. В первом приближении эффективность работы последовательного имитатора КМК может быть оценена по аналогии с оценками скорости химической реакции [7]. Для повышения эффективности заполнения лакуны с помощью последовательного имитатора КМК он был модифицирован.

Имитатор КМК должен до определенной степени отражать работу параллельного вычислительного устройства. Для этого число копий затравок (левых опор, для определенности) бралось достаточно большим; в наших вычислительных экспериментах это число составляло 102-105 копий. Так как имитатор перебирал все затравки последовательно, лишь имитируя параллельную работу, эффективность работы такого имитатора существенно определялась «концентрацией» тех слов, которые могли провзаимодействовать с затравкой (опорой, либо словом, прошедшим инициализацию). Для повышения эффективности построения заполнений лакун в символьной последовательности последовательный имитатор КМК был модифицирован; всего было внесено три модификации.

Первая. Все затравки росли только в одном направлении - слева направо, для определенности. Как только цепочка достигала нужной длины Ь + 2 Ь, она проверялась на включение в нее правой опоры. Если правая опора в нее входила, то эта цепочка считалась одним из возможных заполнений, в противном случае она отбрасывалась.

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

*

означает построение на ансамбле М новой функции

— * — 1 д -1

^ 0}, такой, что Гм = Гм(ию ю *) +

- 11ч 1 д -1

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

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

Третья. Периодически проводилась селекция всех слов, являющихся продолжениями опор, построенных в силу команд (4) КМК. Среди продолжений слова

иоХод 1* могут быть такие, которые сами уже не имеют никаких продолжений среди слов из используемого в текущем вычислительном эксперименте частотного словаря. Тем самым, возможна ситуация, в которой для некоторых слов команда (4) не выполняется никогда. С точки зрения повышения эффективности работы последовательного имитатора КМК, такие «тупиковые» слова следует удалить. С другой стороны, удаление таких «тупиковых» слов на каждом шаге времени существенно понижает эффективность работы имитатора: приходится сравнивать большое количество слов. Соответственно, селекция (удаление «тупиковых» слов) проводилось не постоянно, а дважды за время роста продолжений. Для этого вся лакуна, которую необходимо было заполнить, разбивалась на три интервала равной длины. Понятно, что некоторые затравки дали такие продолжения, которые обрывались на длине, меньшей длины ее первого фрагмента - см. описание работы КМК выше. По достижении остальными словами этой пороговой длины (равной трети длины лакуны) «тупиковые» слова из всего множества слов, с которыми работает имитатор КМК, удалялись. Затем те слова, которые достигли этой критической длины, удваивались (либо, в общем случае, их число увеличивалось в £ раз) и процедура построения заполнения в силу команд (4) продолжалась до тех, пор, пока эти слова не достигали следующей длины, на которой проводилась селекция. По достижении этой длины (составляющей две трети от длины лакуны) оставшиеся слова опять «размножались».

4 РЕЗУЛЬТАТЫ

Целью настоящей работы является изучение качества восстановления лакуны в символьной последовательности с помощью КМК. Изучение качества восстановления проводилось с помощью вычислительных экспериментов по заполнению лакун в символьной последовательности. В качестве тест-объектов использовались следующие символьные последовательности: двоичные последовательности, троичные последовательности; генетические последовательности, тексты из русского языка.

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

Двоичные последовательности со случайным шумом

Переодические последовательности со случайным шумом

100000 10000

к о

5з 100

0

1 10

1

5% 10% 50% Без шума

3 4 5 6 7 8 9 10 11 12 13 14 15 Толщина словаря

3 4 5 6 7 8 9 1011 1213141516171819 20 Толщина словаря

Рисунок 1 - Число затравок, доросших до полного заполнения для последовательностей с различной долей шума: по горизонтали - толщина словаря, по которому строилось заполнение; по вертикали - число успешно доросших затравок

Двоичные числа. Во всех вычислительных экспериментах использовались одинаковые параметры: длина последовательности составляла не менее 6000 символов; длина лакуны - от 50 до 200 символов. Расположение лакун внутри исходной последовательности выбиралось произвольным образом. Последовательность из алфавита {0, 1} получалась выписыванием подряд без пробелов натуральных чисел, записанных в двоичной системе счисления: 110111001011101111000100110101011... и так далее. Полученная таким образом {0, 1} - последовательность затем подвергалась случайным искажениям. Из нее порождались четыре другие последовательности, в которых 5 %, 10 % и 50 % случайно выбранных символов заменялись на противоположные. На рис. 1 показаны результаты восстановления последовательностей с внесенным шумом.

Троичные числа. Последовательность (по-прежнему, из алфавита {0, 1}) получалась выписыванием подряд без пробелов натуральных чисел, записанных в троичной системе счисления, из которой затем вычеркивался символ 2: 1101110110010110110111111011100010 и так далее. Полученная таким образом последовательность затем также подвергалась случайным искажениям с той же интенсивностью мутаций.

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

Четырехбуквенные последовательности. В качестве рассматриваемой последовательности был взят текст генетической последовательности (АВ012132 - геном вируса парагриппа человека). Длина текста составляла 14573 символа, длина лакуны - 900 символов. Рассматривались заполнения с толщиной словаря от 3 до 8 символов. Число затравок для каждой толщины словаря бралось равным 100000. Число заполнений, у которых концы совпали с правой опорой, уменьшалось с ростом толщины словаря от 1 % (для словаря толщи-

Толщина словаря

Рисунок 2 - Число затравок, доросших до полного заполнения для различных видов последовательностей:

по горизонтали - толщина словаря, по которому строилось заполнение, по вертикали - число успешно доросших затравок

ны 3) до 0,001 % (для словаря толщины 8). Число не-совпавших позиций составляло, в среднем, около 70 %.

Тридцатидвухбуквенные последовательности. В качестве последовательности был взят текст Всемирной декларации прав человека. Из оригинального текста декларации были удалены пробелы и знаки препинания. Получившаяся символьная последовательность составила около 7500 символов, длина лакуны - 100 символов. Использовались словари толщиной от 3 до 11 символов. Число затравок для каждой толщины словаря бралось равным 100000. Число заполнений, совпавших с правой опорой составляло для всех словарей около 0,0001 %. Число несовпавших позиций составляло, в среднем, около 90 %. Результаты построения заполнений для различных видов текста показаны на рис. 2.

В таблицах 1 и 2 представлены значения абсолютной и условной энтропии для наилучшего заполнения лакуны, полученных с помощью КМК; 2 - двоичные последовательности, 3 - троичные, р - периодические, 4 - из четырехбуквенного алфавита (генетический текст), и 32 - последовательность из русского языка.

Таблица 1 - Значения абсолютной энтропии для наилучшего заполнения, построенного по опорному словарю, в силу критерия максимума абсолютной энтропии

Виды текстовых последовательностей

q 2 3 Р 4 32

3 2.07377 2.07389 2.68792 4.12773 7.02394

4 2.76145 2.76465 2.68761 5.49251 7.74578

5 3.45149 3.45531 3.3222 6.84594 8.10222

6 4.1406 4.14536 3.86802 8.16154 8.31051

7 4.83561 4.83543 4.22472 9.30995 8.44191

8 5.52357 5.52325 4.41634 10.0243 8.53062

9 6.20128 6.19984 4.50374 8.60683

10 6.83363 6.8333 4.56362 8.65466

11 7.36101 7.36099 4.60516 8.69932

12 7.79148 7.79196 4.60516

13 8.1064 8.10517 4.60516

Таблица 2 - Значения условной энтропии для наилучшего заполнения, построенного по полному словарю, в силу критерия минимума условной энтропии

Виды текстовых последовательностей

q 2 3 Р 4 32

3 2.1100110-7 2.1173110-7 1.3171310-6 1.0811110-6 0.002501334

4 8.63964 10-7 1.15992 10-6 5.68907-10-7 7.28976-10-6 0.004114464

5 8.8000110-6 9.15474-10-6 4.37778-10-6 3.5511010-5 0.005274570

6 3.25038-10-5 2.83748-10-5 2.17838 10-5 0.000127584 0.006469274

7 8.54041 10-5 9.11896 10-5 2.43775-10-5 0.000383415 0.007102911

8 0.000250881 0.000225592 1.8111010-5 0.000727322 0.006994414

9 0.000533898 0.000531811 9.28852-10-6 0.007878056

10 0.00102765 0.00104568 1.1261910-5 0.00755565

11 0.0018486 0.00176425 1.32075 10-5 0.00835729

12 0.0025176 0.00244363 1.43811 10-5

13 0.0034176 0.00342195 1.55263 10-5

ВЫВОДЫ

Работы, посвященные восстановлению пропущенных данных, в основной своей массе посвящены многомерным данным [8-14]. В этих работах объекты (данные) представляются точкой в многомерном пространстве, а параметры объекта являются координатами этой точки. При этом для восстановления пропущенных координат зачастую требуется некоторая априорная информация. Научная новизна изложенного здесь метода состоит в том, что он работает с символьными последовательностями, при этом утерянная часть символьной последовательности восстанавливается с использованием только той информации, которая содержится в самой символьной последовательности (частотные словари). Кроме того, задача построения

всех возможных заполнений является переборной; она решается при помощи имитатора высоко параллельного мелкозернистого вычислителя.

На практике метод может применяться во всех задачах, которые требуют восстановления пропусков в символьных последовательностях - от теории передачи данных до молекулярной биологии.

ПЕРЕЧЕНЬ ССЫЛОК

1. Горбунова Е. О. Формально-кинетическая модель бесструктурного мелкозернистого параллелизма // Сиб. журн. вычисл. математики. - 1999. - Т. 2, № 3. -С. 239-256.

2. Gorban A. N., Gorbunova K. O, Wunsch D. C. Liquid Brain: Kinetic Model of Structureless Parallelism // Advances in Modelling & Analisis. - ASME. - 2000. - V. 5, No. 5. -Pp. 33-56.

3. Gorban A. N, Gorbunova K. O, Wunsch D. C. Liquid Brain: The Proof of Algorithmic Universality of Quasichemical Model of Fine-Grained Parallelism // Neural Network World. - 2001. - № 4. - P. 391-412.

4. Неменчинская E. О, Кондратенко Ю. В., Садовский M. Г. Предварительные результаты в проблеме восстановления утерянных данных с помощью кинетической машины Кирдина // Вычислительные технологии. -2004. - Т. 9, № 1. - С. 42-57.

5. Gorbunova E. O, Kondratenko Yu.V, Sadovsky M. G. Data loss reparation due to indeterminate fine-grained parallel computation // ICCS, LNCS 2658, Springer-Verlag, Berlin Heidelberg, 2003. - P. 794-801.

6. Nemenchinskaya E. O, Kondratenko Yu.V., Sadovsky M. G. Entropy based approach to data loss reparation through the indeterminate fine-grained parallel computation // Open Systems & Information Dynamics. - 2004. - V. 11, № 2. - P. 161-175.

7. Яблонский Г. С., Быков В. И., Горбань А. Н. Кинетические модели каталитических реакций. - Новосибирск: Наука, 1983. - 253 с.

8. Загоруйко Н. Г., Елкина В. Н., Тимеркаев В. С. Алгоритм заполнения пропусков в эмпирических таблицах (алгоритм «ZET») // Вычислительные системы. - Новосибирск, 1975. - Вып. 61. Эмпирическое предсказание и распознавание образов. - С. 3-27.

9. Злоба Е., Яцкив И. Статистические методы восстановления пропущенных данных // Компьютерные модели и новые технологии. - 2002. - Т. 6, № 1. - С. 51-61.

10. Голяндина Н., Осипов Е. Метод «Гусеница»-SSA для анализа временных рядов с пропусками // Сб. научн. тр. НИИХ. - 2005. - С. 23-37.

11. Jaap P. L. Brand. Development, implementation and evaluation of multiple imputation strategies for the statistical analysis of incomplete data // Print partners ispkamp, Enschede. - 1999. - 333 с.

12. Литтл P. Дж.А., Рубин Д. Б. Статистический анализ данных с пропусками. - М.: Финансы и статистика, 1991.

13. Горбань А. Н., Макаров С. В., Россиев А. А. Нейронный конвейер для восстановления пробелов в таблицах и

построения регрессии по малым выборкам с неполными данными // V Международная конференция «Математика, компьютер, образование»: Тез. докл. -Дубна, 1998. - С. 53. 14. Горбань А. Н. Проблема скрытых параметров и задачи транспонированной регрессии // V Всеросс. семинар «Нейроинформатика и ее приложения»: Тез.докл. -Красноярск, 1997. - С. 15-16.

Надшшла 21.07.06 Шсля доробки 29.01.07

Викладет попередт результати розв'язку проблеми в1дновлення посл1довност1 символ1в за допомогою к1нетич-ноЧ машини Шрдта (КМК). КМК це м1лкозернистий високопаралельний розпод1лений обчислювальний форма-л1зм. Запропонований модиф1кований 1м1татор КМК, спе-щал1зований для даноЧ задач1. 1м1татор працюе з час-тиною частотного словника, що включае лише реагенто-здатн слова. Розв'язок задач1 про1люстровано рядом приклад1в. Розглянут1 наступн напрямки використання КМК для задач в1дновлення загублених даних.

Preliminary results of the solving of the lost data recovery problem by means of the Kirdin kinetic machine (the ideal fine-grained and highly parallel distributed computing formalism) are presented. The modified simulator of the Kirdin kinetic machine (KKM) specialized for effective construction of the fillings is proposed. The simulator works with the part of the frequency dictionary containing only reactionable words, with periodic removal of those variants of fillings which had no suitable continuations. The decision of a problem is illustrated by a number of examples. The further directions in application ККМ for problems of restoration of the lost data are discussed.

УДК 621.744:004:62-92

А. Л. Становский, Т. В. Лысенко, Н. П. Худенко

УПРАВЛЕНИЕ СОСТОЯНИЯМИ В СЛОЖНЫХ ТЕХНИЧЕСКИХ

ОБЪЕКТАХ

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

ВВЕДЕНИЕ

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

Существующие методы сетевого планирования [1], а также различные синхронизирующие алгоритмы [2, 3], позволяют в значительной степени снизить время про© Становский А. Л., Лысенко Т. В., Худенко Н. П., 2007

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

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