Научная статья на тему 'Метод синтеза цифровых автоматов с послоговым преобразованием'

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

CC BY
43
11
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
СИНТЕЗ ЦИФРОВЫХ АВТОМАТОВ / ПОСЛОГОВОЕ ПРЕОБРАЗОВАНИЕ / ПРОГНОЗИРОВАНИЕ / МОДЕЛЬ МИЛИ / МОДЕЛЬ МУРА / SYNTHESIS OF DIGITAL MACHINES / BY SYLLABARY TRANSFORMATION PREDICTION / MODEL MILES / MODEL MOORE

Аннотация научной статьи по математике, автор научной работы — Корсунов Н.И., Чуев Е.В., Чуева А.И.

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

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

This article propose a variant of the method of synthesis of predictive machine in order to increase their resiliency. It is shown that using this method to partition the machine into syllables enables prediction of the appearance of regular characters in the words at the input without changing the structure of the machine.

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

КОМПЬЮТЕРНОЕ МОДЕЛИРОВАНИЕ

УДК 004.052

МЕТОД СИНТЕЗА ЦИФРОВЫХ АВТОМАТОВ С ПОСЛОГОВЫМ

ПРЕОБРАЗОВАНИЕМ

THE METHOD OF SYNTHESIS OF DIGITAL MACHINES BY SYLLABARY

TRANSFORMATION

Н.И. Корсунов, Е.В. Чуев, А.И. Чуева N.I. Korsunov, E.V. Chuev, A.I. Chueva

Белгородский государственный национальный исследовательский университет, Россия, 308015, Белгород, ул. Победы, 85

Belgorod State National Research University, 85 Pobeda St, Belgorod, 308015, Russia

E-mail: korsunov@bsu.edu.ru, chuev_e@bsu.edu.ru, chueva_ai @bsu.edu.ru

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

Resume. This article propose a variant of the method of synthesis of predictive machine in order to increase their resiliency. It is shown that using this method to partition the machine into syllables enables prediction of the appearance of regular characters in the words at the input without changing the structure of the machine.

Ключевые слова: синтез цифровых автоматов, послоговое преобразование, прогнозирование, модель Мили, модель Мура.

Keywords: synthesis of digital machines, by syllabary transformation prediction, model Miles, model Moore.

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

В известном методе осуществляется преобразование множества слов входного алфавита в множество слов выходного алфавита. Множество слов упорядочивается по начальным (слогам) отрезкам. Затем из начального состояния выполняются переходы в зависимости от первых символов в начальных отрезках. Эти переходы распространяются на другие состояния в зависимости от последующих символов начальных отрезков и после формирования конечного символа осуществляется переход в начальное состояние [Баранов, Скляров, 1986].

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

Предполагаемый метод пошагового преобразования исключает подобные ошибки, так как любая из ошибок приводит к неверному преобразованию единственного слога.

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

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

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

При частичном задании цифровых автоматов появление символа xk входного алфавита X, не приводящего к переходу автомата из состояний в состояние Эк игнорируется и может фиксироваться как ошибочное, т.е. недопустимое и автомат пропускает такты переходов до появления допустимого символа хк. Это означает, что автомат в момент появления допустимого хк при преобразовании входной последовательности символов в моменты Ъ, i=l,n выполняет ошибочное преобразование, а не просто пропускает такты, внося задержку в выполнение преобразования [Корсунов и др., 2014].

Проиллюстрируем применение метода на примере преобразования входной последовательности X = { х2 х2 х2 х3 х1 х1 х4 х2 х2 х2 х4 х1 х4 х5 х2 х2 х2 х1 х3 х5 х1} в выходную

У = {{У2У2У3У1У1У4У2У2У2У4УЛУзУ2У2У2УЛУзУ1}. В соответствии с принципом детерминизма при использовании цифрового автомата модели Мура разобьем слова X и У на следующие слоги:

х1 = {х1 х2 х2 х2 Xз}, У1 = ^ У2 У2 Уз};

х2 = {х1 х4 х2 х2 х2 х4 X1}, У 2 = {{ У2 У2 У2 У4 У1};

х3 = {х5х2х2х2 }, У' = {У4УзУ2У2У2 } ;

х4 = {3 х5} У4 = {УЛУз } .

Переход от слога у1 к слогу у2 выполняется по символу х1, переход от слога у2 к слогу у3

3 4

выполняется по символу х4, переход от слога у к слогу у выполняется по символу х1, переход от

41

слога у к слогу у выполняется по символу х1.

Число состояний автоматов Мура реализующих преобразование слогов х', '=1..4 в слоги у' определяется числом различных символов в ¿-том выходном слоге.

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

.X) х2

