Дискретные модели Конечные автоматы
Особенности дискретно-детерминированных моделей, используемых при формализации процесса функционирования систем, рассмотрим на примере применения в качестве математического аппарата теории автоматов. На основе этой теории система представляется в виде автомата, перерабатывающего дискретную информацию и меняющего свои внутренние состояния лишь в допустимые моменты времени[11].
Автомат можно представить как некоторое устройство, на которое подаются входные сигналы и снимаются выходные и которое может иметь некоторые внутренние состояния. Конечным автоматомназывается автомат, у которого множество внутренних состояний и входных сигналов (а следовательно, и множество выходных сигналов) являются конечными множествами.
Абстрактно конечный автомат (англ. finiteautomata) можно представить как математическую схему,характеризующуюся шестью элементами: конечным множествомХвходных сигналов (входным алфавитом); конечным множествомYвыходных сигналов (выходным алфавитом); конечным множеством Z внутренних состояний (внутренним алфавитом или алфавитом состояний); начальным состояниемz0, z0Z ; функцией переходов(z,x); функцией выходов(z,x). Автомат F=<Z, X, Y, , z0>функционирует в дискретном времени, моментами которого являются такты, т. е. примыкающие друг к другу равные интервалы времени, каждому из которых соответствуют постоянные значения входного и выходного сигналов и внутренние состояния. Обозначим состояние, а также входной и выходной сигналы, соответствующиеt-мутакту приt=0, 1, 2,…,черезz (t), x(t), y(t).При этом, по условию, z(0)=z0, a z(t)Z, x(t)X, y(t)Y.
Абстрактный конечный автомат имеет один входной и один выходной каналы. В каждый момент t=0, 1, 2,...дискретного времени автомат находится в определенном состоянииz(t) из множестваZсостояний автомата, причем в начальный момент времениt=0он всегда находится в начальном состоянииz(0)=z0. В моментt,будучи в состоянииz(t),автомат способен воспринимать на входном канале сигнал x(t)Xи выдавать на выходном канале сигнал y(t)=[z(t),x(t)], y(t)Y, переходя в состояниеz(t+1)=[z(t),x(t)], z(t)Z. Абстрактный конечный автомат реализует некоторое отображение множества слов входного алфавитаХна множество слов выходного алфавитаY. Другими словами, если на вход конечного автомата, установленного в начальное состояниеz0, подавать в некоторой последовательности буквы входного алфавитаx(0), x(1), x(2),…,т. е. входное слово, то на выходе автомата будут последовательно появляться буквы выходного алфавита y(0), y(1), y(2),…, образуя выходное слово.
Таким образом, работа конечного автомата происходит по следующей схеме: в каждом t-мтакте на вход автомата, находящегося в состоянииz(t),подается некоторый сигналх (t),на который он реагирует переходом в(t+1)-мтакте в новое состояниеz(t+1)и выдачей некоторого выходного сигнала. Сказанное выше можно описать следующими уравнениями: для конечного автомата первого рода, называемого такжеавтоматом Мили,
z(t+1)=[z(t),x(t)], t=0,1,2,..,
y(t)=[z(t),x(t)], t=0,1,2,…;
для конечного автомата второго рода
z(t+1)=[z(t),x(t)], t=0,1,2,..,
y(t)=[z(t),x(t-1)], t=1,2,3,…
Автомат второго рода, для которого
y(t)=[z(t)], t=0,1,2,…,
то есть функция выходов не зависит от входной переменной х (t), называетсяавтоматом Мура.
По числу состояний различают конечные автоматы с памятью и без памяти. Автоматы с памятьюимеют более одного состояния, аавтоматыбез памяти(комбинационные или логические схемы) обладают лишь одним состоянием. При этом работа комбинационной схемы заключается в том, что она ставит в соответствие каждому входному сигналух(t)определенный выходной сигналу(t), т. е. реализует логическую функцию вида
y(t)=[x(t)], t=0,1,2,….
Эта функция называется булевой, если алфавиты ХиY, которым принадлежат значения сигналовxиy,состоят из двух букв.
По характеру отсчета дискретного времени конечные автоматы делятся на синхронные и асинхронные. В синхронных автоматах моменты времени, в которые автомат «считывает» входные сигналы, определяются принудительно синхронизирующими сигналами. После очередного синхронизирующего сигнала с учетом «считанного» происходит переход в новое состояние и выдача сигнала на выходе, после чего автомат может воспринимать следующее значение входного сигнала. Таким образом, реакция автомата на каждое значение входного сигнала заканчивается за один такт, длительность которого определяется интервалом между соседними синхронизирующими сигналами.
Асинхронныйавтомат считывает входной сигнал непрерывно, и поэтому, реагируя на достаточно длинный входной сигнал постоянной величиных(t)=const,он может несколько раз изменять состояние, выдавая соответствующее число выходных сигналов, пока не перейдет в устойчивое, которое уже не может быть изменено данным входным сигналом.
Чтобы задать конечный автомат, необходимо описать все элементы F=<Z, X, Y, , z0 >, т. е. входной, внутренний и выходной алфавиты, а также функции переходов и выходов. Причем среди множества состояний необходимо выделить состояниеz0, в котором автомат находился в момент времениt=0. Существуют несколько способов описания работы конечных автоматов, но наиболее часто используются табличный, графический и матричный.
Простейший табличный способзадания конечного автомата основан на использовании таблиц переходов и выходов, строки которых соответствуют входным сигналам автомата, а столбцы - его состояниям. При этом обычно первый слева столбец соответствует начальному состояниюz0. На пересеченииi-йстроки иk-roстолбца таблицы переходов помещается соответствующее значение(zk,xi)функции переходов, а в таблице выходов - соответствующее значение(zk,xi) функции выходов. Для конечного автомата Мура обе таблицы можно совместить, получив так называемую отмеченную таблицу переходов, в которой над каждым состояниемzk автомата, обозначающим столбец таблицы, стоит соответствующий этому состоянию выходной сигнал(zk).Описание конечного автомата Мили таблицами переходови выходов иллюстрирует табл.5.1, а описание автомата Мура таблицей переходов - табл. 5.2.
Таблица 5.1. Таблицы переходов и выходов конечного автомата Мили
|
| zk |
|
|
xi | z0 | z1 | … | zK |
|
| Переходы |
|
|
x1 | ( z0, x1) | ( z1, x1) | … | ( zK, x1) |
x2 | ( z0, x2) | ( z1, x2) | … | ( zK, x2) |
… | … | … | … | … |
xi | ( z0, xI) | ( z1, xI) | … | ( zK, xI) |
|
| Выходы |
|
|
x1 | ( z0, x1) | ( z1, x1) | … | ( zK, x1) |
x2 | ( z0, x2) | ( z1, x2) | … | ( zK, x2) |
… | … | … | … | … |
xi | ( z0, xI) | ( z1, xI) | … | ( zK, xI) |
Таблица 5.2. Таблица переходов конечного автомата Мура
|
| ( zk) |
|
|
xi | ( z0) | ( z1) | … | ( zK) |
| Z0 | z1 | … | zK |
x1 | ( z0, x1) | ( z1, x1) | … | ( zK, x1) |
x2 | ( z0, x2) | ( z1, x2) | … | ( zK, x2) |
… | … | … | … | … |
xi | ( z0, xI) | ( z1, xI) | … | ( zK, xI) |
Пример 5.1. Примеры табличного способа задания конечного автомата МилиF1 с тремя состояниями, двумя входными и двумя выходными сигналами приведены в табл. 5.3, а для конечного автомата МураF2 - в табл. 5.4.
Таблица 5.3. Табличное описание автомата Мили
|
| zk |
|
xi | z0 | z1 | z2 |
|
| Переходы |
|
X1 | z2 | z0 | z0 |
X2 | z0 | z2 | z1 |
|
| Выходы |
|
X1 | y1 | y1 | y2 |
X2 | y1 | y2 | y1 |
Таблица 5.4. Табличное описание автомата Мура
|
|
| y |
|
|
xi | y1 | y1 | y3 | y2 | y3 |
| z0 | z1 | z2 | z3 | z4 |
x1 | z1 | z4 | z4 | z2 | z2 |
x2 | z3 | z1 | z2 | z0 | z0 |
При другом способе задания конечного автомата используется понятие направленного графа. Граф автоматапредставляет собой набор вершин, соответствующих различным состояниям автомата и соединяющих вершины дуг графа, соответствующих тем или иным переходам автомата. Если входной сигналxkвызывает переход из состоянияziв состояниеzj, то на графе автомата дуга, соединяющая вершинуziс вершинойzj, обозначаетсяxk. Для того чтобы задать функцию выходов, дуги графа необходимо отметить соответствующими выходными сигналами. Для автоматов Мили эта разметка производится так: если входной сигналxkдействует на состояниеzi,то, согласно сказанному, получается дуга, исходящая изzi и помеченнаяxk;эту дугу дополнительно отмечают выходным сигналомy(t)=(zj,xk).Для автомата Мура аналогичная разметка графа такова: если входной сигналxk, действуя на некоторое состояние автомата, вызывает переход в состояниеzj, то дугу, направленную вzj, помечаютxk, а вершинуzjдополнительно отмечают выходным сигналомy(t)=(zj).
Заданные ранее таблицами конечные автоматы Мили F1и МураF2 приведены на рис. 5.1.
При решении задач моделирования систем часто более удобной формой является матричное задание конечного автомата. При этом матрица соединений автомата есть квадратная матрица, строки которой соответствуют исходным состояниям, а столбцы - состояниям перехода. Элементcij=xk/ys, стоящий на пересеченииi-йстроки иj-roстолбца, в случае автомата Мили соответствует входному сигналуxk, вызывающему переход из состоянияziв состояниеzj, и выходному сигналуys, выдаваемому при этом переходе. Для автомата МилиF1, рассмотренного выше, матрица соединений имеет вид
.
Если переход из состояния ziв состояниеzj происходит под действием нескольких сигналов, элемент матрицыcijпредставляет собой множество пар «вход-выход» для этого перехода, соединенных знаком дизъюнкции.
Для автомата Мура элемент cijравен множеству входных сигналов на переходе(zi,zj), а выход описывается вектором выходов
,
i-якомпонента которого - выходной сигнал, отвечающий состояниюzi.
Пример 5.2.Для рассмотренного выше автомата МураF2запишем матрицу соединений и вектор выходов:
Для детерминированных автоматов выполняется условие однозначности переходов: автомат, находящийся в некотором состоянии, под действием любого входного сигнала не может перейти более чем в одно состояние. Применительно к графическому способу задания конечного автомата это означает, что в графе автомата из любой вершины не могут выходить два и более ребра, отмеченные одним и тем же входным сигналом. Аналогично этому в матрице соединений автомата Св каждой строке любой входной сигнал не должен встречаться более одного раза.
Рассмотрим вид таблицы переходов и графа асинхронногоконечного автомата. Для конечного автомата состояниеzk называетсяустойчивым, если для любого входаxiX, для которого(zk,xi)= zk, имеет место(zk,xi)=yk. Таким образом, конечный автомат называетсяасинхронным,если каждое его состояниеziZустойчиво.
Необходимо отметить, что вообще на практике автоматы всегда являются асинхронными, а устойчивость их состояний обеспечивается тем или иным способом, например введением сигналов синхронизации. Однако на уровне абстрактной теории, когда конечный автомат выступает в виде математической схемы для формализации конкретных объектов без учета ряда второстепенных особенностей, часто удобно оказывается оперировать с синхронными конечными автоматами.
Пример 5.3.Рассмотрим асинхронный автомат Мура, который описан табл. 5.5 и приведен на рис. 5.2. Очевидно, что если в таблице переходов асинхронного автомата некоторое состояниеzkстоит на пересечении строкиxi и столбцаzs (sk),то это состояниеzkобязательно должно встретиться в этой же строке в столбцеzk.В графе асинхронного автомата, если в некоторое состояние имеются переходы из других состояний под действием каких-то сигналов, то в вершинеzkдолжна быть петля, отмеченная символами тех же входных сигналов. Анализ табл. 5.3 и 5.4 или рис. 5.1 показывает, что представленные там автоматыF1иF2являются синхронными.
Понятие конечного автомата является математической абстракцией, удобной для описания широкого класса процессов функционирования реальных объектов в автоматизированных системах управления. В качестве таких объектов, в первую очередь, следует назвать элементы и узлы ЭВМ, устройства контроля, регулирования и управления, системы временной и пространственной коммутации в технике обмена информацией и т. д. Для всех перечисленных объектов характерно наличие дискретных состояний и дискретный характер работы во времени, поэтому их описание с помощью рассмотренных схем является эффективным.
- Оглавление
- 1. Модели и системы 9
- 2. Технология моделирования 20
- 3. Непрерывные детерминированные модели 36
- 4. Модели массового обслуживания 66
- 5. Дискретные модели 98
- Предисловие
- Модели и системы
- Физические и математические модели
- Моделирование: системный подход
- Общая модель функционирования
- Технология моделирования Построение моделей
- Содержательное описание системы
- Концептуальное моделирование
- Построение математических моделей
- Истинность моделей
- Непрерывные детерминированные модели Непрерывные модели динамических систем
- Задачи анализа непрерывных систем
- Основные определения
- Построение фазовых портретов
- Устойчивость точек равновесия
- Линейные системы
- Стационарное решение
- Общее решение
- Двумерные канонические системы
- Простые канонические системы
- Фазовые портреты простых канонических систем
- Фазовый портрет простой линейной системы
- Качественная эквивалентность
- Непростые канонические системы
- Нелинейные системы Глобальные и локальные фазовые портреты
- Линеаризация нелинейных систем
- Предельные циклы
- Модели массового обслуживания Основные понятия. Терминология
- Потоки событий
- Пуассоновский поток событий
- Распределение событий на малом интервале времени
- Распределение событий в пуассоновском потоке
- Распределение интервалов между событиями
- Законы обслуживания
- Марковские смо
- Марковские цепи
- Матрица перехода для пуассоновского потока заявок
- Одноканальная смо с ожиданием
- Многоканальная смо с ожиданием
- Смо с отказами
- Многоканальные смо с взаимопомощью
- Замкнутые системы
- Дискретные модели Конечные автоматы
- Вероятностные автоматы
- Сети Петри
- Ординарные сети Петри
- Библиографический список