Особенности дискретно-детерминированного подхода на этапе формализации процесса функционирования систем рассмотрим на примере использования в качестве математического аппарата теории автоматов. Теория автоматов — это раздел теоретической кибернетики, в котором изучаются математические модели — автоматы. На основе этой теории система представляется в виде автомата, перерабатывающего дискретную информацию и меняющего свои внутренние состояния лишь в допустимые моменты времени. Понятие «автомат» варьируется в зависимости от характера конкретно изучаемых систем, от принятого уровня абстракции и целесообразной степени общности.
Основные соотношения. Автомат можно представить как некоторое устройство (черный ящик), на которое подаются входные сигналы и снимаются выходные, и которое может иметь некоторые внутренние состояния. Конечным автоматом называется автомат, у которого множество внутренних состояний и входных сигналов (а следовательно, и множество выходных сигналов) являются конечными множествами.
Абстрактно конечный автомат (англ. finite automaca) можно представить как математическую схему (F-схему), характеризующуюся шестью элементами:
ü конечным множеством X входных сигналов (входным алфавитом);
ü конечным множеством У выходных сигналов (выходным алфавитом);
ü конечным множеством Z внутренних состояний (внутренним алфавитом или алфавитом состояний);
ü начальным состоянием z0, ;
ü функцией переходов ;
ü функцией выходов .
Автомат, задаваемый F-схемой: , — функционирует в дискретном автоматном времени, моментами которого являются такты, т.е. примыкающие друг к другу равные интервалы времени, каждому из которых соответствуют постоянные значения входного и выходного сигналов и внутренние состояния. Обозначим состояние, а также входной и выходной сигналы, соответствующие t-му такту при t = 0, 1, 2, …, через z(t), x(t), y(t). При этом по условию, z(0) = z0, а
Абстрактный конечный автомат имеет один входной и один выходной каналы. В каждый момент t = 0, 1, 2, … дискретного времени F-автомат находится в определенном состоянии z(t) из множества Z состояний автомата, причем в начальный момент времени t = 0 он всегда находится в начальном состоянии z(0) = z0. В момент t, будучи в состоянии z(t), автомат способен воспринять на входном канале сигнал и выдать на выходном канале сигнал переходя в состояние Абстрактный конечный автомат реализует некоторое отображение множества слов входного алфавита Х на множество слов выходного алфавита У. Другими словами, если на вход конечного автомата, установленного в начальное состояние z0, подавать в некоторой последовательности буквы входного алфавита х(0), х(1), х(2), …, т.e. входное слово, то на выходе автомата будут последовательно появляться буквы выходного алфавита у(0), y(1), y(2), …, образуя выходное слово.
Таким образом, paбoтa конечного автомата происходит по следующей схеме: в каждом t-м такте на вход автомата, находящего в состоянии z(t), подается некоторый сигнал х(t), на который он реагирует переходом в (t+1)-м такте в новое состояние z(t+1)
и выдачей некоторого выходного сигнала. Сказанное выше можно описать следующими уравнениями: для F-автомата первого рода, называемого также автоматом Мили,
t = 0, 1, 2, … ; (3.12)
t = 0, 1, 2, …; (3.13)
для F-автомата второго рода
t = 0, 1, 2, … ; (3.14)
t = 1, 2, 3, … (3.15)
Автомат второго рода, для которого
t = 0, 1, 2, … , (3.16)
т. е. функция выходов не зависит от входной переменной х(t), называется автоматом Мура.
Таким образом, уравнения (3.12) – (3.16), полностью задающие F-автомат, являются частным случаем уравнений (3.3) и (3.4), когда система S детерминированная и на ее единственный вход поступает дискретный сигнал X.
По числу состояний различают конечные автоматы с памятью и без памяти. Автоматы с памятью имеют более одного состояния, а автоматы без памяти (комбинационные или логические схемы) обладают лишь одним состоянием. При этом, согласно (3.13), работа комбинационной схемы заключается в том, что она ставит в соответствие каждому входному сигналу x(t) определенный выходной сигнал y(t), т. е. реализует логическую функцию вида
t=0, 1,2,….
Эта функция называется булевой, если алфавиты X и У, которым принадлежат значения сигналов х и у, состоят из двух букв.
По характеру отсчёта дискретного времени конечные автоматы делятся на синхронные и асинхронные. В синхронных F-автоматах моменты времени, в которые автомат «считывает» входные сигналы, определяются принудительно синхронизирующими сигналами. После очередного синхронизирующего сигнала с учетом «считанного» и в соответствии с уравнениями (3.12) — (3.16) происходит переход в новое состояние и выдача сигнала на выходе, после чего автомат может воспринимать следующее значение входного сигнала. Таким образом, реакция автомата на каждое значение входного сигнала заканчивается за один такт, длительность которого определяется интервалом между соседними синхронизирующими сигналами. Асинхронный F-автомат считывает входной сигнал непрерывно, и поэтому, реагируя на достаточно длинный входной сигнал постоянной величины х, он может, как следует из (3.12) — (3.16), несколько раз изменять состояние, выдавая соответствующее число выходных сигналов, пока не перейдет в устойчивое, которое уже не может быть изменено данным входным сигналом.
Возможные приложения. Чтобы задать конечный F-автомат, необходимо описать все элементы множества т. е. входной, внутренний и выходной алфавиты, а также функции переходов и выходов, причем среди множества состояний необходимо выделить состояние z0, в котором автомат находился в момент времени t = 0. Существует несколько способов задания работы F-автоматов, но наиболее часто используются табличный, графический и матричный.
Простейший табличный способ задания конечного автомата основан на использовании таблиц переходов и выходов, строки которых соответствует входным сигналам автомата, а столбцы — его состояниям. При этом обычно первый слева столбец соответствует начальному состоянию z0. На пересечении i-й строки и k-го столбца таблицы переходов помещается соответствующее значение функции переходов, а в табли
це выходов — соответствующее значение функции выходов. Для F-автомата Мура обе таблицы можно совместить, получив так называемую отмеченную таблицу переходов, в которой над каждым состоянием zk автомата, обозначающим столбец таблицы, стоит соответствующий этому состоянию, согласно (3.16), выходной сигнал
Описание работы F-автомата Мили иллюстрируется таблицами переходов и выходов (см. табл. 3.1), а описание F-автомата Мура — таблицей переходов (см. табл. 3.2).
Таблица 3.1
Таблица 3.2
Примеры табличного способа задания F-автомата Мили F1 с тремя состояниями, двумя входными и двумя выходными сигналами приведены в табл. 3.3, а для F-автомата Мypa F2 — в табл. 3.4.
При другом способе задания конечного автомата используется понятие направленного графа. Граф автомата представляет собой набор вершин, соответствующих различным состояниям автомата и соединяющих вершины дуг графа, соответствующих тем иным переходам автомата. Если входной сигнал xk вызывает переход из состояния zi в состояние zj, то на графе автомата дуга, соединяющая вершину zi с вершиной zj, обозначается xk. Для того чтобы задать функцию выходов, дуги графа необходимо отметить соответствующими выходными сигналами. Для автоматов Мили эта разметка производится так: если входной сигнал xk действует на состояние zi, то, согласно сказанному, получается дуга, исходящая из zi и помеченная xk; эту дугу дополнительно отмечают выходным сигналом . Для автомата Мура аналогичная разметка графа такова: если входной сигнал xk, действуя на некоторое состояние автомата, вызывает переход в состояние zj, то дугу, направленную в zj и помеченную xk, дополнительно отмечают выходным сигналом .
На рис. 3.2, а, б приведены заданные ранее таблицами F -автоматы Мили F1 и Мура F2 соответственно.
Таблица 3.3
Таблица 3.4
При решении задач моделирования систем часто более удобной формой является матричное задание конечного автомата. При этом матрица соединений автомата есть квадратная матрица , строки которой соответствуют исходным состояниям, а столбцы — состояниям перехода. Элемент , стоящий на пересечении i-й строки
Рис. 3.2
и j-гo столбца, в случае автомата Мили соответствует входному сигналу хk, вызывающему переход из состояния zi в состояние zj, и выходному сигналу yS, выдаваемому при этом переходе. Для автомата Мили F1, рассмотренного выше, матрица соединений имеет вид
Если переход из состояния zi в состояние zj происходит под действием нескольких сигналов, элемент матрицы сij представляет собой множество пар «вход-выход» для этого перехода, соединенных знаком дизъюнкции.
Для F-автомата Мура элемент cij равен множеству входных сигналов на переходе (zi, zj), а выход описывается вектором выходов
i-я компонента которого – выходной сигнал, отмечающий состояние zi.
Пример 3.2. Для рассмотренного выше F-автомата Мура F2 запишем матрицу соединений и вектор выходов:
; .
Для детерминированных автоматов выполняется условие однозначности переходов: автомат, находящийся в некотором состоянии, под действием любого входного сигнала не может перейти более чем в одно состояние. Применительно к графическому способу задания F-автомата это означает, что в графе автомата из любой вершины не могут выходить два ребра и более, отмеченные одним и тем же входным сигналом. Аналогично этому в матрице соединений автомата С в каждой строке любой входной сигнал не должен встречаться более одного раза.
Рассмотрим вид таблицы переходов и графа асинхронного конечного автомата. Для F-автомата состояние zk называется устойчивым, если для любого входа , для которого , имеет место . Таким образом, F-автомат называется асинхронным, если каждое его состояние устойчиво.
Необходимо отметить, что вообще на практике автоматы всегда являются асинхронными, а устойчивость их состояний обеспечивается тем или иным способом, например, введением сигналов синхронизации. Однако на уровне абстрактной теории, когда конечный автомат выступает в виде математической схемы для формализации конкретных объектов без учета ряда второстепенных особенностей, часто удобно оказывается оперировать с синхронными конечными автоматами.
Пример 3.3. Рассмотрим асинхронный f-автомат Мура, который описан табл. 3.5 и приведен на рис. 3.3. Очевидно, что если в таблице переходов асинхронного автомата некоторое состояние zk стоит на пересечении строки хi и столбца , то это состояние zk обязательно должно встретиться в этой же строке в столбце zk. В графе асинхронного автомата, если в некоторое состояние имеются переходы из других состояний под действием каких-то сигналов, то в вершине zk должна быть петля, отмеченная символами тех же входных сигналов. Анализ табл. 3.3 и 3.4 или рис. 3.2, б и 3.3 показывает, что представленные там F-автоматы F1 или F2 являются синхронными.
Таким образом, понятие F-aвтомата в дискретно-детерминиро-ванном подходе к исследованию на моделях свойств объектов является математической абстракцией, удобной для описания широкого класса процессов функционирования реальных объектов в автоматизированных системах обработки информации и управления. В качестве таких объектов в первую очередь следует назвать элементы и узлы ЭВМ, устройства контроля, регулирования и управления, системы временной и пространственной коммутации в технике обмена информацией и т. д. Для всех перечисленных объектов характерно наличие дискретных состояний и дискретный характер работы во времени, т.е. их описание с помощью F-схем является эффективным. Но широта их применения не означает универсальности этих математических схем. Например, этот подход непригоден для описания процессов принятия решений, процессов в динамических системах с наличием переходных процессов и стохастических элементов.