156
Для получения минимальной правильной группировки требуется
осуществить комбинаторный поиск в пространстве максимальных и
немаксимальных совместимых множеств. При этом некоторые из
немаксимальных совместимых множеств можно исключить из рассмотрения,
учитывая следующие соображения.
Для каждого совместимого множества S
i
(максимального или
немаксимального) построим множество T
i
=
},...,,{
21
k
iii
ttt
, элементами которого
являются подмножества множества состояний Q, обладающие следующими
свойствами:
1)
j
i
t (j = 1, 2, … , k) является непосредственно производным множеством
от S
i
;
2) никакое
j
i
t (j = 1, 2, … , k) не содержится ни в S
i
, ни в каком другом
l
i
t
∈ T
i
в качестве подмножества;
3) |
j
i
t
| > 1 для всех j = 1, 2, … , k.
Если S
g
⊂ S
h
, a T
g
⊇ T
h
, то S
g
можно исключить из рассмотрения.
Действительно, пусть получена правильная группировка, содержащая S
g
.
Заменив S
g
на S
h
, получим правильную группировку с тем же числом
элементов.
Процесс нахождения минимальной правильной группировки состоит из
двух этапов. На первом этапе находятся совместимые множества,
максимальные и немаксимальные, подлежащие рассмотрению. На втором этапе
находится совокупность совместимых множеств, обладающая свойствами
правильной группировки, с помощью метода комбинаторного поиска,
подобного тому, который используется при решении задачи о кратчайшем
покрытии (см. гл. 7).
Выполняя первый этап, сначала находим все максимальные совместимые
множества. При этом, как уже было сказано, можно использовать описанный в
гл. 4 метод нахождения всех максимальных независимых множеств графа, имея
в виду граф несовместимости состояний. Затем находим все собственные
подмножества совместимых множеств. После получения очередного
совместимого множества S
i
сразу решаем вопрос об удалении или сохранении
S
i
, построив соответствующее T
i
и сравнив его с другими такими множествами,
построенными ранее.
Продемонстрируем выполнение первого этапа на примере автомата,
таблицей переходов и выходов которого является табл. 20.7.
Максимальными совместимыми множествами для этого автомата являются
{1, 2, 3, 5}, {2, 4}, {3, 6} и {4, 6}. Все совместимые множества S
i
с
соответствующими T
i
представлены в табл. 20.8. Из этой таблицы видно, что
для сокращения перебора надо удалить все одноэлементные множества S
i
, у
которых по определению соответствующие T
i
всегда пусты, а в данном случае
для каждого одноэлементного множества S
i
найдется двухэлементное