УДК 519.71
Вестник СПбГУ. Сер. 1. 2013. Вып. 3
ОБ ОДНОМ МЕТОДЕ МИНИМИЗАЦИИ ОБОБЩЕННЫХ «ОПТИМИСТИЧЕСКИХ» НЕЧЕТКИХ АВТОМАТОВ*
А. Ю. Пономарёва1, М. К. Чирков2
1. С.-Петербургский государственный университет, канд. физ.-мат. наук, доцент, [email protected]
2. С.-Петербургский государственный университет, д-р физ.-мат. наук, профессор, [email protected]
1. Введение. В теории нечетких множеств [1] наряду с обычно исследуемыми стационарными максиминными (иначе, «пессимистическими») нечеткими конечными автоматами были также определены и так называемые минимаксные (иначе, «оптимистические»») нечеткие автоматы [2-5]. При этом классическая проблема математической теории автоматов, связанная с оптимизацией их абстрактной структуры, была решена для обобщенных (имеющих выходной алфавит) максиминных нечетких автоматов, в результате чего был теоретически обоснован и детально разработан метод, основанный на построении специальных преобразующих матриц [5]. В то же время в работе [4] установлена и доказана связь между обобщенными стационарными нечеткими автоматами указанных двух видов. Основная цель данной работы состоит в теоретическом обосновании и разработке специального метода минимизации числа состояний обобщенного минимаксного (т.е. «оптимистического») нечеткого автомата, основанного на некоторых результатах работ [4, 5].
2. Нечеткие множества. Обозначим символом С полную дистрибутивную ре-
условно называемыми «сложением» и «умножением», и обычным упорядочиванием. В дальнейшем в данной работе условимся использовать знаки, обозначающие «сложение» и «умножение», только для записи (тах-тш)-операций (1). Будем также обозначать через Ст,п множество всех (т х п)-матриц над С и называть матрицы из Ст,п нечеткими.
В отличие от четкого подмножества, нечеткое подмножество Z универсального множества и определяется как множество упорядоченных пар Z = {z,^z(г)}, где (г) € [0, 1] для всех 2 € и. Функция (г) в этом случае называется характеристической функцией степени принадлежности (или просто функцией степени принадлежности) элемента г нечеткому подмножеству Z. Если же в частном случае (г) € {0, 1} для всех 2 € и, то нечеткое подмножество Z будет обычным четким подмножеством универсального множества и.
* Работа выполнена при финансовой поддержке РФФИ (гранты №10-01-00310, 13-01-00538).
© А. Ю. Пономарёва, М. К. Чирков, 2013
а + Ь = тах(а, Ь), аЬ = тт(а, Ь),
(1)
3. Операции над нечеткими множествами и матрицами. Условимся в дальнейшем нечеткие подмножества универсального множества и называть нечеткими множествами в и и приведем определение простейших операций над ними [1].
Если Zl и суть нечеткие множества в и, то их объединением называют нечеткое множество Z = Zl и Z2 с функцией принадлежности
^ (г) = uZ2 (г)=шах\^1 (г), ^ (г)], г е и. (2)
Пересечением нечетких множеств Zl и Z2 называют нечеткое множество Z = Zl П Z2 с функцией принадлежности
Мz(г) = МZlnZ2 (г) = шш \p.Zi (г), ^ (г)], г е и. (3)
Дополнением нечеткого множества Z называют нечеткое множество Z с функцией принадлежности
^(г) = 1 -ц2{г), (4)
Дополнением нечеткой матрицы И = а^))т<п (Е Ст'п называют нечеткую
матрицу И. (Е Ст'п с элементами
а,-) = 1 - Цъ.{аи (5)
Максиминное произведение нечетких матриц И,(1) е £т,п и И,(2) е Сп,к определяется как нечеткая матрица И = И,(1) о И,(2) е Ст,к с элементами
Мя(в1, а,) = Мя(1)оя(2) (а», а,) = шах шт\мя(1) (а», а3), Мя(2) (а3, а,-)]. (6)
д
Минимаксное произведение нечетких матриц И,(1) и И,(2) определяется как нечеткая матрица И = И,(1) * И,(2) с элементами
Мя(а», а,) = Мя(1)*К(2) (а», а,) = пипшах^яа) (а», ад),Мя(2) (ад, а,)]. (7)
4. Типы обобщенных нечетких автоматов. Обобщенным нечетким конечным автоматом называют [4, 5] систему
Л® = (X, А, У, ГА, {Еа(х,у)}, ЯА>, (8)
где X, А, У суть алфавиты входов, состояний и выходов, |Х| = п, |А| = т, |У| = к; га е £1>т — начальный вектор-строка (степеней принадлежности состояний множеству начальных состояний); qа е £т>1 —финальный вектор-столбец (степеней принадлежности состояний множеству конечных состояний) и {Еа(х, у)} — совокупность нечетких матриц переходов (более подробно, степеней принадлежности переходов состояний множеству возможных переходов):
{Еа(х,у)} = {Еа(х,у)|Еа(х,у) е £т'т, х е X, у е У},
задающая отображение X х У ^ £т,т, область определения которого может быть расширена на Xй х Уй, ! = 0,1, 2,... — множества пар слов длины ! в алфавитах X, У — следующим образом:
й
П® Еа(хз<, ухь) при !> 0, (9)
1(т) при ! = 0,
где w = xSl xS2 ... xsd G Xd, v = yi1 yi2 .. .yid G Yd; I(m) —единичная (m x т)-матрица, а знак П® означает «произведение» матриц из £m>m одного из двух типов (6), (7), определенных в п. 3.
Нечеткое отображение Ф® : Xd x Yd ^ [0, 1], d =0, 1, 2, .. ., индуцируемое нечетким автоматом A®, определяется функцией принадлежности
Ф® (w, v) = гA © Fa(w,v) © qA (10)
для всех (w, v) G Xd x Yd, d = 0,1, 2,..., и тем самым задает нечеткое подмножество пар слов одной, но сколь угодно большой длины.
В зависимости от того, какой тип «произведения» матриц используется в выражениях (9), (10), т.е. какой из знаков о, * должен подразумеваться под значком ©, соответственно можно определить следующие два различных типа обобщенных нечетких автоматов A® (8):
— максиминные обобщенные нечеткие автоматы A^;
— минимаксные обобщенные нечеткие автоматы A*.
5. Формулировка задачи. Рассмотрим два обобщенных нечетких автомата (возможно различного типа) — автомат A® (8) и автомат
B® = (X, B, Y, г в, {Fb (xs ,yi)}, q_B >, |B| = m', (11)
с теми же алфавитами X, Y. Автоматы A® и B® будем называть эквивалентными (обозначим A® ~ B®), если совпадают индуцируемые ими нечеткие отображения (10), т.е. если для всех (w,v) G X* x Y* выполняются Ф®^,v) = ФВ(w,v).
Будем говорить, что обобщенный нечеткий конечный автомат A® находится в минимальной форме, если не существует эквивалентный ему обобщенный нечеткий автомат B® того же типа, такой что |B| < |A|.
Минимальной формой нечеткого автомата A® условимся называть любой эквивалентный ему нечеткий автомат B ® того же типа, находящийся в минимальной форме (обозначим B ® = min A®).
В соответствии c введенными определениями может быть сформулирована следующая задача: задан обобщенный нечеткий автомат A® (8) и требуется построить его минимальную форму — обобщенный нечеткий автомат того же типа B ® = min A®.
Заметим, что сформулированная задача решена в работе [5] для случая «пессимистических» обобщенных нечетких автоматов A^. При этом теоретически обоснован, разработан и проиллюстрирован на модельном примере специальный матричный алгоритм минимизации автомата A^, основанный на построении вспомогательных преобразующих матриц и их использовании для нахождения автомата B ◦ = min A^. Таким образом, основная задача данной работы — теоретически обосновать и разработать специальный метод решения задачи минимизации «оптимистических» обобщенных автоматов A* на основе связи нечетких автоматов обоих типов [4] и на результатах работы [5].
6. Связь между автоматами A^ и B *. В работе [4] доказано следующее утверждение относительно произведений нечетких матриц переходов автоматов A^, B *, являющееся обобщением некоторых свойств нечетких матриц [3].
Теорема 1. Пусть (ад, V), т = х81 жЯ2 .. . , V = у;2 . .. , суть любая пара слов длины й > 0 в алфавитах X, У, а для обобщенных нечетких автоматов Л°, В*, |А| = |В| = т, ЕА(х8,уг) = Ев(х,,уг) = Е(х8,уг) е Ст'т для всех х8 е X, у е У. Тогда, если
Е°(т^) = П° Е(хЯ4), Е*(т, V) = П*Е(х^)
4=1 4=1
суть соответственно максиминное и минимаксное произведения нечетких матриц переходов, то справедливы следующие соотношения:
4=1 4=1
Введем следующие определения. Условимся говорить, что Ф® есть дополнение
где согласно (5) ¥(хВг,у1г) = (1 -
Введем следующие определения. Условимся нечеткого отображения Ф®, если для любых т, V, |т| = |V|,
Ф®(т, V) = 1 - Ф®(т, V),
и будем называть нечеткий автомат А® дополнением нечеткого автомата А®, если при всех (т, V) е X* х У*, |т| = |V|, выполняется
Ф®^ («;,«) = Ф^ («;,«).
В таком случае оказывается справедливым следующее утверждение. Теорема 2. Для нечетких автоматов Л° (8) и В * (11) таких, что |А| = |В| = то, г а = Тв, Уь) = у{) для, всех £ X, у\ £ У, qJ4 = (1В, выполняется,
ф А°,=Фвр и (12)
Доказательство. Справедливость данного утверждения непосредственно следует из теоремы 1 и свойств нечетких матриц [3], если учесть, что согласно условиям теоремы 2 г а , г в е £1>т и qA, Чв е £т>1, т.е. фактически тоже являются частными случаями нечетких матриц, а для нечетких отображений справедливо выражение (10). Теорема доказана.
Следствие. Если нечеткие автоматы Л° и В * удовлетворяют условиям теоремы 2 и нечеткий автомат А^ находится в минимальной форме, то нечеткий автомат В * также находится в минимальной форме, и обратно, если автомат
В^ находится в минимальной форме, то и автомат находится в минимальной форме.
Справедливость данного следствия очевидна, поскольку указанные нечеткие автоматы согласно (12) эквивалентны, и возможность удаления любого из состояний одного из автоматов непосредственно приводит к возможности редукции соответствующего состояния в другом автомате с необходимым преобразованием элементов матриц переходов и начальных, а также финальных векторов.
7. Алгоритм минимизации автомата A*. Таким образом, опираясь на результаты п. 6, можно сформулировать следующую процедуру построения минимальной формы заданного «оптимистического» нечеткого автомата A* = (X, A, Y, г, {F(xs,yi)}, q>:
а) используя теорему 2, построить для автомата A* его дополнение, т. е. нечеткий автомат Af = A°j = (X, А, У, г, {F(xs, у;)}, q), являющийся уже «пессимистическим» нечетким автоматом;
б) используя методику минимизации максиминных («пессимистических») нечетких автоматов, предложенную в работе [5], найти минимальную форму автомата A^, т. е. нечеткий автомат B ◦ = min A^;
в) перейти от полученного автомата ВJ к автомату Вкоторый согласно теореме 2 и следствию из нее дает решение данной задачи, т.е. минимаксный («оптимистический» ) нечеткий автомат В*^ = В^ такой, что В^ = min A*j.
8. Пример. Пусть задан обобщенный «оптимистический» нечеткий автомат A* = (X, A, Y, г, {F(xs,yi)}, q>, где X = {xo,xi}, A = {ao,ai,.. .,05}, Y = {yo,yi}, г = (0, 2 0, 8 0, 8 1 0, 9 0, 9), q = (0, 5 0, 8 0, 9 0, 6 0, 7 0, 7)T,
1 \
0, 8 1,
0,8 , 0, 2 0, 6
1 \
0, 8 0, 9 ,
1 ,
0, 9
1 )
0, 9
0, 5 0, 9 ,
0,7 , 0, 5 0,4/
0, 3\
0, 9 1,
0,5 , 0, 9 0, 9
и требуется построить его минимальную форму.
В соответствии с первым шагом алгоритма (см. п. 7) для заданного автомата A*f строим автомат Af = A^ = (X, A, Y, r, {F(xs,y;)}, q), представляющий собой
F(xo,yo) =
F(xi,yo)
F(xo,yi) =
F(xi,yi) =
1 0, 6 0, 6 1
0, 2 0, 3 0, 5 0, 9
1 0, 9 0, 7 0, 9
0, 6 0, 9 0, 3 0, 8 0, 9
0, 8 0, 9 1 0, 5
0, 8 0, 8 0, 9 0, 3
0, 1 0, 8 1 0, 9
1 0, 9 0, 7 0, 7
0, 9 0, 7 1 0, 8
0, 8 0, 8 0, 9 0, 9 0, 9
0, 9 0, 9 0, 9 1
1 0, 9 1 0, 9
1 0, 6 0, 6 1
0, 7 0, 9 0, 8 0, 3
1 0, 8 0, 9 1
0, 9 0, 7 1 0, 2 0, 8
0, 7 0, 9 1 0, 6
V0,7 1 0, 8 0, 5
0, 9 1 1 0, 1
1 0, 3 0, 6 1
0, 9 0, 5 0, 8 0, 9
0, 9 1 0, 9 0, 6 0, 5
0, 2 0, 8 0, 9 0, 8
0, 3 0, 8 1 0, 9
обобщенный «пессимистический» нечеткий автомат, где г = (0, 8 0,2 0,2 0 0,1 0,1), 4= (0,5 0,2 0,1 0,4 0,3 0,3)т,
Р(жо, уо) =
Р(хо, ух)
Е(ж1,уо) =
0 0, 4 0, 4 0 0 0
0, 8 0, 7 0, 5 0 0, 1 0, 2
0 0, 1 0, 3 0 0, 1 0
0,4 0, 1 0, 7 0, 2 0, 1 0, 2
0, 2 0, 1 0 0 0, 5 0, 8
0, 2 0, 2 0, 1 0 0, 7 0, 4
0, 9 0, 2 0 0 0, 1 0
0 0, 1 0, 3 0 0, 3 0, 2
0, 1 0, 3 0 0 0, 2 0, 1
0, 2 0, 2 0, 1 0, 1 0, 1 0
0, 1 0, 1 0, 1 0 0 0,1
0 0, 1 0 0 0, 1 0
0 0, 4 0, 4 0 0 0, 1
0, 3 0, 1 0, 2 0 0, 7 0, 5
0 0, 2 0, 1 0 0 0, 1
0, 1 0, 3 0 0, 8 0, 2 0, 3
0, 3 0, 1 0 0 0, 4 0, 5
0, 3 0 0, 2 0 0, 5 0, бу
0, 1 0 0 0 0, 9 0, 7
0 0, 7 0, 4 0 0 0, 1
0, 1 0, 5 0, 2 0 0, 1 0
0, 1 0 0, 1 0, 4 0, 5 0, 5
0, 8 0, 2 0, 1 0 0, 2 0,1
V0, 7 0, 2 0 0 0, 1 01
Далее в соответствии со вторым шагом алгоритма производим минимизацию автомата А?, выполняя последовательные процедуры, подробно описанные в работе [5]: а) определяем и удаляем единственное недостижимое состояние аз и получаем нечеткий автомат А? с пятью состояниями (см. пример в [5]); б) строим для полученного автомата преобразующую матрицу Нд и, используя ее, находим автомат Ау? с четырьмя состояниями; в) строим для автомата Ау? преобразующую матрицу Нг и, используя ее, находим минимальную форму Ву = (X, В, г в, {Б1^ г/г)}, с[в) «пессимистического» нечеткого автомата А?, имеющую всего 3 состояния [5]:
В = {Ъ0, 61,62}, гв = (0,8 0,2 0,1), Цв = (0,5 0,2 0, 3)т,
0 0, 4 0
Яв (хо ,уо) = ( 0, 8 0, 7 0, 2
0, 2 0, 2 0, 8
( 0 0, 4 0, 1
Яв (х1 ,уо) = ( 0, 3 0, 2 0, 7
0, 3 0, 2 0, б
Я в (хо,У1) =
Я в (х1,у1) =
<0, 9 0,1 V0,1
0, 1 0, 1 ,0, 8
0,2 0, 0, 3 0,3 0, 1 0, 1
0
0, 7
0, 2
0, 9 0, 1 0, 2
Выполняя далее обратное преобразование В^ = Вр окончательно получаем минимальную форму заданного исходного автомата Л*, т.е. обобщенный «оптимистический» автомат В* = (X, В, У, гв, {Ев (х8,у;)}, }, где гв = (0,2 0,8 0,9),
= (0, 5 0, 8 0, 7)т,
1 0, 6
Fb (xo, yo) = I 0, 2 0, 3 0, 8
0, 8 0, 8 0, 2
( 1 0, 6 0, 9
Fb (xi ,yo) = I 0, 7 0, 8 0, 3
0, 7 0, 8 0,4
Fb (xo,yi)
Fb (xi,yi) =
f0,1 0, 9 V0, 9
0, 9 0, 9 i0, 2
0, 8 0, 7 0, 9
1
0, 3
0, 8
0, 9 0, 7 0, 9
0, 1
0, 9
0, 8
эквивалентный исходному и имеющий всего 3 состояния.
Литература
1. Кофман А. Введение в теорию нечетких множеств. М.: Радио и связь, 1982. 432 с.
2. Santos E. S. Maximin automata // Inform. and Control. Vol. 13. 1968. P. 363-377.
3. Kandel A., Lee S. C. Fuzzy Switching and Automata: Theory and Applications. New York, Crane Russak & Comp. Inc., 1979. 303 p.
4. Хохулина В. А., Чирков М. К. О разложении «оптимистических» нечетких автоматов // Математические модели. Теория и приложения. Вып. 11. СПб.: ВВМ, 2010. С. 134-147.
5. Пономарёва А. Ю., Чирков М. К. Оптимизация обобщенных нечетких автоматов // Математические модели. Теория и приложения. Вып. 11. СПб.: ВВМ, 2010. С. 148-168.
Статья поступила в редакцию 28 марта 2013 г.