Научная статья на тему 'Представление конечного автомата в матрично-предикатной форме'

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

CC BY
333
22
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
КОНЕЧНЫЙ АВТОМАТ / ГРАФ / МАТРИЦА / ПРЕДИКАТ / АЛГОРИТМ / МАТРИЧНО-ПРЕДИКАТНЫЙ МЕТОД / ИНЦИДЕНТОР ГРАФА / КОРТЕЖ / ДЕКАРТОВО ПРОИЗВЕДЕНИЕ / СЛОЖНЫЕ ПРОИЗВОДСТВЕННЫЙ СИСТЕМЫ / FINITE STATE MACHINE / GRAPH / MATRIX / PREDICATE / ALGORITHM / MATRIX-PREDICATE METHOD / GRAPH INCIDENT / TUPLE / CARTESIAN PRODUCT / COMPLEX PRODUCTION SYSTEMS

Аннотация научной статьи по математике, автор научной работы — Поляков В.С., Авдеюк О.А., Никулин Р.Н., Авдеюк Д.Н.

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

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

Representation of a finite state machine in matrix-predicate form

Finite state machines, being a mathematical concept, allow you to perceive information from the control object, process it and give signals to control the object. The disadvantages of the representation of complex production systems by a set of finite state machines include the complexity of carrying out logical and set-theoretic operations on them and the complexity of describing the parallelism that occurs in the operation of complex production systems. When specifying a finite state machine in the matrix-predicate form, due to the information redundancy, it is possible to avoid these difficulties. Matrix-predicate method allows you to uniquely set the finite state machine square matrix, which makes it possible to use the methods of the theory of matrices during the set-theoretic operations on them and it is possible to avoid isomorphism. The paper presents the developed methods of representation of a finite state machine using a multi-place predicate, which greatly simplifies its task.

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

Представление конечного автомата в матрично-предикатной форме

В.С. Поляков, О.А. Авдеюк, Р.Н. Никулин, Д.Н. Авдеюк Волгоградский государственный технический университет, Волгоград

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

Ключевые слова: конечный автомат, граф, матрица, предикат, алгоритм, матрично-предикатный метод, инцидентор графа, кортеж, декартово произведение, сложные производственный системы.

При моделировании сложных производственных систем (СПС) [1 - 4], которые характеризуются сложностью структуры, содержат ряд подсистем, каждая из которых может быть рассмотрена как самостоятельная система, часто используются элементы теории графов [5 - 12] и конечные автоматы (КА) [4-10]. Представление СПС совокупностью КА - это математическая абстракция, которая имеет конечное число входов и выходов, позволяет воспринимать информацию от объекта управления, перерабатывать её и выдавать сигналы для управления объектом [5 - 12]. Структуру КА лучше всего представить графически как это сделано на рис.1. Блок памяти автомата (БП) содержит внутри себя информацию о текущем состоянии памяти Б, которое совместно с входным сигналом X определяет выходную реакцию автомата У и следующее состояние £.

X Т

*

к

БП

5

Рис. 1 - Структура конечного автомата

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

К недостаткам представления СПС совокупностью КА следует отнести:

- сложность проведении теоретико-множественных операций над ними,

- появление изоморфизма при проведении этих операций,

- сложность описания параллелизма в работе КА.

Целью данной работы является возможность продемонстрировать задание КА матрично-предикатным методом и показать его преимущества перед классическим методом задания.

Известно, что в классическом варианте конечный автомат описывается как последовательность (кортеж) из шести элементов

F = {х,У,й,цй е й,ф,у}, где:

X = { XI} - входные сигналы; й = { } - внутренние состояния; У = {у j} - выходные сигналы;

q0 е Q - исходное состояние; ф( q, х) - функция переходов; q, х) - функция выходов.

Недостатком такого способа представления является громоздкость описания КА и сложность проведения теоретико - множественных операций над ними. Для устранения этих недостатков был разработан математический аппарат (матрично-предикатный метод), разработанный с использованием теории множеств, матричного исчисления, теории предикатов, теории графов, тензорного анализа и др. [4 - 6, 10].

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

1. Определяем тройки, характеризующие вершины графа внутренних состояний q1 х3 q1, q4 х1 q4.

2. Рассматриваемый КА имеет четыре состояния, два из которых не определяются входными сигналами, поэтому добавляем две «нулевые» тройки q2 0 q2, q3 0 q3, в результате получим тройки, характеризующие вершины графа внутренних состояний q1 х3 q1, q4 х1 q4, q2 0 q2, q3 0 q3.

3. Определяем тройки, характеризующие переходы графа внутренних состояний

^ х1 ^ , ^ х2 q4 , % х1 q1 , q2 х2 q3 , q2 х3 q4 , q3 х1 q1 , q3 х3 q2 , % х2 q4 , q4 х2 q1 , q4 х3 .

3. Строим матрицу инцидентора графа состояний

4. По матрице инцидентора строим граф внутренних состояний (рис.2).

41 хз #1 #1 х1 ^2 0 ^ х2 Ц_4

