Лекция
Привет, Вы узнаете о том , что такое минимизация неполных конечных автоматов, Разберем основные их виды и особенности использования. Еще будет много подробных примеров и описаний. Для того чтобы лучше понимать что такое минимизация неполных конечных автоматов , настоятельно рекомендую прочитать все из категории Теория конечных автоматов.
Как было сказано в (5.4), общая таблица переходов для неполных автоматов содержит прочерки вместо состояний и выходов для запрещенных входов, а также вместо неопределенных выходов. Например, для неполного автомата, граф которой изображен на рис. 5.11а, общая таблица переходов – табл. 5.18.
Здесь вход 0 в состояниях 1 и 5, а также вход 1 в состояниях 0 и 5 являются запрещенными. Кроме того, в состоянии 3 при воздействии 0 и в состоянии 4 при воздействии 1 выходы не, определены.
а) б)
Рис. 5.11
Входная последовательность называется допустимой для автомата в состоянии qi, если она не нарушает ограничений на входе ни в каком состоянии автомата А и порождаемый ею выход определен на заключительном такте. На других тактах входной последовательности выходы могут и не быть определены, но последовательность состояний обязательно должна существовать. Например, для приведенного выше автомата в состоянии 0 допустимая входная последовательность (0, 1, 0) порождает последовательность состояний {1, 4, 5} и заключительный выход 0. В то же время последовательность (0, 1, 1) не допустима, так как заключительный выход не определен.
Сокращенная форма неполного автомата А – это такой автомат А', который по отношению к допустимым для А входным последовательностям ведет себя на выходах так же, как и исходный автомат А, но имеет меньшее число состояний. Говорят, что автомат А' квазиэквивалентный автомату А. Отношение квазиэквивалентности рефлексивно и транзитивно, но не симметрично, т.е. обладает всеми свойствами отношения включения. Поэтому говорят также, что А' включает А, и записывают А А'. При этом из А А' вовсе не следует А' А, что иногда выражают словами: А' делает столько же и, может быть, больше, чем А.
Задача минимизации неполного автомата сводится к поиску квазиэквивалентного автомата, который имеет наименьшее число состояний, и решается следующим образом.
Таблица 5.19
xv Пары |
0 |
1 |
0,1 0,2 0,3 0,4 0,5 1,4 1,5 2,3 2,4 2,5 3,4 3,5 4,5 |
– 1,3 1,5 1,5 – – – 3,5 3,5 – 5,5 – – |
– – – – – 4,5 – 1,5 1,5 – 5,5 – – |
Сначала на множестве состояний Q = { q1 q2 … qr }исходного автомата определяется отношение совместимости. Состояния qi и qjназывают совместимыми, если любая допустимая для этих состояний входная последовательность не порождает различных заключительных выходов при начальных состояниях qi и qj, автомата. Об этом говорит сайт https://intellect.icu . Отношение совместимости рефлексивно и симметрично, однако не обязательно транзитивно. Отсюда следует, что совместимость является отношением толерантности. Все совместимые между собой состояния объединяются в классы толерантности Q'0, Q'1, …, Q'm, которые образуют некоторое покрытие множества состояний Q.
Для определения совместимых состояний можно воспользоваться методом, аналогичным изложенному в (5.5). Исходная таблица содержит пары таких состояний, при которых для любого допустимого входного символа отсутствуют различные выходы. Клетки, соответствующие запрещенным входам для данной пары состояний, заполняются прочерком и при исключении пар, как это описано в (5.5), не учитываются. Так, для автомата, заданного приведенной выше таблицей переходов, имеем таблицу 5.19.
Отмеченная на первом шаге пара (0, 2} является единственной несовместимой парой в таблице, так как она не содержится ни в каких других строках. Следовательно, все неотмеченные пары являются несовместимыми. Построив матрицу толерантности для совместимых пар и переставив в ней строки и столбцы, имеем:
0 |
1 |
2 |
3 |
4 |
5 |
|
|
1 |
0 |
4 |
5 |
3 |
2 |
|
1 |
1 |
|
1 |
1 |
1 |
0 |
|
1 |
1 |
1 |
1 |
|
|
1 |
1 |
1 |
|
|
1 |
1 |
1 |
|
1 |
1 |
1 |
1 |
1 |
|
0 Q'0
|
|
|
1 |
1 |
1 |
1 |
2 |
|
1 |
1 |
1 |
1 |
1 |
1 |
4 Q'1
|
1 |
|
1 |
1 |
1 |
1 |
3 |
|
1 |
1 |
1 |
1 |
1 |
1 |
5 Q'2
|
1 |
1 |
1 |
1 |
1 |
1 |
4 |
|
|
1 |
1 |
1 |
1 |
1 |
3 |
1 |
1 |
1 |
1 |
1 |
1 |
5 |
|
|
|
1 |
1 |
1 |
1 |
2 |
Отсюда выделяем классы толерантности Q'0 = {0, 1, 4, 5}, Q'1 = (0, 3, 4, 5}, Q'2 = (2, 3, 4, 5}, объединяющие совместимые между собой состояния. Здесь, в частности, можно убедиться в том, что совместимость не обладает свойством транзитивности. Например, пары состояний (0, 1} и {0, 3) совместимы, но состояния 1 и 3 не входят в один и тот же класс толерантности, и, следовательно, они несовместимы.
Из определения совместимости и способа получения классов толерантности следует, что при воздействии любого незапрещенного входного символа автомат из совместимых состояний переходит в одно и то же или в совместимые состояния, а выходы (если они определены) при этом будут одинаковы. Так, в нашем примере при воздействии 0 классы Q'0 и Q'1 переходят в {1,5],а Q'2 – в {3,5}; при воздействии 1 класс Q'0 переходит в {4, 5}, Q'1 – в {5} и Q'2 – в {1,5}. Следовательно, исходный автомат можно представить квазиэквивалентным ему автоматом, в котором классам толерантности Q'0, Q'1, ..., Q'm соответствуют состояния q'0 q'1 … q'm. Однако такой автомат не всегда будет минимальным. Для получения минимальной формы автомата необходимо отобрать наименьшее число таких классов толерантности, которые образуют покрытие множества состояний Q и в то же время включают множества состояний, следующих за состояниями каждого класса при всех незапрещенных воздействиях. Для рассматриваемого примера этим требованиям удовлетворяют классы Q'0, и Q'2, так как Q'0 Q'2 = Q, и все множества последующих состояний {1,5}, {3,5}, {4,5} и {5} являются подмножествами Q'0 и Q'2. Соответствующая минимальная форма показана на рис. 5.11б, где состояния 0 и 1 соответствуют классам Q'0 и Q'2.
Дальнейшие упрощения относятся не к числу состояний, а к структуре множеств, образующих минимальное покрытие Q. Если из отобранных классов толерантности можно исключить некоторые состояния так, что полученные подмножества удовлетворяют приведенным выше требованиям, то эти подмножества также определяют другой вариант минимальной формы автомата. Так, из Q'0 или из Q'2 можно исключить состояние 4, поскольку оно входит только в множество последующих состояний {4, 5}. Тогда получим еще два варианта минимальных покрытий: {0, 1, 5}, {2, 3, 4, 5} и {0, 1, 4, 5}, {2, 3, 5}. Но состояние 5 нельзя исключить ни из одного класса, хотя оно и содержится в каждом из них, так как множества последующих состояний {1, 5} и {3, 5} показывают, что состояние 5 должно содержаться как в Q'0, так и в Q'2.
Анализ данных, представленных в статье про минимизация неполных конечных автоматов, подтверждает эффективность применения современных технологий для обеспечения инновационного развития и улучшения качества жизни в различных сферах. Надеюсь, что теперь ты понял что такое минимизация неполных конечных автоматов и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Теория конечных автоматов
Из статьи мы узнали кратко, но содержательно про минимизация неполных конечных автоматов
Комментарии
Оставить комментарий
Теория конечных автоматов
Термины: Теория конечных автоматов