Научная статья на тему 'Инструментальные средства акселерации символьных вычислений в системах обработки текстовой информации'

Инструментальные средства акселерации символьных вычислений в системах обработки текстовой информации Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
121
26
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
АКСЕЛЕРАЦИЯ / ПРОДУКЦИЯ / АЛГОРИТМ / СИСТЕМА / ОБРАБОТКА / ТЕКСТ / ACCELERATION OF A.A. MARKOV PRODUCTION / ALGORITHM / SYSTEM / PROCESSING / TEXT

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Зерин Иван Сергеевич, Довгаль Виктор Митрофанович, Ткаченко Алексей Сергеевич, Авдеев Александр Викторович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Зерин Иван Сергеевич, Довгаль Виктор Митрофанович, Ткаченко Алексей Сергеевич, Авдеев Александр Викторович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

INSTRUMENTAL FACILITIES OF ACCELERATION OF SYMBOL PROCESSING IN SYSTEMS OF TEXTUAL PROCESSING

This article pays attention to instrumental facilities for acceleration of particular case of Markov production with multiple intersections of example and modifier, which reduce speed efficiency of fast symbol (textual) processing system. Authors offers algorithm for management of work process for such kind of production without reduce speed efficiency of fast symbol processing system.

Текст научной работы на тему «Инструментальные средства акселерации символьных вычислений в системах обработки текстовой информации»

_

ИНСТРУМЕНТАЛЬНЫЕ СРЕДСТВА АКСЕЛЕРАЦИИ СИМВОЛЬНЫХ ВЫЧИСЛЕНИЙ В СИСТЕМАХ ОБРАБОТКИ ТЕКСТОВОЙ ИНФОРМАЦИИ

УДК 681.3

Иван Сергеевич Зерин

Аспирант, Юго-Западный Государственный Университет Тел .+79611672518, Эл. почта: sphinks@newmail.ru Виктор Митрофанович Довгаль Доктор технических наук, профессор, Юго-Западный Государственный Университет Тел. +79081213075, Эл. почта: vmdovgal@vandex.ru Алексей Сергеевич Ткаченко Аспирант, Юго-Западный Государственный Университет Тел.+79045250291, Эл. почта: javarh@mail.ru Александр Викторович Авдеев Аспирант, Юго-Западный Государственный Университет Тел. +79103138092, Эл. почта: alex v avdeev@mail.ru

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

Ключевые слова: акселерация, продукция, алгоритм, система, обработка, текст.

Ivan S. Zerin

PhD student, South-West State University Tel. +79611672518, E-mail: sphinks@newmail.ru Victor M. Dovgal

Doctor of Science, Full Professor, South-West

State University

Tel. +79081213075,

E-mail: vmdovgal@yandex. ru

Aleksey S. Tkachenko

PhD student, South-West State University

Tel. +79045250291,

E-mail: javarh@mail.ru

Aleksandr V. Avdeev

PhD student, South-West State University\

Tel. +79103138092,

E-mail: alex v avdeev@mail.ru

INSTRUMENTAL FACILITIES OF ACCELERATION OF SYMBOL PROCESSING IN SYSTEMS OF TEXTUAL PROCESSING

This article pays attention to instrumental facilities for acceleration of particular case of Markov production with multiple intersections of example and modifier, which reduce speed efficiency of fast symbol (textual) processing system. Authors offers algorithm for management of work process for such kind of production without reduce speed efficiency of fast symbol processing system.

Keywords: acceleration of A.A. Markov production, algorithm, system, processing, text.

1. Введение

Статья посвящена решению проблемы акселерации работы универсальных продукционных алгоритмов [1], предназначенных для обработки текстовых (символьных) данных. Актуальность проблемы быстрой текстовой обработки средствами эквивалентных преобразований операторов и алгоритмических схем продукционных алгоритмов обусловлена тем, что исключается необходимость в дорогостоящем повышении тактовой частоты работы СБИС и коммутаторов [2].

Существующие средства акселерации [3] символьных вычислений, которые позволяют выполнять базовый оператор «найти и замени» по безотступной технологии, обладают существенным недостатком при работе с продукцией, имеющей множественные пересечения образца и модификатора, а именно: необходимость переходить на классический (отступный) алгоритм для операции поиска и замены. Соответственно, в таких ситуациях предложенные средства акселерации не применимы.

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

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

2. Модифицированная алгоритмическая система А. А. Маркова

В работе [3] была предложена система быстрых символьных вычислений, которая основана на системе А.А. Маркова [1]. Там же были предложены алгоритмы акселерации работы базового оператора - «найти и заменить» (формула подстановок). Исследования скоростных характеристик данной системы показали, что обработка символьных данных (текстов) происходит в среднем на 1-2 порядка быстрее, чем при классическом подходе к обработке символьной информации [4].

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

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