42 х1 ^ 42 0 42 42 х2 4з 42 хз 44

43 х1 ^ 4З хз 42 4З 0 4З 4З х2 44

£4 х2 ^ 0 44 хз 4З £4 х1 д4

(1)

Рис. 2. - Граф внутренних состояний КА Известно [6,8], что инцидентор графа можно задать тремя

двухместными предикатами, 70; 7 ; 7+;

в ( У,Х,70+ ") 7 0 - характеризует вершины графа, 7+ - характеризует дуги, исходящие из вершин графа, 7- - характеризует дуги, входящие в вершины графа, Определим эти множества для рассматриваемого примера:

7° ={ Хз, q2 0 , , #4 хх};

7 = {1 Х1 , Х2 , #2 Х1 , #2 Х2 , #2 Х3 , #3 Х1 , #3 Х3 , #3 Х2 , #4 Х2 , #4 Х3 } ; 7 = {2 Х1 , #4 Х2 , #1 Х1 , #3 Х2 , #4 Х3, #1 Х1 , #2 Х3 , #4 Х2, #1 Х2 , #3 Х3} .

Используя таблицу выходов (табл. 2), допишем в элементы множеств /0 и /+ соответствующие значения множества выходов У и получим изменённые множества и 7+ истинных значений двухместных

предикатов, у которых второй элемент представляет совокупность элементов двух множеств - входов X и выходов У .

= {#1 Х3У2 , #2 0 , #3 0, #4 Х1 у2 };

71=^1 Х1 у1, ql Х2, q2 Х1У2, q2 Х2 У1, q2 Х3 У1, qз Х1У1, qз Х3 У2, qз Х2 У2, q4 Х2 У1 , q4 Х3 У1}

В множество I- вместо элементов множества У введём элемент «безразличия», который не будет мешать проводить любые операции с двухместными предикатами I0; I~; I+ .

1 = { 42 х1 _ 44 х2 41 х1 _ 43 х2 44 х3 ^ х1 _ 42 х3 44 х2 4.1 х2 _, 43 х3 _/

Используя формулу [4]

= 4j 0уц)

получим трёхместный предикат, истинные значения которого определятся ql х3 У2 ql, ql х1 У1 q2 , ql х2 У1 q4, q2 х1 у2 ql, q2 0 _ q2, q2 х2 У1 qз, q2 х3 у1 q4, qз х1 , qз х3 У2#2 , qз 0 _ qз, qз х2у2 q4, q4 х2у1 ql, q4 х3у1 qз, q4 х1 у2 q4

Эти четверки определяют квадратную матрицу - оператор КА.

«4

41 х3 у2 4l х1 У1 42 0 4l х2 у1 q4

42 х1 у 2 0 _ 42 42 х2 у1 qз 42 х3 У1 44 х1 у1 4l 4з х3 у2 42 0 _ qз qз х2 У2 44

44 х2 у1 4l 0 44 х3 у1 4з 44 х1 у2 44

(2)

На основании этой матрицы строим граф КА Рассмотрим вопрос: может ли матрица (2) однозначно задавать конечный автомат? Задана матрица, элементы которой представляют собой истинные значения некоторого четырёхместного предиката.

К4

х3 у2 4l х1 у1 42 0 4l х2 у1 q4

х1 у2 4l 0 _ 42 х2 у1 42 х3 у1 q4

х1 у1 4l 4з х3 у2 42 0 _ qз qз х2 у2 44

44 х2 у1 4l 0 44 х3 у1 4з 44 х1 у2 44

(3)

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

КА

ненулевых элементов матрицы Ор - х1, х2, х3. Множество внутренних состояний определяется значениями первых членов всех ненулевых

КА

элементов матрицы Ор - q1, д2, д3. д4.

Рис.3. - Граф КА, заданный матрицей (3) Множество выходных сигналов определяется значениями четвёртых

КА

членов всех ненулевых элементов матрицы Ор - уь у2. Отображение множества внутренних состояний в себя - Г определяется следующим образом: для определения Гц берутся все ненулевые элементы каждой

КА

строки матрицы Ор и переписываются следующим образом: для первой строки #1 (хз/ у2), #2 у1), #4 (х^ у1)

#1 (Х1/ у 2 ), #3 (х 2/ У1), #4 (хз/ У1) #1 (х^ У2 ), #3 (х^ У1), #4 (Х3/ У1)

q4 (х^ у 2), ql (х 2! У1), qз (х 3/ У1) В итоге отображение множества внутренних состояний в себя - Г определится следующим образом

Fql ={ (1/у1 ),q4 (2/у1 ) (хз/у2)} Г?з ={ ql (х^у1), q4 (2/у2), q2 (з/у2)}

2 = { ql (х 1/у2), qз (2 /у 1), q4 (хз /у 1)} = { q4 (х^у2), ql (х2 /у 1), qз (х3/у 1)}

Таким образом,

X = {х1,х2,хз} - множество входных сигналов; й = { , ,#з ,#4} - множество внутренних состояний;

для второй строки для третьей строки для четвёртой строки

У = { у1, у2} - множество выходных сигналов;

Г - отображение множества Q в Q полностью определяют конечный автомат, заданный матрицей (3) и соответствует рассмотренному выше пример, представленный в [8] стр. 162. Рассмотренный пример показывает, что КА может быть однозначно задан квадратной матрицей оператора

ГЛ КА

ОР11 ОР21 ОР12 -ОР22 ■■ ■ ОРц ■■ ■ ОР2? - ■ ОР1ф ■ ОР2ф

ОРр? ОРф1 ОРф2 - •ОРф? - ■ОРфф

ОРф1 Орф2 ■ • • ОРфф

(4)

любой ненулевой элемент которой

°Р<РС = , *, ^/у*;н

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

Каждый ненулевой элемент состоит из следующих составляющих:

- первые три места определяют граф переходов конечного автомата,

- четвёртое определяет выполняемые КА команды,

- пятое определяет начальное «н» состояния КА.

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

Литература

1. Дубов В.М., Капустянская Т.И., Попов С.А., Шаров А.А. Проблематика сложных систем (концептуальные основы модельных представлений). Санкт-Петербург: Элмор, 2006. 184 с.

2. Самарский А. А., Михайлов А. П. Математическое моделирование: Идеи. Методы. Примеры. Москва: ФИЗМАТЛИТ, 2005. 320 с.

3. Hopcroft, John; Motwani, Rajeev; Ullman, Jeffrey. Introduction to Automata Theory, Languages, and Computation. Pearson Education, 2008. 521 р.

4. Kron G. Diakoptics; piecewise solution of large-scale systems. N.Y.: General Electric Co., 1957. 166 р.

5. Поляков В. С., Поляков С. В. Моделирование параллельно протекающих процессов блоками взаимодействующих компонентов. // Контроль. Диагностика, 2008. № 8. С.70-72.

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

6. Зыков А.А. Теория конечных графов. Новосибирск: Наука, 1968. 320 с.

7. Berge C., John Wiley. The theory of graphs and its applications. London Mtthuen, 1962. 230 р.

8. Мелихов А.Н. Ориентированные графы и конечные автоматы. Москва: Наука, 1971. 416с.

9. Diestel R., Graph Theory. Springer-Verlag Berlin Heidelberg, 2010. 410 p.

10. Bapat R.B. Graphs and Matrices. Hindustan Book Agency (India), 2010. 171 р.

11. Нефедьев А.И., Поляков С.В., Поляков В.С. Математическая модель подвески подвижной части электроизмерительного прибора // Инженерный вестник Дона, 2013. № 3. URL: ivdon.ru/magazine/archive/n3y2013/1788.

12. Поляков В.С., Поляков С. Вл., Авдеюк О.А., Наумов В.Ю., Павлова Е.С., Скворцов М.Г. Развитие графовых и матричных способов представления алгоритмов// Инженерный вестник Дона, 2017. № 2. URL: ivdon.ru/ru/magazine/archive/N2y2017/4145.

References

1. Dubov V.M., Kapustyanskaya T.I., Popov S.A., Sharov A.A. Problematika slozhnyh sistem (konceptual'nye osnovy model'nyh predstavlenij) [Problems of complex systems (conceptual bases of model representations)]. Sankt-Peterburg: Elmor, 2006. 184 p.

2. Samarskij A. A., Mihajlov A. P. Matematicheskoe modelirovanie: Idei. Metody. Primery [Mathematical modeling: Ideas. Methods. Examples]. Moskva: FIZMATLIT, 2005. 320 p.

3. Hopcroft, John; Motwani, Rajeev; Ullman, Jeffrey. Introduction to Automata Theory, Languages, and Computation. Pearson Education, 2008. 521 p.

4. Kron G. Diakoptics; piecewise solution of large-scale systems. N.Y.: General Electric Co., 1957. 166 p.

5. Polyakov V.S., Polyakov S. V. Kontrol'. Diagnostika, 2008. № 8. pp.70-72.

6. Zykov A.A. Teoriya konechnyh grafov [Finite graph theory]. Novosibirsk: Nauka, 1968. 320 p.

7. Berge C., John Wiley. The theory of graphs and its applications. London Mtthuen, 1962. 230 p.

8. Melihov A.N. Orientirovannye grafy i konechnye avtomaty [Oriented graphs and finite automata]. Moskva: Nauka, 1971. 416 p.

9. Diestel R., Graph Theory. Springer-Verlag Berlin Heidelberg, 2010. 410 p.

10. Bapat R.B. Graphs and Matrices. Hindustan Book Agency (India), 2010. 171 p.

11. Nefed'ev A.I., Polyakov S.V., Polyakov V.S. Inzenernyj vestnik Dona (Rus), 2013, № 3. URL: ivdon.ru/magazine/archive/n3y2013/1788.

12. Polyakov V.S., Polyakov S.Vl., Avdeyuk O.A., Naumov V.YU., Pavlova E.S., Skvorcov M.G. Inzenernyj vestnik Dona (Rus), 2017. № 2. URL: ivdon.ru/ru/magazine/archive/N2y2017/4145.

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