Рис. 1. Граф автоматной сети модели Мура Fig. 1. A graph Moore automata network model

При использовании цифрового автомата Мили выходной символ определяется не только состоянием автомата, но и сигналом, приводящим автомат в это состояние [Глушков, 1962].

Это позволяет уменьшить количество слогов в преобразовании X в У, вследствие чего уменьшается число состояний. Условие детерминизма в этом случае обеспечивается переходом автомата из состояния ^ в под действием различных входных символов с выдачей выходных символов выходного алфавита. Разбиение входного слова на слоги определяется по количеству разных символов между х1, ..., хк, х), хк+1, где х) е {х1хк}, хк+1 г {х1хк}.

Разбиение входного слова на слоги приводит к разбиению выходного слова на слоги, длина которых определяется длиной соответствующих входных слогов. Число состояний автомата задающего преобразование г-го входного слога в 1-й выходной определяется количеством символов в {хг}.

Разбиение на слоги слов X и У при использовании в преобразовании автомата модели Мили представляется в виде:

х1 = {х1х2 х2 х2 хз х1х1}; >>2 = {{угугУзУ1У1};

х22 = {х2 х2 х2 х4 х1} ; >22 = {>2>2>2>4>1 } !

х2 = {х5х2х2х2х1хзх5 }; >3 = {>5>2>2>2>^>5 }.

Переход из состояния а1 автомата ^ в состояние а4 автомата 52 с выдачей сигнала >4 выполняется по символу х4 .

Переход из состояния а4 автомата 52 в состояние а7 автомата 53 с выдачей сигнала >4 выполняется по символу х4 .

Переход из состояния а8 автомата 53 в состояние а1 автомата ^ с выдачей сигнала >1 выполняется по символу х1 .

Граф автомата Мили с послоговым преобразованием приведен на рисунке 2.

Рис. 2. Графа автоматной сети модели Мили Fig. 2. A graph Miles automata network model

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

Появление символов входной последовательности в последовательные моменты времени t = t0 + kAt, k=i..m, A t = const позволяет при условии периодичности входной

последовательности длиной q решать задачу предсказания появления символа входной последовательности по отношению к символу в момент tt в зависимости от выбора величины k в зависимости tk = t + kAt. В задаче предсказания (прогнозирования) алфавиты входной и выходной последовательностей совпадают, но выходной символ прогнозируемый в момент времени ti определяется символом входной последовательности в момент времени tt. Именно задачи прогнозирования можно считать наиболее эффективными при послоговом задании преобразований периодических последовательностей символов входного алфавита.

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

Пусть задана входная последовательность из 22 символов х = а1агагагаъа1а1алагагагала1алаъагагага1аъаъ.

Для получения выходной последовательности предсказывающей очередные символы входной последовательности производим циклический сдвиг влево на число предсказываемых символов. Для рассматриваемого примера выходной код автоматной сети у = а2а2а2а3а1а1а4а2а2а2а4а1а1а4а5а2а2а2а1а3а5а1.

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

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

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

Для рассматриваемого примера слово X представляется слогами х1, ¿=1..3, со связями между слогами ху, у'=1..3, I ф у , которые имеют вид:

х1 = {а1а2а2а2а3а1а1}^- у1 = {а2а2а2а3а1а1а4}, при переходе от автомата 51 к автомату s2

Х12 = а4 ^ У12 = а2 ;

х2 = {а2а2а2а4а1а4 у2 = {а2а2а4а1а4а5}, при переходе от автомата s2 к автомату 53

Х23 = а5 ^ У23 = а2 >

х3 = {а2а2а2а1а3а1 у3 = {а2а2а1а3а1а5}, при переходе от автомата 53 к автомату 51

х31 = а5 ^ у31 = а1 .

При прогнозировании очередного символа, послоговое преобразование последовательности х1х12 х2 х23 х3 х31 приводит к последовательности у1 у12у2у23 у3у1.

При периодической входной последовательности начинающейся с любого символа в алфавитах XI, Х2 или Хз приводит к выходной последовательности с сооствествующего символа в алфавитах У1, У2,Уз.

Начальное состояние автомата преобразования слога в алфавитах Х1, Х2, Хз выполняется входными символами х0 с выдачей сигнала х\, где ¿-определяет соответствующий слог в алфавите

Х1, Х2, Хз, а у задает начальный символ в этом алфавите.

Граф автоматной сети для прогнозирования очередного символа входного алфавита при послоговом преобразовании х1 в у для данного примера приведен на рисунке 3.

ccjccj а^/а

сс J а,

Рис. 3. Пример графа автоматной сети Fig. 3. Example graph automaton network

1) Задание начального состояния переход из а0 в а1 под действием сигнала а0 с выдачей сигнала а1

2) а2 при переходе из а1 в а1 под действием а1

3) а2 при переходе из а1 в а2 под действием а2