Для четкого разделения продукций на классы используется конструктивная дизъюнкция:

(E о = C н )V(E н = C 0 )V(E о = C)V(E н = C)V(E = BCD) (1)

где E - образец, С - модификатор, при это E и C - любые слова, возможные в расширении заданного алфавита А; индексы "н" и "о" обозначают собственные начала и окончания слов соответственно; B, D - любые слова в заданном фиксированном алфавите.

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

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

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

мулой (1), не в теоретико-множественном смысле, поскольку слова не являются множествами. После определения типа пересечения осуществляется преобразование исходной продукции в ее акселерационную форму. Процесс преобразования продукции к акселераци-онной форме рассмотрен в [3,5]. Все пересечения можно разделить на три группы: истинность 1 и 3 членов конструктивной дизъюнкции (1) идентифицирует левостронний конструктивный процесс, истинность 2 и 4 членов идентифицирует правосторонний конструктивный процесс, 5 член идентифицирует центральный процесс.

3. Недостатки модифицированной алгоритмической система А. А. Маркова, при работе с множественными вариантами пересечения образца и модификатора продукции

В работах [3-5] основное внимание уделено классу самоопределяющихся продукций, для которых конструктивная дизъюнкция (1) фиксировала только один тип пересечения образца и модификатора. Особый случай, когда выражение (1) фиксирует два и более типов пересечению в пространстве одной продукции, назовем множественным пересечением образца и модификатора продукции.

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

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

Рассмотрим продукцию:

ОНОЦО0 ^ МНО0 (2)

при (Оц = М)& (Оо ^ Мн) = 1,

_

где Он - начальная часть образца, Оц - центральная часть образца, Оо - заключительная часть образца, Мн - начальная часть модификатора.

Продукция (2) имеет два варианта пересечения образца и модификатора, которые можно записать двумя отдельными продукциями.

1) (ОнОц )Оо ^ Мн (Оо)

2) (Он )Оц (Оо) ^ МнОо (3)

Данные продукции будут выполняться параллельно при поиске образца, но при модификации используются приоритеты. Для возможности применения акселерации используем унифицированную форму записи:

