Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Теория вычислительных процессов и структур. Учебное пособие
.pdf
2. Структурная теория автоматов, напротив, рассматривает
главным образом структуру автомата, а также его входных и выходных
сигналов. Проблемами структурной теории являются способы построения автоматов из элементарных автоматов, способы кодирования входных и выходных сигналов с помощью элементарных сигналов и т.д.
Конечным автоматом является автомат, множество внутренних состояний и множество значений входных сигналов, которые конечны.
Математическая модель цифрового автомата задается совокупностью следующих объектов:
1. X = {x1(t), x2(t),…, xn(t)} – конечное множество входных сиг-
налов, или входной алфавит;
2. Y = {y1(t), y2(t),…, yk(t)} – конечное множество выходных
сигналов, или выходной алфавит;
3. Q = {q1(t), q2(t),…, qs(t)} – множество состояний автомата;
4. δ : Q X Q – функция переходов;
5. λ : Q X Y – функция выходов;
6. q0 Q – начальное состояние автомата.
Таким образом, можно сказать, что, используя понятие абстрактного автомата, мы имеем дело с отображением множества слов
входного алфавита X во множество слов выходного алфавита Y. Отметим, что разбиение множества состояний автомата на подмножества,
которые объединяют отдельные состояния, приводит к понятию по-
давтомата.
При рассмотрении задач цифровых автоматов, как правило,
вводится автоматное время. Функционирование автомата рассматривается через дискретные интервалы – времена конечной продолжительности, или интервалы дискретности. Каждому интервалу дискретности t соответствует свой выходной сигнал y(t). Предполагается,
что выходной сигнал может возникнуть только после появления соответствующего этому же моменту времени входного сигнала с одновременным переходом из состояния q(t – 1) в состояние q(t).
Автомат может быть охарактеризован объемом памяти (число
его состояний) и наличием механизма случайного выбора. Если поведение и структура автомата в любой момент времени однозначно определены в зависимости от текущей входной информации и состояния
автомата, то это детерминированный автомат. Если поведение и
структура автомата зависят от случайного выбора, то это вероятност-
ный автомат.
31

Цифровые автоматы можно также разделить на два класса в за-
,..2,1)),(),1(()(
)),(),1(()(
ttxtqty
txtqtq
,..2,1)),(),(()(
)),(),1(()(
ttxtqty
txtqtq
висимости от способа, которым в них введено автоматное время:
1. Синхронные автоматы. Моменты времени, в которых фик-
сируются изменения состояний автомата, заданы специальным устройством, называемым генератором синхросигналов. Он выдает импульсы через равные промежутки времени, порождая тем самым
постоянный интервал дискретности.
2. Асинхронные автоматы. Моменты перехода автомата из
одного состояния в другое зависят от определенных событий. Интервал дискретности в таких автоматах является переменным.
Для синхронных автоматов в зависимости от способа определения выходного сигнала существует два подхода:
1) в автоматах первого рода выходной сигнал y(t) однозначно
определяется входным сигналом x(t) и состоянием q(t – 1) автомата в
предшествующий момент времени;
2) в автоматах второго рода выходной сигнал y(t) однозначно
определяется входным сигналом x(t) и состоянием q(t) в данный момент времени.
Соответствующие законы функционирования могут быть запи-
саны следующим образом:
- для автомата первого рода:
- для автомата второго рода:
Легко показать, что для каждого автомата второго рода суще-
ствует эквивалентный ему автомат первого рода. В самом деле, предположим, что с помощью приведенных выше уравнений задан произвольный автомат второго рода. Построим для него новую функцию
λ
(q, x) = λ(δ(q(t – 1), x(t)), x(t)).
1
32