4) а2 при переходе из а2 в а3 под действием а2

5) а3 при переходе из а3 в а3 под действием а2

6) а1 при переходе из а3 в а3 под действием а3

7) а1 при переходе из а3 в а2 под действием а1

8) а4 при переходе из а2 в а2 под действием а1

9) Переход из состояния а2 автомата ^ в состояние а4 автомата 52 под действием а4 с выдачей а2

Первый слог на входе автомата ^ - а1а2а2а2а3а1а1 состоит из алфавита символов от начального до последовательно повторяющейся группы, с максимальным числом одинаковых символов, определяющих число состояний автомата до символа ограничивающего последовательность упорядоченных символов.

Первый слог на выходе первого автомата 51:

1) а2 при переходе из а1 в а1 под действием а1;

2) а2 при переходе из а1 в а2 под действием а2;

3) а2 при переходе из а2 в а3 под действием а2;

4) а3 при переходе из а3 в а3 под действием а2;

5) а1 при переходе из а3 в а3 под действием а3;

6) а1 при переходе из а3 в а2 под действием а1;

7) а4 при переходе из а2 в а2 под действием а1;

Первый слог на выходе первого автомата ^ - а2а2а2а3а1а1а4.

При переходе от состояния а2 автомата 51 в состояние а4 автомата 52 с выходным символом а2 .

Второй слог на входе автомата 52:

1) а2 при переходе из а4 в а5 под действием а2;

2) а2 при переходе из а5 в а6 под действием а2;

3) а4 при переходе из а6 в а6 под действием а2;

4) а1 при переходе из а6 в а6 под действием а4;

5) а4 при переходе из а6 в а5 под действием а1;

6) а5 при переходе из а5 в а4 под действием а4; Входной слог автомата s2 - а2а2а2а4а1а4. Выходной слог автомата 52 - а2а2а4а1а4а5.

Выходной символ а2 при переходе из состояния а4 автомата 52 в состояние а7 автомата £3 под действием входного а5.

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

Входной слог автомата 53:

1) а2 при переходе из а7 в а8 под действием а2;

2) а2 при переходе из а8 в а9 под действием а2;

3) а1 при переходе из а9 в а9 под действием а2

4) а3 при переходе из а9 в а9 под действием а1;

5) а1 при переходе из а9 в а8 под действием а3;

6) а5 при переходе из а8 в а7 под действием а1; Входной слог автомата 53 - а2а2а2а1а3а1. Выходной слог автомата 53 - а2а2а1а3а1а5.

При переходе из состояния а7 автомата 53 в состояние а1 автомата 51 под действием а5 с выдачей а1 .

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

Список литературы References

Баранов С.И., Скляров В.А. 1986. Цифровые устройства на программируемых БИС с матричной структурой. М., Радио и связь, 269.

Baranov S.I., Sklyarov V.A. 1986. Digital programmable LSI devices on a matrix structure. M., Radio and Communications, 269.

Глушков В.М. 1962. Синтез цифровых автоматов. М., Государственное издательство физико-математической литературы, 476.

Glushkov V.M. 1962. The synthesis of digital automata. M., State Publishing House of Physical and Mathematical Literature, 476.

Корсунов Н.И., Чуев Е.В., Чуева А.И. 2014. Метод построения контролируемых цифровых автоматов. Научные ведомости БелГУ. Серия: Экономика. Информатика. 31(186): 90-95.

Korsunov N.I., Chuev E.V., Chueva A.I. 2014. The method of constructing digital controlled machines. Belgorod State University Scientific Bulletin. Series: Economics Information technologies. 31(186): 90-95.

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