{(ОнОц) | (Он)ПДРо(Оо) ^МнОо(Оо) (4)

Лидирующий фрагмент выражения (4) заключенный в {}, представляет собой набор фрагментов, которые записываются через знак альтернации. Это предполагает, что в обрабатываемой строке заменяемый фрагмент может начинаться с любого из фрагментов представленных в данном наборе. Дальнейшее формирование заменяемого образца происходит путем наращивания счетчика соответствующего фрагмента, с последующей конкатенацией с ядром продукции (ядром продукции называется фрагмент свободный от скобок итерации и операции альтернации). Для завершения формирование продукции происходит конкатенация с заключительным фрагментом выражения (4) соответствующим выбранному лидирующему фрагменту. Например, в выражении (4) фрагменту (ОнОц) соответствует заключительный фрагмент (0), а фрагменту (О ) соответствует

(Оо).

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

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

4. Синтез алгоритма управления конструктивным процессом замены при множественном пересечении образца и модификатора

Утверждение 1. Предложим, что

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

Рассмотрим слово:

ОнОнОцОоОоОо

При работе с классической формой продукции (2) получим следующий конструктивный процесс:

ОнОнОцОоОоОо^ ОнМнОоОоОо ^ ^ МнОоОо (5)

Рассмотрим работу алгоритма (3). Начать работу могут в данном случае обе продукции. Предположим, что приоритет срабатывания у продукции .№2. Тогда получим результат эквивалентный (5):

ОнО нОцОоОоОо ^ МнОоОо

Предположим, что приоритет срабатывания у продукции №№1 из (3), тогда получим:

О нОнОцОоОоОо ^ ОнМнОоОоОо (6)

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

Так как достаточно одного ложного следствия, чтобы говорить о ложности посылки, то можно заключить, что утверждение ложно на основании неэквивалентности результатов (6) и (5).

Дизъюнкция (1) определяет 3 типа пересечений: центральное, левострон-нее и правостороннее. Соответственно комбинация этих 3 типов пересечений и порождает различные варианты множественных пересечений. Случай пересечения двух однотипных пересечений рассмотрен в работе [3]. Комбинация из правостороннего и левостроннего пересечений не приводит к описанной в этой статье проблеме управления процессом, так как эти типы пересечений разнесены в пространстве продукции. Рассмотрим множественные пересечения состоящие из правостроннего или левостроннего и центрального пересечений.

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

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

№5, 2011

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

Доказательство утверждений 2 и 3 являются тривиальными и в статье не приводятся. На основании утверждений 2 и 3 сформулировать следующий алгоритм управления процессом срабатывания продукции с множественным пересечением:

1о. Если конструктивная дизъюнкция определила присутствие двух и более разнотиповых пересечений в пространстве продукции, то наивысший приоритет выполнения получает акселераци-онная форма продукции с центральным типом пересечения, затем выполняется акселерационная форма продукции с правостронним пересечением, в последнюю очередь выполняется аксе-лерационная форма продукции с лево-стронним типом пересечения.

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

5. Исследование временной сложности предложенного алгоритма управления конструктивным процессом замены

Рассмотрим результаты моделирования работы Марковской продукции с множественными пересечениями при классическом и модифицированном процессах управления.

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

Длина строки на рис.1 изменяется от 10 символов (байт) до 1000 символов (байт) включительно. В обрабатываемой строке находится 1 образец подлежащий замене.

Из рис. 1 видно, что модифицированный процесс управления на строках длиной до 20 символов менее эффективен, чем классический.

Динамика изменения времени обработки строки при дальнейшем увеличении ее длины отражена в таблице 1.

Здесь необходимо учитывать, что в каждой тестовой строке находилось по 100 образцов, подлежащих замене.

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

Рис. 1. Зависимость временных затрат от длины обратываемой строки при модифицированном процессе управления (красный) и классическом процессе

управления (синий)

Таблица 1. Динамика зависимости временных затрат от длины обратываемой строки при модифицированном процессе управления и классическом процессе управления

Длина строки (сим.) 103 104 105

Клас. Процесс (мс) 0,28 2,91 31,91

Модиф. Процесс (мс) 0,04 0,34 3,99

Рис. 2. Зависимость временных затрат от количества образцов при модифицированном процессе управления (красный) и классическом процессе управления (синий). Длина обрабатываемой строки - 104 символов (байт)

Таблица 2. Динамика зависимости временных затрат от количества образцов в обрабатываемой строке при модифицированном процессе управления и классическом процессе управления

Число образцов 101 102 103

Клас. Процесс (мс) 4,50 37,96 365,63

Модиф. Процесс (мс) 0,35 1,75 13,28

ния процессом остается примерно на одном уровне. Временные показатели процессов увеличиваются линейно.

На рис. 2 отображено влияние количества образцов в обрабатываемой строке на время обработки строки.

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

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Динамика изменения времени обработки строки при дальнейшем увеличением числа образцов приведена в таб. 2.

Длина обрабатываемой строки составила 10000 символов.

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

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

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

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

6. Заключение

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

Литература

1. Марков А. А., Нагорный Н.М. Теория Алгорифмов. - М.: Наука, 1984. -432 с.

2. Воеводин В.В., Воеводин Вл.В. Параллельные вычисления. - СПб.: БХВ -Петербург, 2002. - 608 с.

3. Довгаль В.М. Методы модификации формальных систем обработки символьной информации учеб. пособие - Курск. гос. техн. ун.-т. Курск,

1996. 115с.

4. Гордиенко В.В. Инструментальные средства организации символьных вычислений: краткая история и перспективы (Часть 2) // Информационно-измерительные и управляющие системы. - 2009. - Т. 7, №11., - С. 72-76.

5. Зерин И. С. К вопросу о применении акселерационных форм продукции в системах поддержки принятия решений для социально-экономических объектов // Компьютерные технологии в науке, производстве, социальных и экономических процессах: Мат. IX Междун. науч.-прак. конф., (г. Новочеркасск, 17 нояб. 2008 г.) - Новочеркасск: ЮРГТУ, 2008. - 138с.

References

1. Markov A.A., Nagornyi N.M The theory of algorifmov. - M.: Nauka, 1984. -432 p.

2. Voevodin W, Voevodin V1.V Parallel computing. - SPb. : BHV. -St.Petersburg, 2002. - 608 p.

3. Dovgal VM. Methods of modification of formal symbol processing systems teaching aid - Kursk st. tech. university Kursk, 1996. 115 p.

4. Gordienko V.V Instrumental facilities of symbol calculation organization: brief history and future (Part 2) // Informational-measurement and management systems. - 2009. - Vol. 7, №11., - P. 72-76.

5. Zerin I.S. To a question about applying acceleration form of production in decision support systems for social-economical objects // Computer technologies in science, producing, social and economic processes: Materials of IX international. theoretical and practical conference., (Novocherkassk, 17 nov. 2008) - Novocherkassk: UrSTU, 2008. - 138 p.

№5, 2011Д160 ■

i Надоели баннеры? Вы всегда можете отключить рекламу.