Подставим это выражение в уравнение для y(t):
,..2,1)),(),1(()(
)),(),1(()(
ttxtqty
txtqtq
,..2,1)),(()(
)),(),1(()(
ttqty
txtqtq
y(t) = λ(δ(q(t – 1), x(t)), x(t)) = λ1(q(t – 1), x(t)).
Получили новый автомат первого рода, заданный той же функцией
перехода δ(q, х) и функцией выходов λ1(q, х).
Автомат первого рода называют автоматом Мили, а частный
случай автомата второго рода y(t) = λ(q(t)) – автоматом Мура
(G.H. Mealy и E.F. Moor). Далее будем рассматривать именно эти автоматы.
4.2. Способы задания автоматов
Для того, чтобы задать или описать автомат, существует три
основных способа, являющихся эквивалентными: аналитический,
табличный и графический.
4.2.1. Аналитический способ
Закон функционирования автомата задается с помощью уравнений. Фактически мы уже познакомились с этим способом задания
автоматов, однако для наглядности выпишем соответствующие уравнения для автоматов Мили и Мура.
Для автомата Мили уравнения имеют вид
Уравнения для автоматов Мура:
4.2.2. Табличный способ
В основе табличного способа лежит построение таблиц, строки
которых помечены символами входного алфавита, а столбцы – состояниями.
33

Различают таблицы переходов и таблицы выходов.
q1 q2
q3
…
qs
x1 y
11 y12
y13 … y1s
x2
y
21 y22
y23 … y2s
x3
y
31 y32
y33 … y3s
… … … … …
…
x
n
y
n1 yn2
yn3
…
yns
q1 q2
q3
…
qs
x1 q
11 q12
q13 … q1s
x2
q
21 q22
q23 … q2s
x3
q
31 q32
q33 … q3s
… … … … …
…
x
n
q
n1 qn2
qn3
…
qns
В таблице переходов на пересечении строки и столбца указывается соответствующее состояние, в которое переходит автомат в соответствии с функцией переходов δ (табл. 4.1).
Таблица 4.1
Общий вид таблицы переходов для автомата Мили
δ : Q X Q, qij = δ(qj, xi)
В таблице выходов на пересечении строк и столбцов указывается выходной сигнал, получаемый как результат функции выходов λ
(табл. 4.2).
Таблица 4.2
Общий вид таблицы выходов для автомата Мили
λ : Q X Y, yij = λ(qj, xi)
Для автомата Мили возможен также вариант совмещенной
таблицы, когда на пересечениях строк и столбцов указываются и
состояния, и выходы (табл. 4.3).
34

Таблица 4.3
q1 q2
q3
…
qs
x1 q11 / y11
q12 / y12
q13 / y13
…
q1s / y1s
x2
q21 / y21
q22 / y22
q23 / y23
…
q2s / y2s
x3
q31 / y31
q32 / y32
q33 / y33
…
q3s / y3s
… … …
… … …
x
n
qn1 / yn1
qn2 / yn2
qn3 / yn3
…
qns / yns
y
01 y02
y03 … y0s
q1 q2
q3
…
qs
x1 q
11 q12
q13 … q1s
x2
q
21 q22
q23 … q2s
x3
q
31 q32
q33 … q3s
… … … … …
…
x
n
q
n1 qn2
qn3
…
qns
Общий вид совмещенной таблицы переходов и выходов
для автомата Мили
В автомате Мура выходной сигнал зависит только от
состояния, поэтому для данного автомата достаточно одной таблицы
переходов, в которой каждый столбец помечен и состоянием qj, и выходным сигналом y0j = λ(qj), см. табл. 4.4.
Таблица 4.4
Общий вид таблицы переходов для автомата Мура
δ : Q X Q, qij = δ(qj, xi), λ : Q Y, y0j = λ(qj)
Двойные индексы для выходных сигналов использованы для
того, чтобы подчеркнуть, что это – общие обозначения и что в конкретной задаче совпадение индексов выходного сигнала и соответствующего состояния вовсе не обязательно.
Если области определения функций δ и λ совпадают и равны
{Q X}, то такой автомат называется полностью определенным. Если
существуют пары (qi, xj) {Q X}, для которых функции δ и λ не оп-
ределены, то такой автомат называется не полностью определенным,
или частичным. При заполнении соответствующих таблиц при задании частичного автомата на местах неопределенных состояний ставится прочерк.
35

Еще одной возможностью табличного задания автомата явля-
q1 q2
q3
…
qs
q1 x11 / y11
x12 / y12
x13 / y13
…
x1s / y1s
q2
x21 / y21
x22 / y22
x23 / y23
…
x2s / y2s
q3
x31 / y31
x32 / y32
x33 / y33
…
x3s / y3s
… … …
… … …
q
s
xn1 / ys1
xs2 / ys2
xs3 / ys3
…
xss / yss
y
01 y02
y03 … y0s
q1 q2
q3
…
qs
q1 x
11 x12
x13 … x1s
q2
x
21 x22
x23 … x2s
q3
x
31 x32
x33 … x3s … … … … … …
q
s
x
s1 xs2
xs3
…
xss
ется построение матрицы переходов и выходов.
Для автомата Мили она строится следующим образом. Строки
и столбцы отмечаются состояниями, а на их пересечениях размещаются соответствующие им входные и выходные сигналы. Если под действием входного сигнала xij происходит переход из состояния qi в состояние qj с выдачей выходного сигнала yij, то в ячейку на пересечении
строки qi и столбца qj записывается xij / yij (табл. 4.5).
Таблица 4.5
Общий вид матрицы переходов и выходов для автомата Мили
Для матрицы переходов и выходов автомата Мура строки и
столбцы также отмечаются состояниями, однако столбцы дополнительно помечаются соответствующими выходными сигналами, а на
пересечении строк и столбцов указываются только входные сигналы
(табл. 4.6).
Таблица 4.6
Общий вид матрицы переходов и выходов для автомата Мура
4.2.3. Графический способ
Графический способ задания автомата использует аппарат графов. Граф автомата представляет собой ориентированный граф, вер-
36

шины которого соответствуют состояниям, а дуги – переходам между
ними.
При описании автомата Мили дуги помечаются входными и
выходными сигналами подобно способу, использованному в ячейках
табл. 4.3.
При описании автомата Мура входными сигналами помечаются дуги графа, а выходные сигналы указываются рядом с состояниями
(можно сравнить это с двумя заглавными строками табл. 4.4).
Для графа автомата должно выполняться условие однозначности: из одной и той же вершины не должно выходить двух дуг с
одинаковыми входными сигналами.
Если вершина графа имеет только исходящие дуги, но не имеет
входящих дуг, то соответствующее состояние автомата называется
преходящим.
Если вершина графа не имеет исходящих дуг, но имеет хотя бы
одну входящую дугу, то соответствующее состояние автомата называется тупиковым.
Если вершина графа не имеет ни входящих, ни исходящих дуг,
то соответствующее состояние называется изолированным.
4.2.4. Примеры графического и табличного задания
автоматов Мили и Мура
Ниже в качестве примеров приведены графические и таблич-
ные представления автоматов Мили и Мура. Автомат Мили обозначен
A1, а автомат Мура – A2. Их изображения с помощью графов представлены соответственно на рис. 4.2 и 4.3.
Рис. 4.2. Пример графа автомата Мили A
37
1

q1 q
2
q
3
q
4
x1 q2 / y
3
q1 / y
1
q4 / y
3
q4 / y
3
x
2
q4 / y
3
q3 / y
2
q3 / y
4
q3 / y
4
y1 y
2
y
2
y
3
q1 q
2
q
3
q
4
x1 q3 q
2
q
3
q
3
x
2
q2 q
4
q
2
q
4
Рис. 4.3. Пример графа автомата Мура A
2
Табл. 4.7–4.10 иллюстрируют табличный способ задания этих
автоматов с помощью совмещенной таблицы переходов и выходов,
таблицы переходов и матрицы переходов и выходов соответственно.
Таблица 4.7
Совмещенная таблица переходов и выходов для автомата A
Таблица переходов для автомата A2
38
1
Таблица 4.8

Таблица 4.9
q1 q2
q3
q4
q1 -
x1 / y3
-
x2 / y3
q2
x1 / y1
-
x2 / y2
-
q3 - -
x2 / y4
x1 / y3
q4 - - x2 / y4
x1 / y3
y1 y2
y2
y3
q1 q2
q3
q4
q1 - x2
x1
-
q2
- x1 - x2
q3
- x2
x1
-
q4 - -
x1
x2
Матрица переходов и выходов для автомата A1
Таблица 4.10
Матрица переходов и выходов для автомата A2
В зависимости от специфики решаемой задачи исследователь
может выбрать для себя удобный метод представления рассматриваемого автомата.
39

5. СЕТИ ПЕТРИ
5.1. Концепция сети Петри
Одним из мощных инструментов математического моделирования дискретных систем являются сети Петри. Они были предложены немецким математиком и исследователем в области информатики
Карлом Петри и получили его имя.
Спектр задач, решаемых с помощью сетей Петри, достаточно
широк. Они позволяют создавать описание алгоритмов, программ,
устройства вычислительных систем и действующих в них вычислительных процессов и т.д. Также сети Петри используются для решения
задач анализа, синтеза и оптимизации, связанных с моделями и средствами параллельной обработки информации.
Функционирование реальной системы зависит от времени,
причем это время носит непрерывный характер. В моделях дискретных систем принимается допущение, что события привязаны к определенным интервалам времени. В сложных асинхронных системах
структура взаимодействия событий может иметь весьма нетривиальную динамическую структуру. Несколько упростить задачу моделирования можно, если рассматривать не связи между событиями, а те условия, при которых то или иное событие может реализоваться.
Данная идея и применяется в сетях Петри. Можно сформулировать основную концепцию следующим образом: функционирование
системы представляется как реализация определенных событий в соответствии с выполнением некоторых условий. От конкретных физических и функциональных особенностей рассматриваемой системы
при этом абстрагируются.
Примеры событий: выполнение команды программы, запуск
некоторого процесса, присваивание значения переменной и т.д.
Примеры условий: достаточное количество оперативной памяти, определенное значение переменной, выполнение того или иного
логического условия и т.д.
В зависимости от условий событие может произойти один или
несколько раз, запустив тем самым определенные действия, а может
не произойти вовсе. Для реализации одного события в некоторых
случаях требуется выполнение сразу нескольких условий. Таким образом, процесс, порождаемый дискретной системой, может быть
40
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
