Главная страница
Навигация по странице:

  • 1. Цель и задачи курсовой работы

  • 1. АБСТРАКТНЫЙ СИНТЕЗ КОНЕЧНОГО АВТОМАТА 1.1 Формирование алфавитного оператора

  • 1.2 Приведение оператора к автоматному виду

  • 1.3 Построение графа переходов абстрактного автомата

  • 1.4 Минимизация абстрактного автомата

  • 2. ПРАКТИЧЕСКАЯ ЧАСТЬ 1.1.1 Преобразование автомата Мили в автомат Мура

  • 1.1.2 Преобразование автомата Мура в автомат Мили

  • СПИСОК ЛИТЕРАТУРЫ

  • Курсовая работа по дисциплине теория автоматов


    Скачать 114.17 Kb.
    НазваниеКурсовая работа по дисциплине теория автоматов
    Дата07.05.2023
    Размер114.17 Kb.
    Формат файлаdocx
    Имя файлаkursovaya-avtomaty.docx
    ТипКурсовая
    #1113024


    КУРСОВАЯ РАБОТА

    ПО ДИСЦИПЛИНЕ ТЕОРИЯ АВТОМАТОВ

    ВВЕДЕНИЕ

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

    Можно выделить два основных аспекта работы автомата.

    1. Автоматы-распознаватели, которые распознают входные слова, т.е. отвечают на вопрос, принадлежит ли поданное на вход слово данному множеству.

    2. Автоматы-преобразователи, которые преобразуют входные слова в выходные, т.е. реализуют автоматные отображения.

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

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

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

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

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

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

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

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

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

    1. Цель и задачи курсовой работы

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

    Выполнить синтез абстрактного автомата Мура по алгоритму в соответствии с вариантом и перевести автомат Мура в автомат Мили.

    Вариант 1



    1. АБСТРАКТНЫЙ СИНТЕЗ КОНЕЧНОГО АВТОМАТА


    1.1 Формирование алфавитного оператора
    Для определения параметров задания необходимо ввести первичную информацию:

    - порядковый номер в журнале;

    - год поступления;

    - номер группы;

    Для данного задания это соответственно:

    21, 08, 02.

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

     Y1= 0,210802

    Вторичная информация Y ,Y3  ,Y4 получаются путем возведения  1 в степени 2, 3, 4 и удалением в дроби всех нулей между запятой и первой значимой цифрой.

    Y2 = 0,444374

    Y3 = 0,93675

     Y4 = 0,19747

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

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

    Y1 = 0011010111110111

     Y2 = 0111000111000010

    Y3 = 1110111111001110

    Y4 = 0011001010001101

    Полученные значения записываются в столбцах: первые 8 значений в левой части, вторые 8 – в правой части. Алфавитный оператор соответствия представлен в таблице 1.
    Таблица 1. Алфавитный оператор соответствия

    Входные сигналы

    Выходные сигналы

    0010

    1111

    0110

    1110

    1111

    1000

    1101

    1000

    0010

    0011

    1010

    1011

    0011

    1110

    1110

    1001


    1.2 Приведение оператора к автоматному виду
    Для того чтобы оператор преобразовался к автоматному виду, необходимо выполнение трех условий:

    1. Любым двум одинаковым начальным отрезкам входных слов должны соответствовать одинаковые начальные отрезки выходных слов;

    2. Длина входного слова должна равняться длине выходного слова;

    3. Последний символ должен возвращать автомат в начальное состояние.

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

    Таким образом, автоматный вид оператора примет, следующий вид:
    Таблица 2. Автоматный вид

    Входные сигналы

    Выходные сигналы

    0010

    1111

    0110

    1110

    1111

    1000

    1101

    1000

    00100000

    11110011

    1010

    1011

    0011

    1110

    1110

    1001


    1.3 Построение графа переходов абстрактного автомата
    Построим по таблице 2 граф переходов автомата. При этом предполагается, что последний символ каждого входного слова должен переводит автомат в начальное состояние.

    Граф переходов абстрактного автомата представлен в приложении 1.
    1.4 Минимизация абстрактного автомата
    По графу переходов построим таблицу переходов-выходов заданного автомата (таблица 3).
    Таблица 3. Таблица переходов-выходов автомата

    a(t-1)

    0

    1

    a0

    a1/1

    a2/1

    a1

    a3/1

    a4/1

    a2

    a10/0

    a11/0

    a3

    -

    a5/1

    a4

    -

    a6/1

    a5

    a8/1

    a9/0

    a6

    a8/0

    -

    a7

    a0/-

    a0/-

    a8

    a0/-

    a0/-

    a9

    a0/-

    a0/-

    a10

    -

    a12/1

    a11

    a14/0

    a15/0

    a12

    a13/1

    -

    a13

    a0/-

    a0/-

    a14

    -

    a16/0

    a15

    a17/1

    a18/0

    a16

    a0/-

    a0/-

    a17

    a0/-

    a0/-

    a18

    a0/-

    a0/-


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

    0 класс эквивалентности:

    a0, a1

    b0

    a2, a11

    b1

    a14

    b2

    a3, a4, a10

    b3

    a5, a15

    b4

    a6

    b5

    a7, a8, a9, a13, a16, a17, a18

    b6

    a12

    b7


    1 класс эквивалентности:

    a0

    c0

    a1

    c1

    a2

    c2

    a3

    c3

    a4

    c4

    a5, a15

    c5

    a6

    c6

    a10

    c7

    a11

    c8

    a12

    c9

    a14

    c10

    a7, a8, a9, a13, a16, a17, a18

    c11


    2 класс эквивалентности:

    a0

    d0

    a1

    d1

    a2

    d2

    a3

    d3

    a4

    d4

    a5, a15

    d5

    a6

    d6

    a10

    d7

    a11

    d8

    a12

    d9

    a14

    d10

    a7, a8, a9, a13, a16, a17, a18

    d11


    Из разбиения видно, что классы 1 и 2 совпадают, значит, продолжать не имеет смысла.

    Таблица переходов-выходов минимизированного автомата представлена в таблице 4:

    Таблица 4. Таблица переходов-выходов минимизированного автомата

    d(t-1)

    0

    1

    d0

    d1/1

    d2/1

    d1

    d3/1

    d4/1

    d2

    d7/0

    d8/0

    d3

    -

    d5/1

    d4

    -

    d6/1

    d5

    d11/1

    d11/0

    d6

    d11/0

    -

    d7

    -

    d9/1

    d8

    d10/0

    d5/0

    d9

    d11/1

    -

    d10

    -

    d11/0

    d11

    d0/-

    d0/-

    2. ПРАКТИЧЕСКАЯ ЧАСТЬ

    1.1.1 Преобразование автомата Мили в автомат Мура
    Разделим состояния автомата Мили в соответствии с выходными сигналами:

    𝑎1: 𝐴1 = {(𝑎1,𝑤2) = 𝑏2,𝑎2:𝐴2 = {(𝑎2,𝑤2) = 𝑏4,𝑎3: 𝐴3 = {(𝑎3,𝑤2) = 𝑏5,

    𝑎4:𝐴4 = {(𝑎4,𝑤2) = 𝑏6,𝑎5: 𝐴5 ={(𝑎5,𝑤2) = 𝑏8.

    Получается следующий автомат Мура рис. 1:



    Рисунок 1 – полученный автомат МУРА
    Проверим все переходы в автомате Мура:
    𝜉 𝑧2 𝑧2 𝑧1 𝑧1 𝑧2 𝑧2 𝑧1 𝑧2 𝑧1 𝑧1 𝑧2 𝑧1 𝑧1

    ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

    𝑏1 𝑏 2 𝑏2 𝑏3 𝑏3 𝑏 7 𝑏 4 𝑏3 𝑏7 𝑏 5 𝑏 6 𝑏5 𝑏 6 𝜔 𝑤2 𝑤2 𝑤1 𝑤1 𝑤1 𝑤2 𝑤1 𝑤1 𝑤2 𝑤2 𝑤2 𝑤2

    𝑧1 𝑧1 𝑧1 𝑧2 𝑧2 𝑧1 𝑧2 𝑧1

    ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

    𝑏 → 𝑏 → 𝑏 → 𝑏 → 𝑏 𝑏 → 𝑏 → 𝑏 → 𝑏 .

    ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

    𝑤2 𝑤2 𝑤2 𝑤2 𝑤2 𝑤1 𝑤2 𝑤1 𝑤1

    Проверим исходный автомат на том же входном слове:

    𝜉 𝑧2 𝑧2 𝑧1 𝑧1 𝑧2 𝑧2 𝑧1 𝑧2 𝑧1 𝑧1 𝑧2 𝑧1 𝑧1

    𝑎 → 𝑎 𝑎 → 𝑎 𝑎 → 𝑎 → 𝑎 → 𝑎 → 𝑎 → 𝑎 𝑎 → 𝑎 → 𝑎

    ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

    𝜔 𝑤2 𝑤2 𝑤1 𝑤1 𝑤1 𝑤2 𝑤1 𝑤1 𝑤2 𝑤2 𝑤2 𝑤2 𝑤2 𝑧1 𝑧1 𝑧1 𝑧2 𝑧2 𝑧1 𝑧2 𝑧1

    𝑎 5 𝑎 3 𝑎 4 𝑎 5 𝑎 2 𝑎 5 𝑎 3 𝑎1 𝑎2. 𝑤2 𝑤2 𝑤2 𝑤2 𝑤1 𝑤2 𝑤1 𝑤1

    Выходные слова совпадают, значит автоматы эквивалентны.

    1.1.2 Преобразование автомата Мура в автомат Мили

    Перенесём выходные сигналы из состояний на входящие дуги.


    Проверим все переходы в автомате Мили:

    𝜉 𝑧2 𝑧2 𝑧1 𝑧1 𝑧2 𝑧2 𝑧1 𝑧2 𝑧1 𝑧1 𝑧2 𝑧1 𝑧1

    𝑐 → 𝑐 → 𝑐 → 𝑐 → 𝑐 → 𝑐 → 𝑐 → 𝑐 → 𝑐 → 𝑐 → 𝑐 → 𝑐 → 𝑐

    ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

    𝜔 𝑤2 𝑤2 𝑤1 𝑤1 𝑤1 𝑤2 𝑤1 𝑤1 𝑤2 𝑤2 𝑤2 𝑤2 𝑤2 𝑧1 𝑧1 𝑧1 𝑧2 𝑧2 𝑧1 𝑧2 𝑧1

    𝑐 8 𝑐 5 𝑐 6 𝑐 8 𝑐 4 𝑐 7 𝑐 5 𝑐 1 𝑐3. 𝑤2 𝑤2 𝑤2 𝑤2 𝑤1 𝑤2 𝑤1 𝑤1

    Выходное слово опять совпадает с выходным словом исходного автомата, а следовательно автоматы эквивалентны.

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

    ЗАКЛЮЧЕНИЕ
    В процессе выполнения работы мной были закреплены знания о синтезе конечных автоматов и получена практика в построении комбинационных схем.

    В данной работе мной было выполнено проектирование конечного автомата по алфавитному отображению с использованием канонического метода структурного синтеза автоматов. Построены граф переходов абстрактного автомата с 17 состояниями и таблицы переходов-выходов. Минимизация состояний автомата выполнена путем разбиения на группы эквивалентных между собой состояний. После чего был построен минимальный граф Мили с 11 состояниями. Выполнен синтез абстрактного автомата Мура по алгоритму в соответствии с вариантом и переведен автомат Мура в автомат Мили.
    СПИСОК ЛИТЕРАТУРЫ

    1. Баранов С.И. Синтез микропрограммных автоматов (граф-схемы и автоматы). – 2-е изд., перераб. и доп. – Л.: Энергия, 1979. – 232 с., ил.

    2. Дегтярев В.М., Ерош И.Л., Михайлов В.В. Проектирование цифровых автоматов.-Л.:ЛИАП, 1974г.

    3. Козин И.В., Иванов Н.М., Лупал А.М. Проектирование управляющих автоматов по алфавитному отображению. Учебное пособие по курсовому проектированию/ЛИАП. – Л., 1991. – 82 с., ил.

    4. Лупал А.М. Теория автоматов. Учебное пособие/СПбГУАП. – СПб., 2000. – 120 с., ил.

    5. Лысиков Б.Г. Арифметические и логические основы цифровых автоматов. Учебник для вузов по спец. «Электронные вычислительные машины». – 2-е изд., перераб. и доп. – Мн.: Выш. школа, 1980. – 336 с., ил.

    6. Конспект лекций по дисциплине «Теория автоматов», преподаватель Глебов Е.А., 2005-2006 уч.г.


    написать администратору сайта