Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
2331.pdf
Скачиваний:
9
Добавлен:
15.11.2022
Размер:
1.42 Mб
Скачать

Ю.С. Акинина С.В. Тюрин

ЭЛЕМЕНТЫ ТЕОРИИ АВТОМАТОВ

Учебное пособие

 

 

 

(

,0)

 

 

 

 

 

(

,0)

 

 

Qa

(

,1)v( ,0)

Qb

( ,0)

Qe

 

 

 

 

 

 

 

 

( ,0)

 

 

 

 

 

 

( ,1)v(

,1)

 

 

 

(

,0)

 

( ,1)

(

,0)v( ,1)

 

 

 

 

 

 

 

 

 

 

Qd

(

,1)

Qc

 

(

,1)

 

 

 

 

 

 

(

,1)

 

 

 

 

 

Воронеж 2017

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФГБОУ ВО «Воронежский государственный технический университет»

Ю.С. Акинина С.В. Тюрин

ЭЛЕМЕНТЫ ТЕОРИИ АВТОМАТОВ

Утверждено учебно-методическим советом университета в качестве учебного пособия

Воронеж 2017

УДК 681.518.52

ББК 3815

Акинина Ю.С. Элементы теории автоматов: учеб. пособие / Ю.С. Акинина, С.В. Тюрин. Воронеж: ФГБОУ ВО «Воронежский государственный технический университет», 2017.

184с.

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

Издание соответствует требованиям Федерального государственного образовательного стандарта высшего образования по направлению 09.03.01 «Информатика и вычислительная техника» (профиль «Вычислительные машины, комплексы, системы и сети»), дисциплине «Теория автоматов».

Ил. 97. Табл. 36. Библиогр.: 30 назв.

Научный редактор д-р техн. наук, проф. С.Л. Подвальный

Рецензенты: кафедра вычислительной математики и прикладных информационных

технологий Воронежского государственного университета (зав. кафедрой д-р техн. наук, проф. Т.М. Леденёва); д-р техн. наук, проф. В.М. Питолин

©Акинина Ю.С., Тюрин С.В., 2017

©ФГБОУ ВО «Воронежский государственный технический университет», 2017

ВВЕДЕНИЕ

Профессиональная подготовка бакалавров по направлению подготовки 09.03.01 «Информатика и вычислительная техника» (профиль "Вычислительные машины, комплексы, системы и сети") ориентирована на следующие виды трудовой деятельности:

-разработка специализированных программных систем, реализующих обработку данных в различных областях;

-проектирование, разработка и эксплуатация инфор- мационно-поисковых систем различного назначения;

-эксплуатация любых типов современных компьюте-

ров;

-разработка узлов и блоков микроконтроллеров и компьютеров общего назначения;

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

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

итеория алгоритмов". Содержание самой "Теории автоматов" наиболее тесно связано с такими дисциплинами, как "Схемотехника", "Микропроцессорные системы", "Организация ЭВМ

исистем".

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

В данном пособии предпринята попытка взаимоувязано изложить лишь элементы теории автоматов, необходимые и

3

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

4

1.СТАНОВЛЕНИЕ ТЕОРИИ АВТОМАТОВ

ИЕЕ ОСНОВНЫЕ ЗАДАЧИ

1.1.Взаимосвязь теории автоматов и других научно-технических направлений

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

Теория автоматов возникла в середине ХХ века в связи с изучением конечных автоматов.

Понятие конечного автомата сформировалось в свою очередь с попытками описать на математическом языке функционирование нервных систем, универсальных вычислительных машин и других реальных и гипотетических дискретных объектов и процессов. Такие попытки были впервые предприняты зарубежными учеными У. Мак-Каллоком, У. Питсом (1943 г.), С.К. Клини (1951 г.), А. Берксом и Райтом (1954 г.) и др.

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

5

Для формализации таких законов преобразования необходимо

идостаточно задать всего две функции – функцию переходов

ифункцию выходов, которые вместе отображают пары "состояние - входная буква" в следующее состояние автомата и его выходную букву. Таким образом, в каждый из моментов дискретного времени автомат, находящийся в определенном состоянии, воспринимает входной сигнал – букву входного алфавита, выдает выходной сигнал – букву выходного алфавита, определяемую функцией выходов, и переходит в новое (следующее) состояние, определяемое функцией переходов.

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

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

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

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

Существуют также автоматы, принадлежащие одновременно разным группам, например, нечеткие автоматы.

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

6

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

1.2. Подходы к определению конечного автомата

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

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

Существует две основные трактовки понятия автоматного времени. Если автомат рассматривают как модель алгоритма переработки входного алфавита в выходной, то говорят о "шаге алгоритма" или "шаге автоматного преобразования", не сопоставляя ему меру времени. Если автомат рассматрива-

7

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

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

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

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

ивнутренних состояний автомата.

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

8

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

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

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

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

Конечный автомат, как разновидность сложной системы, имеет, так называемое, иерархическое строение. Это означает [3], что после того, как будут выявлены элементы системы и установлена структура их отношений (т.е. схема соединений), можно (или нужно) переходить к рассмотрению каждого из найденных элементов в отдельности для определения состава и отношений "микроэлементов" внутри этих элементов. Чтобы в дальнейшем избежать путаницы и неоднозначности, целесообразно условиться, что первичные элементы и схему их соединения будем называть элементами первого уровня и структурой первого уровня. Вторичные элементы (т.е. элементы элементов) и схему их соединения - элементами второго уровня и структурой второго уровня и т.д. При этом

9

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]