Текст
                    Ю.Ю. Громов, О.Г. Иванова, М.Ю. Серегин,
В.Е. Дидрих, Ю.Ф. Мартемьянов, Ю.В. Минин
ПРЕДСТАВЛЕНИЕ ЗНАНИЙ
В ИНФОРМАЦИОННЫХ
СИСТЕМАХ
• Издательство ФГБОУ ВПО «ТГТУ» •


Министерство образования и науки Российской Федерации Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Тамбовский государственный технический университет» Ю.Ю. ГРОМОВ, О.Г. ИВАНОВА, М.Ю. СЕРЕГИН, В.Е. ДИДРИХ, Ю.Ф. МАРТЕМЬЯНОВ, Ю.В. МИНИН ПРЕДСТАВЛЕНИЕ ЗНАНИИ В ИНФОРМАЦИОННЫХ СИСТЕМАХ Рекомендовано Ученым советом университета в качестве учебного пособия для студентов высших учебных заведений, обучающихся по специальностям 090105 «Комплексное обеспечение информационной безопасности автоматизированных систем», 090303 «Информационная безопасность автоматизированных систем», 230201 «Информационные системы и технологии», 230104 «Системы автоматизированного проектирования» направлений подготовки 230200 «Информационные системы», 230400 «Информационные системы и технологии», 220100 «Системный анализ и управление», 230100 «Информатика и вычислительная техника» и СПО - 230105 «Программное обеспечение вычислительной техники и автоматизированных систем» Тамбов • Издательство ФГБОУ ВПО "ТГТУ" • 2012
УДК 004.82(075) ББК 32.973.202я73 П711 Рецензенты: Доктор физико-математических наук, профессор В.Ф. Крапивин Доктор физико-математических наук, профессор Е.Ф. Кустов П711 Представление знаний в информационных системах [Электронный ресурс] : учебное пособие / Ю.Ю. Громов, О.Г. Иванова, М.Ю. Серегин, В.Е. Дидрих, Ю.Ф. Мартемьянов, Ю.В. Минин. - Тамбов : Изд-во ФГБОУ ВПО «ТГТУ», 2012. - 168 с. Рассмотрены основные понятия и определения теории нечет¬ ких множеств, нечеткие отношения, нечеткая и лингвистическая переменные, нечеткие высказывания и нечеткие модели систем, алгоритм нечеткого вывода на основе нечеткой продукционной мо¬ дели с адаптацией операций над нечеткими множествами и другие вопросы. Предназначено для студентов высших учебных заведений, обучающихся по специальностям 090105 «Комплексное обеспече¬ ние информационной безопасности автоматизированных систем», 090303 «Информационная безопасность автоматизированных сис¬ тем», 230201 «Информационные системы и технологии», 230104 «Системы автоматизированного проектирования» направлений под¬ готовки 230200 «Информационные системы», 230400 «Информаци¬ онные системы и технологии», 220100 «Системный анализ и управ¬ ление», 230100 «Информатика и вычислительная техника» и СПО - 230105 «Программное обеспечение вычислительной техники и ав¬ томатизированных систем». УДК 004.82(075) ББК 32.973.202я73 © Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Тамбовский государственный технический университет» (ФГБОУ ВПО «ТГТУ»), 2012
ВВЕДЕНИЕ Нечеткое моделирование не является альтернативой различным подходам к моделированию сложных систем и процессов, а прежде всего предоставляет эффективные методы и средства для их изучения в следующих основных сферах применения. Во-первых, недостаточность или неопределенность знаний об ис¬ следуемой системе, когда получение требуемой информации является сложной, трудоемкой, дорогостоящей или вовсе невозможной задачей. При этом четкие модели не могут быть получены либо они являются слишком сложными для практического использования. Значимая же часть информации об этих системах доступна в виде экспертных дан¬ ных или в эвристическом описании процессов функционирования. Эта информация может быть нечеткой и недостаточно определенной для того, чтобы быть выраженной математическими зависимостями. Кро¬ ме того, информация о системе может быть разнокачественной, а оценка значений параметров — проводиться с помощью различных шкал. Однако зачастую возможно описать функционирование этих систем в виде эвристических предпочтений, используя конструкции естественного языка в форме нечетких правил или отношений различ¬ ного типа. Другой аспект неопределенности знаний о системе связан с неясностью или нечеткостью выделения и описания границы системы или отдельных ее состояний, а также входных и выходных воздействий. Во-вторых, адекватная обработка неопределенной информации, если параметры и входные данные не являются точными и корректно представленными. Часто традиционные методы не только не позволя¬ ют адекватно обработать данные, но также не позволяют учесть есте¬ ственно присущую этим данным неопределенность. Нечеткая логика и теория нечетких множеств являются одним из эффективных подходов к решению данной проблемы. В-третьих, «прозрачное» моделирование и идентификация реаль¬ ных систем, которые являются нелинейными в своей основе и не могут быть представлены моделями, использующими существующие методы идентификации. В последнее время серьезное внимание уделяется раз¬ витию методов идентификации нелинейных систем на основе экспе¬ риментальных данных. Однако, сравнивая нечеткие модели с другими известными методами, например с искусственными нейронными сетя¬ ми, можно отметить их большую прозрачность, которая возможна бла¬ годаря их лингвистической интерпретации в виде нечетких продукци¬ онных правил. Логическая структура этих правил способствует пониманию и анализу системы количественно-качественными методами. В зависи¬ мости от назначения постулаты и положения теории нечетких мно¬ 3
жеств и нечеткой логики в нечетких моделях могут использоваться: непосредственно при описании системы, задании параметров системы, задании входов, выходов и состояний системы. Основные трудности при использовании нечетких моделей для решения практических задач связаны, как правило, с априорным определением компонентов этих моделей (нечетких высказываний, функций принадлежности для каж¬ дого значения лингвистических переменных, структуры базы нечетких правил и др.). Поскольку эти компоненты зачастую выбираются субъ¬ ективно, они могут быть не вполне адекватны моделируемой системе или процессу. Основное же преимущество нейросетевого подхода — возмож¬ ность выявления закономерностей в данных, их обобщение, т.е. извле¬ чение знаний из данных, а основной недостаток — невозможность не¬ посредственно (в явном виде, а не в виде вектора весовых коэффици¬ ентов межнейронных связей) представить функциональную зависи¬ мость между входом и выходом исследуемого объекта. Другим недо¬ статком нейросетевого подхода является трудность формирования представительной выборки, большое число циклов обучения и забыва¬ ние «старого» опыта, сложность определения размера и структуры нейронной сети. Подходы к исследованию сложных систем на основе нечетких и нейросетевых моделей взаимно дополняют друг друга, по¬ этому целесообразна их интеграция на основе принципа «мягких» вы¬ числений (Soft Calculation). Основы построения таких моделей сводят¬ ся к следующему: терпимость к нечеткости и частичной истинности используемых данных для достижения интерпретируемости, гибкости и низкой стоимости решений. 4
1. ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ ТЕОРИИ 1.1. РАССТОЯНИЕ МЕЖДУ НЕЧЕТКИМИ МНОЖЕСТВАМИ, Пусть А и В — нечеткие подмножества универсального множества Е. Введем понятие расстояния р(А, В) между нечеткими множествами. При введении расстояния обычно предъявляются следующие требования: 1) Р(А, В) > Q — неотрицательность; 2) р(А, В) = р(В, А) - симметричность; К этим трем требованиям можно добавить четвертое: р(А, A) = Q. Определим следующие расстояния по формулам. Расстояние Хемминга (или линейное расстояние): Расстояние Хемминга и квадратичное расстояние, в случае когда e бесконечно, определяются аналогично с условием сходимости соот¬ ветствующих сумм: если e счетное, то НЕЧЕТКИХ МНОЖЕСТВ ИНДЕКСЫ НЕЧЕТКОСТИ 3) р(А, В) < р(А, С) + р(С, В). (1.1) i=1 Очевидно, что р (А, В) e [Q, п]. Евклидово или квадратичное расстояние: e(A, В) = )(m A (Х) -me (Х))2, e( A, В) e[Q,Vn]. (1.2) Относительное расстояние Хемминга: e(A, В) e [Q,Vn]. (1.3) Относительное евклидово расстояние: (1.5) i=1 (1.6) 5
если e = R (числовая ось), то ¥ р( A В) = j| mA (x) — m в 00 |dx, (1.7) —¥ (1.8) Замечание. Здесь приведены два наиболее часто встречаю¬ щихся определения понятия расстояния. Разумеется, для нечетких множеств можно ввести и другие определения понятия расстояния. Перейдем к индексам нечеткости, или показателям размытости нечетких множеств. Если объект x обладает свойством R (порождающим нечеткое множество А) лишь в частной мере, т.е. 0 <ma(X) < 1, то внутренняя неопределенность, двусмысленность объекта x в отношении R прояв¬ ляется в том, что он, хотя и в разной степени, принадлежит сразу двум противоположным классам: классу объектов, «обладающих свойством R», и классу объектов, «не обладающих свойством R». Эта двусмыслен¬ ность максимальна, когда степени принадлежности объекта обоим классам равны, т.е. ma(X) = ma(X) = 0,5, и минимальна, когда объект принадлежит только одному классу, т.е. либо mA(X) = 1 и ma (X) = 0 , либо m A (X) = 0 и m a (X) = 1. В общем случае показатель размытости нечеткого множества можно определить в виде функционала d(A) со значениями в R (поло¬ жительная полуось), удовлетворяющего условиям: 1. d(A) = 0 тогда и только тогда, когда А — обычное множество; 2. d(A) максимально тогда и только тогда, когда ma (X) = 1 и mA(X) = 0,5 для всех X е E . 3. d(A) = d(B) , если А является заострением В, т.е. mA(X) £mв (X) при mВ (X) < 0,5; mA (X) ^m в (X) при mВ (X) > 0,5; m A (x) - любое при m B (x) = 0,5. 4. d (A) = d (A) — симметричность по отношению к 0,5. 5. d (Au В) + d (An B) = d (A) + d (B). 6
Замечание. Приведенная система аксиом при введении кон¬ кретных показателей размытости часто используется частично, т.е., например, ограничивается свойствами Р1, Р2 и Р3 либо некоторые свойства усиливаются или ослабляются в зависимости от решаемой задачи. Рассмотрим индексы нечеткости (показатели размытости), кото¬ рые можно определить, используя понятие расстояния. 1.1.1. ОБЫЧНОЕ МНОЖЕСТВО, БЛИЖАЙШЕЕ К НЕЧЕТКОМУ Пусть А — нечеткое множество. Вопрос: какое обычное множество Ас Е является ближайшим к А, т.е. находится на наименьшем евкли¬ довом расстоянии от нечеткого множества А? Таким подмножеством, обозначаемым А, является подмножество с характеристической функцией 0, если mА (х) < 0,5; mА (X) = Н если mА (х) > 0,5; 0 или 1, если mА (х) = 0,5. Обычно принимают mА (х,) = 0 , если mА (xj) = 0 . Используя по¬ нятие обычного множества, ближайшего к нечеткому, введем следую¬ щие индексы нечеткости нечеткого множества А. Линейный индекс нечеткости d (A) = -р(A, A). (1.9) n 2 Здесь р(A, A) — линейное (хеммингово) расстояние; множитель — n обеспечивает выполнение условия 0 < d(A) < l. Квадратичный индекс нечеткости d(A) =--тe(A,A), 0 < d(A) < l. (1.10) Vn Здесь е(А, А) - квадратичное (евклидово) расстояние. Замечания. 1. Мы ввели линейный и квадратичный индексы нечеткости, ис¬ пользуя понятие расстояния и понятие обычного множества, ближай¬ шего к нечеткому. Эти же индексы можно определить, используя опе¬ рацию дополнения, следующим образом: 2n d(A) = — V min(mA(x,), ma(X)) - линейный индекс; (1.11) nl~1 7
d(A) =-2тX min(mA(X|), mA(X|)) - квадратичный индекс. (1.12) 2 л/п 2. Отметим следующие свойства, связанные с ближайшим обыч¬ ным множеством A о В = A п В , A и В = A и В, а также "xе E: |mA(X)-mA(X)| = mAna(X), откуда для линейного индекса нечеткости имеем 2 n d<A> = п X m апА (X). d.13) n l =1 т.е. в этом представлении становится очевидным, что d (A) = d(A) . 3. Нечеткое множество с функцией принадлежности 2mапа (X) иногда называют векторным индикатором нечеткости. 1.2. ОЦЕНКА НЕЧЕТКОСТИ ЧЕРЕЗ ЭНТРОПИЮ Ограничимся случаем конечного универсального множества. Эн¬ тропия системы с п состояниями 61, 62,..., еп, с которыми связаны вероятности р,, Р2, .... рп, определяется выражением 1 п Н (Р1, Р2, ..., Рп) =- — X Рl ln Р , Hmin = 0 Нmax = 1. In п|=1 В случае нечетких множеств положим pа(х) = mA(X). (1.14) X m а (x) i =1 Тогда общую формулу, позволяющую подсчитать энтропию по нечеткости, можно записать в следующем виде: 1 п H (pa (X|), P A (X2), .., P A (Xi)) = ~ X p A (X )ln p A (X ). (1 15) In п |=1 З а м е ч а н и е. Попытки использования энтропии в теории нечет¬ ких множеств (в приведенном выше виде) показали, что это не лучший способ оценки. Однако работы по обобщению понятия энтропии для нечетких множеств продолжаются. 8
1.3. ПРИНЦИП ОБОБЩЕНИЯ Принцип обобщения — одна из основных идей теории нечетких множеств — носит эвристический характер и используется для расши¬ рения области применения нечетких множеств на отображения. Пусть X и Y — два заданных универсальных множества. Говорят, что имеется функция, определенная на X со значением в Y, если, в силу некоторого закона f, каждому элементу х е X соответствует элемент у е Y . Когда функцию f : X ® Y называют отображением, значение f (х) е Y , ко¬ торое она принимает на элементе х е X , обычно называют образом элемента х. Образом множества A с X при отображении c ® Y называют множество f (A) с Y тех элементов Y, которые являются образами элементов множества А. Замечание. Мы напомнили классическое определение ото¬ бражения, которое в теории нечетких множеств принято называть чет¬ ким отображением, так как наряду с ним мы введем понятие нечеткого отображения (или нечеткой функции). Будем говорить, что имеется нечеткая функция f, определенная на X со значением в Y, если она каждому элементу х е X ставит в соот¬ ветствие элемент у е Y со степенью принадлежности im (х, у). Нечет¬ кая функция f определяет нечеткое отображение f : X ——®Y . Принцип обобщения заключается в том, что при заданном четком f : X ® Y или нечетком f : X ——®Y отображении для любого не¬ четкого множества А , заданного на X, определяется нечеткое множест¬ во f(A) на Y, являющееся образом А . Пусть f : X ® Y - заданное четкое отображение, а A = {mA (х)/х} - нечеткое множество в X. Тогда образом А при отображении f является нечеткое множество f(A) на Y с функцией принадлежности: mf(a) = sup ma(х); уеy, (1.16) хе f -1( у) где fЛу) = {^f(х) = у}. В случае нечеткого отображения f : X ——®Y , когда для любых хе X и у е Y определена двуместная функция принадлежности mi (х, у), образом нечеткого множества А, заданного на X, является нечеткое множество f(A) на Y с функцией принадлежности mf(a)(у) = supmin(ma(х), mf (х, у)). (1.17) хе Е 9
Замечание. Мы не приводим примеров использования прин¬ ципа обобщения. Предлагаем подумать, каким образом можно опреде¬ лить нечеткое число и как с помощью принципа обобщения (не забы¬ вая декартова произведения) и классических операций возведения числа в степень (одноместная), сложения и умножения (двуместные) получать соответствующие нечеткие результаты. К нечетким отобра¬ жениям мы вернемся, когда будем рассматривать понятие нечеткого отношения. Вопросы для самопроверки 1. Какие требования предъявляются при введении расстояния? 2. Формула расстояния Хемминга. 3. Формула квадратичного расстояния. 4. Формула относительного расстояния Хемминга. 5. Формула относительного евклидова расстояния. 6. Каким условиям должен удовлетворять показатель размыто¬ сти нечеткого множества, который можно определить в виде функ¬ ционала d(A)? 7. В чем состоит принцип обобщения? 8. В чем состоит принцип оценки нечеткости через энтропию? 10
2. НЕЧЕТКИЕ ОТНОШЕНИЯ 2.1. ОПРЕДЕЛЕНИЕ НЕЧЕТКОГО ОТНОШЕНИЯ Пусть Е = Еі х Е2 х...х Еп — прямое произведение универсальных множеств и М — некоторое множество принадлежностей (например, М = [0, 1]). Нечеткое п-арное отношение определяется как нечеткое подмножество R на Е, принимающее свои значения в М. В случае п = 2 и М = [0, 1] нечетким отношением R между множествами X = Е1 и Y = Е2 будет называться функция R:(X, Y)—> [0, 1], которая ставит в соответствие каждой паре элементов (х, у) е X х Y величину mR(Х, у) е [0,1]. Обозначение: нечеткое отношение на X х Y запишется в виде х е X, у е Y : xRy. В случае когда X = Y, т.е. X и Y совпадают, нечеткое отношение R: X х X ® [0,1] называется нечетким отношением на множестве X. Примеры: 1. Пусть X = {х1, х2, х3}, Y = {у1, у2, у3, у4}, М = [0, 1]. Нечеткое от¬ ношение R = XRY может быть задано, к примеру, таблицей: у1 у2 у3 у4 Х1 0 0 0,1 0,3 Х2 0 0,8 1 0,7 Х3 1 0,5 0,6 1 2. Пусть X = Y = (-п , ¥), т.е. множество всех действительных чи¬ сел. Отношение Х >> у (х много больше у) можно задать функцией принадлежности 0, если х < у; 1 если у < х m r ( х, у) = 1 + - 1 (х- у)2 3. Отношение R для которого mR(X у) = е k(Х у) , при достаточно больших к можно интерпретировать так: «х и у близкие друг к другу чис¬ ла». В случае конечных или счетных универсальных множеств очевидна интерпретация нечеткого отношения в виде нечеткого графа, в котором пара вершин (х,, ^) в случае XRX соединяется ребром с весом m R (Х, Xj), в случае XRY пара вершин (х,у) соединяется ребром с весомр (х, у). 2 11
Примеры: 1. Пусть X = {х-і, Х2, хз} и задано нечеткое отношение R ХхХ -> [0, 1], представимое графом: хі Пусть X = {х1, х2} и Y ={у1, у2, у3}, тогда нечеткий граф вида: Уі У2 Уз задает нечеткое отношение XRY. Замечание. В общем случае нечеткий граф может быть опре¬ делен на некотором G с X х Y , где G — множество упорядоченных пар (х, у) (необязательно всех возможных) такое, что G n G = 0 и G n G = X х Y. Будем использовать обозначения ѵ вместо max и л вместо X X X min . X Пусть R:X х Y® [0, l]. 2.1.1. НОСИТЕЛЬ НЕЧЕТКОГО ОТНОШЕНИЯ Носителем нечеткого отношения R называется обычное множест¬ во упорядоченных пар (х, у), для которых функция принадлежности положительна: S(R) = {(х, у):mr(x, у) >0}, (2.1) нечеткое отношение, содержащее данное нечеткое отношение или со¬ держащееся в нем. 12
Пусть R и R — два нечетких отношения такие, что "(х, у) е X х Y: m r (x, у) < m r2 (x, y), (2.2) тогда говорят, что R2 содержит R или R содержится в R2. Обозначение: R с R2. Пример: 0, х > у; Отношения R,, R2 — отношения типа у >> х (у много больше х). При k2 > k, отношение R2 содержит R. 2.2. ОПЕРАЦИИ НАД НЕЧЕТКИМИ ОТНОШЕНИЯМИ I. Объединение двух отношений R и R2. Объединение двух отношений обозначается R u R и определя¬ ется выражением Примеры: 1. Ниже изображены отношения действительных чисел, содержа¬ тельно означающие: xR,у — «числа х и у очень близкие», xR2y — «числа х и у очень различны» и их объединение xR,у u xR^y — «числа х и у очень близкие или очень различные». Функции принадлежности от¬ ношений заданы на [ѵ — х|. m r u r2 (x у) = m r (x у) ѵ m r2 (x, у). (2.3) і*-у| ІХ-УІ ІХ-УІ 13
mR|UR2 (X У) = |m r( X, y), |y - X £a; lmr2 (X y), |y-X >a, где a - такое | y - x| , что mR (X, y) = mR2 (X, y). R У\ Уі Уъ Х1 0,1 0 0,8 х2 1 0,7 0 Уі Уі >гз X, 0,7 0,9 1 ■х. 0,3 0,4 0,5 Л, ий, = Уі Уі Уз Xj 0,7 0,9 1 1 0,7 0,5 11. Пересечение двух отношений R и R2. Пересечение двух отношений R и R обозначается R n R2 и определяется выражением mr2(x, y) = mr (x, y)Amr2(x, y). (2.4) Примеры: 1. Ниже изображены отношения: xR,у, означающее «модуль раз¬ ности у — х| близок к a», xR2y, означающее «модуль разности |у — х| близок к р», и их пересечение. R 2 14
Алгебраическое произведение двух отношений Алгебраическое произведение двух отношений R и R обозна¬ чается R • R и определяется выражением mr, r2 (x y) = mr (x, y)mr2 (x, y). (2.5) Алгебраическая сумма двух отношений Алгебраическая сумма двух отношений R и R обозначается R + R2 и определяется выражением m r+Rj =m R| (x, У) + m Rj(x, y) - -m R| (x, y) m Rj(x, у) . Для введенных операций справедливы следую¬ щие свойства дистрибутивности: R n (R u R3) = (R, n Rj)u (R| n R3), R u (Rn R3) = (R u Rj)n (R u R3), R • (R u R) = (R • R) u (R • R), R • (R n R) = (R • R) n (R • R), R +(R u R) = (R + R) u (R + R), R +(R n R) = (R + R) n (R + R). Дополнение отношения Дополнение отношения R обозначается R и определяется функ¬ цией принадлежности m R (x, y) = 1 -m r (x, y). Дизъюнктивная сумма двух отношений Дизъюнктивная сумма двух отношений R и R обозначается R Ѳ R и определяется выражением R © R = (R n R) u (Ri n Rj) . Обычное отношение, ближайшее к нечеткому Пусть R — нечеткое отношение с функцией принадлежности mr(x, y). Обычное отношение, ближайшее к нечеткому, обозначается R и определяется выражением 0, если mR (x, y) < 0,5; mR(x, y) = <1, если mR(x y) > 0,5; 0 или 1, если mR (x, y) = 0,5. 15
По договоренности принимают m R (x, y) = 0 при mR (x, y) = 0,5. Проекции нечеткого отношения Пусть R — нечеткое отношение R: (х, у) ® [0, 1]. Первой проекци¬ ей R отношения R (проекция на X) называется нечеткое множест¬ во Rj, заданное на множестве X, с функцией принадлежности mRj =vmR(x, y). (2.6) 1 y Аналогично второй проекцией R (проекцией на Y) называется нечеткое множество R2, заданное на множестве Y, с функцией при¬ надлежности mR2=vmr(x, y). (2.7) 2 X Величина h(R) = ѵцr (x) = ѵцr- (x) называется глобальной про- x ^ y 2 екцией отношения R. Если h(R) = l, то отношение R нормально, в про¬ тивном случае — субнормально. Пример'. R = Уі У 2 Уз Ул У 5 X, 0,1 0,2 1 0,3 0,9 x2 0,9 0,1 0,5 0,8 0,5 x3 0,4 0 0,6 1 0,3 0,9 0,9 0,2 1 1 0,9 Цилиндрические продолжения проекций нечеткого отношения Проекции R1j и R2j нечеткого отношения XRY в свою очередь оп¬ ределяют в XxY нечеткие отношения Rj и R с функциями принад¬ лежности: m r, (x, y) = m r, (x) при любом y, |m Rj (x, y) = m Rj (x) при лю¬ бом x, называемые соответственно цилиндрическим продолжением R1j и цилиндрическим продолжением R2j . 16
Замечание. Очевидно, что для любых нечетких подмножеств А и В, определенных соответственно на X и Y, можно построить их ци¬ линдрические продолжения А и В. *1 1 х2 0,9 х} 1 Уі У2 Уз У* Уі 1 1 1 1 1 *2 0,9 0,9 0,9 0,9 0,9 1 1 1 1 1 Уі У 2 Л У4 У 5 0,9 0,2 1 1 0,9 0,9 0,2 1 1 0,9 х2 0,9 0,2 1 1 0,9 х3 0,9 0,2 1 1 0,9 Сепарабельность отношений Нечеткое отношение XRY называется сепарабельным, если оно равно пересечению цилиндрических продолжений своих проекций, т.е. если R = R n R, т.е. mr(х, у) = mr, (х) n mR,. Замечание. Если определено декартово произведение нечет¬ ких множеств (выше оно введено), то очевидно, что нечеткое отноше¬ ние XRY сепарабельно, если оно является декартовым произведением своих проекций, т.е. R = Rj х R. Пример (продолжение): Уі У 2 Л У4 У= 0,9 0,2 1 1 0,9 *2 0,9 0,2 0,9 0,9 0,9 х3 0,9 0,2 1 1 0,9 т.е. исходное отношение R несепарабельно. 17
Композиция двух нечетких отношений Пусть R — нечеткое отношение R: (X х Y)® [0,1] между X и Y и R - нечеткое отношение R: (Y х Z) ® [0,1] между Y и Z. Нечеткое отношение между X и Z, обозначаемое R • R, определенное через R и R выражением m r r (x, z) = v [m r( x y) Am r( y, z)] , называется (max-mi п)-композицией отношений R и Rg. Пример ы\ v m R|.R2(x|, Z1) = [m R|(X1, y1) Am R2( yl, 2l)]v[m R|(X1, y2) Am R2( y2, Z1)] v[mR (x1, y3) A mR2 (y3, Z1)] = = (0,1 A 0,9) v (0,7 A 0,3) v (0,4 a 0,1) = 0,1 v 0,3 v 0,1 = 0,3. mr r (X1, Z2) = (0,1 a 0) v (0,7 a 0,6) v (0,4 a 1) = 0 v 0,6 v 0,4 = 0,6 , mR|«R2 (x1, z3) = 0,1 18 mR«R2 (X2, Z5) = 0, 5
Замечание. В данном примере вначале использован «аналити¬ ческий» способ композиции отношений R, и R^, т.е. i-я строка R, «умножается» на j-й столбец R с использованием операции л, полу¬ ченный результат «свертывается» с использованием операции ѵ в m(X, Zj). Ниже приведены графы, соответствующие R, и R^, «склеенные» по Y. В полученном графе рассматриваем пути x от xi к Zj и каждо¬ му ставим в соответствие минимальный из «весов» его составляющих. Затем определяем максимум по всем путям из xi в Zj , который и дает искомое m(x, Zj). Свойства max-mi n-композиции Операция (тах-тіп)-композиции ассоциативна, т.е. R • (R • R,) = (R • Rj • R,, дистрибутивна относительно объединения, но недистрибутивна отно¬ сительно пересечения: R • (R u R) = (R • RJ u (R, • R,), R • (R n R) * (R, • R2) n (R • R,). Кроме того, для (тах-тіп)-композиции выполняется следующее важное свойство: если R, с R,, то R• R, с R• Rg. 19
(тзсх-*)-композиция В выражении . r2(х z) = v [mR|(x, у) лцr1 (y, z)] , для (max- тіп)-композиции отношений R и R2 операцию л можно заменить любой другой, для которой выполняются те же ограничения, что и для л: ассоциативность и монотонность (в смысле неубывания) по каждо¬ му аргументу. Тогда В частности, операция л может быть заменена алгебраическим умножением, тогда говорят о (max — рго^1)-композиции. Обычное подмножество a-уровня нечеткого отношения Обычным подмножеством a-уровня нечеткого отношения R на¬ зывается четкое (обычное) отношение Ra такое, что где aRa означает, что все элементы Ra умножаются на a. 2.3. УСЛОВНЫЕ НЕЧЕТКИЕ ПОДМНОЖЕСТВА Пусть X и Y — универсальные множества, взаимосвязь которых задана нечетким отношением R: (X х Y) ® [0,1], т.е. для каждой пары (X у) е X xY задано значение функции принадлежности Пусть А — некоторое нечеткое множество, заданное на X, т.е. оп¬ ределена функция принадлежности mА (X) для всех х из X. Тогда не¬ четкое множество А и нечеткое отношение R индуцируют в Y нечеткое подмножество В с функцией принадлежности (2.8) Очевидно, что из a1 < a2 следует Ra ^ R*2. Теорема декомпозиции Любое нечеткое отношение R представимо в форме R = U a R*, 0 <a< 1, a m r (x, у) е[0,1]. mВ (у) = max min[mA(x), mr(x, y)] = v[m A(X) лтR(X, y)]. xeX X Обозначение: В = A • R. 20
Пример: Пусть X = {х1, х2, х3} , Y = {у1, у2, у3, y4} и задано нечеткое отно¬ шение XRY у1 у 2 у3 у4 х 0,8 1 0 0,3 Х2 0,8 0,3 0,8 0,2 Х3 0,2 0,3 0 0,4 и нечеткое множество А = {0,3/х1,0,7/ х2,1/ х3}. Проведем операцию л для А и столбца у1: Уі Уі Л 0,8 0,ЗЛ0,8 0,3 0,8 0,7Л0,8 0,7 0,2 1Л0,2 0,2 X, *2 тэ 0,3 0,7 1 После выполнения операции ѵ на элементах полученного столбца имеем (у1) = 0,3 ѵ 0,7 ѵ 0,2 = 0,7. Проделав аналогичные вычисления для у2, у3, у4, имеем тв (У2) = °Д тв(У3) = 0,7 т в (У4) = 0,4 И окончательно: A R В 0,7 0,3 0,7 0,4 0,2 0,3 0 0,4 Замечание. При заданном R если А индуцирует В, то бли¬ жайшее четкое подмножество А индуцирует В. 21
2.4. НЕЧЕТКИЕ ПОДМНОЖЕСТВА, ПОСЛЕДОВАТЕЛЬНО ОБУСЛОВЛИВАЮЩИЕ ДРУГ ДРУГА Если А индуцирует А2 посредством R,, А индуцирует А посредством R2, Ап-1 индуцирует An посредством Rn-I • Rn-2 • ...• R,, где R„_, • R„_2 «к• R, — определенная выше композиция нечетких от¬ ношений R,, R,..., Rn. Пример: Вернемся к примеру (тах-тіп)-композиции. R2 У\ Уг Уі 2І z2 2Ъ 24 X, од 0,7 0,4 Л 0,9 0 1 0,2 X, 1 0,5 0 ^2 0.3 0,6 0 0,9 0.1 1 0 0,5 R1 • R2 z\ 22 Z3 24 xt 0,3 0,6 0,1 0,7 x2 0,9 0,5 1 0,5 Пусть А = -{0,3/ x,,0,7/ x2}, тогда: Ai Ri 0,3 0.7 0Д 0,7 0,4 1 0,5 0 A2 0,7 0,5 0,3 A2 A3 0,9 0 1 0,2 0,7 0,5 0,3 • 0,3 0,6 0 0,9 = 0,7 0,5 0,7 0,5 0,1 1 0 0,5 A1 0,3 0,7 R1 • R2 0,3 0,6 0,1 0,7 0,9 0,5 1 0,5 A3 0,7 0,5 0,7 0,5 R 2 22
Немного о бинарных отношениях вида XRX Нечеткие отношения вида XRX задаются функцией принадлежно¬ сти mr(х, у), но с условием, что х и у — элементы одного и того же универсального множества. В зависимости от своих свойств (основные — симметричность, рефлексивность, транзитивность) конкретные не¬ четкие отношения задают отношения сходства и различия, порядка или слабого порядка между элементами X. Они имеют обширную сфе¬ ру приложений в задачах автоматической классификации и принятия решений (сравнение альтернатив). Вопросы для самопроверки 1. Дайте определение нечеткого отношения. 2. Что называется носителем нечеткого отношения? 3. Какие отношения над нечеткими множествами вы знаете? 4. Что называется композицией нечетких отношений? 5. Укажите известные вам свойства композиций. 6. В чем состоит теорема декомпозиций? 7. Как обозначаются условные нечеткие подмножества? 23
3. НЕЧЕТКАЯ И ЛИНГВИСТИЧЕСКАЯ ПЕРЕМЕННЫЕ 3.1. ПОНЯТИЕ НЕЧЕТКОЙ И ЛИНГВИСТИЧЕСКОЙ ПЕРЕМЕННЫХ Понятие нечеткой и лингвистической переменных используется при описании объектов и явлений с помощью нечетких множеств. Нечеткая переменная характеризуется тройкой <a, X, А>, где a — наименование переменной; X — универсальное множество (об¬ ласть определения a); А — нечеткое множество на X, описывающее ог¬ раничения (т.е. mА (х)) на значения нечеткой переменной a. Лингвистической переменной называется набор <р, T, X, G, M>, где b — наименование лингвистической переменной; Т — множество ее значений (терм-множество), представляющих собой наименования нечетких переменных, областью определения каждой из которых явля¬ ется множество X. Множество Т называется базовым терм-множеством лингвистической переменной; G — синтаксическая процедура, позво¬ ляющая оперировать элементами терм-множества Т, в частности гене¬ рировать новые термы (значения). Множество T и G(T) , где G(T) — множество сгенерированных термов, называется расширенным терм- множеством лингвистической переменной; М — семантическая проце¬ дура, позволяющая превратить каждое новое значение лингвистиче¬ ской переменной, образуемое процедурой G, в нечеткую переменную, т.е. сформировать соответствующее нечеткое множество. Замечание. Чтобы избежать большого количества символов: — символ b используют как для названия самой переменной, так и для всех ее значений; — пользуются одним и тем же символом для обозначения нечет¬ кого множества и его названия, например терм «молодой», являющий¬ ся значением лингвистической переменной b = «возраст», одновре¬ менно есть и нечеткое множество М («молодой»). Присвоение нескольких значений символам предполагает, что контекст позволяет разрешить возможные неопределенности. Пример: Пусть эксперт определяет толщину выпускаемого из¬ делия с помощью понятий «малая толщина», «средняя толщина» и «большая толщина», при этом минимальная толщина равна 10 мм, а максимальная — 80 мм. Формализация такого описания может быть проведена с помо¬ щью следующей лингвистической переменной: <b, Т, X, G, М>, 24
где b — толщина изделия; Т — {«малая толщина», «средняя толщина», «большая толщина»}; X = [10, 80]; G - процедура образования новых термов с помощью связок «и», «или» и модификаторов типа «очень», «не», «слегка» и др. Например: «малая или средняя толщина», «очень малая толщина» и др.; М — процедура задания на X = [10, 80] нечетких подмножеств А = «малая толщина», А = «средняя толщина», А = = «большая толщина», а также нечетких множеств для термов из G(T) в соответствии с правилами трансляции нечетких связок и модификаторов «и», «или», «не», «очень», «слегка» и другие операции над нечеткими множествами вида: А п В, А и В , А , CON А = A2, DILA = А05 и др. Замечание. Наряду с рассмотренными выше базовыми значе¬ ниями лингвистической переменной «толщина» (Т = {«малая толщи¬ на», «средняя толщина», «большая толщина»}) возможны значения, зависящие от области определения X. В данном случае значения лин¬ гвистической переменной «толщина изделия» могут быть определены как «около 20 мм», «около 50 мм», «около 70 мм», т.е. в виде нечетких чисел. Пример (продолжение): Функции принадлежности нечетких множеств: «малая толщина» = А1 , «средняя толщина» = А2 , «большая тол¬ щина» = А. Функция принадлежности: нечеткое множество «малая или средняя толщина» = А1 и А1 . 3.2. НЕЧЕТКИЕ ЧИСЛА Нечеткие числа — нечеткие переменные, определенные на число¬ вой оси, т.е. нечеткое число определяется как нечеткое множество А на множестве действительных чисел R с функцией принадлежности m а (х) е [0,1] , где х — действительное число, т.е. xе R. и А А 1 10 jij 1 25
Нечеткое число А нормально, если для любых х, y, z выполняется ma (x) >ma (y)л ma (z). (3.1) Множество a-уровня нечеткого числа А определяется как Aa = \Хma(х) > a}. (3.2) Подмножество SA с R называется носителем нечеткого числа А, если s ={xma(x) > 0}. (3.3) Нечеткое число А унимодально, если условие ma(X) = 1 справед¬ ливо только для одной точки действительной оси. Выпуклое нечеткое число А называется нечетким нулем, если m a (0) = sup(m a (x)). (3.4) x Нечеткое число А положительно, если Vx е SA, x> 0, и отрица¬ тельно , если Vx е SA, x < 0. 3.3. ОПЕРАЦИИ НАД НЕЧЕТКИМИ ЧИСЛАМИ Расширенные бинарные арифметические операции (сложение, умножение и пр.) для нечетких чисел определяются через соответст¬ вующие операции для четких чисел с использованием принципа обоб¬ щения следующим образом. Пусть А и В — нечеткие числа, * — нечеткая операция, соответст¬ вующая операции * над обычными числами. Тогда с = а ~ в »mc (z) = v (ma(x) лmB (y)). (3.5) Z=X *Y Отсюда С = А + В »mc (z) = v (m A (x) л|а B (У)), (3.6) Z=X +Y С = А — В »mС (z) = v (m A(x) л|аB (У)), (3.7) Z—X—Y с = а ~ в «• me (z) = v (ma(x) л mв (y)), (3.8) Z=X 'Y С = max(А,В)» me(z) = v (ma(x)лmв(y)), (3.9) z =max( x, y) С = min(А,В) »me(z) = v (mA(x)л|ав(y)). (3.10) z =max( x, y) 26
3.4. НЕЧЕТКИЕ ЧИСЛА (L-R)-THnA Нечеткие числа (L-R)-rana — это разновидность нечетких чисел специального вида, т.е. задаваемых по определенным правилам с це¬ лью снижения объема вычислений при операциях над ними. Функции принадлежности нечетких чисел (L-R)-rarn задаются с помощью невозрастающих на множестве неотрицательных действи¬ тельных чисел функций действительного переменного L(x) и R(x), удовлетворяющих свойствам: а) L(-x) = L(x), R(-x) = R(x); б) L(0) = R(0). Очевидно, что к классу ^-Р)-функций относятся функции, гра¬ фики которых имеют следующий вид (рис. 3.1). Примерами аналитического задания (L-R)-rarn функций могут быть R( x) = L( x) = e 1 1 + x' 1 , p - 0; , p - 0, и т.д. Пусть L(y) и R(y) — функции (L-R)-rarn (конкретные). Унимо¬ дальное нечеткое число А с модой а (т.е. mА (а) = 1) с помощью L(y) и R(y) задается следующим образом: m а (х) = , і a - x) LI I при x < a, R b при x - a, где а — мода; a > 0, b > 0 — левый и правый коэффициенты нечеткости. Рис. 3.1. Функции принадлежности (І_-Р)-чисел 27
Таким образом, при заданных L(y) и R(y) нечеткое число (унимо¬ дальное) задается тройкой А = (а, а, Р). Толерантное нечеткое число задается соответственно четверкой параметров А = (а1, &2, а, Р), где a, и a2 — границы толерантности, т.е. в промежутке [a,,a2] значение функции принадлежности равно 1. Примеры графиков функций принадлежности нечетких чисел (L-R)-rarn приведены на рис. 3.2. Мы не будем здесь рассматривать операции над (L-R) числами; отметим, что в конкретных ситуациях функции L(y), R(y), а также па¬ раметры а, Р нечетких чисел (а, а, Р) и (а,, Й2, а, Р) должны под¬ бираться таким образом, чтобы результат операции (сложения, вычи¬ тания, деления и т.д.) был точно или приблизительно равен нечеткому числу с теми же L(y) и R(y), а параметры а' и Р' результата не выходи¬ ли за рамки ограничений на эти параметры для исходных нечетких чисел, особенно если результат в дальнейшем будет участвовать в операциях. Замечание. Решение задач математического моделирования сложных систем с применением аппарата нечетких множеств требует выполнения большого объема операций над разного рода лингвисти¬ ческими и другими нечеткими переменными. Для удобства исполне¬ ния операций, а также для ввода-вывода и хранения данных желатель¬ но работать с функциями принадлежности стандартного вида. Нечеткие множества, которыми приходится оперировать в боль¬ шинстве задач, являются, как правило, унимодальными и нор¬ мальными. Одним из возможных методов аппроксимации унимо¬ дальных нечетких множеств является аппроксимация с помощью функ¬ ций (L-R)-rarn. Рис. 3.2. Графики функций принадлежности нечетких чисел (L-R)-rana 28
Примеры ^^-представлений некоторых лингвистических пере¬ менных: Терм ЛП ^^-представление Средний О л b = a £ L b) a, (,а II А Малый А = (а, ¥, b)lr, a = ¥ Большой А = (а, a, ¥)lr, b = ¥ Приблизительно в диапазоне А = (аі, а2, a, ¥)lr, a = b > 0 Определенный А = (а, 0, 0)lr, a = b = 0 Разнообразная зона полной неопределенности А = (а,¥, ¥)lr, a = b = ¥ Вопросы для самопроверки 1. Какой тройкой характеризуется нечеткая переменная? 2. Дайте определение лингвистической переменной. 3. Дайте определение понятию нечеткого числа. 4. Какое подмножество называется носителем нечеткого числа? 5. В каком случае нечеткое число А называется унимодальным? 6. Какие операции над нечеткими числами вы знаете? 7. Дайте определение нечеткому числу (Ь-Р)-типа. 29
4. НЕЧЕТКИЕ ВЫСКАЗЫВАНИЯ И НЕЧЕТКИЕ МОДЕЛИ СИСТЕМ Нечеткими высказываниями будем называть высказывания сле¬ дующего вида: 1. Высказывание < р есть р' > , где р — наименование лингвисти¬ ческой переменной; р' — ее значение, которому соответствует нечеткое множество на универсальном множестве X. Например, высказывание <давление большое> предполагает, что лингвистической переменной «давление» придается значение «боль¬ шое», для которого на универсальном множестве X переменной «дав¬ ление» определено соответствующее данному значению «большое» нечеткое множество. 2. Высказывание < р есть тр' > , где т — модификатор, которому соответствуют слова «ОЧЕНЬ», «БОЛЕЕ ИЛИ МЕНЕЕ», «МНОГО БОЛЬШЕ» и др. Например: <давление очень большое>, <скорость много больше средней> и др. 3. Составные высказывания, образованные из высказываний видов 1 и 2 и союзов «Я», «ИЛИ», «ЕСЛИ.., ТО...», «ЕСЛИ.., ТО.., ИНАЧЕ». 4.1. ВЫСКАЗЫВАНИЯ НА МНОЖЕСТВЕ ЗНАЧЕНИЙ ФИКСИРОВАННОЙ ЛИНГВИСТИЧЕСКОЙ ПЕРЕМЕННОЙ То, что значения фиксированной лингвистической переменной соответствуют нечетким множествам одного и того же универсального множества X, позволяет отождествлять модификаторы «очень» или «не» с операциями «CON» и «дополнение», а союзы «И», «ИЛИ» с опе¬ рациями «пересечение» и «объединение» над нечеткими множествами. Для иллюстрации понятия лингвистической переменной мы в ка¬ честве примера рассматривали лингвистическую переменную «толщи¬ на изделия» с базовым терм-множеством Т = {«малая», «средняя», «большая»}. При этом на X = [10, 80] мы определили нечеткие множе¬ ства A,, A2, A3, соответствующие базовым значениям: «малая», «сред¬ няя», «большая». В этом случае высказыванию <толщина изделия очень малая> со¬ ответствует нечеткое множество CONA = A2; высказыванию <толщи¬ на изделия небольшая или средняя> — нечеткое множество A и Аз высказыванию <толщина изделия не малая и не большая> — А п Аз. Высказывания <толщина изделия много больше средней> или <толщина изделия близка к средней> требуют использования нечетких 30
отношений R («много больше, чем») и R («близко к»), заданных на Х х Х. Тогда этим высказываниям будут соответствовать нечеткие множества А • R и A • R2, индуцированные нечеткими отношениями R и R. Случай двух и более лингвистических переменных Пусть <a, Та, X,Ga, Мa>и <p, Тр, х,Gp, Мр> — лингвистиче¬ ские переменные и высказываниям < a есть a' > , < р есть р' > соот¬ ветствуют нечеткие множества А и В, заданные на X и Y. Составные нечеткие высказывания вида 3, связывающие значения лингвистических переменных a и р, можно привести к высказываниям вида 1, введя лингвистическую переменную (a, р), значениям которой будут соответствовать нечеткие множества на X х Y. Напомним, что нечеткие множества А и В, заданные на X и Y, по¬ рождают на X х Y нечеткие множества А и В , называемые цилиндри¬ ческими продолжениями, с функциями принадлежности: р.А (х, у) = тА (х) при любом у, Мв (х, у) = mВ (х) при любом х, где (х, у) е X х Y. Нечеткие множества, соответствующие составным высказываниям: < a есть a' и р есть р' > и < a есть a' или р есть р' > , определяются по следующим правилам (преобразования к виду 1), справедливым при условии невзаимодействия переменных, т.е. мно¬ жества X и Y таковы, что их элементы не связаны какой-либо функ¬ циональной зависимостью. 4.2. ПРАВИЛА ПРЕОБРАЗОВАНИЙ НЕЧЕТКИХ ВЫСКАЗЫВАНИЙ Правило преобразования конъюнктивной формы Справедливо выражение < a есть a' и р есть р' > ^< (a, р) есть (a' п р') >. Здесь ^ — знак подстановки; a' п р' — значение лингвистической переменной (a, р), соответствующее исходному высказыванию <a есть a' и р есть р' > , которому на X х Y ставится в соответствие не¬ четкое множество А п В с функцией принадлежности MАпВ(х у) = Мд(х у)лцВ(х, у) = мА(х)Л|МВ(у). (4.1) 31
Правило преобразования дизъюнктивной формы Справедливо выражение < а есть а' или Р есть р' > ^< (a, Р) есть (а' up') > , где значению a' u р' лингвистической переменной (а, Р) соответству¬ ет нечеткое множество A u ЕВ с функцией принадлежности mAuіВ(x у) = mA(x, y) v mB(x, y) = ma(x) v тв (у) ■ (4.2) Замечание 1. Правила справедливы также для переменных ви¬ да <а, Т|, G), Мі > и <а, Т2, G2, М2 > , когда в форме значений лин¬ гвистических переменных формализованы невзаимодействующие ха¬ рактеристики одного и того же объекта. Например, для построения нечеткого множества высказывания <ночь теплая и очень темная> нужно использовать правило конъюнк¬ тивной формы, а для высказывания <ночь теплая или очень темная> — правило дизъюнктивной формы. Замечание 2. Если задана совокупность лингвистических пе¬ ременных {<аі, Т, G, Мі >}, i = 1, 2,..., п, то любое составное выска¬ зывание, полученное из высказываний < а есть а' > с использованием модификаторов «очень», «не», «более или менее» и др. и связок «и», «или», можно привести к виду < а есть а' > , где а — составная лин¬ гвистическая переменная (аі, а2,..., ап); а' — ее значение, опреде¬ ляемое (как и функция принадлежности) в соответствии с вышеука¬ занными правилами. Правило преобразования высказываний импликативной формы Справедливо выражение: < а есть а' или р есть Р' > ^< (а, Р) есть (а' ® Р') > , где значению (а' ® Р') лингвистической переменной (а, Р) соответст¬ вует нечеткое отношение XRY на X х Y. Функция принадлежности mR (х, у) зависит от выбранного спо¬ соба задания нечеткой импликации. 4.3. СПОСОБЫ ОПРЕДЕЛЕНИЯ НЕЧЕТКОЙ ИМПЛИКАЦИИ Будем считать, что заданы универсальные множества X и Y, со¬ держащие конечное число элементов. Под способом определения не¬ четкой импликации «если А, то В» (где А и В — нечеткие множества на X и Y соответственно) будем понимать способ задания нечеткого от¬ ношения R на X х Y, соответствующего данному высказыванию. 32
С целью обоснованного выбора определения нечеткой имплика¬ ции японскими математиками Мидзумото, Танака и Фуками было про¬ ведено исследование всех известных по литературе определений (плюс предложенные авторами). Рассмотренные определения задавали сле¬ дующие нечеткие отношения для высказывания «если А, то В»: Rm = (A х B) u (A х Y), m (x, y) = (m a (x) Am в (y))v(i -m a (x)); Ra = (AхY)Ѳ(X х B), mR, (x, y) = i a(i -ma(x)+mB(y)); R = A х в, m^ (x, y) = m a (x) Am в (y); Rs = aх Y ® X х B, s (x, y) = I1' если mA<*> £mB(y); |o, если mA(x) >mB(y); R = A х Y ® X х B, g [i, если ma(x) £mB(y); mR (x, y) = I g [mB(y), если ma(x) >mB(y); FL, = (AхY® X х B) n(AхY® X х B), ^ s g m Rsg = ( m A (x) ®m B ( y) j A ^ (l-m A (x))®(l-m B ( y))|; R!gg = ^ a х Y ® X х B j n ^ A х Y ® X х B |, m R,g = ^ m A (x) ®m B ( y) jA ^(l-m A (x))®(l -mB ( y))j; Rgs = ^ A х Y ® X х Bj n ^ A х Y ® X х B |, 33
m Rgs = m A (x) В ( У) J л (1 — m A (x))®(1 — m В ( y))J ; RSS = ^ a x Y ® X X В j n ^ A X Y ® X X В J|, ^R® = [ m A (X) ®mB ( y)Jл [ (1 — m A (x))®(1 -mB ( y))J; Rb = (A x Y) и (X x В), mRb (x y) = (1 — ma(х))ѵ^в (y); mR> (x, y) = R0 = Ax Y ® X x В, 1, если mA(x) £mв(у); m в ( у) , если ma(x) >mв(у); I m a (x) R. = A X Y ® X X В, mR. (x, y) = 1 л-^вМ л 1 mA(x) , если mA(x) > 0; m A (x) 1 — m В ( у) 1, если mA (x) = о или m В ( у) = 1; R* = A X Y ® X X В, * mR* (x, y) = 1 — ma(x)+ma(x) mB (y); R# = AX Y ® X X B, # mR#(x, y) = (ma(x) лmв(у))ѵ(1 — ma(х))л(1 — mB (y))v(mB (у) л(1—ma(x))); ru = A X y ® X X B, V [1, если mA (x) < 1 или mB (y) = 1; mRV (x, y) = 0, если mA(x) = 1 или mB (y) < 1- Правилом вывода являлось композиционное правило вывода с использованием (max-mi п)-композиции. В качестве значений на входе системы рассматривались: A = A; A = «очень А» = A2, mA’5(x) = mА (х)2; \2 . 34
A = «более или менее А» = A0'5, тА’5(х) = mА (х)0'5 ; А = тА’5 (х) о тА (х) = 1 - та (х) ■ Приведем таблицу итогов исследования. В ней символ «0» озна¬ чает выполнение соответствующей схемы вход-выход, символ «х» — невыполнение. Следствие «неизвестно» (Н) соответствует утвержде¬ нию: «если х = А, то нельзя получить никакой информации об у»■ В таблице 4.1 первая графа - «Посылка», вторая - «Следствие». 4.1. Итоги исследования 1 2 Rm R Rc Rs R Rsg A B x x 0 0 0 0 0 A2 B2 x x x 0 x 0 x A2 B x x 0 x 0 x 0 A°’s B°,5 x x x 0 0 0 0 A°’s B x x 0 x x x x A H 0 0 x 0 0 x x A B x x x x x 0 0 Продолжение табл. 4.1 Rgs Rss Ro Ro R R R# Rv 0 0 x x x x x х x 0 x x x x x x 0 x x x x x x x 0 0 x x x x x x x x x x x x x x x x 0 0 0 0 x x 0 0 x x x x x x Кроме ответа о выполнении соответствующей схемы (0 или х) ав¬ торами исследованы явные выражения для функций принадлежности следствий по каждому из вариантов определения нечеткой имплика¬ ции, на основе чего ими был сформулирован вывод: - R и Rj не могут быть использованы; - R может использоваться частично; - R, R, Rgg, Rgg, R,., R рекомендованы к использованию; - R, R , R , R, R#, R не рекомендованы к использованию. 35
4.4. ЛОГИКО-ЛИНГВИСТИЧЕСКОЕ ОПИСАНИЕ СИСТЕМ, НЕЧЕТКИЕ МОДЕЛИ Логико-лингвистические методы описания систем основаны на том, что поведение исследуемой системы описывается на естествен¬ ном (или близком к естественному) языке в терминах лингвистических переменных. Входные и выходные параметры системы рассматриваются как лингвистические переменные, а качественное описание процесса зада¬ ется совокупностью высказываний следующего вида: Ц : если < A > то < В, >, L2 : если < A > то < В2 >, Lk : если < A > то < В >, где < A >, i = 1,2,..., k , — составные нечеткие высказывания, опреде¬ ленные на значениях входных лингвистических переменных, а < В >, i = 1,2,...,к , — высказывания, определенные на значениях вы¬ ходных лингвистических переменных. С помощью правил преобразо¬ вания дизъюнктивной и конъюнктивной формы описание системы можно привести к виду Ц : если < A > то < В, >, L2 : если < А2 > то < В2 >, Lk : если < А< > то < Вк >, где A,, A2,..., A — нечеткие множества, заданные на декартовом произ¬ ведении X универсальных множеств входных лингвистических пере¬ менных, а В,, В2,..., Вк — нечеткие множества, заданные на декартовом произведении Y универсальных множеств выходных лингвистических переменных. Совокупность импликаций {L,, L2,..., Lk} отражает функциональ¬ ную взаимосвязь входных и выходных переменных и является основой построения нечеткого отношения XRY, заданного на произведении X х Y универсальных множеств входных и выходных переменных. Ес¬ ли на множестве X задано нечеткое множество А, то композиционное правило вывода В = A• R определяет на Y нечеткое множество В с функцией принадлежности mв (у) = a(X r(x, y)). (4.3) X Таким образом, композиционное правило вывода в этом случае задает закон функционирования нечеткой модели системы. 36
Рассмотрим широкоцитируемый пример решения задачи нечетко¬ го логического управления: построение модели управления паровым котлом. 4.5. МОДЕЛЬ УПРАВЛЕНИЯ ПАРОВЫМ КОТЛОМ Прототипом модели послужил паровой двигатель (лабораторный) с двумя входами (подача тепла, открытие дросселя) и двумя выходами (давление в котле, скорость двигателя). Цель управления: поддержание заданного давления в котле (зави¬ сит от подачи тепла) и заданной скорости двигателя (зависит от от¬ крытия дросселя). В соответствии с этим схема системы управления двигателем выглядит следующим образом: Рассмотрим одну часть задачи - управление давлением. Входные лингвистические переменные: РЕ - отклонение давления (разность между текущим и заданным значениями); СРЕ — скорость изменения отклонения давления. Выходная лингвистическая переменная: НС — изменение количества тепла. Значения лингвистических переменных: NB — отрицательное большое; NM — отрицательное среднее; NS—отрицательное малое; N0 — отрицательное близкое к нулю; Z0 — близкое к нулю; Р0 — положительное близкое к нулю; PS — положительное малое; РМ — положительное среднее; РВ — положительное большое. Управляющие правила (15 правил), связывающие лингвистиче¬ ские значения входных и выходных переменных, имеют вид: «Если отклонение давления = Д и если скорость отклонения давления = Ц , то изменение количества подаваемого тепла равно О” , где Д, Ц, О, — перечисленные выше лингвистические значения. Полный набор правил задавался табл. 4.2. 4.2. Полный набор правил № Отклонение давления РЕ Скорость изменения от¬ клонения давления СРЕ Изменение количества подаваемого тепла НС 1 NB NB или NM PB 2 NB или NM NS PM 3 NS PS или N0 PM 4 N0 PB или PM PM 37
Продолжение табл. 4.2 № Отклонение давления РЕ Скорость изменения от¬ клонения давления СРЕ Изменение количества подаваемого тепла НС 5 N0 NB или NM NM 6 P0 или Z0 N0 N0 7 P0 NB или NM PM 8 P0 PB или PM NM 9 PS PS или N0 NM 10 PB или PM NS NM 11 PB NB или NM NB 12 N0 PS PS 13 N0 NS NS 14 P0 PS PS 15 P0 PS NS Лингвистические значения отклонений задавались нечеткими подмножествами на шкалах X, Y, Z табл. 4.3. 4.3. Лингвистические значения отклонений —6 —5 —4 —3 —2 —1 0 +1 +2 +3 +4 +5 +6 PB 0,3 0,7 1 PM 0,3 0,7 1 0,7 0,3 PS 0,3 0,7 1 0,7 0,3 P0 0,3 1 0,7 0,3 N0 0,3 0,7 1 0,3 NS 0,3 0,7 1 0,7 0,3 NM 0,3 0,7 1 0,7 0,3 NB 1 0,7 0,3 Таким образом, области значений входных переменных РЕ, СРЕ и выходной переменной НС представлялись 13 точками [-6, —5, -4, —3, —2, —1, 0, 1, 2, 3, 4, 5, 6] , равномерно расположенными между максимальными отрицательными и положительными значениями этих переменных. Приведем управляющие правила к виду: «если (Д х В), то С" », где (Д х В) — декартово произведение нечетких множеств А и В, за¬ данных на шкалах X и Y, с функцией принадлежности m(Д хц) (х, У) = mД (х)л mв, (У) , определенной на XxY. 38
Для каждого из правил вида «если (А х B), то С" », где (Ах Ц) — входное нечеткое множество, а С — соответствующее нечеткое значение выхода, определялось нечеткое отношение R = (А х B) хС, i = 1,2 15, с функцией принадлежности ((x, у),z) = (mа (x) лm^ (у))лmq (z). (4.4) Совокупности всех правил соответствовало нечеткое отношение R = (j R (4.5) i =1 с функцией принадлежности 15 / ч mR (x, у, z) = v m r ((x, у), z). (4.6) i=1 1 При заданных значениях А', В' входных переменных регулирую¬ щее значение С входной переменной определялось на основе компози¬ ционного правила вывода: С’ = (Ах B')о R, (4.7) где о - (max-mi п)-композиция. Функция принадлежности С' имеет вид me(z) = v v (mA'(x)Л|аB(У))лmR(x, y, z). (4.8) xeX yeY Числовое значение z0 (изменение подаваемого тепла) определя¬ ется при этом либо из условия mc' (3o) = max mc' (z), либо по формуле z N ^ znmC (zn) zo = ^ , (49) ^ mC ( Zn ) n =1 где N — количество точек в Z (в данном случае N = 13). Задача управления сравнима с классическими моделями опти¬ мального управления. Появление первых работ по построению моде¬ лей нечеткого логического управления для конкретных систем опреде¬ лило ряд общих вопросов, касающихся логических основ моделей, в их числе: — о полноте и непротиворечивости совокупности правил управ¬ ления; 39
— об адекватности представления правил управления вида «если А, то В» нечеткими отношениями, определяемыми разными способами; — о правильности способа вывода, основанного на (max-min)- композиции и возможности использования других видов операции композиции. 4.6. ПОЛНОТА И НЕПРОТИВОРЕЧИВОСТЬ ПРАВИЛ УПРАВЛЕНИЯ Наиболее часто требование полноты для системы «если Д , то B », i = 1, 2, .., n, сводится к n X = U SuppA, , (4.10) i =1 где SuppA, — носитель нечеткого множества Д . Содержательно это означает, что для каждого текущего состояния х процесса существует хотя бы одно управляющее правило, посылка которого имеет ненуле¬ вую степень принадлежности для х. Непротиворечивость системы управляющих правил чаще всего трактуется как отсутствие правил, имеющих сходные посылки и раз¬ личные или взаимоисключающие следствия. Степень непротиворечи¬ вости i-го и к-го правил можно задавать величиной max(mд (х) л m^ (х))— max(mд. (у) л mвк (У)) (4.11) Суммируя по к, получаем оценку непротиворечивости i-го прави¬ ла в системе: N C = £ C к, 1 < i < N . (4.12) к=1 х Вопросы для самопроверки 1. Высказывания какого вида называются нечеткими? 2. Что вы знаете о высказываниях на множестве значений фикси¬ рованной лингвистической переменной? 3. Укажите известные вам правила преобразований нечетких вы¬ сказываний. 4. Какие способы определения нечеткой импликации вы знаете? 5. В чем состоит принцип логико-лингвистического описания систем? 6. Что вы знаете о модели управления паровым котлом? 7. В чем состоит правило полноты для системы? 40
5. АЛГОРИТМ НЕЧЕТКОГО ВЫВОДА НА ОСНОВЕ НЕЧЕТКОЙ ПРОДУКЦИОННОЙ МОДЕЛИ С АДАПТАЦИЕЙ ОПЕРАЦИЙ НАД НЕЧЕТКИМИ МНОЖЕСТВАМИ Приведем описание алгоритма на примере построения модели оценки достижимости общей цели системы с учетом ее согласования с многими неравнозначными частными целями этой системы. Пример. Пусть в результате анализа сложной системы опреде¬ лена совокупность нечетких целей. Тогда общая цель Gq6 выражается совокупностью частных целей G , i = 1.-Ч . Каждая частная цель связа¬ на частным критерием, описываемым нечетким множеством, опреде¬ ленным на Xi , причем для Vx е Xt величина (х) характеризует степень ее достижимости. Общая целевая функция задается нечетким множеством, определенным на базовом множестве Xi...Xq . Рассмотрим основные этапы данного алгоритма нечеткого вывода. Этап 1. Для каждой из частных целей, а также для общей цели формируется лингвистическая переменная (с одноименным названи¬ ем), множество лингвистических значений (терм-множество состоя¬ ний) которой характеризует степень ее достижимости. Рассмотрим в качестве примера одни и те же значения для всех терм-множеств {L — низкая, М — средняя, Н — высокая}. Этап 2. Каждая частная цель определяется совокупностью нечет¬ ких продукционных правил относительно входных переменных. Не будем здесь останавливаться на задаче нечеткого вывода по каждой частной цели, так как эту задачу можно решить известными способа¬ ми, например с использованием вышерассмотренного алгоритма не¬ четкого вывода Мамдани. Этап 3. Определяются число, вид и лингвистические оценки сте¬ пеней парных согласований общей цели с каждой частной целью. На¬ пример, множество лингвистических значений, характеризующих сте¬ пени согласования общей Gq6 и i-й частной Gi (i = 1,..., q) целей, можно сформировать следующим образом: {полная совместимость; большая совместимость; средняя совместимость; малая совмести¬ мость; несовместимость} (рис. 5.1). Этап 4. Идентифицируются возможные операции свертки общей целевой функции (для всех значений из терм-множества) с частными в зависимости от степени их согласованности, например: — max(GQ6, Gj) — полная совместимость целей Gq6 и Gj; — (Gq6 + Gj )/2 — большая совместимость; 41
Рис. 5.1. Пример согласованности значений терм-множеств целей — med(Go6, Gj) — средняя совместимость; 1/2 — (Go6, Gj )1 - малая совместимость; — тіп^об, Gj) - несовместимость [24]. (5.1) Для свертки, учитывающей степень согласованности общей и j-й частной целей, целесообразно также использовать параметризирован- ное семейство операций в виде I (^б, Gj)yU (^б, Gj)(1—у), уе[0,1], (5.2) где I, U — некоторые операции пересечения и объединения соответст¬ венно; у — показатель, характеризующий степень согласованности це¬ лей Goб и Gj [25]. Этап 5. Формируется совокупность нечетких правил, каждое из которых определяет стратегию достижения отдельного значе¬ ния из терм-множества, характеризующего общую целевую функ¬ 42
цию Н об, М об, Lo6 (в общем случае число этих правил может быть больше). Формирование каждого правила включает в себя процедуру иден¬ тификации операций свертки для заданного значения общей целевой функции с частными, а также операцию комбинирования результатов этих сверток, характеризующую нижний уровень их согласования: П1: ЕСЛИ х1 есть Н1 И...И xq есть Hq , ТО у есть (НіѲІН об) J1,..., j1( HqqqH об); П2: ЕСЛИ х есть Н, И.Иxq есть Mq, то у есть (н,ѳ2ноб) j2, ..., J2 (н qq2ноб); Пi : ЕСЛИ х есть М,И.Иxq есть Mq, ТО у есть (Н,ѲМоб) J,..., Si (HqqqMоб); Пп: ЕСЛИ х, есть L, И.И xq есть Lq , ТО у есть (ЦѲПЦоб) J,..., S (LqѲqLoб), (5.3) где х,,..., xq — входные переменные; у — выходная переменная; {Lj, М j, Н j} - функции принадлежности, характеризующие степень достижимости j-й частной цели Gj, j = 1,...,q ; {L^, Mоб, Ноб} - функ¬ ции принадлежности, характеризующие степень достижимости общей цели G^ ; Ѳ,,..., q1q,..., Ѳ,1,..., qq - операции свертки общей целевой функции с частными, выбираемые в зависимости от уровня их совмес¬ тимости; Jii - операция комбинирования результатов сверток общей цели с частными в i-м правиле (i = 1,..., п), выбираемая из соответст¬ вующей совокупности операций парных сверток общей цели с част¬ ными Ѳі,..., Ѳ^ и характеризующая нижний уровень их согласования. Этап 6. Для каждого из правил Ц осуществляется парная свертка значений общей и частных целевых функций на основе идентифици¬ рованных операций Ѳі, ..., qq, выбранных в соответствии с уровнем их совместимости, и формируются «модифицированные» функции принадлежности: 43
aii - (MiqiMоб) aiq - (Lq^Mоб)- Этап 7. Находятся степени достижимости всех частных целей, т.е. уровни отсечения для всех предпосылок каждого правила: Li( Xi), М i( x), Hi( Xi),..., Lq ( Xq ), Mq ( Xq ), Hq ( Xq ). Этап 8. Для каждого правила П формируются «усеченные» функ¬ ции принадлежности предпосылок каждой парной свертки каждого из правил: a (X,) - (Mi( X,)qiM „б) aiXq - (Lq(Xq^об). Этап 9. Формируются частные заключения по каждому из правил на основе выбранной операции комбинирования результатов сверток общей целевой функции с частными: Pi -aii(X|)Ji...Jiaiq(Xq) Pi -aii(Xi)J1 ...Jiiaiq (Xq) Pn - ani(^)Jin ... J^anq(Xi). Этап i0. Осуществляется объединение (композиция) частных заключений правил. При подобном объединении обычно использует¬ ся операция максимума или суммирования. Для задания наиболее точной оценочной модели (с учетом рассмотренного механизма со¬ гласования целей) в качестве такой операции объединения целесооб¬ разно использовать операцию из множества J (i -1,..., n), характери¬ зующую наибольшую степень согласования целей по всем правилам. В результате получается комбинированное нечеткое подмножест¬ во, описываемое обобщенной функцией принадлежности и соответст¬ вующее степени достижимости общей цели системы. Этап ii. При необходимости находится четкое значение выход¬ ной переменной с использованием одного из методов (например, цен- троидного) приведения к четкости. На рисунке 5.2 приведена иллюстрация рассмотренного алгорит¬ ма нечеткого вывода для построения оценочной модели достижимости общей цели в соответствии с данным примером. 44
Рис. 5.2. Иллюстрация алгоритма нечеткого вывода для построения оценочной модели достижимости общей цели Аппроксимационные свойства нечетких продукционных моделей Возможность использования нечетких моделей для решения задач распознавания образов, аппроксимации, оптимизации, векторного рас¬ познавания, классификации базируется на следующих результатах: 1. В 1992 г. Коско (Kosco) доказал теорему (Fuzzy Approximation Theorem), согласно которой любая функциональная зависимость, за¬ данная на компактном множестве, может быть аппроксимирована ад¬ дитивной нечеткой моделью (additive fuzzy system/model), структура и параметры которой подобны модели Мамдани, но отличающейся от нее тем, что на этапе аккумулирования активизированных заключений правил используется операция их взвешенного суммирования с после¬ дующей дефаззификацией результата по методу центра тяжести [26]. Конструктивным результатом доказательства этой теоремы является оценка необходимого числа правил модели для заданной точности ап¬ проксимации, которое определяется с помощью минимального рас¬ стояния между центроидами двух смежных нечетких множеств, пред¬ ставляющих консеквенты правил, обозначаемых как у и уі+1: 45
(5.4) где e — точность аппроксимации; g — максимальное число перекрытий (overlapping) антецедентов по X (для одномерного входа m = 2). Для одномерной входной переменной необходимое число правил определяется следующим образом: Очевидно, что для произвольно хорошей аппроксимации число правил неограниченно, однако для заданного e число правил может быть оценено с использованием выражения (5.4). 2. В 1992 г. Ванг (Wang) в [27] показал, что нечеткая продукцион¬ ная модель является универсальным аппроксиматором, т.е. может ап¬ проксимировать любую непрерывную функцию на компакте X, с про¬ извольной точностью, если использует набор правил п (п ® да) типа P : ЕСЛИ х есть Д., И Xj есть / И... И ^ есть /т , ТО у есть B , i = 1, . ., п , при выполнении следующих условий: - гауссовых функциях принадлежности: где aij, Ц , q , d - параметры функций принадлежности; - агрегировании степени истинности предпосылок правил в ви¬ де произведения: - активизации заключений правил (импликации) в виде произ¬ ведения (импликация Ларсена): (5.5) mл. (Xj) = exp a =m/(xi)...mAj (x'j)...mAm(xm); m b; (y)=«imBi (y); методе «центра тяжести» при приведении к четкости: X m B'( yr) r=1 46
где Ymax — число элементов yr в дискретизированной для вычисления «центра тяжести» области Y. Ванг (Wang) доказал теорему, что для каждой вещественной не¬ прерывной функции f(x), заданной на компакте X, и для произвольного e > 0 существует нечеткая продукционная модель, формирующая вы¬ ходную функциюу(х) такую, что sup xeX f (x) - y(x) £ e, где |K — символ принятого расстояния между функциями. Так же как и в случае теоремы Коско, результаты Ванга подтвер¬ ждают трудности, возникающие в случае точной аппроксимации: чис¬ ло правил модели неограниченно. 3. В дальнейшем многие исследователи показали, что свойство универсальной аппроксимации сохраняется для различных типов не¬ четких продукционных моделей. Например, в 1995 г. Кастро (Castro) обосновал, что нечеткая продукционная модель с правилами типа 5.3 и алгоритмом нечеткого вывода Мамдани также является универсаль¬ ным аппроксиматором при выполнении следующих условий: - симметричных треугольных функциях принадлежности: 11 - ajj - x\ bj, если ajj - xj ; m At(x\) = ill 10, если a^ - xj > ; І1 - |cj - xj l/d, если |cj - xj £ dj; mв. (у) = \ ' 7 , 1 j| 10, если \Cj - xA > dj; - агрегировании степени истинности предпосылок правил в виде минимума: a = min{mЛ1(x^), mjx'j),■■■, mЛт(xm)} - активизации заключений правил (импликации) в виде минимума: mз' (у) = min{aj,m$ (у)); - методе «центра тяжести» при приведении к четкости: Ymax Z yrm B'(Уг) У = -Y ■ max Z m в'(Уг) r=1 47
Помимо этого в своей наиболее общей работе — [28], посвящен¬ ной проблеме аппроксимации, Кастро привел ряд доказательств свойств универсальной аппроксимации для широкого спектра нечет¬ ких моделей, различающихся классами нечеткой логики, типами функций принадлежности, методами дефаззификации. Однако все вышеуказанные результаты не дают ответа на вопро¬ сы, какую конкретно модель необходимо выбрать и сколько должно быть правил для аппроксимации заданной функции. Можно отметить, что в нечетких продукционных моделях имеет место экспоненциальное возрастание числа нечетких правил при стремлении к нулю ошибки аппроксимации. С практической точки зрения достаточно иметь приемлемо хоро¬ шую точность аппроксимации. В этом случае задача состоит в поиске возможного компромисса между указанной точностью и числом пра¬ вил модели, которые позволяют осуществить аппроксимацию с задан¬ ной точностью в приемлемое время. 4. Следует отметить, что если первые работы по универсальной аппроксимации были посвящены нечетким моделям Мамдани, то на¬ чиная с середины 1990-х гг. аналогичные результаты были получены и для нечетких моделей Такаги—Сугэно. Так, например, в работе [29] было доказано, что нечеткая модель Такаги-Сугэно является универ¬ сальным аппроксиматором при следующих условиях: — с функциями принадлежности антецедентов, полностью пере¬ крывающими (full-overlapped) пространство входных переменных; — с линейными функциями консеквентов; — со взвешенным суммированием при дефаззификации. В этой работе также приведены конструктивные результаты про¬ ектирования нечеткой модели Такаги-Сугэно, заключающиеся в опре¬ делении вида функций принадлежности антецедентов и необходимого числа правил при выполнении следующих достаточных условий (sufficient conditions) аппроксимации: заданной непрерывной функции и точности аппроксимации. Для этого используется следующая двухэтапная процедура ап¬ проксимации. Этап 1. Определяется полином Pq (х) конечной степени q со мно¬ гими переменными х = (х,,х2,...,хт), который, в соответствии с теоре¬ мой Вейерштрасса, на компактном домене равномерно аппроксимиру¬ ет любую непрерывную функцию с любой заданной точностью еі. Этап 2. Проектируется нечеткая модель Такаги-Сугэно в соответ¬ ствии с вышеуказанными условиями для аппроксимации этого поли¬ нома Pq (х) с любой точностью (e - e,). 48
При этом для нечеткой модели Сугэно 0-го порядка число правил определяется в соответствии со следующим выражением: Dm ( m ^ 1 °1 d2 n>1 E E ••• E R vd1 vd 2 Bd-d 2... dm x?1 xd2 S d j=i (5.6) ’ d- =0 d2=0 dm=0\ а для модели Такаги-Сугэно с двумя входами и одним выходом m- m2 Ь d2| Pi,0+ІР0,-+S sbdid2 (2di+d2 -1) n >- d1 =0 d2=0 e-e1 (5.7) В работе [30] авторы, также используя рассмотренную выше двухэтапную процедуру аппроксимации, установили другие условия по определению числа правил в модели Такаги-Сугэно для заданной точности аппроксимации. Так, для модели Сугэно 0-го порядка доста¬ точное число правил по каждому измерению (для каждой входной пе¬ ременной Xj, j е 1,..., m, определяется в соответствии с выражением л m n >— E e-e1 j=1 5R, ax. -1, (5.8) а для нечеткой модели Такаги-Сугэно - следующим образом: n > 1 EE 2(e e1) j =1 k=1 axjaxk -1 , (5.9) где Pq — полином конечной степени q со многими переменными: °1 d2 Dm / \ pq(x) = E E ••• E('W-di.x*1 xd2...xmm), d1 =0 d2=0 dm=0 (5.10) где ap„ ax, — экстремум частной производной полинома. Сравнивая (5.6) и (5.8), можно заключить, что (5.8) предпочти¬ тельнее, когда размерность пространства входных переменных отно¬ сительно невелика, а (5.6) предпочтительнее в случае пространства высокой размерности, так как (5.8) использует экстремум частной производной полинома. Подобные рассуждения имеют место и при сравнении (5.7) и (5.9). Зачастую выбор той или иной модели обосно- ¥ mm ¥ 49
вывается эвристическими предпочтениями либо простотой реализации при обеспечении требуемого критерия эффективности. Пример. Сравним эффективность использования алгоритмов нечеткого вывода, базирующихся на нечетких продукционных моделях Мамдани и Сугэно 0-го порядка при решении задачи аппроксимации непрерывной функции одной переменной по критериям обеспечения точности аппроксимации и вычислительных затрат на реализацию [31]. Сравнение описанных алгоритмов выполнялось при таких усло¬ виях: — аппроксимация функции проводилась на отрезке [—1, 1]; — аппроксимируемая функция задавалась набором значений (х(к*,у{к*), к = 1,...,K , при этом точки ) располагались эквиди¬ стантно; — функции принадлежности имели вид функций Гаусса, т.е. m A (Xj) = exp 1 х i к) 2 ~ 2 a m в (У) = exp 1 Г У- - у(к) ^ 2 ~ 2 Ь — количество правил n задано заранее; — варьировались значения параметров а и Ь для получения наи¬ большей точности аппроксимации при заданном n. В таблицах 5.1 и 5.2 приведены результаты сравнительной оценки аппроксимации функций соответственно f (х) = х2 и f (х) = х3 при n = 9, a = 0,1, Ь = 0,3. 5.1. Результаты функции f (x) = x2 Номер примера (к) 1 2 3 4 5 6 7 8 9 х<к) -1 -0,75 -0,5 -0,25 0 0,25 0,5 0,75 1 у (к) 1,000 0,563 0,250 0,063 0 0,063 0,25 0,563 1,000 Оценка по алгоритму Мамдани 0,973 0,570 0,257 0,070 0 0,070 0,257 0,570 0,973 Оценка по алгоритму Такаги- Сугэно 0,982 0,568 0,255 0,068 0 0,068 0,255 0,568 0,982 50
5.1. Результаты функции f (x) = x3 Номер примера (к) 1 2 3 4 5 6 7 8 9 х<к > —1 —0,75 —0,5 —0,25 0 0,25 0,5 0,75 1 у <к) —1,000 —0,422 —0,125 —0,016 0 0,016 0,125 0,422 1,000 Оценка по алгоритму Мамдани —0,962 —0,441 —0,136 —0,021 0 0,021 0,136 0,441 0,962 Оценка по алгоритму Такаги- Сугэно —0,976 —0,433 —0,133 —0,019 0 0,019 0,133 0,433 0,976 Эти, а также другие полученные результаты вычислительных экспериментов позволяют сделать следующие выводы: — при прочих равных условиях и при оптимальных параметрах a и Ь погрешность аппроксимации с применением алгоритма Такаги— Сугэно несколько меньше, чем с применением алгоритма Мамдани; — алгоритм Такаги-Сугэно с вычислительной точки зрения реа¬ лизуется значительно проще, чем алгоритм Мамдани, а время вычис¬ лений для него меньше, чем для алгоритма Мамдани в 50 — 100 раз. Таким образом, если нет каких-либо особенных доводов в пользу алгоритма Мамдани, то лучше использовать не его, а алгоритм Така- ги—Сугэно. Вопросы для самопроверки 1. Перечислите этапы алгоритма нечеткого вывода на примере построения модели оценки достижимости общей цели системы. 2. Благодаря каким результатам стало возможно использовать нечеткие модели для решения задач распознавания образов, аппрокси¬ мации, оптимизации, векторного распознавания, классификации? 51
6. НЕЧЕТКИЕ РЕЛЯЦИОННЫЕ МОДЕЛИ 6.1. ОСОБЕННОСТИ НЕЧЕТКИХ РЕЛЯЦИОННЫХ МОДЕЛЕЙ В нечетких реляционных моделях входные нечеткие переменные отображаются на выходные нечеткие переменные с помощью нечет¬ ких отношений, определяемых, например, реляционными матрицами. Эти модели позволяют предварительно зафиксировать лингвистиче¬ ские термы входных и выходных нечетких переменных и затем на¬ строить нечеткие отображения, реализуемые моделями, посредством изменения элементов нечетких отношений [23]. Нечеткие реляционные модели получили распространение в зада¬ чах кластеризации и классификации [38], идентификации и управле¬ ния нелинейными динамическими объектами и системами [39], а так¬ же в ряде других задач, требующих решения систем нечетких уравне¬ ний [40]. Рассмотрим нечеткую модель MI SO-типа. Введем обозначения: x = (x,, x2,..., xm) — вектор нечетких входных переменных, xe X; у — нечеткая выходная переменная, у e Y ; A = {A,, A2,..., A,^} — множество лингвистических термов, опреде¬ ленных на Х, с функциями принадлежности ma (x) e [0,1] для i = 1,..., m; В = {В,, B2,..., Вр} — множество лингвистических термов, опреде¬ ленных на Y, с функциями принадлежности m вк (У) e [0,1] для к = 1,..., р. Результат нечеткого вывода В' можно представить в виде В’ = A'. R = A'. (A ® В), где В' = {В,', В2,..., Вр} — нечеткие множества, отражающие вектор зна¬ чений принадлежностей mВк (У) (к = 1,.., Р); A = (A,', A2,..., Am) - не¬ четкие множества, отражающие вектор четких значений x , с векто¬ ром значений принадлежностей m a' (x) (j = 1,..., m); «• » — компози¬ ционное правило нечеткого вывода. Нечеткое отношение R, определяющее отображение A ® В , мо¬ жет быть задано реляционной матрицей R(mx р): 52
R = r 41 2 r1 p r1 r21 r 22 - r2p rjk - rm1 2 rm2 -r mp (6.1) где m jk e [0,1], j = 1, ..., m, к = 1,..., p. Тогда при заданном векторе значений принадлежностей mA (х) (j = 1, . ., m) результатом нечеткого вывода, полученного с помощью поэлементно реализованного обобщенного правила S-T- композиции, будет являться вектор значений принадлежностей mвк (У) (k = 1, . ., Р): mвк(у) = S(ma (x)Trjk), к = 1,..., p. (6.2) Дефаззифицированный в соответствии с методом центра тяжести выход нечеткой реляционной модели вычисляется следующим образом: У = г I к=1 Ук S (mAj (x)Trjk) j=1 j m / \ I s(m Aj (x)тrJk) к=1j 1 (6.3) где yk — центры тяжести (центроиды) нечетких множеств Ві, k = 1, ..., p . В композиционном правиле (6.2) могут быть использованы раз¬ личные S- и Г-нормы. Отметим, что одним из достоинств нечетких реляционных моде¬ лей является то, что в процессе их настройки имеется возможность изменения элементов (в диапазоне [0,1]) реляционной матрицы при том, что лингвистические термы антецедентов и консеквентов остают¬ ся неизменными. 6.2. РЕЛЯЦИОННОЕ ПРЕДСТАВЛЕНИЕ НЕЧЕТКОГО ВЫВОДА С ИСПОЛЬЗОВАНИЕМ ОТДЕЛЬНЫХ ПРАВИЛ Нечеткое множество В[, характеризующее результат нечеткого вывода по отдельному і-му правилу: Пі: ЕСЛИ х1 есть Аі1 И ... И х есть Aj И ... И xm есть Aim, ТО у есть Ві, і = 1, ..., n, 53 m
определяется композицией нечеткого множества А' и нечеткого бинар¬ ного отношения R: A ® В,: где нечеткое множество Д = А^ х Дг х ...х Aj'm с функцией принадлеж¬ ности m A' (x) = m А,'-! х A'2 х...х Aim (Х|, X2,..., Xm) определено на декартовом произведении X = Х1 х Х2 х ... х Хт, а нечеткое отношение ^ : Ay ® В определено на декартовом произведении Х1 х Х2 х ... х Хт х Y, т.е. R нечеткое множество с функцией принадлежности mRi(x, y) = тд®В;(х, y) = mA1хд2хAm®в(х-- x2’...’ xm.y). Исходя из определения композиции нечеткого множества и не¬ четкого отношения, имеем: m в' ( у) = supjm д (х) Tm r (x у)}, (6.5) xeX где sup {...} — верхняя граница множества элементов {...}; Т — опера- xeX ция Т-нормы. Если X является множеством с конечным числом элементов, то композиционное правило (6.5) принимает вид макстриангулярной композиции: mв' (У) = max{mд (x)TmR (x, y)}. (6.6) Таким образом, результат нечеткого вывода по отдельному j-му правилу типа и соответственно конкретная форма функции принад¬ лежности m в' (У) зависит от выбора: — способа определения декартова произведения нечетких мно¬ жеств A = Д'і х A2 х ...х дт; — операции нечеткой импликации для нахождения функции принадлежности и , (x, у); R — операции Т-нормы. Выражение (6.6) является реляционным представлением нечетко¬ го вывода с использованием отдельного правила. Предварительно отметим, что если на этапе введения нечеткости вместо нечетких значений входных переменных j(1, x2, ...,xm1 исполь¬ зуются четкие значения x1, x2, xm, то выражение (6.5) примет вид mв'(у) = mA1хa2хam®в, x2,..., xm,y),..., y n 54 В' = A' • Ri= A'« (a ® В,) = | x A' m
Декартово произведение нечетких множеств A с Х,, Л2 с Х2, ..., Am с Хт, обозначаемое как A = Л х Л'2 х ■■■х Лт и заданное на множестве Х = Х1 х Х2 х ...х Хт , можно определить сле¬ дующими различными способами: mЛіхл'2х...л'т(х1, х2,..., хт) = min{mл,(m..., mлт(xm)} (6.7) или mЛ^хЛ'2х...Л'т (x1, X2, ..., xm) =mA,(x1), mA2(x2), ..., mAm (xm). (68) Пример. (В данном подразделе использованы примеры из [6].) Предположим: база правил состоит из двух правил: П1: ЕСЛИ х1 есть Л11 И х2 есть А12, ТО у есть В1, П2: ЕСЛИ х1 есть Л21 И х2 есть Л22, ТО у есть В2; декартово произведение нечетких множеств задано выражением (6.7); нечеткая импликация — mi n-конъюнкция; Г-норма — mi n-конъюнкция. В этом случае выражение (6.5) примет следующий вид: mв' (У) = sup^ min mл (х), mл®в (х У) sup^ min хеХ mл (x),minlmл (х), mв;(У) = sup ^ min х,, х?еХ = sup ^ min х,, х?еХ mл'іхл2(x1, х2),min[mл ,хл2(^ x2), mв(У)) • п(м-Лі (хі), mл2 (хг)), min(mi nfmA 1 (х,), mA2 (х?))^ (У)] in[ (mл, (х,), mл'2(х?)), mл,(х,), mл2(хг), mв(У) = sup ^ mi х,, х? еХ Пример. Предположим для этой же базы правил, что: — декартово произведение нечетких множеств задано выражени¬ ем (6.8); — в качестве нечеткой импликации используется алгебраическое произведение; — Г-норма - алгебраическое произведение. 55
Тогда выражение (6.5) запишется следующим образом: Мв;(У) = sup{min[мд(x)-мд ®в (x, y)]}= sup{мд (x)-Мa®B (x) -Мв (У)}= xeX i xeX i ' = sup {mAi(^)-Мд^)-Мд 1(x])-Мд2(x>)-mB (y)}. xi,Ж2^-Х i Пример. Предположим для этой же базы правил, что: — декартово произведение нечетких множеств задано выражени¬ ем (6.8); — нечеткая импликация — алгебраическое произведение; — Г-норма — mi n-конъюнкция. В этом случае выражение (6.5) запишется следующим образом: МB (У) = sup{min[мд (x), мa (x, y)]}= xeX ' = sup{mд (x), mдд (x) - m (y)}= xeX n R = sup {min[ma1(xi)-Мд^)-Ma1(xi)-Мд2^)-m (y)]}. xi, x2^-X При наличии нескольких (р) заключений в нечетких продукционных правилах для каждого из заключений определяются значения степеней истинности {мв^(у), ..., М(У,,),..., Мв;р (Ур)}, i = 1,.., n; к = 1, ..., p, М в;к (У) = sup{m д (x) Гмд ®в (x, y,)}, i= 1,..., n, к = 1,..., p. (6.9) xeX в Отметим, что как для отдельных правил, так и индивидуально для каждого их заключения могут быть заданы весовые коэффициенты. 6.3. РЕЛЯЦИОННОЕ ПРЕДСТАВЛЕНИЕ НЕЧЕТКОГО ВЫВОДА С ИСПОЛЬЗОВАНИЕМ БАЗЫ ПРАВИЛ Как отдельное правило, так и вся база нечетких правил могут быть заданы нечетким отношением. Обобщенное нечеткое отношение, формируется объединением нечетких отношений, представляющих отдельные правила: n R = U R . (6.10) =1 При этом нечеткое множество В', характеризующее результат не¬ четкого вывода по всей базе из n нечетких правил, определяется сле¬ дующим образом: 56
B = 4=lJ[«/iJjjJ ® Ч) (6-11) Исходя из выражения (6.5), а также из определения объединения нечетких множеств, выражение для агрегированной в результате не¬ четкого вывода функции принадлежности ms' (У) на основе, например, связки «максимум» примет вид ms'(у) = supтд-(X)Т max m і (x, у) k (6.12) xeX I 1 =1 n R Если в качестве Т-нормы и нечеткой импликации используется операция min-конъюнкции либо операция нечеткого произведения (prod), то выражение (6.12) может быть задано в следующем виде: mв (у) = max sup i mд (x) Т max mRi (x, y) \ = max ms; (У). (613) i=1 n xGx I i=1 n Ri =1 n 1 Выражение (6.13) является реляционным представлением нечет¬ кого вывода с использованием базы нечетких правил. 6.4. ПОДОБИЕ НЕЧЕТКИХ РЕЛЯЦИОННЫХ И ПРОДУКЦИОННЫХ МОДЕЛЕЙ Более наглядно подобие между нечеткими реляционными и про¬ дукционными моделями можно проиллюстрировать следующим при¬ мером. Допустим, для нечеткой реляционной модели: Т-норма - алгебраическое произведение; & норма - среднее арифметическое. Тогда выражение (6.3) запишется в следующем виде: £ { < Z(m д;( x)^ ){ £ f m £ д;( x)Trjk )\ k=11 mj=1 I У = —— г1, (6.14) k=1 [ m j =1 где yk — центры тяжести (центроиды) нечетких множеств Bk, k = 1, ...,р. Таким образом, на выходе нечеткой реляционной модели при сделанных допущениях £ £ (m д;( x) j)} у, = . (6.15) 3 p m - ' 4 7 £ £ {m д, (x) r,k I k=1 j =1 57 n n n
Рассмотрим теперь нечеткую продукционную модель типа с за¬ данными весами правил W\: где х — многомерная входная переменная; A — многомерные нечеткие множества антецедента; у — выходная переменная; В, — нечеткие мно¬ жества консеквента; W, — вес i-го правила. Допустим, для нечеткой продукционной модели: — декартово произведение нечетких множеств — алгебраическое произведение; — нечеткая импликация — алгебраическое произведение; — метод дефаззификации - средний центр (centre average defuzzification). Тогда на выходе нечеткой продукционной модели получим Если n = mp, то каждая группа из р правил определяется одним и тем же многомерным нечетким множеством антецедента, а каждая группа из m правил - одним и тем же значением консеквента, т.е. вы¬ ражение (6.17) можно записать в виде, подобном (6.15): 1. В чем состоят особенности нечетких реляционных моделей? 2. В чем состоит реляционное представление нечеткого вывода с использованием отдельных правил? 3. В чем состоит реляционное представление нечеткого вывода с использованием базы правил? 4. В чем состоит подобие нечетких реляционных и продукцион¬ ных моделей? Ц: ЕСЛИ х есть A ТО у = Bj(Wj), i= 1, ...., n, (6.16) У = (6.17) i=1 (6.18) k=1 j =1 где Wjk - реиндексированный вес Wi. Вопросы для самопроверки 58
7. ПОНЯТИЕ СИСТЕМЫ. КЛАССИФИКАЦИЯ И ХАРАКТЕРИСТИКА СИСТЕМ НЕЧЕТКИХ МОДЕЛЕЙ 7.1. ПОНЯТИЕ И ОПРЕДЕЛЕНИЯ СИСТЕМЫ Понятие системы является базовым в различных концепциях тео¬ рии систем, системного подхода, системологии, прикладных исследо¬ ваний. Разнообразие определений системы обусловливается: — различными концепциями теории систем и вариантами систем¬ ного подхода, отличающимися по составу и содержанию используе¬ мых понятий и принципов; — ориентацией как на разные типы, так и на различное назначе¬ ние систем. Все многообразие подходов к определению понятия «система» (их известно более 40) можно разделить на следующие группы. Первую группу составляют определения системы как выбираемой исследователем любой совокупности переменных, свойств или сущно¬ стей [41]. Если следовать этим определениям, то системой могут ока¬ заться два любых произвольно выбранных объекта, вовсе не имеющих или имеющих в действительности настолько слабые взаимосвязи, что они могут быть либо не установлены, либо ими можно пренебречь. Вторая группа определений базируется на понимании системы как множества элементов, связанных между собой. Однако определе¬ ние системы через понятие множества допускает возможность различ¬ ных, в том числе произвольных, ее разбиений на подмножества эле¬ ментов, каждое из которых также является множеством [42]. Третью группу составляют определения системы, связывающие ее с целенаправленной активностью. Здесь система определяется как относительно устойчивая организованная совокупность взаимодейст¬ вующих и взаимосвязанных элементов, а также комплекс средств дос¬ тижения общей цели. Развитие и совершенствование такой системы зависит от взаимодействия с окружающей средой [43]. Помимо развития и совершенствования в системах могут проис¬ ходить процессы деградации и разрушения, которые зависят не только от взаимодействия систем с окружающей средой, но и от внутренних свойств самой системы. Однако ни одна из вышеуказанных групп оп¬ ределений явно не учитывает этого. Четвертую группу составляют наиболее общие определения сис¬ темы как комплекса элементов, находящихся во взаимодействии. Од¬ нако в этом случае к категории «система» могут быть отнесены любые, даже очень слабо взаимодействующие объекты, которые рассматри¬ ваются с системных позиций [44]. 59
Пятая группа определений характеризует систему через указание признаков, которыми должен обладать объект, чтобы его можно было отнести к категории «система». Данные признаки вводятся через поня¬ тия совокупности, взаимосвязи и целого [45]. Здесь под системой по¬ нимается совокупность элементов и процессов (называемых компо¬ нентами), находящихся в отношениях и взаимосвязях между собой, образующих единое целое и характеризующихся интегративным, или системным, свойством, отличающим данную совокупность от среды и приобщающим к этому свойству каждый из ее компонентов. 7.2. КЛАССИФИКАЦИЯ СИСТЕМ В настоящее время существует множество классификаций систем по различным признакам, наиболее общим из которых является клас¬ сификация по происхождению. По происхождению системы делятся на естественные (сущест¬ вующие в объективной действительности: живые; неживые экологиче¬ ские, социальные и др.); концептуальные или идеальные (продукт че¬ ловеческого мышления: знания, теории, гипотезы и др.); искусствен¬ ные (созданные человеком: орудия, механизмы, машины, роботы и др.); смешанные, т.е. объединяющие искусственные и естественные подсистемы: эргономические, биотехнические, автоматизированные, организационно-технические (в которых совместно функционируют человеческие коллективы и технические устройства) и др. [46, 47]. С одной стороны, концептуальные системы можно отнести к ис¬ кусственным, исходя из того, что они созданы человеком. С другой стороны, искусственными могут быть и системы, созданные другими организациями. Следовательно, справедливо разделение систем по форме их существования, независимо от того, кто их создал, на иде¬ альные (абстрактные) и реальные. В зависимости от целевого предназначения системы могут де¬ литься на ценностно-ориентированные и целеориентированные (целе¬ направленные). Ценностно-ориентированным системам внутренняя цель неприсуща. Функционирование таких систем не подчиняется чет¬ кой цели, отсутствует иерархия уровней управления. Целевая функция для этих систем задается извне задачами использования системы, а процесс их функционирования оценивается по некоторым критериям ценностей [48] . В целеориентированных системах, совокупность целей которых связана с иерархией уровней управления, основой функцио¬ нирования и развития являются факторы целесообразности и целепо- лагания [49, 50]. 60
Целеориентированные системы могут быть представлены общей схемой управления (рис. 7.1), состоящей из части системы SYS, под¬ лежащей управлению U, и управляющей части системы, которая это управление вырабатывает. При этом для выработки управления U управляющей частью требуется модель системы. В зависимости от модели системы и степени ее соответствия ре¬ альной системе можно предложить следующие классификационные признаки систем: по описанию переменных, по типу связи между входными и выходными переменными, по типу управления. По типу переменных системы делятся на системы с количествен¬ ным, качественным и количественно-качественным их описанием. Системы с количественными переменными допускают их дискретное и непрерывное описание, а также смешанный случай. Системы с качест¬ венным описанием переменных допускают представление как средст¬ вами естественного языка, так и на основе более глубокой формализа¬ ции. Для систем с количественно-качественным описанием могут ис¬ пользоваться любые из перечисленных выше представлений. Причем все эти описания могут носить детерминированный, стохастический, нечеткий или смешанный характер. Y Рис. 7.1. Общая схема управления системой: U - управляющие воздействия, V, V'- неконтролируемые воздействия 61
Классификация по типу управления определяется тем, входит ли управляющая часть в систему или является внешней по отношению к ней. В соответствии с этим могут быть выделены, во-первых, систе¬ мы, управляемые извне; во-вторых, самоуправляемые системы и, в-третьих, системы, управление которыми частично осуществляется извне, а частично — изнутри самой системы. В соответствии со степе¬ нью известности траектории (стратегии), приводящей систему к цели и возможности управляющей части удерживать управляемую часть сис¬ темы на этой траектории (вне зависимости от того, включена управ¬ ляющая часть в систему или нет), можно выделить четыре основных способа управления: без обратной связи (или программное управле¬ ние), регулирование (или автоматическое регулирование), по парамет¬ рам (параметрическая адаптация), по структуре (или структурная адаптация). Примечание. В скобках приведены названия способов управ¬ ления для случая самоуправляемых систем. Первый способ применяется, когда точно известна нужная траек¬ тория и, следовательно, известно правильное управление u0(t). Второй способ имеет место, когда неконтролируемые воздействия v0(t) отличаются от ранее предполагаемых и наблюдается разница между текущей y(t) и нужной траекториями y0(t) , которую необхо¬ димо устранить. Третий способ управления характеризуется тем, что траекторию, приводящую систему к цели, принципиально невозможно задать и управление состоит в такой подстройке параметров системы, обеспе¬ чивающей пересечение траекторией целевой области. Для четвертого способа характерно то, что целевая область не бу¬ дет достигнута ни при каких возможных комбинациях значений управляемых параметров. В этом случае необходимо изменять струк¬ туру системы в поисках такой, при которой возможно попадание в це¬ левую область. Интересным развитием этого способа является управ¬ ление (адаптация) по целям для случая принципиальной недостижимо¬ сти ранее поставленной цели при всевозможных преобразованиях структуры (ресурсов) системы [46, 51]. Как было ранее сказано, нужное управление U системой отыски¬ вается с помощью отбора среди возможных управлений путем сравне¬ ния по каким-либо критериям последствий каждого из них. Опреде¬ лить эти последствия и сравнить их можно, если в управляющей части имеется модель системы. Учет этого факта приводит еще к двум клас¬ сификациям систем. 62
По ресурсной обеспеченности моделирования системы делятся на малые и большие. Под большими понимаются системы, модели¬ рование которых затруднительно вследствие их размерности, а также наличия компонентов, не поддающихся точному и подробному опи¬ санию. По достаточности информации для моделирования системы мож¬ но разделить на простые и сложные. Сложной системой называется система, состоящая из подсистем, являющихся, в свою очередь, про¬ стыми системами, и в модели которой не хватает информации для эф¬ фективного управления. Степень сложности больше зависит от разно¬ образия связей и элементов, чем от их количества. При этом сложной является система, обладающая определенным набором свойств [52], например большим числом неоднородных элементов, эмерджентно- стью, иерархией, агрегированием параметров, многофункционально¬ стью, гибкостью, адаптацией, надежностью, безопасностью, стойко¬ стью, уязвимостью, живучестью. Вопросы для самопроверки 1. Чем обусловливается разнообразие определений системы? 2. На какие четыре группы можно разделить подходы к опреде¬ лению понятия системы? 3. Расскажите о классификации систем. 63
8. КЛАССИФИКАЦИЯ МОДЕЛЕЙ СИСТЕМ Понятие системы может быть уточнено до различной степени формализации в виде поэтапной эволюции и конструктивного разви¬ тия ее моделей, включающих в нее по мере необходимости дополни¬ тельные сведения. Модель системы, называемая моделью «черного ящика», отража¬ ет два ее важных свойства: целостность и обособленность (но не изо¬ лированность) от среды. Данная модель характеризуется заданным набором параметров, среди которых имеются параметры, влияющие на целевое свойство системы, но, какие из них являются определяющими (информативными) и какой математической моделью описываются закономерности их влияния на целевую характеристику, неизвестно. Единственным источником информации для решения такой задачи служат данные типа «вход-выход» или «стимул-реакция» с описанием входных и выходных параметров наблюдаемой системы. А выбор па¬ раметров делается путем проверки разных эмпирических гипотез на материале разнокачественных данных. Причем предполагается, что изучаемый процесс может быть «аппроксимирован». А задача моде¬ лирования сводится к постулированию соответствующей структуры аппроксиматора («черного ящика») для того, чтобы корректно отра¬ зить динамические свойства и нелинейность системы. Структура данной модели едва ли отражает структуру реальной системы. Про¬ блема идентификации системы в таком случае состоит в оценке пара¬ метров модели. Существенными препятствиями в использовании этих моделей являются следующие. Во-первых, при построении модели системы в виде «черного ящика» существует опасность неполноты перечня вхо¬ дов и выходов, вследствие чего важные из них могут быть сочтены несущественными либо быть неизвестны. Во-вторых, структуру и па¬ раметры этих моделей сложно проинтерпретировать. Они не могут быть использованы для анализа поведения системы каким-либо иным путем, кроме как численной имитацией, не могут быть промасштаби- рованы при изменении масштаба исследуемого процесса. В рамках системного моделирования созданы методы и средства, позволяющие выполнить дальнейшую структуризацию этих наиболее общих моделей системы. Так, при более детальном рассмотрении сис¬ тема может быть разбита на части: неделимые (элементы) и состоящие более чем из одного элемента (подсистемы). В результате описания этих подсистем и элементов может быть сформирована модель состава системы. Главная трудность в построении модели состава системы заключается в том, что границы разбиения модели состава системы на 64
подсистемы и элементы определяются целями системы и являются относительными, условными [46]. Следующим шагом в развитии модели системы является модель структуры системы, отображающая связи (отношения) между компо¬ нентами модели ее состава. Эти отношения могут быть самыми разно¬ образными (причинности, подобия, сходства, включения, подчиненно¬ сти и др.) Все вместе модели «черного ящика», состава и структуры систе¬ мы образуют еще одну модель системы, которую называют структур¬ ной схемой системы. В ней указываются все элементы системы, все связи между элементами внутри системы и связи определенных эле¬ ментов с окружающей средой (входы и выходы системы). Структурная схема системы является наиболее подробной и полной моделью любой системы. Структурная схема может быть представлена графическим отображением, в виде теоретико-множественных описаний, в виде матриц, графов и с помощью других языков моделирования структур. Данный подход к моделированию, заключающийся в полном понима¬ нии системной природы, обычно называется моделированием по мето¬ ду «белого ящика». Однако одной структурной информации для ряда исследований недостаточно, и акцент в этом случае делается на рассмотрение кон¬ кретных функциональных связей между входными, внутренними и выходными переменными системы [46, 49]. Все рассмотренные выше модели («черного ящика», состава, структуры, структурной схемы) системы являются статическими мо¬ делями. Системы, в которых происходят любые изменения со временем, называют динамическими системами, а модели, отражающие эти из¬ менения, — динамическими моделями систем. Для разных систем раз¬ работано большое число динамических моделей. И развитие этих мо¬ делей происходит приблизительно в той же последовательности, в ко¬ торой это имеет место и для статических моделей. Так, уже на этапе описания модели системы в виде «черного ящи¬ ка» различают два типа динамики системы: функционирование и раз¬ витие. Под функционированием понимают процессы в системе, ста¬ бильно реализующей фиксированные цели. Развитием называют то, что происходит с системой (изменение структуры, а иногда и состава системы) при изменении ее целей. Следующий шаг в построении динамических моделей заключает¬ ся в различении взаимосвязанных этапов процесса (функционирования и(или) развития). Для модели «черного ящика» в динамике — это ука¬ зание последовательности начальных (и конечных) состояний систе¬ мы; для модели состава в динамике — это перечень этапов в некоторой 65
упорядоченной последовательности действий; динамический вариант структурной схемы системы — это подробное описание происходящего или планируемого процесса (например, сетевые графики). Рассмотрим те же типы моделей («черного ящика», состава, структуры, структурной схемы) при более глубокой формализации их динамики. Для модели системы в виде «черного ящика» в динамике выход y(t) системы (может быть вектором) является реакцией на управляемые u (t) и неуправляемые v(t) входы x(t) = {u(t), v(t)} , выражаемой сово¬ купностью двух процессов: XT = {x(t)} и YT = { y (t)}, t e T . (8.1) Модель «черного ящика» в динамике предполагает, что преобра¬ зование F, при котором y(t) = F(x(t)), неизвестно. При наличии же динамического варианта структурной схемы сис¬ темы соответствие между входом и выходом можно описать тем или иным способом. Способ же описания зависит от наших знаний и фор¬ мы их использования. Задача восстановления неизвестной функции y(t) = F (x(t)) мо¬ жет решаться как самостоятельно, так и являться, по существу, задачей перехода от модели «черного ящика» к структурной схеме системы в динамике в соответствии со следующими этапами: — модель типа «черного ящика» — связь между входными и вы¬ ходными параметрами считается вообще неизвестной; — непараметризированная модель — информация о связи входных и выходных параметров является априорной и настолько общей, что нельзя сделать конкретных выводов о функциональном виде этой за¬ висимости; — параметризированная модель — в явной форме известна зави¬ симость y(t) = F (x(t)) с точностью до конечного числа параметров F = (Fi,..., Fk); — структурная схема модели, в которой параметры системы зада¬ ны точно. И даже в такой постановке задача восстановления неизвестной функции y(t) = F (x(t)) совсем не тривиальна, например: — в параметризированном случае неизвестны параметры функ¬ ции F; — в непараметризированном — вид функции F неизвестен; — неизвестны сведения о свойствах функции F (непрерывности, гладкости, монотонности, симметричности и др.); 66
— входы и выходы наблюдаются с помехами или искажениями; — необходимо учитывать состояние системы в предыдущие мо¬ менты; — система функционирует в условиях неопределенности. Наибольшая общность определения динамической модели систе¬ мы достигается введением в ее нотацию понятия состояния системы как некоторой внутренней характеристики системы, т.е. существует такое отображение h : S х Т ® Y, что y(t) =h(t,s(t)), teТ, (8.2) где s(t) — состояние системы в момент t. Данная зависимость показывает возможность изменения зависи¬ мости выхода системы от ее состояния с течением времени. Для за¬ вершения построения модели нужно ввести семейство отображений ст: S х X (•) ® S, заданных для всех значений параметров t e Т, t e Т, t < t, т.е. состояние системы в любой момент t > t одно¬ значно определяется состоянием s,. в момент t и «отрезком реализа¬ ции» входа х(») от t до t. s(t) = s(t,t, sT, x(.)). (8.3) Таким образом, наиболее общая динамическая модель системы задает множества входов, состояний и выходов, а также связи между ними: a h X ® S ® Y. (8.4) Конкретизируя множества X, Y и S и отображения а и h, можно перейти к примерам моделей различных систем. Например, в зависи¬ мости от того, дискретно или непрерывно множество Т, модели явля¬ ются дискретными или непрерывными по времени. Если же множества X, Y и S дискретной во времени системы имеют конечное число эле¬ ментов, то такую модель называют конечным автоматом. Если множе¬ ства X, Y и S — линейные пространства, а а и h — линейные операторы, то и модель системы называется линейной. Если для пространств ли¬ нейной системы заданы топологические структуры (определена мет¬ рика и сходимость последовательностей), а а и h непрерывны в этой топологии, то модели являются гладкими. Для этого класса моделей систем отображение а является общим решением дифференциально¬ го уравнения ds — = f (t, s, х), (8.5) dt 67
а для дискретных моделей систем — общим решением уравнения s(tk+і) = s(tk, s, x) = a(tk+1; tk, s, x(.}), (8.6) где x(«) — «траектория» для моментов времени t < tk. Если свойства систем не меняются со временем, то системы и их модели называют стационарными. Стационарность означает незави¬ симость функции h от t и инвариантность функции ст к сдвигу во вре¬ мени: h (t, s(t)) = h (s(t)), a(t; to, s, x(.)) = a(t +1; to +t, s, X(.)), (8.7) где x(•) - x(«), сдвинутое на t [46]. Конкретизацию моделей систем можно продолжить и далее. Рассмотрим ряд обобщающих определе¬ ний моделей систем, отличающихся компонентами, их числом и сте¬ пенью абстракции [53]. 1. Модель системы представляет собой организованное мно¬ жество: SYS = (M, OP), (8.8) где М — множество; ОР — оператор организации. 2. Модель системы есть множество элементов, свойств и отно¬ шений [54]: SYS ({m},{n},{r}), (8.9) где m — элементы; n — свойства; r — отношения. 3. Модель системы есть множество элементов, образующих структуру и обеспечивающих определенное поведение в условиях ок¬ ружающей среды: SYS = (e, ST, BE, E), (8.10) где e — элементы; ST — структура; BE — поведение; Е — среда. 4. Модель системы представляет собой множество входов, мно¬ жество выходов, множество состояний, характеризуемых функцией переходов и функцией выходов (см. выше): SYS = (X, Y, S, a, h), (8.11) где Х — входы; Y — выходы; S — состояния; a — функция переходов; h — функция выходов. 5. Модель системы предыдущего типа, дополненная фактором времени и множеством функциональных связей между входами, выхо¬ дами и состояниями во времени [55]: SYS = (t, X (t), Y(t), S(t), a, h), (8.12) где t — время. 68
6. Модель, соответствующая уровню бионических систем: SYS = (GN, KD, MB, EV, FC, RP), (8.13) где параметры учитывают: GN — генетическое (родовое) начало, KD — условия существования, MB — обменные явления, EV — развитие, FC — функционирование, RP — репродукцию. 7. Модель, соответствующая уровню организационно-техниче¬ ских систем: SYS = (PL, RO, RI, EX, PR, DT, SV, RD, EF), (8.14) где параметры учитывают: PL — цели и планы, RO — ресурсы внешние, RI - ресурсы внутренние, ЕХ - исполнителей, PR - процесс, DT - помехи, SV - контроль, RD - управление, EF - эффект. 8. Проблемно-целевая модель организационно-технической сис¬ темы: SYS = (PRO, TAR, CR, IR, X, Y, S, CON, RO, RI, ST, T, OSC), (8.15) где параметры учитывают: PRO - проблему, TAR - цели, CR - крите¬ рии целей системы, IR - проблемно-целевые информационно¬ аналитические ресурсы, X и Y - входные и выходные параметры, S - состояние системы, CON - управление, RO - внешние ресурсы управ¬ ления, RI - внутренние ресурсы управления, ST - стратегию управле¬ ния, Т - время, OSC - решение обратной задачи [56]. Вопросы для самопроверки 1. Какие два важных свойства отражает понятие модели «черного ящика»? 2. В чем заключается главная трудность в построении модели со¬ става системы? 3. Что отражает модель структуры системы? 4. Какие системы называются динамическими? 5. Какие системы называются статическими? 6. Функционирование - это... 69
9. ОБЛАСТИ ПРИМЕНЕНИЯ И КЛАССИФИКАЦИЯ НЕЧЕТКИХ МОДЕЛЕЙ 9.1. ОБЛАСТИ ПРИМЕНЕНИЯ НЕЧЕТКОГО МОДЕЛИРОВАНИЯ Модели статических и динамических систем, построение, исполь¬ зование и анализ которых базируется на положениях теории нечетких множеств и нечеткой логики, называют нечеткими моделями. Нечеткое моделирование не подменяет собой различные методо¬ логии моделирования сложных систем, в которых существенные зави¬ симости выяснены настолько хорошо, что они могут быть выражены в числах или символах, получающих в итоге численные оценки. Нечет¬ кие модели скорее предоставляют необходимый инструмент для ис¬ следования как отдельных аспектов, так и всей системы в целом на различных этапах ее анализа в случае доминирования качественных элементов над количественными. В таблице 9.1 показаны взаимосвязи между описаниями и пере¬ менными, характеризующими различные аспекты традиционных чет¬ ких (crisp) и нечетких (fuzzy) моделей. Нечеткие модели могут быть представлены как обобщение интер- вально-оцениваемых моделей, которые, в свою очередь, являются обобщением четких моделей. На рисунке 9.1 иллюстрируются особен¬ ности вычисления функций для четких, интервальных и нечетких дан¬ ных. Заметим, что функция f : X х Y может быть задана в виде отноше¬ ния на декартовом произведении X х Y . Вычисление функции для за¬ данного значения входной переменной выполняется за три шага вне зави¬ симости от типа функции и данных (четких, интервальных, нечетких): 1) задание значения входной переменной х в пространстве X ® Y (вертикальные пунктирные линии на рис. 9.1); 9.1. Взаимосвязи между описаниями и переменными четких и нечетких моделей Описание модели Входные данные Результирующие (выходные) данные Математические методы Четкое Четкое Четкое Функциональный анализ, линейная алгебра и др. Четкое Нечеткое Нечеткое Принцип обобщения Заде Четкое Нечеткое Четкое Нечеткие модели, нечеткие вычисления Нечеткое Четкое/ нечеткое Нечеткое Нечеткие модели, нечеткие вычисления 70
Четкий аргумент Интервальный или нечеткий аргумент Четкая функция Интервальная функция Нечеткая функция Рис. 9.1. Вычисление значений четких, интервальных и нечетких функ¬ ций для четких, интервальных и нечетких аргументов 2) нахождение пересечения с отношением; 3) проекция этого пересечения на Y (горизонтальная пунктирная линия). Можно выделить следующие сферы применения нечетких моделей. Недостаточные или неопределенные знания об исследуемом объ¬ екте, системе. Традиционная теория систем использует четкие матема¬ тические модели в виде алгебраических, дифференциальных или раз¬ ностных уравнений. Такие модели позволяют адекватно описать сис¬ темы, закономерности поведения и управления которыми четко опре¬ делены. Однако для большинства конкретных систем получение при¬ емлемого для построения четкой модели уровня требуемой информа¬ ции является сложной, трудоемкой, дорогостоящей или вовсе невоз¬ можной задачей. Для них четкие математические модели не могут 71
быть получены или они являются слишком сложными для практиче¬ ского использования. Примеры таких систем могут быть найдены в различных областях: в химической или пищевой индустрии, в сфере биотехнологии, экологии, финансах, социологии [57, 58]. Значимая часть информации об этих системах доступна в виде экспертных дан¬ ных или в эвристическом описании процессов функционирования. Эта информация может быть нечеткой и неопределенной для того, чтобы быть выраженной математическими зависимостями. Кроме того, ин¬ формация о системе может быть разнокачественной, а оценка значе¬ ний параметров проводиться с помощью различных шкал (отношений, интервалов, порядка и наименований). Однако зачастую возможно описать функционирование этих систем в виде эвристических пред¬ почтений, используя конструкции естественного языка в форме правил типа «если—то». Такие нечеткие модели могут быть использованы для создания баз знаний, построенных на основе знаний экспертов в дан¬ ной предметной области. С этой точки зрения нечеткие модели подоб¬ ны экспертным системам, достаточно хорошо исследованным в рамках соответствующего направления искусственного интеллекта [59, 60]. Другой аспект неопределенности знаний о системе связан с не¬ ясностью или нечеткостью выделения и описания границы системы или отдельных ее состояний, а также входных и выходных воздейст¬ вий [61]. Адекватная обработка неопределенной информации. Точные вы¬ числения с использованием традиционных математических моделей дают необходимый эффект в случае, если параметры и входные дан¬ ные являются точными и корректно представленными. Однако часто традиционные математические методы не только не позволяют адек¬ ватно обработать данные, но также не позволяют учесть естественно присущую этим данным неопределенность. Вероятностный подход является традиционным путем для учета неопределенности. Однако очевидно, что не все типы неопределенности могут быть учтены с ис¬ пользованием этого подхода. Нечеткая логика и теория нечетких мно¬ жеств являются одним из эффективных подходов к решению данной проблемы [62]. «Прозрачное» (gray-box) моделирование и идентификация. Иден¬ тификация динамических систем на основе измерений их входных и выходных параметров является важной задачей в целом ряде практи¬ ческих приложений. Многие реальные системы являются нелинейны¬ ми в своей основе и не могут быть представлены линейными моделя¬ ми, использующими существующие методы идентификации [63]. В последнее время серьезное внимание уделяется развитию методов 72
идентификации нелинейных систем на основе измеряемых (экспери¬ ментальных) данных. Искусственные нейронные сети и нечеткие мо¬ дели являются наиболее востребованными и адекватными для реше¬ ния этих задач. Нечеткие модели при наличии обучающей выборки позволяют аппроксимировать функции или измеренные данные с любой требуемой точностью. Это свойство нечетких моделей опре¬ деленного класса позволяет отнести их к универсальным аппрокси- маторам [64 - 66]. Сравнивая нечеткие модели с другими хорошо известными мето¬ дами аппроксимации, например с искусственными нейронными сетя¬ ми, можно отметить их большую прозрачность, которая возможна бла¬ годаря их лингвистической интерпретации в виде нечетких продукци¬ онных правил. Логическая структура этих правил способствует понима¬ нию и анализу системы количественно-качественными методами. В таб¬ лице 9.2 сравниваются различные подходы к моделированию систем. 9.2. Взаимосвязи между описаниями и переменными четких и нечетких систем Подход к моделиро¬ ванию Источник информации Метод извлече¬ ния знаний Пример Недостатки Метод «белого ящика» Формаль¬ ные знания или данные Математиче¬ ский (напри¬ мер, уравне¬ ние Лагранжа) Диффе- ренци- альные уравне¬ ния Не может использо¬ вать знания, представ¬ ленные в «естествен¬ ном» виде Метод «черного ящика» Экспери¬ ментальные данные Оптимизация (обучение) Регрес¬ сия, ней¬ ронные сети Не может вовсе ис¬ пользовать знания Метод «серого ящика» Экспери¬ ментальная информация или экспе- рименталь- ные данные Основанный на знаниях + обучение Нечеткие продук¬ ционные и реля¬ ционные модели «Прокля¬ тие» раз¬ мерности 73
9.2. КЛАССИФИКАЦИЯ НЕЧЕТКИХ МОДЕЛЕЙ В зависимости от назначения постулаты и положения теории не¬ четких множеств и нечеткой логики в нечетких моделях могут исполь¬ зоваться: 1. Непосредственно при описании системы. В этом случае систе¬ мы могут быть определены: — нечеткими продукционными моделями (Rule-Based Fuzzy Models/-Systems - нечеткие модели/системы, основанные на правилах). Нечеткие модели данного класса являются наиболее общими для пред¬ ставления различных плохо формализуемых сложных систем; — в виде нечетких функциональных моделей (Fuzzy Functional Models/Systems) [67]. Модели этого вида, с одной стороны, можно представить как разновидность нечетких продукционных моделей, в которых данные в области предпосылок представляются в виде нечет¬ ких множеств, а зависимости входов-выходов в области заключений задаются в виде функции. С другой стороны, нечеткие функциональ¬ ные модели можно выделить в отдельный класс в силу различной спе¬ цифики формирования функциональных зависимостей, а также разно¬ образия решаемых с их использованием задач; — нечеткими реляционными (в виде нечетких отношений) моде¬ лями (Fuzzy Relational Models/Systems) [68, 69]. Эти модели представ¬ ляют собой альтернативу нечетким продукционным моделям, сохраняя их особенности, однако не требуя дополнительных усилий для форми¬ рования нечетких продукционных правил. 2. При задании параметров системы. Система может быть опре¬ делена в виде алгебраических или дифференциальных уравнений, в которых параметры являются нечеткими числами, например y = Эх, + 5х2, (9.1) где 3 и 5 — нечеткие числа «около трех» и «около пяти», заданные соответствующими функциями принадлежности. Кроме того, нечеткие модели могут создаваться на основе совме¬ щения указанных выше подходов. Примечание. Под термином «нечеткая система» в Rule-Based Fuzzy Systems, Fuzzy Relational Systems и Fuzzy Functional Systems подразумевается совокупность элементов, преобразований и действий, необходимых для формализации, анализа и моделирования конкретно¬ го процесса, объекта. Поэтому в дальнейшем в этом контексте будем использовать термин «нечеткая модель». 74
9.3. ИНТЕГРАЦИЯ НЕЧЕТКИХ И НЕЙРОННЫХ СЕТЕЙ Основные трудности при использовании нечетких моделей для решения практических задач связаны, как правило, с априорным опре¬ делением компонентов этих моделей (нечетких высказываний, функ¬ ций принадлежности для каждого значения лингвистических перемен¬ ных, структуры базы нечетких правил и др.). Нечеткие модели, как правило, удобно представлять в виде не¬ четких сетей — сетевых структур, элементы или совокупности элемен¬ тов которых реализуют различные компоненты нечетких моделей и этапы нечеткого вывода. К основным достоинствам такого представ¬ ления следует отнести, во-первых, конструктивность и наглядность интерпретации с их помощью компонентов модели; во-вторых, воз¬ можность выделения параметров (прежде всего параметров настройки) модели под соответствующие алгоритмы. Поскольку компоненты нечетких моделей зачастую выбираются субъективно, они могут быть не вполне адекватны моделируемой системе или процессу, что отражается и на реализующих их нечетких сетях. Одним из наиболее результативных примеров объединения фор¬ мализмов модели и сети являются искусственные нейронные сети, представляющие собой совокупность нейроподобных элементов, оп¬ ределенным образом соединенных друг с другом и с внешней средой с помощью связей, задаваемых весовыми коэффициентами. Основное преимущество нейросетевого подхода — возможность выявления зако¬ номерностей в данных, их обобщение, т.е. извлечение знаний из дан¬ ных, а основной недостаток — невозможность непосредственно (в яв¬ ном виде, а не в виде вектора весовых коэффициентов межнейронных связей) представить функциональную зависимость между входом и выходом исследуемого объекта. Другим недостатком нейросетевого подхода является также трудность формирования представительной выборки, большое число циклов обучения и забывание «старого» опы¬ та, сложность определения размера и структуры нейронной сети. Подходы к исследованию сложных систем на основе нечетких и нейросетевых моделей взаимно дополняют друг друга, поэтому целе¬ сообразна их интеграция на основе принципа «мягких» вычислений (Soft Calculation). Основы такой интеграции сводятся к следующему: к терпимости к нечеткости и частичной истинности используемых данных для достижения интерпретируемости; гибкости и низкой стои¬ мости решений. Могут быть предложены различные классификации способов и средств интеграции этих моделей. 75
В данной книге рассмотрены следующие классы сетей, домини¬ рующие при представлении и анализе соответствующих типов моде¬ лей сложных систем и процессов: — нечеткие нейронные продукционные сети, в которых нейросе- тевая технология используется в качестве инструмента для реализации компонентов нечетких продукционных моделей, — для анализа и моде¬ лирования системы на основе метода «серого ящика»; — нейронные нечеткие сети, в которых на основе положений теории нечетких множеств осуществляется включение нечеткости в различные компоненты нейронных сетей (элементы структуры и меха¬ низмы обучения), — для анализа и моделирования системы на основе метода «черного ящика»; — гибридные нечетконейронные сети, в которых реализуется ин¬ теграция нечетких и нейросетевых моделей в единую модель на уров¬ не решаемых задач; — представление нечетких моделей с помощью структур в виде ориентированных графов различных типов, в описание отдельных компонентов которых введена нечеткость, — для анализа и моделиро¬ вания систем и процессов на основе методов «серого и белого ящика». Вопросы для самопроверки 1. Дайте определение понятию нечеткой модели. 2. Какие области применения нечеткого моделирования вы знаете? 3. Укажите шаги вычисления функции для заданного значения входной переменной. 4. Какие сферы применения нечетких моделей вы знаете? 5. По каким критериям классифицируют нечеткие модели? 6. Что вы знаете об интеграции нечетких и нейронных сетей? 76
10. НЕЧЕТКИЕ ПРОДУКЦИОННЫЕ МОДЕЛИ 10.1. КОМПОНЕНТЫ НЕЧЕТКИХ ПРОДУКЦИОННЫХ МОДЕЛЕЙ Нечеткие продукционные модели (Rule-Based Fuzzy Models/ Systems) являются наиболее общим видом нечетких моделей, исполь¬ зуемых для описания, анализа и моделирования сложных слабо фор¬ мализуемых систем и процессов. В настоящее время существенно расширился круг изданий, в том число отечественных авторов, посвященных различным аспектам по¬ строения и использования этих моделей. Это обосновывает необходи¬ мость уточнения основных терминов и понятий, по-разному трактуе¬ мых в этих работах. Под нечеткой продукционной моделью будем понимать согласо¬ ванное множество отдельных нечетких продукционных правил вида «ЕСЛИ А, ТО В» (где А и В - предпосылка (антецедент) и заключение (консеквент) данного правила в виде нечетких высказываний), предна¬ значенное для определения степени истинности заключений нечетких продукционных правил на основе предпосылок с известной степенью истинности соответствующих правил. Для построения нечеткой продукционной модели необходимо за¬ дать следующие определяющие ее компоненты: — способ (схему) нечеткого вывода заключений; — базу нечетких продукционных правил; — процедуру введения нечеткости (fuzzification); — процедуру агрегирования (aggregation) степени истинности предпосылок по каждому из нечетких продукционных правил; — процедуру активизации (activation) заключений каждого из не¬ четких продукционных правил; — процедуру аккумулирования (accumulation) активизированных заключений всех нечетких продукционных правил для каждой выход¬ ной переменной; — процедуру приведения к четкости (defuzzification) для каждой аккумулированной выходной переменной; — процедуру параметрической оптимизации конечной базы не¬ четких правил [1]. В настоящее время предложено множество (более 100) разновид¬ ностей нечетких продукционных моделей на основе различных комби¬ наций указанных выше компонентов. 77
10.2. СПОСОБЫ НЕЧЕТКОГО ВЫВОДА В нечетких продукционных моделях используются в основном два способа нечеткого вывода заключений: прямой и обратный. Прямой способ нечеткого вывода, или прямая нечеткая цепочка рассуждений (fuzzy forward-chaining reasoning), базируется на правиле вывода нечеткий модус поненс (fuzzy modus ponens), обобщенная схе¬ ма которого включает в себя следующие этапы. Этап 1. Задание нечеткой импликации R: А ® В , определяющей нечеткое причинно-следственное отношение между предпосылкой (антецедентом) А и заключением (консеквентом) В, которое представ¬ ляется в виде нечеткой продукции: ЕСЛИ х есть А, ТО у есть В, (10.1) где х — входная переменная, х е X , X — область определения предпо¬ сылки нечеткого продукционного правила; А — нечеткое множество, определенное на X, с функцией принадлежности m А (х) е [0,1] ; у - вы¬ ходная переменная, yeY, Y — область определения заключения; В — нечеткое множество, определенное на Y, с функцией принадлежно¬ сти m в (У) е[0,1]. Операция нечеткой импликации занимает центральное место в нечетких продукционных моделях, определяя причинно-следственное отношение между предпосылками и заключениями правил. В настоя¬ щее время существует большое число (несколько десятков) различных вариантов этой операции. Всех их можно разделить на три основных класса: 1. S-импликации, определяемые как mr(х, у) = s(NOT(mа(х), mв(У))), (10.2) где S — оператор S-нормы; NOT — оператор нечеткого дополнения на интервале [0,1]. Основой операций импликации этого класса является булева им¬ пликация. Типичными примерами S-импликации могут служить им¬ пликации Клине—Даэнса и Лукашевича. 2. R-импликации, образованные на основе сравнения с Г-нормой: mr(х, у) = sup{zе[0,1]Iт(mа(х),z)<mв(У)}. (10.3) Эти операции импликации основаны на формализме интуициони¬ стской логики. Примерами R-импликации являются импликации Геде¬ ля и Гейнса. 3. т-импликации, определяемые как 78
mR(x, у)=т(ma(x), mв(y)), (10.4) где Т - оператор Т-нормы. Хотя эти операции импликации не удовлетворяют их общеприня¬ тым свойствам, они широко используются в этом качестве в различ¬ ных приложениях нечеткой логики. Типичными примерами Т-импли- кации являются импликации Мамдани и Ларсена [2]. В работе [3] предложено оценивать операции нечеткой имплика¬ ции по двум критериям: 1) максимальная ошибка, обусловленная операцией импликации, не должна превышать максимальной ошибки лингвистического пред¬ ставления данных; 2) нечеткая модель, построенная с использованием выбранной операции нечеткой импликации, должна быть робастной по отноше¬ нию к выбору вида функции принадлежности. На основе проведенного анализа, исходя из вышеуказанных кри¬ териев, в ряде работ сделан вывод о наиболее эффективном использо¬ вании следующих операций нечеткой импликации [10, 5]: — классической нечеткой импликации, или импликации Клине— Даэнса (Kleene-Dienes): mr(x, у) = max{1 — ma(x), тв(у)} при ma(x) >mв(у) ; (10 5) — нечеткой импликации Заде (Zadeh) mr(x, у) = max{min{ma(x), mв(У)}, 1 — ma(x)}; — нечеткой импликации Мамдани (Mamdani) mr(x, у) = min{ma(x), mв(у)}; — нечеткой импликации Ларсена (Larsen) mr(x, у) = ma(x)mв(у); — нечеткой импликации Лукашевича (Lukasiewicz) mr(x, у) = min{1,1 — ma(x) + mв(у)} или mr(x, у) = max{0, ma(x) + mв(у)—1}; — стандартной четкой (standard strict) импликации mR(x,у) = I1' если m*(x)(у); [0, если ma(x) >mв(у); (10.6) (10.7) (10.8) (10.9) (10.10) 79
— нечеткой импликации Геделя (Godel) p1, если mA(x) < mR (y); m R (x, y) = Г (10.11) [mr(y), если ma(x) >mr(y); — нечеткой импликации Гейнса(Gai nes) Pi, если mA(x) < mR (y); mR(x y) = j ’ T\( ) HR(y); (10.12) [m r (y)/m a (x), если m a (x) >m r (y); — нечеткой импликации Гогуэна mR(x, y) = min{1, mB(yVmA(x)} при mA(x) >0; (10.13) — нечеткой импликации Клине—Даэнса—Лукашевича (Kleene- Dienes-Lukasiewicz) m r (x, y) = 1—m a (x) +ma (x) m r (y); (10.14) — нечеткой вероятностной импликации mr(x, y) = min{1,1 — ma(x) +ma(x)mr(y)}; (10.15) — нечеткой импликации с ограниченной суммой mR(x y) = min{1, ma(x) +mr(y)}; (10.16) — нечеткой импликации Н. Вади mR(x y) = max{ma(x)mB(y),1—m^(*)}; (1017) — нечеткой импликации Ягера (Y ager) mr(x, y) = ma(y)mB (х). (10.18) Помимо указанных выше критериев выбор той или иной опера¬ ции нечеткой импликации осуществляется в зависимости от исполь¬ зуемого базиса нечетких операций и ее наиболее эффективной вычис¬ лительной реализации. Этап 2. Задание нечеткого условия (факта) «х' есть А '», (10.19) где х' — фактическое значение переменной х; А' — нечеткое множество, отражающее значение х', определенное на X, с функцией принадлеж¬ ности m a (x) 6 [0,1]. Этап 3. Формирование вывода «У есть В'», (10.20) 80
где у' — полученное значение переменной у; В — нечеткое множество, отражающее значение у', определенное на Y, с функцией принадлеж¬ ности тв' (у) е[0,1] ■ Так как нечеткое условие (10.19) содержит нечеткое множество А', которое является «близким» в определенном смысле к нечеткому множеству А, то в результате формируется вывод в виде функции при¬ надлежности нечеткого множества В', характеризующей степень его «близости» к нечеткому множеству В. Таким образом, процесс получения результата прямого нечеткого вывода В' с использованием нечеткой импликации A ® В и нечеткого условия «г1 есть А'» можно представить в виде В’ = A• R = A• (A® В), (10.21) где «•» — операция свертки (композиционное правило нечеткого логи¬ ческого вывода). Нечеткая импликация A ® В соответствует нечеткому отноше¬ нию R, которое можно рассматривать как нечеткое подмножество де¬ картова (прямого) произведения X х Y полного множества предпосы¬ лок X и заключений Yс функцией принадлежности тr(x, у). Поэтому функцию принадлежности нечеткого множества В' можно представить в следующем виде [6]: тв- (у) = sup {m a' (x)TmR (x, у)}. (10.22) хеХ Здесь sup{...} означает верхнюю границу множества элементов xeX {---}, где х «пробегает» все значения из X; Т—операция Т-нормы. Если X представляет собой множество с конечным числом эле¬ ментов, то выражение (10.22) принимает вид тв' (у) = max {т A (x)TmR (x, у)}. (10.23) хеХ Само же композиционное правило (10.23) называется (max-Т)- композицией, или макстриангулярной композицией. Среди правил композиции наибольшее распространение получи¬ ли следующие операции: (эир-тіп)-композиция IV (у) = sup {min [т a' (x), mR (x, у)]}; (10.24) хеХ 81
(su р-ргоф-композиция mв'(у) = sup{ma(x) mr(x, y)}, (10.25) xeX а также их разновидности, правила макстриангулярной композиции, для случаев, если X представляет собой множество с конечным числом элементов: (max-mi п)-композиция IV(У) = max{min[mА-(x), mr(x, y)]}; (10.26) xeX (max-pгod)-композиция Ib'(У) = max{mA'(x) mr(x, y)}. (10.27) xeX Широкое применение правила (тах-тіп)-композиции обусловле¬ но хорошими алгебраическими свойствами этой операции (ассоциа¬ тивностью и дистрибутивностью относительно max), необходимы¬ ми в задачах нечеткого моделирования, а правила (max-prod)- композиции — простотой реализации и большей чувствительностью к изменениям входных переменных в предпосылках нечетких продукци¬ онных правил. В качестве операции Г-нормы в выражениях (10.22) и (10.23) ис¬ пользуется действительная функция от двух переменных T : [0,1] х [0,1] ® [0,1] , удовлетворяющая следующим свойствам: 1) Т(а, 0) = 0, T(a, 1) = а (ограниченность); (10.28) 2) Т(а, Ь) = Г(Ь, а) (коммутативность); (10.29) 3) Т(а, Т(Ь, с)) = Т(Т(а, Ь), с) (ассоциативность); (10.30) 4) Т(а, Ь) < Т(с, d), если a < с и Ь<d (монотонность). (10.31) Каждой Т-норме соответствует своя S-норма, представляющая действительную функцию от двух переменных S: [0,1] х [0,1] ® [0,1] и удовлетворяющая следующим свойствам: 1) S(a, 0) = a, S(a, 1) = 1 (ограниченность); (10.32) 2) S(a, Ь) = ^Ь, а) (коммутативность); (10.33) 3) S(a, ^Ь, с)) = S(S(a, Ь), с) (ассоциативность); (10.34) 4) S(a, Ь) < S(c, d), если а<с и Ь<d (монотонность). (10.35) Зависимость между Т- и S-нормами выражается следующим ра¬ венством: (aT Ь) = 1 - [(1 - a) S (1 - Ь)]. (10.36) «Популярность» использования Т- и S-норм обусловлена возмож¬ ностью настройки параметров этих нечетких операторов, а также их хорошими алгебраическими свойствами, необходимыми для решения 82
целого ряда прикладных задач анализа и моделирования различных систем. В таблице 10.1 представлены наиболее часто используемые Т- и S-нормы. 10.1. Примеры наиболее часто используемых Т- и S-норм T (a, b) S (a, b) Пара¬ метры min{a, b} max{a, b} ab a + b - ab max{0, a + b -1} min{1, a + b} a, если b = 1 b, если a = 1 0, если a, b < 1 a, если b = 0 b, если a = 0 0, если a, b > 0 ab max{a {a, b, y} (1 - a)(1 - b) ye max{(1 - a),(1 - b), y} [0,1] ab y + (1 -y) (a + b- ab) a + b - (2-y)ab y-(1 -y) ab y > 0 1 1 + Y 1 1 + Y y>0 1 1 -1+-11 ’-1 ay by) 1- 1 11 - + - (1 - a)y (1 - b)y y > 1 1 -((1 - a)y + (1 - b)y-(1 - a)y (1 - b)y) (ay+ by - ayby)y y>0 max 10,1 -((1 - a)y + (1 - b)y min<|1, (ay + by)y j y > 1 log. (1 + (ya - 1)(yb -1) ^ y-1 1 - logy 1+ (y1-a + y1-b) y-1 y > 0, y Ф 1 max{0, (y - 1)(a + b) -1 - yab} min{1, a + b+yab} y > -1 y y 83
Обратный способ нечеткого вывода, или обратная нечеткая це¬ почка рассуждений (fuzzy backward-chaining reasoning), основывается на использовании правила вывода нечеткий модус толленс {fuzzy modus tollens). Его схема включает в себя следующие этапы. Этап 1. Задание нечеткой импликации R: А ® В , определяющей, как и в случае прямого способа вывода, нечеткое причинно¬ следственное отношение между предпосылкой и заключением, кото¬ рое представляется в виде нечеткой продукции (10.1). Этап 2. Задание нечеткого условия «у' есть В'». Этап 3. Формирование вывода «х' есть А'». Целью способа обрат¬ ного нечеткого вывода является установление истинности предпосыл¬ ки нечеткой продукции (10.1), а сам процесс получения результата обратного нечеткого вывода А' с использованием нечеткой имплика¬ ции А ® В и нечеткого условия «у' есть В'» можно представить в виде А = R• В’ = (А ® В) • В’. (10.37) Причем вывод по данному способу получается в виде функции принадлежности нечеткого множества предпосылки А' на основе функции принадлежности нечеткой импликации А ® В и функции принадлежности нечеткого множества заключения В' [6, 7]: m а (у) = sup {m r (х, у) т m ^ ( у)}. (1038) уеУ В дальнейшем, если не указано иное, будем рассматривать моде¬ ли, реализующие прямой способ нечеткого вывода. 10.3. СОЗДАНИЕ БАЗЫ НЕЧЕТКИХ ПРОДУКЦИОННЫХ ПРАВИЛ Для задания базы нечетких продукционных правил необходимо решить следующие вопросы: — сформировать простые нечеткие высказывания в предпосылках и заключениях правил; — при необходимости сформировать составные нечеткие выска¬ зывания в предпосылках и заключениях правил; — выбрать тип нечетких продукционных правил; — задать структуру базы нечетких продукционных правил; — оценить и обеспечить полноту (достаточность количества не¬ четких правил), их непротиворечивость и по возможности устранить корреляции между отдельными нечеткими правилами в базе. 84
10.3.1. Формирование нечетких высказываний в предпосылках и заключениях правил При формировании простых нечетких высказываний в предпо¬ сылках и заключениях нечетких продукционных правил (например, «х есть А», «у есть В» в правилах вида (10.1)) необходимо задать функ¬ ции принадлежности соответствующих нечетких множеств. Либо экс¬ перту может быть заранее задан набор готовых функций принадлеж¬ ности, покрывающих по базовым множествам пространства входных и выходных переменных, либо от него будет требоваться построение функций принадлежности. Сами способы построения функций принадлежности могут быть разделены на прямые и косвенные. Прямые методы основаны на непо¬ средственном задании экспертом нечетких множеств. Они использу¬ ются для измеримых понятий или когда выделяются их полярные зна¬ чения [8]. В случае опроса и согласования мнений группы экспертов, как правило, применяется прямой метод построения функций принад¬ лежности, приближенно равных некоторому нечеткому числу, а также метод приближенных интервальных оценок [9]. Косвенные методы определения значений функций принадлежности используются в слу¬ чаях, когда нет измеримых свойств. Они употребляются наиболее час¬ то. Рассмотрим краткое описание основных косвенных методов по¬ строения функций принадлежности. Методы парных сравнений Пусть X = {х} — множество из n элементов. Нечеткое множество G множества X есть совокупность пар вида где mG (х) — степень принадлежности элемента х ко множеству G. Для всех элементов множества G должно выполняться условие Степень принадлежности элементов ко множеству определяется посредством парных сравнений. При этом, например, используются оценки, приведенные в табл. 10.2. Оценку элемента х по сравнению с элементом Xj с точки зрения свойства G обозначим через aij. Для согласованности этих значений примем aVj = 1/ aji. Оценки aij составляют матрицу A = |aij|. Собст¬ венный вектор Ь = (Ь,,...,bn) матрицы А находится из уравнения s = {mG(х)/(х) }, хе X, (10.39) (10.40) 85
10.2. Оценки парных сравнений элементов Оценки важности Качественная оценка Примечание 1 Одинаковая значимость Одинаковый ранг альтернатив 3 Слабое превосходство Незначительное предпочтение одной альтернативы другой 5 Сильное превосходство Существенные доказательства превосходства 7 Очевидное превосходство Убедительные доказательства превосходства 9 Абсолютное превосходство Комментарии излишни 2, 10, 6, 8 Промежуточные значения Необходимы при компромиссе Ab = lb, где 1 — собственное значение матрицы А. Вычисленные зна¬ чения, составляющие собственный вектор b, принимаются в качестве степени принадлежности элементов х ко множеству G: mo (x) = b, i = 1,..., n. (10.41) Так как всегда выполняется равенство Ab = nb, то найденные зна¬ чения тем точнее, чем ближе к n. Отклонение от n может служить мерой согласованности суждений экспертов [9]. Методы на основе статистических данных В качестве степени принадлежности элемента х ко множеству G принимается оценка частоты использования значения терма, задавае¬ мого нечетким множеством, для характеристики элемента. Степень принадлежности некоторого значения вычисляется как отношение числа экспериментов, в которых оно встречалось в определенном ин¬ тервале шкалы, к максимальному для этого значения числу экспери¬ ментов по всем интервалам при условии, что в каждый интервал шка¬ лы попадает одинаковое число экспериментов. Полученные данные затем обрабатываются для уменьшения внесенных экспериментом ис¬ кажений на основе использования свойств функций принадлежности (один максимум и гладкие, затухающие до нуля фронты), а также пра¬ вил нормировки, кусочно-линейной аппроксимации [9]. Использование типовых L-R-функций В качестве функций принадлежности используются типовые L-R- функции (треугольная, трапецеидальная, гауссова, колоколообразная, сигмоидальная и др.), конкретный вид которых определяется значе¬ ниями параметров, входящих в их аналитические представления, и уточняется в соответствии с данными экспериментов [8, 10]. 86
10.3.2. Формирование составных нечетких высказываний в предпосылках и заключениях правил Как в предпосылках, так и в заключениях нечетких продукцион¬ ных правил вида (10.1) нечеткие высказывания могут быть как про¬ стыми (например: «х есть А», «у есть В»), так и составными, образо¬ ванными из простых, для комбинирования которых используются не¬ четкие логические операции конъюнкции «И» и дизъюнкции «ИЛИ». Возможны следующие случаи: — во-первых, составные нечеткие высказывания в предпосылке или в заключении, соединяемые нечеткими логическими операциями «И», «ИЛИ», относятся к одной и той же переменной; — во-вторых, составные нечеткие высказывания в предпосылке, соединяемые нечеткими логическими операциями «И», «ИЛИ», отно¬ сятся к разным переменным; — в-третьих, составные нечеткие высказывания в заключении, со¬ единяемые нечеткими логическими операциями «И», «ИЛИ», относят¬ ся к разным переменным. В первом случае вне зависимости от того, где находятся нечеткие высказывания, относящиеся к одной и той же переменной (в предпо¬ сылке или в заключении), из нескольких нечетких высказываний фор¬ мируется одно новое простое нечеткое высказывание. Во втором случае, который возможен, например, в ситуации про¬ тиворечивых либо не вполне согласованных предпосылок, вместо высказывания «х есть А, И x есть А » формируется новое высказы¬ вание — «х есть А*», где А* — нечеткое множество, равное пересече¬ нию нечетких множеств А, и ^ с использованием одного из сле¬ дующих способов: — mi n-конъюнкция нечетких множеств А, и А^ определяется как нечеткое множество А*, заданное на X, с функцией принадлежности m А* (x) е [0,1]: mА* (x) = min{mA(x), mA^x)}, "xе X; (10.42) — алгебраическое произведение mA* (x) = ma,(x) mA2 (x), "x е X; (10.43) — граничное произведение mA* (x) = max{mA|(x) + mA2(x) —1,0}, "x е X; (10.44) 87
— драстическое произведение m a2(х), если m ai(х) = 1; m * (х) = < ma (х), если ma (X) = 1, "x 6 x; (10.45) 0 в остальных случаях; — Х-сумма mA.(x) = im^(x) + (1—i)mA2(x), "x6x, (10.46) где 16 [0,1]. Вместо высказывания «x есть A ИЛИ х есть A » формируется новое высказывание — «х есть А*», где А* — нечеткое множество, соот¬ ветствующее объединению нечетких множеств A и A2 с использова¬ нием одного из следующих способов: — max-дизъюнкция нечетких множеств A и A определяется как нечеткое множество А*, заданное на X, с функцией принадлежности m A* (x) 6 [0,1]: mA. (x) = max{mA| (х), ma2 (x)}, "x 6 X; (10.47) — алгебраическая сумма mA. (x) = ma,(x) + ma2 (x) — ma, (X) ma2(X), "x 6 x; (10.48) — граничная сумма mA. (X) = min{ma, (x) + ma2(x),i}, "X6 X; (10.49) — драстическая сумма ma>(х), если ma,(x) = 0; ma (х), если ma(x) = 0, "x6Х; (10.50) 1 в остальных случаях; mA. (x) = — 1-сумма (см. выражение (10.46)). Во втором случае, когда составные нечеткие высказывания в предпосылке, соединяемые нечеткими логическими операциями «И», «ИЛИ», относятся к разным переменным, используется процедура аг¬ регирования степени истинности предпосылок по каждому из нечет¬ ких продукционных правил.
При этом конъюнктивная форма предпосылки (с использованием только нечетких логических операций «И») является наиболее общим видом предпосылки, так как нечеткое продукционное правило, в пред¬ посылке которого нечеткие высказывания соединены нечеткой логиче¬ ской операцией «ИЛИ», может быть представлено несколькими пра¬ вилами. Пример. Одно правило: ЕСЛИ x есть A ИЛИ х2 есть А2, ТО у есть В можно представить двумя следующими правилами: ЕСЛИ х есть A,, ТО у есть В, ЕСЛИ х есть A , ТО у есть В. В третьем случае, когда составные нечеткие высказывания в за¬ ключении, соединяемые нечеткими логическими операциями «И», «ИЛИ», относятся к разным переменным, используется процедура ак¬ кумулирования заключений нечетких продукционных правил. 10.3.3. Типы нечетких продукционных правил Несмотря на то что предпосылки и заключения правил нечетких продукционных моделей могут формироваться по-разному (см. ниже), все их можно разделить на две основные группы: ,) нечеткие лингвистические продукционные правила, в которых как предпосылки, так и заключения правил являются нечеткими вы¬ сказываниями (fuzzy proposition) [11]; 2) нечеткие продукционные правила, в которых предпосылки правил являются нечеткими высказываниями, а заключения — четкими значениями (т.е. заданными одноточечными нечеткими множествами) или функциями [12]. Нечеткие лингвистические продукционные правила Нечеткие лингвистические продукционные правила, используе¬ мые при построении базы нечетких правил, можно разделить на сле¬ дующие типы: — правила, предпосылки и заключения которых формируются на основе нечетких множеств типа 1 [11]; — правила, предпосылки и заключения которых основаны на не¬ четких множествах в сочетании с нечеткими отношениями, модифи¬ цирующими лингвистические переменные; — правила, основанные на нечетких множествах в сочетании с групповыми и полугрупповыми расширенными операциями [13]; — правила, основанные на принципе расширения [14]; — правила, основанные на нечетких множествах с адаптацией операций над ними [15]. 89
Рассмотрим более подробно нечеткие лингвистические продук¬ ционные правила указанных выше типов. Правила, предпосылки и заключения которых формируются на основе нечетких множеств типа 1, можно представить в виде Пi : ЕСЛИ х1 есть Д., И ... И Xj есть Д И ... И xm есть Дт, ТО y есть B И ... И yk есть Bk И ... И ур есть Вр , i = 1,...,п, (10.51) где Xj (j = 1,..., m) — входные переменные, которые могут быть как четкими, так и нечеткими, Xj е Xj , Xj — область определения соот¬ ветствующей предпосылки; yk (к = 1,., р) — нечеткие выходные пе¬ ременные, ук е Yk, Yk - область определения соответствующего за¬ ключения; Д , Bk — лингвистические термы (например, {маленький, средний, большой}), представляющие собой нечеткие множества, оп¬ ределенные на Xj и Yk с функциями принадлежности mА (Xj) е [0,1] и mBik (xk) е [0,1] соответственно. Эти правила являются наиболее часто используемым по сравне¬ нию с другими типом нечетких лингвистических продукционных пра¬ вил, которые применяются как для создания моделей конкретных объ¬ ектов (систем), так и для построения их оценочных моделей (напри¬ мер, моделей предпочтений лиц, принимающих решения). Примечание. В соответствии с определением, данным в [16], нечетким множеством типа п называется нечеткое множество, у ко¬ торого значениями функции принадлежности является нечеткое множество типа (п — 1). Например, нечеткое множество типа 1 можно определить как m: X ®[0,1], а нечеткое множество типа 2 — как m: X х [0,1] ® [0,1] и т.д. Правила, предпосылки и заключения которых основаны на нечет¬ ких множествах в сочетании с нечеткими отношениями, модифици¬ рующими лингвистические переменные [17]. В данных правилах, в отличие от (10.51), нечеткие высказывания типа «Xj есть Д» и « yk есть Bk » заменяются на высказывания соответственно «Xj есть ©ц (Д)» и « yk есть Qk( Bik )». Пi : ЕСЛИ X, есть ©i1( Д^ И ... И Xj есть ©у (Д) И ... И Xm есть ©im ( ^m ), ТО У1 есть Q 1( B 1) и ... И yk есть Qk (Bk) И ... И Ур есть Qр (Bр), i = 1,.,п , (10.52) 90
где ©у (А), Цк (Цк) - лингвистические отношения, задаваемые неко¬ торыми синтаксическими процедурами (с помощью нечетких логиче¬ ских связок «И», «ИЛИ», а также нечетких модификаторов «немного», «НЕ», «очень» и др.) и соответствующими им семантическими проце¬ дурами, ставящими в соответствие данным лингвистическим значени¬ ям сформированные нечеткие множества. Показательным примером использования здесь нечетких логиче¬ ских операций «И», «ИЛИ» является замена двух или более нечетких высказываний, относящихся к одной переменной, одним нечетким высказыванием. Например, вместо нечеткого высказывания «есть А, ОП Xj есть А» формируется нечеткое высказывание «х] есть А*», где ОП — обозначение логической операции; А* — нечеткое мно¬ жество, равное в случае связки «И» пересечению нечетких множеств А и А или равное в случае связки «ИЛИ» объединению этих нечет¬ ких множеств. В качестве модификаторов нечетких высказываний наиболее час¬ то используют следующие: «ОЧЕНЬ», «ПОЧТИ», «НЕМНОГО БОЛЬШЕ/МЕНЬШЕ», «МНОГО БОЛЬШЕ/МЕНЬШЕ», «МНОГО», а также связку «НЕ». Например, высказывание «давление высокое» за¬ меняется на высказывание «давление немного ниже, чем высокое». Причем при модификации функций принадлежности соответст¬ вующих нечетких множеств, как правило, используются следующие операции: для А* = «ОЧЕНЬ А» тд* (х) = тА (х); (10.53) для А* = «ПОЧТИ А» т * (х) = тА/2(X); (10.54) для А* = «НЕ -А» m * (х) = 1 - mА (х). (10.55) Правила, основанные на нечетких множествах в сочетании с групповыми и полугрупповыми расширенными операциями. Заметим, что возможны различные примеры записи правил данного типа в зави¬ симости от решаемой задачи. Типичным примером таких правил яв¬ ляются следующие: Пi : ЕСЛИ х, есть А И ... И хі есть А И ... И хт есть Ат, ТО у, есть А, * В И ... И Ук есть Ак * Вк И ... И ут есть Ат* Віт , i = 1,k,n , (10.56) где * — групповая или полугрупповая расширенная операция, например нечеткое умножение, нечеткое сложение и т.д. 91
Для лингвистического моделирования динамического процесса эти правила можно представить следующим образом [18]: Пi : ЕСЛИ х1 есть ^(t) И ... И xt есть xt (t) И ... И xm есть xm(t), ТО Уі есть x, (t) * Зі И ... И Ук есть Xj (t) * И ... И ym есть Xm (t)* Bim , i = 1,..., n . (10.57) Правила, основанные на принципе обобщения, базируются на введении групповой нечеткой расширенной операции и могут исполь¬ зоваться (как и правила предыдущего типа) при решении задач на гра¬ фах, планировании расписаний [18], аккумулировании влияния не¬ скольких элементов (факторов) на один [19]. Правила, основанные на нечетких множествах с адаптацией опе¬ раций над ними, где операции над нечеткими высказываниями в за¬ ключениях правил выбираются (адаптируются) в зависимости, напри¬ мер, от степени согласованности (значимости) нечетких высказываний в предпосылках [20]: Пі : ЕСЛИ x есть А|1 И ... И xm есть Дл1, ТО y есть (^4цѲ1А12) Jj, ..., Jj (A(m-1)1qqAm1 ^ i = 1 ..., П (10.58) где ѳ1, ...,qq,...,ѲП,..., qq — операции свертки нечетких множеств, вы¬ бираемые в зависимости от уровня совместимости пары соответст¬ вующих нечетких высказываний в предпосылке; Jj — операция ком¬ бинирования результатов парных сверток нечетких множеств этих вы¬ сказываний в предпосылке в i-м правиле, i = 1,..., n), выбираемая из соответствующей совокупности операций парных сверток Ѳ1,..., qq и характеризующая, например, нижний уровень их согласования. Правила данного типа предназначены для построения оценочных моделей (моделей предпочтения ЛПР) в многоцелевых системах под¬ держки принятия решений [15]. Нечеткие продукционные правила с заключениями в виде четких значений или функций В нечетких продукционных правилах этой группы антецеденты представляют собой нечеткие высказывания, которые могут быть сформированы так же, как и антецеденты правил одного из рассмот¬ ренных выше типов. А способы формирования консеквентов этих пра¬ вил являются следующими: — консеквенты правил представляют собой одноточечные нечет¬ кие множества (singleton fuzzy set) [21]; 92
— консеквенты правил представляют собой четкие функции (crisp function) [12]. Рассмотрим подробнее нечеткие продукционные правила указан¬ ных типов на примере MI SO-структуры (Multi I nputs - Single Output). Нечеткие продукционные правила, консеквенты которых пред¬ ставляют собой одноточечные нечеткие множества (si ngl etons — синг- летоны), можно представить следующим образом: Пi : ЕСЛИ x есть Д., И ... И х, есть Д И ... И xm есть Дт, ТО У| = q , i = 1,..., n , (10.59) где с\ — действительные числа. Нечеткие продукционные правила, консеквенты которых пред¬ ставляют собой четкие функции. Существуют различные варианты построения нечетких продукционных правил данного типа, основными из которых являются правила, положенные в основу нечетких продук¬ ционных моделей Цукамото (Tsukamoto) и Такаги—Сугэно (Takagi— Sugeno) (см. ниже). Так, для модели Цукамото в заключениях правил используются монотонные (возрастающие или убывающие) функции f , а заключе¬ ние по каждому из правил формируется путем обратного преобразова¬ ния этих функций по полученным значениям предпосылок данных правил, например: Пi : ЕСЛИ х. есть И ... И х, есть Д И ... И xm есть Дт, ТО у = fi-1(ai), i = 1,..., n , (10.60) где ai — уровень срабатывания антецедента i-го правила. Для нечеткой продукционной модели Такаги—Сугэно правила можно представить следующим образом: Пi : ЕСЛИ х есть Д., И ... И х, есть Д И ... И хт есть Дт, ТО у = f( Х1,к, х,,^, хт), i = 1,..., n , (10.61) где f(х,,...,Xj ,... ,xm) — функция, имеющая одинаковую для всех п правил структуру и различающаяся лишь параметрами для каждого правила. Наибольшее практическое применение нашел вариант использо¬ вания линейной функции Пi : ЕСЛИ х есть Д1 И ... И xj есть Д И ... И хт есть Дт, ТО у = Сц х1 + . + q,х, +... + Cimxm + Ci0, i = V. n , (10.62) 93
где qj (j = 1,k,m) - коэффициенты аргументов функции; q0 - сме¬ щение. Нечеткая продукционная модель, основанная на правилах (10.62), называется аффинной моделью Такаги-Сугэно [21]. Можно отметить, что при qj = 0( j = 1,..., п) данная модель сво¬ дится к модели (10.59), другое название которой — модель Такаги- Сугэно 0-го порядка. 10.3.4. Задание структуры базы нечетких продукционных правил В зависимости от количества нечетких высказываний в предпо¬ сылках и заключениях база правил нечеткой продукционной модели может быть представлена структурой одного из следующих типов: SISO-структура (Single Input - Single Output, один вход - один выход); MISO-структура (Multi Inputs - Single Output, много входов - один выход); MIMO-структура (Multi Inputs - Multi Outputs, много входов - много выходов). Представленная ниже MIM O-структура является наиболее общим видом структуры базы правил типа (10.51) нечеткой продукционной модели: Ц: ЕСЛИ x есть Аі1 И ... И хІ есть Aj И ... И хт есть Дт, ТО у1 есть Ві1 И ... И ук есть Bik И р..., у есть Bip, i = 1, ..., п, (10.63) где Xj (j = 1, ..., m) - входные переменные, которые могут быть как чет¬ кими, так и нечеткими, Xj е Xj, Xj - область определения соответствую¬ щей предпосылки; ук е(к = 1, ..., р) - нечеткие выходные переменные, Ук eYk, Yk - область определения соответствующего заключения; Ay, Bik - нечеткие множества, определенные на Х и Yk , с функциями принадлеж¬ ности mA (Xj) е [0, 1] и mвк frk) е [0, 1] соответственно. При выполнении гипотезы о взаимной независимости выходных переменных база нечетких продукционных правил с MIMO-структурой и конъюнктивной формой заключения может быть представлена сово¬ купностью (р) баз правил с MI SO-структурой со многими (т) входными переменными и одной выходной переменной. В этом случае правила будут иметь следующий вид: Пі : ЕСЛИ х1 есть Д1 И ... И xj есть Aj И ... И xm есть Дт, ТО у есть B , i = 1, . ., п. (10.64) Если множество входных переменных xi (j = 1, ..., m) является независимым, то входное пространство предпосылки может быть раз¬ 94
делено по каждой из переменной одномерными функциями принад¬ лежности, например для переменной Xj е Xj — функциями принад¬ лежности нечетких множеств { А^,...,A,...,А }- На рисунке 10.1, а показан пример равномерного разбиения входного 2^пространства предпосылки: функциями принадлежности m А|1( X|), m А|2(хІ), m А,3(хІ) для входной переменной х, , функциями принадлежности mа^ (X2), m/^2 (х2), m(х2) для входной переменной х2. В базе нечетких пра¬ вил с предпосылками, представленными в конъюнктивной форме, все пространство входных переменных делится на решетку нечетких ги¬ перкубов параллельно осям координат. Каждый из гиперкубов являет¬ ся декартовым произведением соответствующих одномерных нечетких множеств (см. рис. 10.1, а). ! ! л к ; ! Xl /АХАѴ:^ АІ1 / ^І 2 /'\І3 і У 1 ' ^ а) W б) 4 1 Н I А 4 Л в) Х1 Рис. 10.1. Различные способы деления пространства предпосылок 95
При этом правила формируются таким образом, чтобы получить все возможные комбинации функций принадлежности всех входных переменных. Число нечетких правил с конъюнктивной формой предпосылки, необходимых для покрытия пространства входных переменных, опре¬ деляется следующим образом: m n = Пкг (1065) j=i где m — размерность пространства входных признаков; Kj — число лингвистических термов j-й входной переменной. Так, для приведенного на рис. 10.1, а примера можно записать следующие предпосылки девяти правил: П1: ЕСЛИ х1 есть А|1 И х2 есть А21, ТО ... , П2: ЕСЛИ х1 есть А|1 И х2 есть А22 , ТО ... П9: ЕСЛИ х есть А,3 И х2 есть А23, ТО ... С целью сокращения числа нечетких правил для покрытия про¬ странства входных переменных могут быть получены различные раз¬ биения пространства предпосылок посредством комбинирования не¬ четких операций конъюнкции, дизъюнкции и дополнения над одно¬ мерными функциями принадлежности (рис. 10.1, б). Но при этом гра¬ ницы такого разбиения ограничены прямоугольной сеткой, заданной нечеткими множествами отдельных входных переменных. Однако входные переменные не всегда являются взаимно незави¬ симыми. Границы между областями, в которых определены лингвис¬ тические термы входных переменных, могут быть произвольно изо¬ гнуты и не соответствовать осям (рис. 10.1, в). Решением этой пробле¬ мы является представление всех входных переменных в виде вектора, а предпосылки — на основе многомерных функций принадлежности П : ЕСЛИ х есть А , ТО ... , (10.66) где х = [ Хр..., xm ]Т; А — нечеткое множество с многомерной функцией принадлежности. Такое представление предпосылки на основе многомерных функ¬ ций принадлежности (10.1) является наиболее общим, так как в этом случае не накладывается никаких ограничений на формы областей, в которых определены лингвистические термы входных переменных. Для сложных моделей данное разбиение может обеспечить наиболее эффективное представление, так как число нечетких множеств, необходи¬ мых для покрытия пространства входных переменных, в этом случае может быть существенно уменьшено по сравнению с примерами на рис. 10.1, а, б. 96
Рис. 10.2. Каскадное соединение двух баз нечетких продукционных правил Другим путем уменьшения сложности нечетких моделей с боль¬ шим количеством входных переменных является их декомпозиция на модели с меньшим числом входных переменных в базе правил с по¬ следующим их объединением в однородную или иерархическую (мно¬ гослойную) структуру. В этом случае выход одной базы правил явля¬ ется входом другой, как это показано на рис. 10.2. Такое каскадное соединение позволяет существенно уменьшить общее количество нечетких правил. В качестве примера предположим, что каждая входная переменная описывается пятью лингвистическими термами при условии конъюнктивной формы антецедентов. После де¬ композиции трехвходовой базы правил, которая состоит из 53= 125 правил, каждая двухвходовая база правил будет содержать лишь 52 = 25 правил [21]. 10.3.5. Обеспечение полноты и непротиворечивости базы нечетких правил При создании нечеткой продукционной модели системы могут быть использованы как априорные данные о моделируемой системе, поступающие от экспертов, так и данные, полученные в результате измерений. В первом случае, если отсутствует необходимость согласования мнений экспертов, предполагается, что задача обеспечения полноты и непротиворечивости базы нечетких правил решена заранее. В случае же, если известны только экспериментальные данные, данную задачу можно отнести к задачам идентификации системы. На практике может иметь место также смешанный случай, когда начальная база нечетких правил строится исходя из эвристических предположений, а ее уточ¬ нение проводится с использованием экспериментальных данных. Каж¬ дому из этих подходов соответствуют свои алгоритмы. 97
Рассмотрим основные этапы типичного алгоритма формирования базы нечетких правил заданной структуры в случае, если применяются только экспериментальные данные (обучающая выборка). Допустим, необходимо создать базу нечетких правил типа (10.64) с MISO- структурой: с двумя входными (x, Х2) и одной выходной (у) перемен¬ ными. При этом задана обучающая выборка, состоящая из множества примеров следующего вида: х,, х и выходной переменной у в k-м примере; K — общее число при¬ меров в обучающей выборке. Этап 1. Разбиение пространств входных и выходных переменных. Пусть известны минимальные и максимальные значения каждой пере- Разобьем области определений этих переменных на отрезки. При¬ чем число этих отрезков, а также их длина для каждой переменной подбираются индивидуально. На рисунке 10.3 показан пример такого трем, для [Xmin), X2max) ] — пяти, для [ y(min), y(max) J — четырем. На каждом из отрезков задана одна функция принадлежности, например тре¬ угольной формы с вершиной в центре отрезка. Для х1 определены нечеткие множества с лингвистическими зна¬ чениями { L, — низкое, М, — среднее, Н, — высокое}, для х2 — { L2, LM2— между низким и средним, М2, НМ2 — между высоким и сред¬ ним, Н 2}, для у - { Ly, LMy, НМ y, Ну}. Функции принадлежности подбираются таким образом, чтобы они перекрывались (overlap) на уровне 0,5. Следует отметить, что как вид функций принадлежности, так и способ разбиения пространств входных и выходных переменных могут быть иными. Этап 2. Формирование начальной базы правил. Можно предло¬ жить два не противоречащих друг другу подхода к формированию на¬ чальной базы правил. Первый подход основан на генерации множества правил исходя из возможных сочетаний нечетких высказываний в предпосылках и заключениях правил, в соответствии с которым максимальное количе¬ ство правил в базе определяется следующим соотношением: x(k), x2k), y(k), k = 1,..., K, (10.67) где x(k), x2k), y(k) — соответственно значения входных переменных менной: х1 е [x(mln), x(max) ], х2 е [Xmln), x2max) ], y е [ y(mln), y(max) ]. разбиения при условии, что число отрезков для [xjmin), xjmax) J равно (10.68) 98
Я0г) м L2 LM2 М2 НМ2 Н2 (mm) (1) (2) (max) V У у У У ■ Рис. 10.3. Пример разделения пространств входных переменных х-і, х2 и выходной переменной у 99
где І1, І2, ..., Im - число функций принадлежности для задания перемен¬ ных X,, x,..., ^ ; Іу — для выходной переменной у. Таким образом, изначально сформированная для приведенного на рис. 10.3 примера база нечетких правил будет состоять из 60 правил и иметь следующий вид: П-|! ЕСЛИ X, есть L, И ... И х2 есть L2, TO у есть Ly, Пч: ЕСЛИ х, есть М, И...И х2 есть НМ2, TO у есть LMy, Пд: ЕСЛИ х, есть Н, И ... И х2 есть LM 2, TO у есть НМу, П60: ЕСЛИ х, есть Н, И ... И х2 есть Н 2, ТО у есть Ну. Другой подход к формированию начальной базы правил основан на том, что изначально каждому примеру из выборки ставится в соот¬ ветствие отдельное правило. Для этого для каждого примера (х(к\ х2к\ у(к)), к = 1, ..., К, определяются степени принадлежности заданных значений переменных к соответствующим нечетким множе¬ ствам (см. рис. 10.3): для х(1) :ml, (х(1))= 0.1; mu,(х(1))=°А тн, (х(1))=01 для^1^(х2І))= 0; тш,№)=0 тм2(х2,))=0'2; тнм2(х2'))= 0,9 m н 2 (х2,) )=0; дляу(1):тц(у(1))=0; тш,(у(1))= 0.7; т»,,(у(1))= 0,3; тн,(у(1))= 0. После чего каждому обучающему примеру ставятся в соответст¬ вие те нечеткие множества, степени принадлежности к которым у со¬ ответствующих значений переменных из этого примера являются мак¬ симальными. В рассмотренном выше примере xj1) ставится в соответ¬ ствие нечеткое множество М,, х21) - НМ 2, у(1) - LM у. Таким образом, примеру (х(1), х^, у(1)) из обучающей выборки ставится в соответствие следующее правило: ЕСЛИ х, есть М, И ... И х2 есть НМ 2, ТО у есть LMy. Аналогично примеру (х(2), х22), у(2)) ставится в соответствие правило: ЕСЛИ х, есть Н, И ... И х2 есть LM 2, TO у есть НМу. Сформированное таким образом множество правил и составляет начальную базу нечетких правил. Следует отметить, что использование первого подхода при фор¬ мировании начальной базы правил целесообразно при небольшом чис¬ ле переменных и функций принадлежности, используемых для задания этих переменных. Второй подход стоит использовать при сравнитель¬ но небольшом количестве примеров в обучающей выборке. 100
Этап 3. Определение рейтингов правил. Поскольку изначально сформированная база правил наверняка является избыточной, а также может содержать противоречащие друг другу правила - с одинаковы¬ ми предпосылками и разными заключениями, то набор правил необхо¬ димо оптимизировать. Сделать это можно как на основе эмпирических гипотез (информации от экспертов), так и путем адаптации к имею¬ щимся экспериментальным данным (обучающей выборке), что приво¬ дит к существенному уменьшению количества и к ликвидации проти¬ воречивости правил, оставляемых в базе. Рассмотрим один из простых подходов к сокращению базы не¬ четких правил на основе экспериментальных данных [22]. Допустим, набор экспериментальных данных (обучающая выбор¬ ка) в полной мере характеризует особенности моделируемой системы. Все примеры из обучающей выборки (x\k\x2k\...,x^k\ y(k*) (k = 1, ..., К) «предъявляются» каждому правилу. В результате для каждого правила определяется его рейтинг: ri = Xmai (x(k))-ma2 (x2k))-..mЛтfek))-mв (у(k)} i =1..., n (10.69) k=1 Этап 4. Сокращение числа правил. После подсчета рейтингов правил из базы правил исключаются правила с наименьшими значе¬ ниями r . При этом в первую очередь сокращения проводятся по груп¬ пам правил, имеющим одинаковые предпосылки и разные заключения, т.е. разные функции принадлежности переменной вывода. Такие пра¬ вила являются противоречащими друг другу, и из группы подобных правил необходимо оставлять только одно (с наибольшим рейтингом). Таким образом, решается проблема противоречивых правил, а также существенно уменьшается их общее число. Оставшиеся правила фор¬ мируют итоговую базу правил. Этап 5. Адаптация параметров оставленных в базе правил. База правил может считаться окончательно сформированной, если осуще¬ ствлен этап адаптации оставленных в ней правил. Этот этап сводится к нахождению, в соответствии с имеющимися экспериментальными данными и принятым критерием, оптимальных значений параметров для оставленных в базе правил. Этот этап, по сути, является этапом параметрической оптимизации конечного набора правил. Он заключа¬ ется в таком изменении параметров функций принадлежности остав¬ шихся правил, при котором обеспечиваются максимальные «степени активности» этих правил по всем примерам обучающей выборки. Для рассматриваемого на рис. 10.3 случая, когда все функции принадлежности нечетких множеств являются треугольными, на¬ стройке подвергается один их параметр - значения мод. 101
Примечания: 1. Для выполнения этого этапа необходимо синтезировать нечет¬ кую модель. Поэтому вопросы адаптации параметров правил, остав¬ ленных в базе, будут рассмотрены далее при описании параметриче¬ ской оптимизации базы нечетких правил, а также в подразделах, по¬ священных настройке и обучению нечетких нейронных продукцион¬ ных сетей. 2. Очевидно, что в зависимости от конкретной постановки задачи формирования базы нечетких продукционных правил могут быть из¬ менены как перечень, так и содержание решаемых в ходе создания базы нечетких правил этапов. 10.4. ВВЕДЕНИЕ НЕЧЕТКОСТИ Под введением нечеткости (fuzzification) в модель с использова¬ нием нечетких продукционных правил, например типа (10.64), пони¬ мается процедура получения значений функций принадлежности не¬ четких множеств A по значениям всех соответствующих входных переменных Xj для всех предпосылок всех нечетких продукционных правил. Примеры. На рисунке 10.4 показаны примеры введения нечет¬ кости с использованием четкого Xj и нечеткого j%j значений входной переменной. В случае четкого значения входной переменной степень истинно¬ сти нечеткого высказывания «xj есть A » определяется значением функции принадлежности m(xj). При задании же нечеткого значе¬ ния входной переменной ~X j степень истинности соответствующего нечеткого высказывания « j есть A » в предпосылке определяется на основе одной из операций нечеткой конъюнкции (10.42) — (10.46). Наиболее часто для этого используется операция min-конъюнкции mAj (Xj) = min {m~j (Xj), mЛ. (Xj) }, "Xj e Xj (рис. 10.4, б) или опера¬ ция алгебраического произведения maj (Xj)= m~ (Xj) ma (Xj), e Xj (рис. 10.4, в). Полученное при этом численное значение функции принадлежно- сти m a (Xj) или m Aij(Xj) является результатом выполнения нечет- кого высказывания в предпосылке правила и характеризует степень его истинности. 102
Рис. 10.4. Примеры введения нечеткости с использованием значений входной: а - переменной четкого X' ; б, в - нечеткого ~ 10.5. АГРЕГИРОВАНИЕ СТЕПЕНИ ИСТИННОСТИ ПРЕДПОСЫЛОК ПРАВИЛ В результате данной процедуры определяется агрегированная степень истинности по всем предпосылкам каждого правила: a i (i = 1, ..., n). Если в правиле, как, например, в (10.64), имеется несколько пред¬ посылок, то на предыдущем этапе в результате введения нечеткости определяются численные значения функций принадлежности по каж¬ дой из этих предпосылок, например для четких значений входных пе¬ ременных: mА-, (X),.., m^ (Xj),.., mAm (Xm) либо при задании нечет¬ ких значений входных переменных: ma,'-, (хі), ..., mAj (X\),..., mAm (Xm). Затем эти значения агрегируются в зависимости от используемых в правилах нечетких логических связок между предпосылками. Так, например, при использовании связки «И» между значениями функций принадлежности предпосылок правил ma (Xj) и mAm(Xm) может быть применено одно из следующих выражений: — mi n-конъюнкция степеней истинности предпосылок правил m^Am(X) = min{mAj(X'), mAm(XJ}; (1070) — алгебраическое произведение степеней истинности предпосы¬ лок правил mAi.Aim(X) = ma (Xj) mAm(Xm); (10.71) 103
— граничное произведение степеней истинности предпосылок правил — драстическое произведение степеней истинности предпосылок правил В случае же использования связки «ИЛИ» между значениями функций принадлежности предпосылок правил m(xj) и m(x") может быть взято одно из выражений: — max-дизъюнкция степеней истинности предпосылок правил — алгебраическая сумма степеней истинности предпосылок правил — граничная сумма степеней истинности предпосылок правил — граничная сумма степеней истинности предпосылок правил При определении агрегированной степени истинности по всем предпосылкам каждого правила а, (і = 1, ..., п) с использованием как связок «И», так и связок «ИЛИ» чаще всего используют попарно со¬ гласованные операции из одного и того же базиса, например: min- конъюнкция и max-дизъюнкция; алгебраическое произведение и ал¬ гебраическая сумма; граничное произведение и граничная сумма; дра- стическое произведение и драстическая сумма. Пример. На рисунке 10.5 приведен пример агрегирования сте¬ пеней истинности предпосылок двух правил: m % Лт(х) = max {m Aj(x'j)+m a™ (X")—1,0J; (1072) mЛт(x"), если m jj =1; mAijдАт (x) = <ma(j если mAm (x") =1; (1°.73) 0 в остальных случаях. (10.74) m Aj+Am (x) = m a( x'j) + m Am (x") — m a( j • m Am (x"); (10.75) mAj®Am (x) = min{mAj(j ma™(^),1}; (10.76) mA\m (x), если ma(x'j) = 0; m = Aij DA" (x) = <m Aj(x), если m A" (xj) = 0; (10.77) 1 в остальных случаях. 104
правило 1 М 1 правило 2 М 1 1 / \ Ді" jf" I \ - L J Аз/~\ - -Г -\ ► 2: ! х1 І ^ ' Г 1 Аі\[ : L 1 j 1 ■ГЯ 7 А j" ИЛИ'' |\ ——► !— ► X 1 Х2 X, Рис. 10.5. Пример агрегирования степеней истинности предпосылок правил с использованием mi n-конъюнкции «И» и max-дизъюнкции «ИЛИ» П1: ЕСЛИx есть А|1 И х2 есть А,2, ТО ... , П2: ЕСЛИ х, есть А21 ИЛИ х2 есть А22 , ТО ... При этом в качестве связки «И» между предпосылками первого правила использована min-конъюнкция, а в качестве связки «ИЛИ» между предпосылками второго правила — max-дизъюнкция. Агрегированные степени истинности предпосылок этих правил определяются следующим образом: а, = min{mа,, (X), mа,2(х2)}, max{mА21(х), mА22(х2)}. 2 10.6. АКТИВИЗАЦИЯ ЗАКЛЮЧЕНИЙ ПРАВИЛ Процедура активизации (activation) заключений нечетких продук¬ ционных правил состоит в определении модифицированных функций принадлежности этих заключений для каждого і-го (і = 1, ..., п) прави¬ ла m в; (У) на основе выполнения композиционной операции, модифи¬ цированной для нечеткой продукции, между определенным на преды¬ дущем этапе агрегированным значением степеней истинности предпо¬ сылок этого правила а и соответствующей функцией принадлежности его заключения m в; (У). 105
В качестве такой операции распространение получили следую¬ щие модификации соответствующих правил нечеткой композиции [7]: mi n-активизация mв-(у) = minja,, mв(У)} (10.78) prod-активизация mв(У) = ai mв (У); (10.79) average-активизация mB; (У) = 0,5(a , + mB, (У)) (10.80) Затем полученные таким образом результаты корректируются пу¬ тем их алгебраического произведения на весовые коэффициенты соот¬ ветствующих правил. Если эти коэффициенты не заданы, то предпола¬ гается, что они равны единице. При наличии нескольких (р) заключений в нечетких продукцион¬ ных правилах (например, в правилах типа (10.51)) весовые коэффици¬ енты могут быть заданы не только для отдельных правил, но и инди¬ видуально для каждого их заключения. Примечание. Коррекция базы нечетких правил путем их умно¬ жения на весовые коэффициенты является альтернативой способу пара¬ метрической оптимизации этой базы за счет подстройки параметров (формы и расположения) функций принадлежности нечетких правил [23]. Пример. Рассмотрим пример активизации двух заключений для каждого из двух правил на основе операции min-активизации в пред¬ положении, что весовые коэффициенты правил равны единице (рис. 10.6). Рис. 10.6. Пример активизации заключений правил на основе операции mi n-активизации 106
П : ЕСЛИ х1 есть Ац И Х2 есть А^, ТО у1 есть Вц И у2 есть В^, П2 : ЕСЛИ х1 есть А21И х2 есть А22, ТО у1 есть В21 И у2 есть В22. В результате данной процедуры находятся модифицированные функции принадлежности заключений рассматриваемых правил: mb11 (Уі) = min{ai, m^1(У1)}; mВІ2(У2) = min{ai, mB12(У2)}; mB21 (У1) = min{a2, mb21(У1)}; mb21(У2) = min{a2, mВг2(У2)}. 10.7. АККУМУЛИРОВАНИЕ АКТИВИЗИРОВАННЫХ ЗАКЛЮЧЕНИЙ ПРАВИЛ После получения активизированных заключений для каждой вы¬ ходной переменной каждого из нечетких продукционных правил вы¬ полняется процедура их аккумулирования (accumulation). Результат такого аккумулирования для выходных переменных находится путем объединения полученных на предыдущем этапе соот¬ ветствующих нечетких множеств по одной из формул (10.46) — (10.50). Пример. На рисунке 10.7 показано аккумулирование активизи¬ рованных заключений правил типа (10.51) в соответствии с примером из п. 10.5 с использованием операции max-дизъюнкции. Заключения из правила 1: Заключения из правила 2: Рис. 10.7. Пример аккумулирования двух заключений правил с использованием max-дизъюнкции 107
В итоге формируются нечеткие множества для выходных пере¬ менных с функциями принадлежности: (У) = max{mP11( У!), mP2l( y^}; mp-2(y) = max{mp-2(У1), mP2z(Уі)}. 10.8. ПРИВЕДЕНИЕ К ЧЕТКОСТИ Приведение к четкости (defuzzification) заключается в преобразо¬ вании нечетких значений найденных выходных переменных в четкие. При этом все методы получения четкого значения выходной перемен¬ ной можно разделить на две группы: 1) методы дефаззификации аккумулированной на предыдущем этапе (из активизированных заключений всех правил базы) выходной переменной; 2) методы дефаззификации выходной переменной без предваритель¬ ного аккумулирования активизированных заключений отдельных правил. К первой группе относятся следующие методы дефаззификации: 1. Центр тяжести (centre of gravity) (рис. 10.8, а). Этот метод может быть использован только для моделей, основанных на нечетких лингвистических продукционных правилах, в которых консеквенты являются нечеткими высказываниями, например типа (10.64). Четкое значение у' выходной переменной рассчитывается как центр тяжести функции принадлежности m в- (у) и вычисляется по формуле Ymax j ym в ( у) dy у=Ym^ , (10.81) 'max j m в' ( у) dy Y min где Ymln, Ymax - границы интервала носителя нечеткого множества вы¬ ходной переменной у. Для дискретизированной для вычисления выходной переменной области Y выражение (10.81) примет следующий вид: Ymax j Уг m( Уг) у = Y™ , (10.82) 'max j m В' ( yr) Ymin где Ymax — число элементов yr в дискретизированной для вычисления «центра тяжести» области Y. 108
а) г) б) m - 1 Ял, в) m - 1 В' /Зу\s\ ^ У У У У “ д) ml - 1 m - е) 1- Ял. У У з) m L Рис. 10.8. Примеры применения методов дефаззификации выходной переменной 2. Центр площади (centre of area) (рис. 10.8, б). Четкое значение выходной переменной у' по этому методу определяется из уравнения У' Yma< j mВ' (У) dy = J mВ' (У) dy. (10.83) 3. Максимум функции принадлежности (рис. 10.8, в). Четкое значение выходной переменной у' рассчитывается по формуле У’ = argsup m в' (У), У (10.84) где mВ' (У) - унимодальная функция, форма которой может быть про¬ извольной. m 1 У У m 1 У У а 2 а У 109
4. Первый максимум (first-of-maxima), называемый также са¬ мым левым максимумом (left most maximum) (рис. 10.8, г). Четкое зна¬ чение у' находится как наименьшее значение, при котором достигается максимум итогового нечеткого множества: y’_ minJ (ymaxlmв)ymax _ maxmB,(y)l. (10.85) 5. Самый правый максимум (right most maximum) (рис. 10.8, д). Четкое значение выходной переменной у' находится как наибольшее значение, при котором достигается максимум итогового нечеткого множества: y’ _ maxj(ymaxlmв ')ymax _ maxmв '(y)| . (10.86) 6. Средний максимум (middle-of-maxima) (рис. 10.8, e). Четкое значение выходной переменной у' находится в соответствии с выраже¬ нием j ydy y _ Gm^x , (10.87) j dy ’ Gmax где Gmax — интервал носителя нечеткого множества В' (подмножество его элементов), в котором mв '(у) принимает максимальное значение. Для дискретного варианта m в ' (У) 1 У' _ -— У max m в ' (У), (10.88) Gmax G У max Gmax где Gmax — число элементов носителя нечеткого множества В', в кото¬ рых m в ' (У) принимает максимальное значение. 7. Критерий максимума (max-criterion). Четкое значение вы¬ ходной переменной у' выбирается произвольно среди множества зна¬ чений у, для которых значение m в ( y) достигает максимума: У' 6 j ymaxl m в' ( ymax) _ max m в' ( У). (10.89) 8. Высотная дефаззификация (height defuzzification). Элементы носителя нечеткого множества В', для которых значения функции принадлежности меньше, чем некоторый заданный уровень 110
l(mв' (У) <l), в расчет не принимаются, и дефаззифицированное значение выходной переменной у' рассчитывается в соответствии со следующим выражением: Gi ym в ( у) dy У’ = —г , (10.90) { m в' ( у) dy G1 где Gx — интервал носителя нечеткого множества В', при котором mB' (У) <1 максимальное значение, т.е. mв (У) = max mв (У). У Ко второй группе относятся следующие методы дефаззификации. 9. Средний центр (centre average defuzzification). Четкое значе¬ ние выходной переменной у' в нечеткой продукционной модели, осно¬ ванной на правилах типа (10.64), рассчитывается по формуле n У ai arg max m »(У) У У = ^ n . (10.91) У ai i =1 Данный метод может быть использован в случае унимодальных mв (У), т е. если условие mв (У) = 1 справедливо для одной точки уни¬ версума X. На рис. 10.8, в приведен пример реализации этого метода для числа правил n = 2. 10. Сумма центров (centre of sums defuzzification). ymax n f уУ m в ' (y)dy у i =1 У = ущп , (10.92) f У m в' (y)dy у i =1 Tmin где ymin, ymax - границы интервала носителя нечеткого множества вы¬ ходной переменной у. 11. Нечеткое среднее значение (fuzzy mean). В случае нечеткой продукционной модели Такаги-Сугэно 0-го порядка (для нечетких правил типа (10.59)), т.е. если выходные переменные представляют собой одноточечные нечеткие множества, то их значения рассчитыва¬ 111
ются с использованием модифицированного метода центра тяжести, а именно метода центра тяжести для одноточечных множеств {centre of gravity for singletons) (другое название этого метода fuzzy mean - не¬ четкое среднее значение), следующим образом: X а С i=1 П X< ii У = ^П , (10.93) a i i=1 где ai - агрегированная степень истинности по всем предпосылкам i- го правила; с — значение выходной переменной i-го правила (у,- = с,); П — число правил в базе. Для аффинной модели Такаги—Сугэно, основанной на правилах типа (10.62), выражение (10.93) для вычисления дефаззифицированно- го значения выходной переменной по методу нечеткого среднего зна¬ чения примет следующий вид: П ( m А i =1 Xai X+ ci0 У = ^. (10.94) П a X i i =1 Еще одной разновидностью дефаззификации на основе метода центра тяжести является следующее выражение, используемое для вычисления выходной переменной на основе нечеткой продукцион¬ ной модели Цукамото, в заключениях правил которой используются монотонные (возрастающие или убывающие) функции fi (см. прави¬ ла типа (10.60)): П X ai fC- (ai) У' = ^ , (10.95) X< П ai i =1 где у\ = fi 1(a i) — значение аргумента функции f , при котором a i = fi (У ). Следует отметить, что метод центра тяжести или его модифика¬ ции применимы для дефаззификации выходных переменных в боль¬ шинстве нечетких продукционных моделей. 112
10.9. ПАРАМЕТРИЧЕСКАЯ ОПТИМИЗАЦИЯ КОНЕЧНОЙ БАЗЫ НЕЧЕТКИХ ПРАВИЛ Задача параметрической оптимизации конечной базы нечетких правил возникает в случае, если необходимо скорректировать пара¬ метры оставленных правил в базе на основе имеющихся эксперимен¬ тальных данных (обучающей выборки). Следует отметить, что обычно эта задача решается в рамках пред¬ ставления нечеткой продукционной модели в виде так называемой нечеткой нейронной продукционной сети (fuzzy-neural network/system) при ее обучении. Опишем типовой подход к параметрической оптими¬ зации базы правил нечеткой продукционной модели. Допустим, что сформирована окончательная безызбыточная и не¬ противоречивая база нечетких правил типа (5.3) с MI SO-структурой. При этом задана обучающая выборка, состоящая из множества примеров следующего вида: (xjk 1, x2k 1,..., Xk1, y{k'), k = 1,..., K, (10.96) где x( k 1, x2k *,..., xkk 1 - значения входных переменных x1, x2,..., xm; y( k 1 - эталонное значение выходной переменной у в k-м примере; K — общее число примеров в обучающей выборке. Этап 1. Для каждого примера из обучающей выборки по значени¬ ям исходных переменных x|k*,x2k*,...,x^ 1 на основе построенной не¬ четкой продукционной модели определяется значение выходной пере¬ менной y'(k). Этап 2. Вычисляется функция ошибки для всех примеров обу¬ чающей выборки: Е(k) = - (y'(k) _ y(k) )2, k = 1,..., K. (10.97) 2 Этап 3. Корректировка параметров функций принадлежности не¬ четких продукционных правил. Введение функции ошибки вида (10.97) позволяет по аналогии с обычными нейронными сетями ис¬ пользовать градиентный метод подстройки параметров заданных не¬ четких продукционных правил. Так, значения y'(k) можно корректировать, исходя из соотношения dE(k) y'(k) : = y'(k) _h—, k = 1,..., K, (10.98) dy’( ) где h 6 [0,1] — коэффициент, характеризующий скорость коррекции (обучения). 113
Для изменения у'(к) используются изменения параметров функ¬ ций принадлежности этих правил с целью минимизации функции ошибки по всем примерам обучающей выборки. Для рассматриваемого на рис. 10.3 случая, когда все функции принадлежности нечетких множеств являются треугольными, на¬ стройке подвергается один их параметр — значения мод. Процедура параметрической оптимизации (этапы 1 — 3) итераци¬ онно повторяется и считается успешно завершенной в случае, если значение функции ошибки по каждому примеру обучающей выборки не превышает некоторого установленного порога: Либо для завершения этого процесса можно использовать оценку средней суммарной погрешности нечеткой продукционной модели с учетом всех примеров обучающей выборки: Параметрическая оптимизация баз нечетких правил различного типа будет рассмотрена ниже при обучении соответствующих им ти¬ пов нечетких нейронных сетей. Однако параметрическая оптимизация, основанная на градиент¬ ном подходе, зачастую приводит к большим вычислительным затра¬ там, поэтому целесообразным является здесь искать решение на осно¬ ве генетического подхода. 1. Что понимается под нечеткой продукционной моделью? 2. Какие компоненты необходимо задать для построения нечет¬ кой продукционной модели? 3. В чем заключается прямой способ нечеткого вывода? 4. В чем заключается обратный способ нечеткого вывода? 5. Какие вопросы необходимо решить для задания базы нечетких продукционных правил? 6. Что вы знаете о формировании нечетких высказываний в пред¬ посылках и заключениях правил? 7. В чем состоит принцип метода парных сравнений? 8. В чем состоит принцип метода на основе статистических данных? 9. На какие группы делятся предпосылки и заключения правил нечетких продукционных моделей? E(к) < е, к = 1, ..., K. (10.99) (10.100) Вопросы для самопроверки 114
10. На какие типы делится каждая из групп предпосылок и заклю¬ чений правил нечетких продукционных моделей? 11. Какие структуры задания базы правил нечеткой продукцион¬ ной модели вы знаете? 12. Расскажите об основных этапах типичного алгоритма форми¬ рования базы нечетких правил в случае, если применяются только экс¬ периментальные данные. 13. Что понимают под введением нечеткости в модель с исполь¬ зованием нечетких продукционных правил? 14. В чем состоит принцип агрегирования степени истинности предпосылок правил? 15. В чем состоит процедура активизации заключений нечетких продукционных правил? 16. В чем состоит процедура аккумулирования активизированных заключений правил? 17. В чем состоит процедура приведения к четкости? 18. В каком случае возникает необходимость в задаче параметри¬ ческой оптимизации конечной базы нечетких правил? 115
11. ТРАДИЦИОННЫЕ СПОСОБЫ ПРЕДСТАВЛЕНИЯ И ОБРАБОТКИ ЗНАНИЙ В ИНТЕЛЛЕКТУАЛЬНЫХ СИСТЕМАХ Необходимой частью любой интеллектуальной системы являются знания. Теоретическими и практическими вопросами представления и обработки знаний в компьютерных системах активно занимаются ис¬ следователи, работающие в области инженерии знаний. Это понятие в 1977 г. ввел Э. Фейгенбаум, который писал: «По опыту нам известно, что большая часть знаний в конкретной предметной области остается личной собственностью эксперта. И это происходит не потому, что он не хочет разглашать своих секретов, а потому, что он не в состоянии сделать этого - ведь эксперт знает гораздо больше, чем сам осознает». Данное направление ИИ связано с развитием теоретических и при¬ кладных аспектов приобретения и формализации знаний специали¬ стов, с проектированием и разработкой баз знаний. 11.1. ОТЛИЧИЯ ЗНАНИЙ ОТ ДАННЫХ Характерным признаком интеллектуальных систем является на¬ личие знаний, необходимых для решения задач конкретной предмет¬ ной области. При этом возникает естественный вопрос, что такое зна¬ ния и чем они отличаются от обычных данных, обрабатываемых ЭВМ. Данными называют информацию фактического характера, описы¬ вающую объекты, процессы и явления предметной области, а также их свойства. В процессах компьютерной обработки данные проходят сле¬ дующие этапы преобразований: - исходная форма существования данных (результаты наблюде¬ ний и измерений, таблицы, справочники, диаграммы, графики и т.д.); - представление на специальных языках описания данных, пред¬ назначенных для ввода и обработки исходных данных в ЭВМ; - базы данных на машинных носителях информации. Знания яв¬ ляются более сложной категорией информации по сравнению с дан¬ ными. Знания описывают не только отдельные факты, но и взаимосвя¬ зи между ними, поэтому знания иногда называют структурированны¬ ми данными. Знания могут быть получены на основе обработки эмпи¬ рических данных. Они представляют собой результат мыслительной деятельности человека, направленной на обобщение его опыта, полу¬ ченного в результате практической деятельности. Для того чтобы наделить ИИС знаниями, их необходимо предста¬ вить в определенной форме. Существуют два основных способа наде¬ ления знаниями программных систем. Первый — поместить знания в программу, написанную на обычном языке программирования. Такая 116
система будет представлять собой единый программный код, в кото¬ ром знания не вынесены в отдельную категорию. Несмотря на то что основная задача будет решена, в этом случае трудно оценить роль зна¬ ний и понять, каким образом они используются в процессе решения задач. Нелегким делом являются модификация и сопровождение по¬ добных программ, а проблема пополнения знаний может стать нераз¬ решимой. Второй способ базируется на концепции баз данных и заключает¬ ся в вынесении знаний в отдельную категорию, т.е. знания представ¬ ляются в определенном формате и помещаются в БЗ. База знаний лег¬ ко пополняется и модифицируется. Она является автономной частью интеллектуальной системы, хотя механизм логического вывода, реали¬ зованный в логическом блоке, а также средства ведения диалога на¬ кладывают определенные ограничения на структуру БЗ и операции с нею. В современных ИИС принят этот способ. Следует заметить, что для того, чтобы поместить знания в ком¬ пьютер, их необходимо представить определенными структурами дан¬ ных, соответствующих выбранной среде разработки интеллектуальной системы. Следовательно, при разработке ИИС сначала осуществляют¬ ся накопление и представление знаний, причем на этом этапе обяза¬ тельно участие человека, а затем знания представляются определен¬ ными структурами данных, удобными для хранения и обработки в ЭВМ. Знания в ИИС существуют в следующих формах: — исходные знания (правила, выведенные на основе практическо¬ го опыта; математические и эмпирические зависимости, отражающие взаимные связи между фактами; закономерности и тенденции, описы¬ вающие изменение фактов с течением времени; функции, диаграммы, графы и т.д.); — описание исходных знаний средствами выбранной модели представления знаний (множество логических формул или продукци¬ онных правил, семантическая сеть, иерархии фреймов и т.п.); — представление знаний структурами данных, которые предна¬ значены для хранения и обработки в ЭВМ; — базы знаний на машинных носителях информации. Что же такое знания? Приведем несколько определений. Из толкового словаря С.И. Ожегова: 1) «Знание — постижение действительности сознанием, наука»; 2) «Знание — это совокупность сведений, познаний в какой-либо области». Из японского толкового словаря: «Знания — это результат, полу¬ ченный познанием», или, более подробно, «система суждений с прин¬ ципиальной и единой организацией, основанная на объективной зако¬ номерности». 117
Исследователями в области ИИ даются более конкретные опреде¬ ления знаний. «Знания — это закономерности предметной области (принципы, связи, законы), полученные в результате практической деятельности и профессионального опыта, позволяющие специалистам ставить и ре¬ шать задачи в этой области» [1]. «Знания — это хорошо структурированные данные или данные о данных, или метаданные» [1]. «Знания - формализованная информация, на которую ссылаются или используют в процессе логического вывода» [8]. Существует множество классификаций знаний. Как правило, с помощью классификаций систематизируют знания конкретных пред¬ метных областей. На абстрактном уровне рассмотрения можно гово¬ рить о признаках, по которым подразделяются знания, а не о класси¬ фикациях. По своей природе знания можно разделить на декларатив¬ ные и процедурные. Декларативные знания представляют собой описания фактов и явлений, фиксируют наличие или отсутствие таких фактов, а также включают описания основных связей и закономерностей, в которые эти факты и явления входят. Процедурные знания - это описания действий, которые возможны при манипулировании фактами и явлениями для достижения намечен¬ ных целей. Для описания знаний на абстрактном уровне разработаны специ¬ альные языки — языки описания знаний. Эти языки также делятся на языки процедурного типа и декларативного. Все языки описания зна¬ ний, ориентированные на использование традиционных компьютеров фоннеймановской архитектуры, являются языками процедурного типа. Разработка языков декларативного типа, удобных для представления знаний, является актуальной проблемой. По способу приобретения знания можно разделить на факты и эв¬ ристику (правила, которые позволяют сделать выбор при отсутствии точных теоретических обоснований). Первая категория знаний обычно указывает на хорошо известные в данной предметной области обстоя¬ тельства. Вторая категория знаний основана на собственном опыте эксперта, работающего в конкретной предметной области, накоплен¬ ном в результате многолетней практики. По типу представления знания делятся на факты и правила. Фак¬ ты — это знания типа «А — это А», такие знания характерны для баз данных и сетевых моделей. Правила, или продукции, — это знания типа «ЕСЛИ А, ТО В». 118
Кроме фактов и правил существуют еще метазнания — знания о знаниях. Они необходимы для управления БЗ и для эффективной орга¬ низации процедур логического вывода. Форма представления знаний оказывает существенное влияние на характеристики ИИС. Базы знаний являются моделями человеческих знаний. Однако все знания, которые привлекает человек в процессе решения сложных задач, смоделировать невозможно. Поэтому в ин¬ теллектуальных системах требуется четко разделить знания на те, ко¬ торые предназначены для обработки компьютером, и знания, исполь¬ зуемые человеком. Очевидно, что для решения сложных задач БЗ должна иметь достаточно большой объем, в связи с чем неизбежно возникают проблемы управления такой базой. Поэтому при выборе модели представления знаний следует учитывать такие факторы, как однородность представления и простота понимания. Однородность представления приводит к упрощению механизма управления знания¬ ми. Простота понимания важна для пользователей интеллектуальных систем и экспертов, чьи знания закладываются в ИИС. Если форма представления знаний будет трудна для понимания, то усложняются процессы приобретения и интерпретации знаний. Следует заметить, что одновременно выполнить эти требования довольно сложно, осо¬ бенно в больших системах, где неизбежным становится структуриро¬ вание и модульное представление знаний. 11.2. ТИПИЧНЫЕ МОДЕЛИ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ К типичным моделям представления знаний относятся логиче¬ ская, продукционная, фреймовая и модель семантической сети. Каждой модели отвечает свой язык представления знаний. Одна¬ ко на практике редко удается обойтись рамками одной модели при разработке ИИС, за исключением самых простых случаев, поэтому представление знаний получается сложным. Кроме комбинированного представления с помощью различных моделей обычно используются специальные средства, позволяющие отразить особенности конкрет¬ ных знаний о предметной области, а также различные способы устра¬ нения и учета нечеткости и неполноты знаний. 11.2.1. Логическая модель представления знаний Логическая модель основана на системе исчисления предикатов первого порядка. Знакомство с логикой предикатов начнем с исчисле¬ ния высказываний. Высказыванием называется предложение, смысл которого можно выразить значениями: истина (Т) или ложь (F). Например, предложе¬ 119
ния «лебедь белый» и «лебедь черный» будут высказываниями. Из простых высказываний можно составить более сложные: «лебедь белый или лебедь черный», «лебедь белый и лебедь черный», «если лебедь не белый, то лебедь черный». В свою очередь, сложные высказывания можно разделить на час¬ тичные, которые связаны между собой с помощью слов: и, или, не, если — то. Элементарными называются высказывания, которые нельзя разделить на части. Логика высказываний оперирует логическими свя¬ зями между высказываниями, т.е. она решает вопросы типа: «Можно ли на основе высказывания А получить высказывание B?»; «Истинно ли В при истинности А?» и т.п. При этом семантика высказываний не имеет значения. Элементарные высказывания рассматриваются как переменные логического типа, над которыми разрешены следующие логические операции: — отрицание (унарная операция); л конъюнкция (логическое умножение); V дизъюнкция (логическое сложение); ^ импликация (если — то); эквивалентность. Операция импликации должна удовлетворять следующим требо¬ ваниям. 1. Значение результата импликации зависит от двух операндов. 2. Если первый операнд (А) — истинный, то значение результата совпадает со значением второго операнда (В). 3. Операция импликации некоммутативна. 4. Результат импликации совпадает с результатом выражения —і А v В. Значения результатов логических операций над переменными А и В, являющимися элементарными высказываниями, приведены в табл. 11.1. 11.1. Результаты вычисления логических операций А — А B А л B А < B А^-B А-^-B Т F т Т Т Т Т Т F F F Т F F F Т т F Т Т F F Т F F F Т Т 120
Исчисление высказываний позволяет формализовать лишь малую часть множества рассуждений, поскольку этот аппарат не позволяет учитывать внутреннюю структуру высказывания, которая существует в естественных языках. Рассмотрим ставший классическим пример рассуждения о Сократе: Р: «Все люди смертны» Q: «Сократ - человек» R: «Сократ - смертен» Используя для обозначения высказываний логические перемен¬ ные Р, Q, R, можно составить формулу: (P л Q)^R, которая может быть интерпретирована как «Если все люди смертны и Сократ являет¬ ся человеком, то Сократ является смертным». Однако эта формула не является общезначимой, поскольку относится только к одному объекту (Сократу). Кроме того, высказывание R не выводится из Р и Q, т.е. ес¬ ли бы мы не сформулировали R заранее, мы не смогли бы записать приведенную выше формулу. Чтобы осуществить этот примитивный логический вывод, выска¬ зывание Q следует разделить на две части: «Сократ» (субъект) и «че¬ ловек» (свойство субъекта) и представить в виде отношения «субъект - свойство», которое можно записать с помощью функции «человек» (Сократ). Очевидно, что свойство конкретного субъекта с именем «Сократ» быть «человеком» может быть присуще и ряду других субъектов, что позволяет заменить константу «Сократ» на некоторую переменную, например X. Тогда получим запись «человек» (X), которая обладает внутренней структурой, т.е. значение такого высказывания будет зави¬ сеть от его компонент. Записанная функция уже не является элемен¬ тарным высказыванием, она называется предикатом. Приведем объяснение понятия предиката, данное Д.А. Поспело¬ вым: «Под предикатом будем понимать некоторую связь, которая за¬ дана на наборе из констант или переменных». Пример предиката: «Р больше Q». Если семантика Р и Q не задана, то о предикате сказать особенно нечего. Пожалуй, только то, что он является антирефлексивным, анти¬ симметричным и транзитивным. Но при задании семантики (т.е. об¬ ластей определения переменных Р и Q) о предикате можно будет ска¬ зать существенно больше. Например, если Р и Q — площади городов в России и Японии, то при задании списков городов и подстановке зна¬ чений из этих списков в переменные мы получим отношение между двумя сущностями и сможем судить о его истинности, например: «Площадь Волгограда больше площади Хиросимы» =Т; «Площадь Вологды больше площади Токио»=Р. 121
Иногда для утверждения об истинности или ложности предиката можно обойтись без подстановки. Например, если областью определе¬ ния переменной X являются целые положительные числа, то предикат «X больше —5» будет тождественно истинен». Основными синтаксическими единицами логики предикатов яв¬ ляются константы, переменные, функции, предикаты, кванторы и ло¬ гические операторы. Формальный синтаксис исчисления предикатов первого порядка удобно представить в нормальной форме Бэкуса- Наура, которая традиционно применяется для записи грамматик язы¬ ков программирования: <константа>^ <идентификатор1> <переменная>^ <идентификатор2> <функция>^ <идентификатор3> <предикат>^ <идентификатор4> <терм> ^ <константа> | <переменная> | | <функция> (<список термов>) <список термов>^ <терм> | <терм>, <список термов> <атом>^ <предикат> | <предикат> (<список термов>) <литера> ^ <атом> | 0 <атом> <оператор> ^ 0 | л | ѵ | ^ <список переменных> ^ <переменная> | <переменная>, < список переменных> <квантор> ^ <( 3 <список переменных>) | < (V <список переменных>) <формула>^ <литера> | 0 <формула> | <квантор> (<формула>) | (<формула>) <оператор> (<формула>). В данной записи любое имя в угловых скобках представляет со¬ бой тип синтаксического объекта. Определение каждого типа начина¬ ется с появления его имени в левой части каждой записи, т.е. слева от знака ^. В правой части каждой записи приводятся возможные спосо¬ бы организации синтаксически корректных объектов определяемого типа. Альтернативные варианты разделены знаком |, который можно интерпретировать как ИЛИ. Номера идентификаторов следует тракто¬ вать в том смысле, что идентификаторы, используемые для обозначе¬ ния объектов разных типов, должны быть различимыми. Например, константы обозначаются именами <идентификатор1>, которые фор¬ мируются из строчных букв, причем первым символом должен быть один из следующих: a, b, с, d, e, k, l, m, n, х, у, z, v, w, u. Имена пере¬ менных <идентификатор2> должны начинаться, например, с заглавной буквы. Идентификаторы функций <идентификатор3> состоят из строчных букв, при этом первой является f, g, h, p или q. Имена преди¬ катов <идентификатор4> должны состоять из прописных букв. Функ¬ ции, как и предикаты, задают некоторую связь между переменными 122
или константами. Но эта связь или отношение не характеризуются ис¬ тинностным значением. С помощью функции можно представить сложный объект, например функция fbook (Author, Tytle, Publisher, Year) представляет набор информации, характеризующей книгу. Пре¬ дикат и функция отличаются также на синтаксическом уровне, а имен¬ но: функции могут являться аргументами предикатов (т.е. термами), а предикаты — нет. Следует заметить, что в логике предикатов более вы¬ соких порядков по сравнению с первым аргументами предикатов мо¬ гут быть другие предикаты. Функции с нулевым числом мест (аргу¬ ментов) являются аналогами констант. Предикат без аргументов экви¬ валентен высказыванию. Кванторы в логике предикатов необходимы для определения области действия переменных. Так, в логическом выводе о Сократе высказывание «Все люди смертны» можно уточнить следующим об¬ разом: «Для всех X, если X является человеком, то X является смерт¬ ным». Введя предикаты ЧЕЛОВЕК(А) и СМЕРТЕН (А), можем соста¬ вить логическую формулу ЧЕЛОВЕК(Х) ^ СМЕРТЕН (X). Чтобы по¬ казать справедливость этой формулы для любого X, используется квантор общности: 0 Х— «для любого X». Тогда рассматриваемое утверждение запишется в виде Кроме квантора общности в логике предикатов есть квантор су¬ ществования: $ Х — «существует хотя бы один такой X, что ...» или «найдется хотя бы один X такой, что ...». Переменные, находящиеся в сфере действия кванторов, называ¬ ются связанными, остальные переменные в логических формулах на¬ зываются свободными. Для того чтобы можно было говорить об ис¬ тинности какого-либо утверждения без подстановки значений в пере¬ менные, все входящие в него переменные должны быть связаны кван¬ торами. Если в логическую формулу входит несколько кванторов, необ¬ ходимо учитывать их взаимное расположение. Рассмотрим возможные интерпретации логической формулы ЛЮБИТ(X,Y) с квалифицирован¬ ными переменными. При этом существует несколько вариантов раз¬ мещения кванторов, один из которых V X $ Y ЛЮБИТ(Х,У). Эту формулу можно интерпретировать двояко: — для любого X существует хотя бы один человек Y, которого любит X; — существует по крайней мере один человек Y, которого любят все X. 123
Для устранения этой неопределенности введем скобки и порядок применения кванторов — слева направо, тогда получим следующие формулы, соответствующие интерпретациям: 1. (ѴХ) (ЗУ) ЛЮБИТ (X, Y). 2. (ЗУ)(ѴХ) ЛЮБИТ (X, У). Рассмотрим остальные варианты расположения кванторов и их интерпретации. 3. (ѴХ)(ЗУ) ЛЮБИТ(Х,У) и (ЗУ)(ѴХ) ЛЮБИТ (Х, У) - «Все¬ общее человеколюбие». 4. (ЗХ) (ѴУ) ЛЮБИТ (X, У) - «Существует хотя бы один человек, который любит всех людей». 5. (ѴУ)(ЗХ) ЛЮБИТ (X, У) - «Каждого человека кто-нибудь любит». 6. (ЗХ)(ЗУ) ЛЮБИТ (X, У) и (ЗУ)(ЗХ) ЛЮБИТ (Х, У) - «Су¬ ществует хотя бы один человек, который не утратил чувства любви». В одной логической формуле не допускается применение разных кванторов к одной переменной, например выражение (ЗХ)(ѴХ)Р(Х) является недопустимым. Отрицание кванторных выражений выполняется в соответствии со следующими правилами: -.(ѴХ) Р(Х) = (ЗХ)-іР(Х), -,(ЗХ) Р(Х) = (ѴХ)-іР(Х). Справедливость приведенных выражений вытекает из смысла кванторов. Эти соотношения позволяют любую формулу в логике пре¬ дикатов представить в виде предваренной нормальной формы (ПНФ), в которой сначала выписываются все кванторы, а затем - предикатные выражения. Пример ПФР: (ѴХ) (ѴУ) 0Z) (P(X) ®0(У,гЩ). В логике предикатов первого порядка не разрешается применение кванторов к предикатам (более высокие порядки это позволяют). Формула, в которой все переменные связаны, называется предло¬ жением. Каждому предложению можно поставить в соответствие оп¬ ределенное значение - «истина» или «ложь». Пример: пусть f(x) - функция, задающая отношение «отец»; Р(Х) - предикат, задающий отношение «человек». Тогда логическая формула (ѴХ)(Р^(Х)) ——Р(Х)) будет интерпретироваться как «Все существа, отцом которых является человек, - люди». Операции в логике предикатов имеют неодинаковые приоритеты. Самый высокий приоритет имеет квантор общности, самый низкий - 124
операция эквивалентности. Ниже перечислены операции в порядке убывания приоритетов: ", 3, 0, л, ѵ, ®, « . Сложные формулы в логике предикатов получаются путем ком¬ бинирования атомарных формул с помощью логических операций. Такие формулы называются правильно построенными логическими формулами (ППФ). Интерпретация ППФ возможна только с учетом конкретной области интерпретации, которая представляет собой мно¬ жество всех возможных значений термов, входящих в ППФ. Для пред¬ ставления знаний конкретной предметной области в виде ППФ необ¬ ходимо прежде всего установить область интерпретации (мир Хер- бранда), т.е. выбрать константы, которые определяют объекты в дан¬ ной области, а также функции и предикаты, которые определяют зави¬ симости и отношения между объектами. После этого можно построить логические формулы, описывающие закономерности данной предмет¬ ной области. Записать знания с помощью логической модели не удает¬ ся в тех случаях, когда затруднен выбор указанных трех групп элемен¬ тов (констант, функций и предикатов) или когда для описания этих знаний не хватает возможностей представления с помощью ППФ, например когда знания являются неполными, ненадежными, нечетки¬ ми и т.д. Логическая модель применяется в основном в исследовательских системах, так как предъявляет очень высокие требования к качеству и полноте знаний предметной области. 11.2.2. Представление знаний правилами продукций Продукционная модель в силу своей простоты получила наиболее широкое распространение. В этой модели знания представляются в виде совокупности правил типа «ЕСЛИ — ТО». Системы обработки знаний, использующие такое представление, получили название про¬ дукционных систем. В состав экспертной системы продукционного типа входят база правил, база фактических данных (рабочая память) и интерпретатор правил, реализующий определенный механизм логиче¬ ского вывода. Любое продукционное правило, содержащееся в БЗ, со¬ стоит из двух частей: антецедента и консеквента. Антецедент пред¬ ставляет собой посылку правила (условную часть) и состоит из эле¬ ментарных предложений, соединенных логическими связками И, ИЛИ. Консеквент (заключение) включает одно или несколько предложений, которые выражают либо некоторый факт, либо указание на определен¬ ное действие, подлежащее исполнению. Продукционные правила при¬ нято записывать в виде АНТЕЦЕДЕНТ-» КОНСЕКВЕНТ. 125
Примеры продукционных правил: ЕСЛИ «двигатель не заводится» И «стартер двигателя не работа¬ ет», ТО «неполадки в системе электропитания стартера»; ЕСЛИ «животное имеет перья», ТО «животное — птица». Антецеденты и консеквенты правил формируются из атрибутов и значений, например: Атрибут Значение Двигатель Не заводится Стартер двигателя Не работает Животное Имеет перья Животное Птица Любое правило состоит из одной (или нескольких) пары атрибут- значение. В рабочей памяти продукционной системы хранятся пары атрибут—значение, истинность которых установлена в процессе реше¬ ния конкретной задачи к некоторому текущему моменту времени. Со¬ держимое рабочей памяти изменяется в процессе решения задачи. Это происходит по мере срабатывания правил. Правило срабатывает, если при сопоставлении фактов, содержащихся в рабочей памяти, с антеце¬ дентом анализируемого правила имеет место совпадение, при этом заключение сработавшего правила заносится в рабочую память. По¬ этому в процессе логического вывода объем фактов в рабочей памяти, как правило, увеличивается (уменьшаться он может в том случае, если действие какого-нибудь правила состоит в удалении фактов из рабочей памяти). В процессе логического вывода каждое правило из базы пра¬ вил может сработать только один раз. При описании реальных знаний конкретной предметной области может оказаться недостаточным представление фактов с помощью пар атрибут—значение. Более широкие возможности имеет способ описа¬ ния с помощью триплетов объект—атрибут—значение. В этом случае отдельная сущность предметной области рассматривается как объект, а данные, хранящиеся в рабочей памяти, показывают значения, кото¬ рые принимают атрибуты этого объекта. Примеры триплетов: собака—кличка—граф; собака—порода—ризеншнауцер; собака—окрас—черный. Одним из преимуществ такого представления знаний является уточнение контекста, в котором применяются правила. Например, пра¬ вило, относящееся к объекту «собака», должно быть применимо для 126
собак с любыми кличками, всех пород и окрасок. С введением трипле¬ тов правила из базы правил могут срабатывать более одного раза в процессе одного логического вывода, поскольку одно правило может применяться к различным экземплярам объекта (но не более одного раза к каждому экземпляру). Существуют два типа продукционных систем — с прямыми и об¬ ратными выводами. Прямые выводы реализуют стратегию «от фактов к заключениям». При обратных выводах выдвигаются гипотезы веро¬ ятных заключений, которые могут быть подтверждены или опроверг¬ нуты на основании фактов, поступающих в рабочую память. Сущест¬ вуют также системы с двунаправленными выводами. Основные достоинства продукционных систем связаны с просто¬ той представления знаний и организации логического вывода. К не¬ достаткам систем продукций можно отнести следующие: — отличие от структур знаний, свойственных человеку; — неясность взаимных отношений правил; — сложность оценки целостного образа знаний; — низкая эффективность обработки знаний. При разработке небольших систем (десятки правил) проявляются в основном положительные стороны систем продукций, однако при увеличении объема знаний более заметными становятся слабые стороны. 11.2.3.Объектно-ориентированное представление знаний фреймами Фреймовая модель представления знаний основана на теории фреймов М. Минского, которая представляет собой систематизиро¬ ванную психологическую модель памяти человека и его сознания. Эта теория имеет весьма абстрактный характер, поэтому только на ее ос¬ нове невозможно создание конкретных языков представления знаний. Фреймом называется структура данных для представления неко¬ торого концептуального объекта. Фрейм имеет имя, служащее для идентификации описываемого им понятия, и содержит ряд описаний — слотов, с помощью которых определяются основные структурные элементы этого понятия. За сло¬ тами следуют шпации, в которые помещают данные, представляющие текущие значения слотов. Слот может содержать не только конкретное значение, но и имя процедуры, позволяющей вычислить это значение по заданному алгоритму. Например, слот с именем «возраст» может содержать имя процедуры, которая вычисляет возраст человека по да¬ те рождения, записанной в другом слоте, и текущей дате. Процедуры, располагающиеся в слотах, называются связанными или присоединен¬ ными процедурами. Вызов связанной процедуры осуществляется при 127
обращении к слоту, в котором она помещена. Заполнителями слота могут быть также правила продукций, используемые для определения конкретного значения. В слоте может содержаться не одно, а несколь¬ ко значений, т.е. в качестве структурных составляющих фреймов мо¬ гут использоваться данные сложных типов, а именно: массивы, спи¬ ски, множества, фреймы и т.д. Например, в слоте с именем «брат» мо¬ жет содержаться список имен, если объект, описываемый данным фреймом, имеет нескольких братьев. Значение слота может представ¬ лять собой некоторый диапазон или перечень возможных значений, арифметическое выражение, фрагмент текста и т.д. Совокупность данных предметной области может быть представ¬ лена множеством взаимосвязанных фреймов, образующих единую фреймовую систему, в которой объединяются декларативные и проце¬ дурные знания. Такая система имеет, как правило, иерархическую структуру, в которой фреймы соединены друг с другом с помощью родо-видовых связей. На верхнем уровне иерархии находится фрейм, содержащий наиболее общую информацию, истинную для всех ос¬ тальных фреймов. Фреймы обладают способностью наследовать зна¬ чения характеристик своих родителей. Например, фрейм АФРИКАН- СКИЙ_СЛОН наследует от фрейма СЛОН значение характеристики цвет=«серый». Значение характеристики в дочернем фрейме может отличаться от родительского, например значением данного слота для фрейма АЗИАТСКИИ_СЛОН является цвет=«коричневый». Над фреймами можно совершать некоторые теоретико¬ множественные операции, например объединение и пересечение. При объединении фреймов в результирующем фрейме будут присутство¬ вать все слоты, которые встречались в исходных фреймах. В слотах, не являющихся общими, будут сохранены исходные значения. Если в объединяемых фреймах были одноименные слоты, в результирующем фрейме останется один слот с таким именем, значение его определится в результате объединения значений одноименных слотов. При пересе¬ чении фреймов в результирующем фрейме будут присутствовать толь¬ ко те слоты, которые имелись во всех исходных фреймах. Вычислить результирующие значения можно двумя способами. Первый способ состоит в том, что в результирующем фрейме присутствуют только те значения, которые совпадали в исходных фреймах. Во втором способе результирующие значения находят путем пересечения значений из исходных фреймов. Фреймовые системы подразделяются на статические и динамиче¬ ские, последние допускают изменение фреймов в процессе решения задачи. 128
Пример фрейма РУКОВОДИТЕЛЬ Имя слота Значение слота Тип значения слота Имя Иванов И. И. Строка символов Рожден 01.01.1965 Дата Возраст age(dama, рожден) Процедура Специальность Юрист Строка символов Отдел Отдел кадров Строка символов Зарплата 80000 Число Адрес ДОМ_АДРЕС Фрейм В общем случае структура данных фрейма может содержать более широкий набор информации, в который входят следующие атрибуты. Имя фрейма. Оно служит для идентификации фрейма в системе и должно быть уникальным. Фрейм представляет собой совокупность слотов, число которых может быть произвольным. Число слотов в ка¬ ждом фрейме устанавливается проектировщиком системы, при этом часть слотов определяется самой системой для выполнения специфи¬ ческих функций (системные слоты), примерами которых являются: слот-указатель родителя данного фрейма (IS-A), слот-указатель дочер¬ них фреймов, слот для ввода имени пользователя, слот для ввода даты определения фрейма, слот для ввода даты изменения фрейма и т.д. Имя слота. Оно должно быть уникальным в пределах фрейма. Обычно имя слота представляет собой идентификатор, который наде¬ лен определенной семантикой. В качестве имени слота может высту¬ пать произвольный текст. Например, <Имя слота>=Главный герой романа Ф.М. Достоевского «Идиот», <Значение слота>=Князь Мышкин. Имена системных слотов обычно зарезервированы, в различных системах они могут иметь различные значения. Примеры имен системных слотов: IS-A, HASPART, RELATIONS и т.д. Системные слоты служат для редактиро¬ вания базы знаний и управления выводом во фреймовой системе. Указатели наследования. Они показывают, какую информацию об атрибутах слотов из фрейма верхнего уровня наследуют слоты с ана¬ логичными именами в данном фрейме. Указатели наследования харак¬ терны для фреймовых систем иерархического типа, основанных на отношениях типа «абстрактное — конкретное». В конкретных системах указатели наследования могут быть организованы различными спосо¬ бами и иметь разные обозначения: U (Unique) - значение слота не наследуется; S (Same) — значение слота наследуется; R (Range) — значения слота должны находиться в пределах интер¬ вала значений, указанных в одноименном слоте родительского фрейма; 129
О (Override) — при отсутствии значения в текущем слоте оно на¬ следуется из фрейма верхнего уровня, однако в случае определения значения текущего слота оно может быть уникальным. Этот тип указа¬ теля выполняет одновременно функции указателей U и S. Указатель типа данных. Он показывает тип значения слота. Наи¬ более употребляемые типы: frame - указатель на фрейм; real - вещест¬ венное число; integer - целое число; boolean - логический тип; text - фрагмент текста; list - список; table - таблица; expression - выражение; lisp - связанная процедура и т.д. Значение слота. Оно должно соответствовать указанному типу данных и условию наследования. Демоны. Демоном называется процедура, автоматически запус¬ каемая при выполнении некоторого условия. Демоны автоматически запускаются при обращении к соответствующему слоту. Типы демо¬ нов связаны с условием запуска процедуры. Демон с условием IF- NEEDED запускается, если в момент обращения к слоту его значение не было установлено. Демон типа IF-ADDED запускается при попытке изменения значения слота. Демон IF-REMOVED запускается при по¬ пытке удаления значения слота. Возможны также другие типы демо¬ нов. Демон является разновидностью связанной процедуры. Присоединенная процедура. В качестве значения слота может ис¬ пользоваться процедура, называемая служебной в языке Лисп или ме¬ тодом в языках объектно-ориентированного программирования. При¬ соединенная процедура запускается по сообщению, переданному из другого фрейма. Демоны и присоединенные процедуры являются про¬ цедурными знаниями, объединенными вместе с декларативными в единую систему. Эти процедурные знания являются средствами управления выводом во фреймовых системах, причем с их помощью можно реализовать любой механизм вывода. Представление таких знаний и заполнение ими интеллектуальных систем - весьма нелегкое дело, которое требует дополнительных затрат труда и времени разра¬ ботчиков ИИС. Поэтому проектирование фреймовых систем выполня¬ ется, как правило, специалистами, имеющими высокий уровень квали¬ фикации в области искусственного интеллекта. Пример сети фреймов приведен на рис. 11.1. На нем понятие УЧЕНИК наследует свойства фреймов РЕБЕНОК и ЧЕЛОВЕК, кото¬ рые находятся на более высоких уровнях иерархии. Если будет задан вопрос «Любят ли ученики сладкое?», то следует ответ «да», так как этим свойством обладают все дети, что указано во фрейме РЕБЕНОК. Наследование свойств может быть частичным, например «возраст» для учеников не наследуется из фрейма «ребенок», так как явно указан в собственном фрейме. 130
а> 3 Я ш со о ё 1 с; 2 Мыслить 5 3" IS-A Умеет Рис. 11.1. Сеть фреймов В последние годы термин «фреймовый» часто заменяют терми¬ ном «объектно-ориентированный». Шаблон фрейма можно рассматри¬ вать как класс, экземпляр фрейма — как объект. Языки объектно¬ ориентированного программирования (ООП) предоставляют средства создания классов и объектов, а также средства для описания процедур обработки объектов (методы). Языки ООП, не содержащие средств реализации присоединенных процедур, не позволяют организовать гибкий механизм логического вывода, поэтому разработанные на них программы либо представляют собой объектно-ориентированные базы данных, либо требуют интеграции с другими средствами обработки знаний (например, с языком PROLOG). Существуют также специализированные языки представления знаний на основе фреймовой модели, примерами которых являются: FRL (Frame Representation Language), KRL (Knowledge Representation Language), фреймовая «оболочка» Kappa и др. Известны также экс¬ пертные системы фреймового типа: ANALYST, TRISTAN, ALTERID, МОДИС [8, 9, 12, 13]. 131
11.2.4. Модель семантической сети Общепринятого определения семантической сети не существует. Обычно под ней подразумевают систему знаний некоторой предмет¬ ной области, имеющую определенный смысл в виде целостного образа сети, узлы которой соответствуют понятиям и объектам, а дуги — от¬ ношениям между объектами. При построении семантической сети от¬ сутствуют ограничения на число связей и на сложность сети. Для того чтобы формализация оказалась возможной, семантическую сеть необ¬ ходимо систематизировать. Семантические сети Куиллиана системати¬ зируют функции отношений между понятиями с помощью следующих признаков: — множество — подмножество (типы отношений «абстрактное — конкретное», «целое — часть», «род — вид»); — индексы (свойства, имена прилагательные в языке и т.п.); — конъюнктивные связи (логическое И); — дизъюнктивные связи (логическое ИЛИ); — связи по ИСКЛЮЧАЮЩЕМУ ИЛИ; — отношения «близости»; — отношения «сходства — различия»; — отношения «причина — следствие» и др. При построении семантической сети отсутствуют ограничения на число элементов и связей. Поэтому систематизация отношений между объектами в сети необходима для дальнейшей формализации. Пример семантической сети представлен на рис. 11.2. Рис. 11.2. Семантическая сеть 132
Для реализации семантических сетей существуют специальные сетевые языки: NET, язык реализации систем SIMER+MIR и др. [4, 10]. Широко известны экспертные системы, использующие семантические сети в качестве языка представления знаний: PROSPECTOR, CASNET, TORUS [7, 9, 11 - 13]. Систематизация отношений конкретной семантической сети зави¬ сит от специфики знаний предметной области и является сложной за¬ дачей. Особого внимания заслуживают общезначимые отношения, присутствующие во многих предметных областях. Именно на таких отношениях основана концепция семантической сети. В семантиче¬ ских сетях, так же как при фреймовом представлении знаний, деклара¬ тивные и процедурные знания не разделены, следовательно, база зна¬ ний не отделена от механизма вывода. Процедура логического вывода обычно представляет совокупность процедур обработки сети. Семан¬ тические сети получили широкое применение в системах распознава¬ ния речи и экспертных системах. 11.3. ТРАДИЦИОННЫЕ СПОСОБЫ ОБРАБОТКИ ЗНАНИЙ Компьютерная обработка знаний является одной из областей об¬ работки информации. Традиционная технология обработки информа¬ ции ориентирована на вычисления, основанные на теории Тьюринга, которая реализована в ЭВМ с архитектурой фон Неймана. Этот подход основан на концепции последовательной обработки информации во времени, поэтому в таких ЭВМ используются в основном языки про¬ цедурного типа, а в качестве операционных механизмов - устройства управления и арифметические устройства. Процессы обработки знаний моделируют такие сферы человеческой деятельности, как рассужде¬ ния, систематизация, обучение и т.д. Если попытаться «переложить подобные задачи на плечи компьютеров», последним будет явно не¬ достаточно жесткого набора инструкций в виде программы на проце¬ дурном языке программирования, даже если эта программа очень сложная. Адекватное представление знаний требует разработки и при¬ менения языков декларативного типа в интеллектуальных системах, а в качестве операционных механизмов - различных способов реализа¬ ции логического вывода. Очевидно, будущее в этом направлении при¬ надлежит компьютерам с архитектурой, отличной от фон- неймановской. Какими должны быть компьютеры, ориентированные на выполнение интеллектуальных задач, покажут дальнейшие теоре¬ тические и практические исследования. В настоящее время экспери¬ менты проводятся в основном на машинах Тьюринга-фон Неймана и на машинах с параллельной обработкой данных. 133
Характерная черта ИИС, отличающая их от традиционных систем обработки информации, - использование знаний. Выбор способа пред¬ ставления знаний в интеллектуальной системе является ключевым мо¬ ментом разработки. С точки зрения человека желательно, чтобы опи¬ сательные возможности используемой модели были как можно выше. С другой стороны, сложное представление знаний требует специаль¬ ных способов обработки (усложняется механизм вывода), что не толь¬ ко затрудняет проектирование и реализацию экспертной системы, но и может привести к потере достоверности результатов или невозможно¬ сти их интерпретации. В конечном итоге неизбежен компромисс меж¬ ду важнейшими условиями и требованиями, предъявленными к ИИС на этапе проектирования. Вопросы проектирования и реализации ин¬ теллектуальных программных средств - отдельная область исследова¬ ний, а здесь рассмотрим способы реализации логического вывода в системах с классическими моделями представления знаний. 11.3.1. Способы доказательства и вывода в логике Традиционной логикой называют формальную систему, предло¬ женную Аристотелем более 2500 лет назад. Аристотель стремился ус¬ тановить и формально записать способы, с помощью которых можно было бы установить правильность рассуждений в разумной полемике. Множества правил, определяющих, какие умозаключения могут быть получены из множества суждений, он назвал силлогизмом. В данном случае под суждением понимается законченная мысль, которую можно выразить на естественном языке в одной из следующих четырех форм: — все Х являются Р - (Ѵ Х)Р(Х); — никакой Х не является Р — (ѴХ) —I Р(Х); — некоторые из Х являются Р — (3 Х) Р(Х); — некоторые из Х не являются Р — (3 X) — P(X). Каждое правило силлогизма определяет переход от предпосылок к заключению, являющемуся интуитивно очевидным. Силлогизм изна¬ чально предназначен для управления разумной дискуссией на естест¬ венном языке. Как формальная теория, он чрезмерно сложен и непо¬ лон. Силлогизм можно назвать логикой классов, которая не содержит понятия дополнения класса. Например, определив класс А (допустим, субъекты, являющиеся водителями автомобилей), мы не можем по¬ строить его дополнение (т.е. установить всех лиц, которые не являются водителями). Будучи тесно связанным с естественным языком, силлогизм ино¬ гда приводит к абсурдным результатам, в частности, не допуская логи¬ ческую эквивалентность двух способов выражения одной и той же 134
мысли. Силлогизм неполон в том смысле, что он не позволяет осуще¬ ствлять логические выводы, в которых затрагиваются вопросы суще¬ ствования элемента некоторого класса. Последователи Аристотеля, основываясь на силлогизме, сформу¬ лировали принципы дедуктивного вывода для высказываний, которые находятся на более высоком уровне абстракции по сравнению с суж¬ дениями. Наиболее известными из этих правил являются следующие: 1. Modus Ponendo Ponens: «Если истинна импликация A—B и А истинно, то В истинно». 2. Modus Tollendo Tollens: «Если истинна импликация А—В и В ложно, то А ложно». 3. Modus Ponendo Tollens: «Если А истинно и конъюнкция А л В имеет результатом ложь, то В ложно». 4. Modus Toll endo Ponens: «Если А ложно и дизъюнкция A v B ис¬ тинна, то В является истиной». На основе этих правил сформулировано правило «цепного заклю¬ чения», весьма удобное для вывода в системе исчисления высказыва¬ ний. 5. Цепное заключение: «Если истинна импликация А—В и истин¬ на импликация B—C, то импликация A—C является истинной». Рассмотрим пример вывода с применением этих правил. Пусть заданы следующие посылки: 1. Р—Q /* Если растут мировые цены на топливно-энергети¬ ческие ресурсы, то увеличиваются поступления в бюджет */. 2. (R v Q) —— (R v S) /* Если наблюдается рост производства или увеличиваются поступления в бюджет, то следует увеличение произ¬ водства или укрепление рубля */. 3. (Р— Q) — ((P v Q) — (R v Q)) /* Если растут мировые цены на то¬ пливно-энергетические ресурсы, то увеличиваются поступления в бюджет, из чего следует, что при росте цен на сырье или при увеличе¬ нии поступлений в бюджет происходит рост производства или увели¬ чение бюджета */. Используя Modus Ponendo Ponens, из посылок 1 и 3 можно вывес¬ ти следующее заключение. 4. (Pv Q) — (R v Q) /* Если растут мировые цены на топливно¬ энергетические ресурсы или увеличиваются поступления в бюджет, то происходит рост производства или увеличение бюджета */. Из посылок 4 и 2 с помощью цепного заключения можно полу¬ чить посылку 5. 5. (Pv Q) — (R v S) /* Если растут мировые цены на топливно¬ энергетические ресурсы или увеличиваются поступления в бюджет, то происходит рост производства или укрепление рубля */. 135
Таким образом, применяя правила логического вывода, получаем новые логические формулы на основании исходных. При значитель¬ ном количестве исходных данных возможно получение большого ко¬ личества цепочек вывода, результаты которых могут противоречить друг другу. Подобные проблемы должны быть корректно решены в конкретных интеллектуальных системах при организации управления стратегией логического вывода. Проблема доказательства в логике состоит в нахождении истин¬ ностного значения заключения В, если предполагается истинность ис¬ ходных посылок Аі, А2, ..., Ар, что записывается в виде: А-і, А2,... , Ап |— В. Знак |— в доказательствах и выводах следует читать «верно, что» или «можно вывести». Существуют два основных метода решения проблемы доказа¬ тельства в логике: семантический и синтаксический. Семантический метод состоит в следующем. Можно перечислить все атомы, входящие в формулы А1, А2,..., Ап, В, и составить таблицу истинности для всевозможных комбинаций значений этих атомов. За¬ тем следует осуществить просмотр полученной таблицы, чтобы прове¬ рить, во всех ли ее строках, где формулы А1, А2, ..., Ап имеют значения «истина», формула В также имеет значение «истина». Этот метод при¬ меним всегда, но может оказаться слишком трудоемким. При синтаксическом методе доказательства сначала записывают посылки и, применяя к ним правила вывода, стараются получить из них другие истинные формулы. Из этих формул и исходных посылок выводят последующие формулы и этот процесс продолжают до тех пор, пока не будет получено требуемое заключение (заметим, что это не всегда возможно). Этот процесс, по сути дела, и является логиче¬ ским выводом, он часто применяется при доказательстве теорем в ма¬ тематике. Иногда значение конкретной логической формулы не зависит от значений входящих в нее атомов. Правильно построенные логические формулы, значением которых будет «истина» при любых значениях входящих в них атомов, называются тавтологиями. Тавтологии, или теоремы логики, обладают следующим свойством: если вместо всех вхождений некоторого атома в тавтологию подставить произвольную логическую формулу, то снова будет получена истинная формула. Эта новая формула называется частным случаем исходной формулы, или результатом подстановки. Правило подстановки. Если С(А) — тавтология и вместо всех вхо¬ ждений формулы А в С подставить формулу В, то С(В) — тавтология. Для обозначения тавтологий используется символ |=, который читается «общезначимо» или «всегда истинно». 136
Примеры тавтологий: |= А л (А ® B) ® B; I = —і B л (А —— B) —— —і A; |= (А ® B) ® ((A ѵ C) ® (B ѵ C)). Докажем то, что первая приведенная тавтология (Modus Ponendo Ponens) всегда будет иметь значение «истина», для чего построим со¬ кращенную таблицу истинности (табл. 11.2). 11.2. Таблица истинности для доказательства тавтологии А А^В А л (А^В) А л (А^ВНВ Т В В Т Т В В Т F Т F Т F Т F Т В приведенной таблице Т — истина, F — ложь. Значение имплика¬ ции совпадает со значением второго аргумента в том случае, если пер¬ вый аргумент имеет значение Т, поэтому в первых двух строках второ¬ го столбца присутствует второй аргумент — В, значение которого мо¬ жет быть произвольным. Конъюнкция А л (А^-В) при истинном А также будет иметь результат, совпадающий со значением В. Послед¬ ний столбец таблицы комментариев не требует, так как приведенные в нем результаты очевидны. Попробуем установить тавтологичность этой же формулы син¬ таксическим методом. Для этого раскроем все скобки по распредели¬ тельному закону и убедимся, что результат упрощается до формул с очевидными значениями истинности: А л (А ® B) ® B = —.(А л (0А ѵ В)) ѵ В = (0 А ѵ (А л —іВ)) ѵ В = (—і А ѵ (А л —іВ)) ѵ В = (Т л (—і А ѵ —іВ)) ѵ В = —і А ѵ —іВ ѵ В = -,А ѵ (^В ѵВ)) = -,А ѵТ = Т. Помимо использования тавтологий и подстановок полезным средством для вывода является эквивалентность. Необходимо уметь правильно осуществлять замену взаимно эквивалентных формул. На¬ пример, можно подставить Qѵ P вместо Pѵ Q, так как Q ѵ P^-Pѵ Q. Эквивалентность A-^-B можно заменить двусторонней имплика¬ цией (А^В) л (В^А), так как эти выражения имеют одну и ту же таб¬ лицу истинности. Отсюда можно сделать вывод, что логическая экви¬ валентность — это импликация в обоих направлениях. Эквивалентность 137
можно привести в конъюнктивную нормальную форму, которая имеет вид (—Аѵ B) А (—і B ѵ A). Если в этом выражении раскрыть скобки, получим дизъюнктивную нормальную форму: (—А А —I B) V (A а B). Другими словами, если А и В эквивалентны, то они либо оба истинны, либо оба ложны. Примеры тавтологий с эквивалентностями: |= (А ® B) « (-.B ® -А); |= (А ѵ B) « (B ѵ А); |= А а (А ѵ В) « А; |= (Х ® (Y ® Z))« (Х аY ® Z) В процедурах логического вывода эквивалентности можно ис¬ пользовать двумя способами: 1) расписывать в виде двух отдельных импликаций; 2) использовать при заменах. При этом важно понимать отличие замены от подстановки, кото¬ рое состоит в следующем: если А-^В, то А можно заменить на В в лю¬ бом вхождении в формулу С, не меняя ее значения, причем замену не обязательно осуществлять во всех вхождениях. В противовес тавтологиям в логике существуют противоречия — формулы, значением которых всегда будет «ложь» независимо от зна¬ чений входящих в них атомов. Примером является выражение B а —iB=F при любом значении В. Множество ППФ для некоторой предметной области называется теорией заданной области знаний, а каждая отдельная ППФ именуется аксиомой. Цель построения теории заключается в описании нужных знаний наиболее экономичным способом. Если удается построить тео¬ рию, которая адекватно описывает заданную область знаний, то все истинные факты из области интерпретации будут следствиями аксиом этой теории, другими словами, их можно будет вывести из множества ППФ. Соответственно, ложные факты не будут следствиями теории, следовательно, их нельзя будет получить путем логического вывода на основании аксиом данной теории. Теорию называют полной, если все истинные факты являются следствиями этой теории. Это означает, что каждая истинная для данной теории ППФ может быть доказана на ос¬ новании ее аксиом. Про теорию говорят, что она является синтаксически последова¬ тельной (непротиворечивой), если из аксиом теории невозможно вы¬ вести противоречие. Теория, в которой можно доказать и Р, и 1 P, непоследовательна. В качестве примера рассмотрим построение теории и ее проверку на полноту и непротиворечивость для следующего фрагмента знаний: 138
«Если у Вас нет дома, Пожары ему не страшны, И жена не уйдет к другому, Если у Вас нет жены». Постараемся обойтись средствами логики высказываний и начнем с формирования области интерпретации. Для этого введем обозначе¬ ния: А - «У Вас есть дом» В - «Дом может сгореть» С - «У Вас есть жена» D — «Жена может уйти к другому». На базе этих четырех высказываний построим логические формулы: —і A—— —і В 0 C——0 D. Кроме логических формул, выражающих связь фактов, любая теория содержит истинные факты, на основе которых становится воз¬ можной конкретная интерпретация ППФ. Допустим, что в нашей тео¬ рии такими фактами являются А, В, 0 С, 0 D. Полученная теория является полной и последовательной, по¬ скольку каждый факт этой теории выводится из остальных аксиом, при этом не возникнет противоречия. Доказать это несложно как семанти¬ ческим, так и синтаксическим способом, однако для более сложных областей знаний необходимо использовать определенные стратегии доказательства, позволяющие преодолеть хаотичность процессов ло¬ гического вывода. Кратко рассмотрим три основные стратегии доказательства: 1) доказательство с введением допущения; 2) доказательство методом «от противного» (приведение к проти¬ воречию); 3) доказательство методом резолюции. Доказательство с введением допущения. Для доказательства им¬ пликации вида А—В допускается, что левая часть импликации истин¬ на, т.е. А принимается в качестве дополнительной посылки, после чего делают попытки доказать правую часть В. Такая стратегия доказатель¬ ства часто применяется в геометрии при доказательстве теорем. Теорема 1. А^В тогда и только тогда, когда |- А—В. Эта теорема утверждает, что доказуемость заключения В при до¬ пущении истинности А эквивалентна доказуемости импликации А—В без дополнительных допущений. Справедливость данной теоремы сле¬ дует из приведенной ранее таблицы истинности (см. табл. 11.2). Теорема 2. А1, А2, ..., An ^ В тогда и только тогда, когда |- (А1 л А2 л ... л Ап)——В. 139
Эта теорема выводится из предыдущей и того факта, что посылки Аі, А2, ..., An истинны только тогда, когда истинна их конъюнкция. Пример: требуется доказать A|, A2,..., An, P^-Q. В соответствии с теоремой 2 получим \ (А1 л А2 л ... л An)^Q. Применив эквивалент¬ ность вида (A^(P^Q))^(A л P^-Q), имеем \(А1 л А2 л ... л Ап)^ (Р^ Q), откуда \А1 л А2 л ... л Ап \ (P^Q) в силу теоремы 2 . Приведение к противоречию. Этот метод доказательства, предло¬ женный К. Робинсоном в 1960-х гг., вывел исследования в области искусственного интеллекта на новый уровень. Метод обусловил появ¬ ление обратных выводов и эффективных способов выявления проти¬ воречий. Суть его состоит в следующем. Например, требуется доказать А^В. Вместо этого можно попытаться доказать 0 А^-0 В, используя эквивалентность. Такое доказательство можно провести двояко, а именно: или допустить А и доказать затем В (это будет прямой вывод), или сделать допущение о том, что В — ложно, после чего сделать по¬ пытку опровергнуть посылку А (обратный вывод). Приведение к про¬ тиворечию — комбинация прямого и обратного вывода, т.е. для доказа¬ тельства А^-В можно одновременно допустить А и 0 В (посылка ис¬ тинна, а заключение ложно): 0 (А^В)= 0 (0 A ѵ B)=A л 0 B. В процессе доказательства можно двигаться по пути, который на¬ чинается от А или от 0 B. Если В выводимо из А, то, допустив истин¬ ность А, мы доказали бы В. Поэтому, сделав допущение 0 B, получим противоречие. Если вывод приведет к успеху (т.е. противоречие не будет получено), это будет свидетельствовать о несовместимости либо противоречивости исходных посылок. Мы также не получим противо¬ речия, если доказываемое предложение А^-В является ложным. Доказательство методом резолюции. Этот метод считается более трудным для понимания, однако имеет важное преимущество перед другими: он легко формализуем. В основе метода лежит тавтология, получившая название «правило резолюции»: |=(X ѵ A) л (Y ѵ 0 A)^(X ѵ Y). Теоремы 1 и 2 позволяют записать это правило в следующем виде: (X ѵ A),(Y ѵ 0 A) \ (X ѵ Y), что дает основания утверждать: из посылок (X ѵ A) и (Y ѵ 0 A) можно вывести (X ѵ Y). Докажем эту тавтологию с помощью тождеств булевой алгебры: 0 ((X ѵ A) л (Y ѵ 0 A)) ѵ X ѵ Y=( 0 X л 0 A) ѵ (0 Y л A)) ѵ X ѵ Y= =X ѵ (0 X л 0 A)) ѵ (Y ѵ (0 Y л A))=(X ѵ 0 A) ѵ (Y ѵ A)=X ѵ Y ѵ A 0 A =X ѵ Y ѵ T=T. 140
11.3. Доказательство правила резолюции X Y X ѵ Y A X ѵ A Y ѵ 0 A (X ѵ A) л (Y ѵ 0 A) R T T T T T T T T T F T T T F F T F T T T T T T T F F F T T F F T Для наглядности построим сокращенную таблицу истинности (табл. 11.3), из которой можно убедиться в справедливости правила резолюции, результат которого обозначен в таблице через R. Легко убедиться, что все значения в столбце R будут истинными и при значении A=F. В процессе логического вывода с применением правила резолю¬ ции выполняются следующие шаги. 1. Устраняются операции эквивалентности и импликации: А~В=(А—В) л (B—A) А—В= 0 A ѵ B. 2. Операция отрицания продвигается внутрь формул с помощью законов де Моргана: 0 (A л B)= 0 A ѵ 0 B 0 (A ѵ B)= 0 A л 0 B. 3. Логические формулы приводятся к дизъюнктивной форме: A ѵ (B лC)=(A ѵ B) л (A ѵ C). Правило резолюции содержит в левой части конъюнкцию дизъ¬ юнктов, поэтому приведение посылок, используемых для доказатель¬ ства, к виду, представляющему собой конъюнкции дизъюнктов, явля¬ ется необходимым этапом практически любого алгоритма, реализую¬ щего логический вывод на базе метода резолюции. Метод резолюции легко программируется, это одно из важнейших его достоинств. Предположим, нужно доказать, что если истинны соотношения P—R, P ѵ Q и Q—S, то можно вывести формулу R ѵ S. Для этого нуж¬ но выполнить следующие шаги. 1. Приведение посылок к дизъюнктивной форме: 0 P—R, Pѵ Q, 0 Q——S. 2. Построение отрицания выводимого заключения 0 (R ѵ S) —1 R ѵ —I S. Полученная конъюнкция справедлива, когда 0 R и 0 S одновременно истинны. 141
3. Применение правила резолюции: (0 P ѵ R) л —і R ^ 0 P; (P ѵ Q) л — P ^ Q; (— Q ѵ S) л — S ^ — Q; Qл — Q^ F (противоречие, или «пустой дизъюнкт»). Итак, предположив ложность выводимого заключения, получаем противоречие, следовательно, выводимое заключение является истин¬ ным, т.е. R ѵ S выводимо из исходных посылок. Именно правило резолюции послужило базой для создания языка логического программирования PROLOG. По сути дела, интерпрета¬ тор языка PROLOG самостоятельно реализует вывод, подобный выше¬ описанному, формируя ответ на вопрос пользователя, обращенный к базе знаний. В логике предикатов для применения правила резолюции пред¬ стоит осуществить более сложную унификацию логических формул в целях их приведения к системе дизъюнктов. Это связано с наличием дополнительных элементов синтаксиса, в основном кванторов, пере¬ менных, предикатов и функций. Алгоритм унификации предикатных логических формул включа¬ ет следующие шаги. 1. Исключение операций эквивалентности. 2. Исключение операций импликации. 3. Внесение операций отрицания внутрь формул. 4. Исключение кванторов существования. Это может произойти на шаге 3 вследствие применения законов де Моргана, а именно: в ре¬ зультате отрицания 3 меняется на ѵ, но при этом может произойти и обратная замена. Тогда для исключения 3 поступают следующим обра¬ зом: все вхождения некоторой переменной, связанной квантором су¬ ществования, заменяются в формуле на новую константу, например а. Эта константа представляет собой некоторое (неизвестное) значение переменной X, для которого утверждение, записанное данной форму¬ лой, истинно. При этом важно то, что на все места, где присутствует X, будет подставлено одно и то же значение а, пусть оно и является неиз¬ вестным в данный момент. Такие константы называются сколемов- скими, а операция — сколемизацией (по имени известного математика Сколема). 5. Кванторы общности выносятся на первые места в формулах. Это также не всегда является простой операцией, иногда при этом приходится делать переименование переменных. 6. Раскрытие конъюнкций, попавших внутрь дизъюнкций. 142
После выполнения всех шагов описанного алгоритма унификации можно применять правило резолюции. Обычно при этом осуществля¬ ется отрицание выводимого заключения, и алгоритм вывода можно кратко описать следующим образом: Если задано несколько аксиом (теория Th) и предстоит сделать заключение о том, выводима ли неко¬ торая формула Р из аксиом теории Th, строится отрицание 0 Р и до¬ бавляется к Th, при этом получают новую теорию ТМ. После приведе¬ ния —і Р и аксиом теории к системе дизъюнктов можно построить конъюнкцию —і Р и аксиом теории Th. При этом существует возмож¬ ность выводить из исходных дизъюнктов дизъюнкты-следствия. Если Р выводимо из аксиом теории Th, то в процессе вывода можно полу¬ чить некоторый дизъюнкт Q, состоящий из одной литеры, и противо¬ положный ему дизъюнкт — Q. Это противоречие свидетельствует о том, что Р выводимо из аксиом Th. Вообще говоря, существует множе¬ ство стратегий доказательства, нами рассмотрена лишь одна из воз¬ можных — нисходящая. Пример: представим средствами логики предикатов следующий текст: «Если студент умеет хорошо программировать, то он может стать специалистом в области прикладной информатики». «Если студент хорошо сдал экзамен по информационным систе¬ мам, значит, он умеет хорошо программировать». Представим этот текст средствами логики предикатов первого порядка. Введем обозначения: X — переменная для обозначения сту¬ дента; хорошо — константа, соответствующая уровню квалификации; Р(Х) — предикат, выражающий возможность субъекта X стать специа¬ листом по прикладной информатике; Q(X, хорошо) — предикат, обо¬ значающий умение субъекта X программировать с оценкой хорошо; R(X, хорошо) — предикат, задающий связь студента X с экзаменацион¬ ной оценкой по информационным системам. Теперь построим множество ППФ: (ѴХ) Q (X, хорошо) ® Р(Х). (ѴХ) R(X, хорошо) ® Q(X, хорошо). Дополним полученную теорию конкретным фактом R(Ивaнов, хорошо). Выполним логический вывод с применением правила резолю¬ ции, чтобы установить, является ли формула Р(Иванов) следствием вышеприведенной теории. Другими словами, можно ли вывести из этой теории факт, что студент Иванов станет специалистом в при¬ кладной информатике, если он хорошо сдал экзамен по информацион¬ ным системам. 143
Доказательство 1. Выполним преобразование исходных формул теории в целях приведения к дизъюнктивной форме: (3 X) 0 Q(X, хорошо) ѵ Р(Х); (3 X) 0 R(X, хорошо) v Q(X, хоро¬ шо); Р(Иванов, хорошо). 2. Добавим к имеющимся аксиомам отрицание выводимого за¬ ключения —і Р(Иванов). 3. Построим конъюнкцию дизъюнктов ($ X) Q(X, хорошо) ѵ Р(Х) л Р(Иванов) —і Q(Иванов, хоро¬ шо), заменяя переменную Х на константу Иванов. Результат применения правила резолюции называют резольвен¬ той. В данном случае резольвентой является — Q(Иванов). 4. Построим конъюнкцию дизъюнктов с использованием резоль¬ венты, полученной на шаге 3: ($ X) — R(X, хорошо) v Q(X, хорошо) л Р (Иванов) —і Q(Иванов, хорошо). 5. Запишем конъюнкцию полученной резольвенты с последним дизъюнктом теории: — R(Иванов, хорошо) л R(Иванов, хорошо)^-Р(противоречие). Следовательно, факт Р(Иванов) выводим из аксиом данной теории. Для определения порядка применения аксиом в процессе вывода существуют следующие эвристические правила: 1. На первом шаге вывода используется отрицание выводимого заключения. 2. В каждом последующем шаге вывода участвует резольвента, полученная на предыдущем шаге. 11.3.2. Прямой и обратный вывод в экспертных системах продукционного типа Любая экспертная система продукционного типа должна содер¬ жать три основные компоненты: базу правил, рабочую память и меха¬ низм вывода. База правил (БП) - формализованные с помощью правил продук¬ ций знания о конкретной предметной области. Рабочая память (РП) - область памяти, в которой хранится мно¬ жество фактов, описывающих текущую ситуацию, и все пары атрибут- значение, которые были установлены к определенному моменту. Со¬ держимое РП в процессе решения задачи изменяется обычно, увеличи¬ ваясь в объеме по мере применения правил. Другими словами, РП - это динамическая часть базы знаний, содержимое которой зависит от окружения решаемой задачи. В простейших ЭС хранимые в РП факты 144
не изменяются в процессе решения задачи, однако существуют систе¬ мы, в которых допускается изменение и удаление фактов из РП. Это системы с немонотонным выводом, работающие в условиях неполно¬ ты информации. Механизм вывода выполняет две основные функции: 1) просмотр существующих в рабочей памяти фактов и правил из БП, а также добавление в РП новых фактов; 2) определение порядка просмотра и применения правил. Поря¬ док может быть прямым или обратным. Прямой порядок — от фактов к заключениям. В экспертных сис¬ темах с прямыми выводами по известным фактам отыскивается за¬ ключение, которое из этих фактов следует. Если такое заключение удается найти, оно заносится в рабочую память. Прямые выводы часто применяются в системах диагностики, их называют выводами, управ¬ ляемыми данными. Обратный порядок вывода — от заключений к фактам. В системах с обратным выводом вначале выдвигается некоторая гипотеза о конеч¬ ном суждении, а затем механизм вывода пытается найти в рабочей памяти факты, которые могли бы подтвердить или опровергнуть вы¬ двинутую гипотезу. Процесс отыскания необходимых фактов может включать достаточно большое число шагов, при этом возможно выдви¬ жение новых гипотез (целей). Обратные выводы управляются целями. Для выполнения указанных функций механизм вывода включает компоненту вывода и управляющую компоненту. Компонента вывода. Ее действие основано на применении прави¬ ла логического вывода Modus Ponendo Ponens. Суть применения этого правила в продукционных системах состоит в следующем. Если в РП присутствует истинный факт А и в БП существует правило вида «ЕС¬ ЛИ А, ТО В», то факт В признается истинным и заносится в РП. Такой вывод легко реализуется на ЭВМ, однако при этом часто возникают проблемы, связанные с распознаванием значений слов, а также с тем, что факты могут иметь внутреннюю структуру и между элементами этой структуры возможны различного рода связи. Например, пусть имеется факт А - «Автомобиль Иванова - белый» и правило «ЕСЛИ Автомобиль — белый, ТО Автомобиль легко заметить ночью». Человек легко выведет заключение «Автомобиль Иванова легко заметить но¬ чью», но это не под силу ЭС чисто продукционного типа. Она не смо¬ жет сформировать такое заключение, потому что А не совпадает точно с антецедентом правила. Подобная проблема уже затрагивалась, когда рассматривались различия логики высказываний и логики предикатов. Кроме того, невысокая интеллектуальная мощность продукционных систем обусловлена тем, что человек выводит заключения, имея в сво¬ ем распоряжении все свои знания, т.е. БЗ огромного объема, в то время 145
как ЭС способны вывести сравнительно небольшое количество заклю¬ чений, используя заданное множество правил. Из сказанного можно сделать вывод о том, что компонента вывода в ЭС должна быть орга¬ низована так, чтобы быть способной функционировать в условиях не¬ достатка информации. Управляющая компонента. Она определяет порядок применения правил, а также устанавливает, имеются ли еще факты, которые могут быть изменены в случае продолжения работы (при немонотонном вы¬ воде). Механизм вывода работает циклически, при этом в одном цикле может сработать только одно правило. Схема цикла приведена на рис. 11.3. В цикле выполняются следующие основные операции: — сопоставление - образец (антецедент) правила сравнивается с имеющимися в РП фактами; — разрешение конфликтного набора — выбор одного из несколь¬ ких правил в том случае, если их можно применить одновременно; — срабатывание правила — в случае совпадения образца некото¬ рого правила из базы правил с фактами, имеющимися в рабочей памя¬ ти, происходит срабатывание правила, при этом оно отмечается в БП; — действие — изменение содержимого РП путем добавления туда заключения сработавшего правила. Если в заключении содержится директива на выполнение некоторой процедуры, последняя выпол¬ няется. Поскольку механизм вывода работает циклически, следует знать о способах завершения цикла. Традиционными способами являются либо исчерпание всех правил из БП, либо выполнение некоторого усло¬ вия, которому удовлетворяет содержимое рабочей памяти (например, появление в ней какого-то образца), либо комбинация этих способов. 146 Рис. 11.3. Схема цикла работы механизма вывода
Особенностью ЭС является то, что они не располагают процеду¬ рами, которые могли бы построить в пространстве состояний сразу весь путь решения задачи. Траектория поиска решения полностью оп¬ ределяется данными, получаемыми от пользователя в процессе логи¬ ческого вывода. Рассмотрим простейшие примеры прямого и обратного вывода в системах продукционного типа. Пример прямого вывода. Пусть в БП имеются следующие правила: Правило 1. «ЕСЛИ Двигатель не заводится И Фары не горят, ТО Сел аккумулятор». Правило 2. «ЕСЛИ Указатель бензина находится на нуле, ТО Двигатель не заводится». Предположим, что в рабочую память от пользователя ЭС посту¬ пили факты: Фары не горят и Указатель бензина находится на нуле. Рассмотрим основные шаги алгоритма прямого вывода. 1. Сопоставление фактов из РП с образцами правил из БП. Прави¬ ло 1 не может сработать, а Правило 2 срабатывает, так как образец, совпадающий с его антецедентом, присутствует в РП. 2. Действие сработавшего Правила 2. В рабочую память заносит¬ ся заключение этого правила — образец Двигатель не заводится. 3. Второй цикл сопоставления фактов в РП с образцами правил. Теперь срабатывает Правило 1, так как конъюнкция условий в его ан¬ тецеденте становится истинной. 4. Действие Правила 1, которое заключается в выдаче пользовате¬ лю окончательного диагноза — Сел аккумулятор. 5. Конец работы (БП исчерпана). Пример прямого вывода с конфликтным набором. Теперь допус¬ тим, что в БП кроме Правила 1 и Правила 2 присутствует Правило 3: «ЕСЛИ Указатель бензина находится на нуле, ТО Нет бензина». В рабочей памяти находятся те же факты, что в предыдущем примере. В результате сопоставления в первом же цикле возможно приме¬ нение двух правил — Правила 2 и Правила 3, т.е. возникает конфликт¬ ный набор и встает задача выбора: какое из этих правил применить первым. Если выберем Правило 2, то в РП добавится факт Двигатель не заводится и на следующем шаге опять возникнет конфликтный на¬ бор, так как можно будет применить Правило 1 и Правило 3. Если бу¬ дет выбрано Правило 1, то к заключению Сел аккумулятор придем за два шага. При любом другом выборе порядка применения правил к этому же заключению приходим за три шага. Если завершение цикла работы ЭС наступает после просмотра всех правил, то число шагов будет равно трем, причем порядок применения правил не будет иметь какого-либо значения. 147
Пример обратного вывода. Предположим, что в БП имеется два правила (Правило 1 и Правило 2), а в РП — те же факты, что в преды¬ дущих примерах с прямым выводом. Алгоритм обратного вывода содержит следующие шаги. 1. Выдвигается гипотеза окончательного диагноза — Сел аккуму¬ лятор. 2. Отыскивается правило, заключение которого соответствует вы¬ двинутой гипотезе, в нашем примере это Правило 1. 3. Исследуется возможность применения Правила 1, т.е. решается вопрос о том, может ли оно сработать. Для этого в рабочей памяти должны присутствовать факты, совпадающие с образцом этого прави¬ ла. В рассматриваемом примере Правило 1 не может сработать из-за отсутствия в РП образца Двигатель не заводится. Этот факт становится новой целью на следующем шаге вывода. 4. Поиск правила, заключение которого соответствует новой це¬ ли. Такое правило есть — Правило 2. 5. Исследуется возможность применения Правила 2 (сопоставле¬ ние). Оно срабатывает, так как в РП присутствует факт, совпадающий с его образцом. 6. Действие Правила 2, состоящее в занесении заключения Двига¬ тель не заводится в РП. 7. Условная часть Правила 1 теперь подтверждена фактами, сле¬ довательно, оно срабатывает, и выдвинутая начальная гипотеза под¬ тверждается. 8. Конец работы. При сравнении этого примера с примером прямого вывода нельзя заметить преимуществ обратных выводов перед прямыми. Пример обратного вывода с конфликтным набором. Предполо¬ жим, что в БП записаны Правило 1, Правило 2, Правило 3 и Правило 4: «ЕСЛИ Засорился бензонасос, ТО Двигатель не заводится». В рабочей памяти присутствуют те же самые факты: Фары не го¬ рят и Указатель бензина находится на нуле. В данном случае алгоритм обратного вывода с конфликтным на¬ бором включает следующие шаги. 1. Выдвигается гипотеза Сел аккумулятор. 2. Поиск правила, заключение которого совпадает с поставленной целью. Это Правило 1. 3. Исследуется возможность применения Правила 1. Оно не мо¬ жет сработать, выдвигается новая подцель Двигатель не заводится, соответствующая недостающему образцу. 4. Поиск правил, заключения которых совпадают с новой подце¬ лью. Таких правил два — Правило 2 и Правило 4. Если выберем Прави¬ ло 2, то дальнейшие шаги совпадают с примером бесконфликтного 148
набора. Если выберем Правило 4, то оно не сработает, так как в РП нет образца Засорился бензонасос. После этого будет применено Правило 2, что приведет к успеху, но путь окажется длиннее на один шаг. Следует обратить внимание на то, что Правило 3, не связанное с поставленной целью, вообще не затрагивалось в процессе вывода. Этот факт свидетельствует о более высокой эффективности обратных выводов по сравнению с прямыми, так как при обратных выводах су¬ ществует тенденция исключения из рассмотрения правил, не имеющих отношения к поставленной цели. В экспертных системах процедуры управления логическим выво¬ дом закрыты не только для пользователя, но и для инженера по знани¬ ям, однако о них необходимо иметь представление, чтобы корректно интерпретировать результаты. Для этого нужно знать, в каком виде хранятся знания и как выбираются начальная точка поиска, правила разрешения конфликтов, структуру, с помощью которой хранятся зна¬ ния. Например, в известном семействе ЭС OPS применяется стратегия прямых выводов, эффективность которых существенно повышается благодаря использованию алгоритма согласования RETE при генера¬ ции конфликтного набора. Суть этого алгоритма сводится к следую¬ щему: каждый раз при добавлении в РП нового образца проверяется правило, в котором он используется, и если образец удовлетворяет антецеденту некоторого правила, то он запоминается именно в этом качестве. В конфликтный набор правило включается только в том слу¬ чае, если добавление образца удовлетворяет всем условиям. Для раз¬ решения конфликтов в системах семейства OPS, а также в других сис¬ темах с прямыми выводами широкое распространение получил метод разрешения конфликтов LEX, в котором предпочтение отдается пра¬ вилам со ссылкой на самый последний сгенерированный образец. Если таких правил несколько, то среди них выбирается правило с наиболь¬ шим числом условий в антецеденте. В больших ЭС продукционного типа все множество знаний обычно хранится в виде древовидной структуры, называемой И-ИЛИ- графом. Фрагменты такой структуры приведены на рис. 11.4 и 11.5. Классическая форма продукций предполагает наличие в антецеденте только связки И. На практике классическая форма может быть расши¬ рена, например, введением связки ИЛИ в условную часть либо вклю¬ чением в антецедент вычислений на основании содержимого рабочей памяти и т.п. Если существует множество правил, из которых выво¬ дится одно и то же заключение, то, выполнив операцию дизъюнкции над всеми заключениями, полученными с помощью этих правил, мож¬ но показать отношение между результатом отдельного вывода и дан¬ ными, на основании которых делается вывод. 149
Правило і/ ИЛИ N. Правило 2 Факты Факты Рис. 11.4. Простейший фрагмент структуры И-ИЛИ-графа Заключения Основные системные данные Рис. 11.5. Фрагмент структуры И-ИЛИ-графа продукционной экспертной системы С помощью И-ИЛИ-графа обратный вывод в ЭС продукционного типа можно представить как проблему поиска определенного пути на графе. Выбор одной из связок ИЛИ соответствует разрешению кон¬ фликтного набора, при этом небезразличен порядок оценки условий в антецеденте, соединенных связкой И. Задачи и стратегии поиска на 150
И-ИЛИ-графах широко освещены в литературе [4, 5] и не будут рас¬ сматриваться здесь подробно. Однако следует остановиться на спосо¬ бах повышения эффективности поиска, так как в системах, имеющих практическую ценность, насчитываются сотни правил и следует знать, с помощью каких стратегий управления выводом можно минимизиро¬ вать время решения задач. Стратегия поиска в глубину. При выборе очередной подцели в процессе обратного вывода предпочтение всегда, когда возможно, от¬ дается той, которая соответствует следующему, более детальному уровню описания задачи. Например, система диагностики, сделав на основании известных симптомов предположение о причинах неис¬ правности, будет запрашивать уточняющие признаки и симптомы до тех пор, пока полностью не подтвердит (опровергнет) выдвинутую гипотезу. Пример организации поиска в глубину показан на рис. 11.6, где цифрами обозначены номера шагов поиска. Стратегия поиска в ширину. При поиске в ширину сначала анали¬ зируются все симптомы (факты), находящиеся на одном уровне про¬ странства состояний задачи, даже если они относятся к разным целям (подцелям), и только после этого происходит переход к поиску сим¬ птомов следующего уровня. На рисунке 11.7 показаны шаги поиска в ширину, обозначенные номерами, указанными в вершинах. На рисунке представлена стратегия обратного вывода на том же И-ИЛИ-графе, который приведен и на рис. 11.6. Алгоритм поиска в глубину более эффективен в отношении времени поиска и обработки знаний, однако он характеризуется более высоким риском потери перспективных ре¬ шений по сравнению с поиском в ширину. Начало поиска Заключения Факты Рис. 11.6. Поиск в глубину при обратном выводе 151
Разбиение на подзадачи. Декомпозиция дает положительный эф¬ фект только для хорошо структурированных областей знаний, так как применение этой стратегии основано на правильном понимании сущ¬ ности задачи и возможности ее представления в виде системы иерар¬ хически связанных целей-подцелей, причем разбиение на подзадачи необходимо выполнить оптимальным способом. a - p-алгоритм. С помощью этого алгоритма исходная задача сво¬ дится к уменьшению пространства состояний путем удаления в нем ветвей, неперспективных для поиска успешного решения, т.е. про¬ сматриваются только те вершины, в которые можно попасть в ре¬ зультате следующего шага, после чего неперспективные направления исключаются. Например, в БЗ продукционной системы, заполненной знаниями о животном мире, не следует искать животных, не относя¬ щихся к млекопитающим, в направлении, берущем начало от верши¬ ны, определяющей млекопитающих. Данная стратегия является оп¬ ределенным компромиссом между поиском в ширину и поиском в глубину. Для ее успешной реализации следует располагать дополнитель¬ ными эвристическими знаниями, которые используются при выборе перспективных направлений. Впечатляющий пример применения ва¬ рианта этой стратегии продемонстрирован разработчиками системы Deep Blue, сумевшей обыграть лучшего шахматиста планеты. Рис. 11.7. Поиск в ширину при обратном выводе 152
11.3.3. Обработка знаний в интеллектуальных системах с фреймовым представлением В интеллектуальных системах с фреймовым представлением зна¬ ний используются три способа управления логическим выводом: де¬ моны, присоединенные процедуры и механизм наследования. Послед¬ ний можно назвать единственным основным механизмом вывода, ко¬ торым оснащены фреймовые (объектно-ориентированные) системы. Управленческие функции механизма наследования заключаются в автоматическом поиске и определении значений слотов фреймов ни¬ жележащих уровней по значениям слотов фреймов верхних уровней, а также в запуске присоединенных процедур и демонов. Присоединенные процедуры и демоны позволяют реализовать любой механизм вывода в системах с фреймовым представлением зна¬ ний. Однако эта реализация имеет конкретный характер и требует зна¬ чительных затрат труда проектировщиков и программистов. Рассмот¬ рим простой пример. В таблице 11.4 показана структура фрейма «На¬ учная конференция». Демон ЗАКАЗ — это процедура, которая автоматически запускает¬ ся при попытке подстановки значения в слот с именем Место проведе¬ ния. Ее главное назначение состоит в проверке возможности заказа аудитории на нужное время. Такая процедура на языке LISP может выглядеть примерно так: LISPproc ЗАКАЗ(Название конференции, Место проведения, Дата) if возможно (Место проведения, Дата) then заказать (Название конференции, Место проведения, Дата) else сообщение («Заказ невозможен», Название конференции) end. 11.4. Фрейм «Научная конференция» Имя слота Значение слота If-needed If-added If-removed Дата 1.02. 10: 10 Место проведения Аудитория 209 ЗАКАЗ Тема доклада Прогнозирование тенденций в эконо¬ мике Докладчик Иванов И.И. КТО? 153
Фрейм АА Фрейн ВВ Имя спота Тип Значение MSG Имя спота Тип Значение ISA Frame A ISA Frame В Объект 1 Integer 125 X integer 10, 20, 30 Объект 2 Real 8.5 Y Real 8.0, 12.6 Расчет LISP CALC Среднее LISP MEAN Ответ Рис 11.8. Обмен информацией между фреймами Демон КТО? автоматически запускается при обращении к слоту Докладчик, если значение этого слота не определено. Основное со¬ держание данной процедуры - генерация запроса к пользователю типа «Кто выступает?», получение ответа и его запись в качестве значения слота. Реализация вывода с помощью присоединенных процедур требу¬ ет наличия механизма обмена информацией между фреймами. В каче¬ стве такого механизма обычно используется механизм сообщений. На рисунке 11.8 схематично показан обмен информацией между фреймами АА и ВВ во время исполнения присоединенной процедуры CALC, при этом вызывается процедура MEAN, расположенная в фрейме ВВ. Допустим, что процедура CALC(result) выполняет расчет, в про¬ цессе которого происходит обращение к фрейму ВВ с использованием команды MSG, реализующей передачу сообщения в другой фрейм. LISPproc CALC(resuIt) MSG(CpedHee, ВВ, X) Команда MSG имеет три параметра: 1 — имя слота, к которому происходит обращение (в данном случае значением слота Среднее яв- 154
ляется присоединенная процедура MEAN); 2 — имя фрейма, в котором содержится необходимая информация (ВВ); 3 — имя слота-параметра, в котором находятся данные для расчета (X). Таким образом, запуск процедуры CALC вызовет исполнение следующих действий: передача сообщения во фрейм ВВ на запуск процедуры MEAN, которая найдет среднее арифметическое чисел, записанных в слоте X; вычисленное значение будет записано в переменную result и передано в CALC как ответ на сообщение MSG. Итак, в интеллектуальных системах с фреймовым представлени¬ ем знаний невозможно четко отделить процедурные знания от декла¬ ративных, поскольку присоединенные процедуры и демоны одно¬ временно являются и знаниями, и средствами управления логическим выводом. На рисунке 11.9 схематично показаны средства управления выводом во фреймовой системе. Возможность организации выводов любого типа является существенным преимуществом фреймовых систем по сравнению с продукционными и логическими. Не менее важным достоинством является большее сходство этой модели пред¬ ставления знаний со структурой знаний в памяти человека. Вместе с тем практическая реализация фреймовых систем сопряжена со значи¬ тельной трудоемкостью как на этапе проектирования, так и при реа¬ лизации. Поэтому стоимость промышленных экспертных систем фреймового типа на порядок превосходит стоимость продукционных систем. Value Рис. 11.9. Средства управления выводом в интеллектуальной системе фреймового типа 155
11.4. ПРИМЕРЫ РАЗРАБОТКИ ИНТЕЛЛЕКТУАЛЬНЫХ СИСТЕМ С ПРИМЕНЕНИЕМ ТИПИЧНЫХ МОДЕЛЕЙ ПРЕДСТАВЛЕНИЯ ЗНАНИЙ Рассмотрим примеры применения традиционных способов пред¬ ставления и обработки знаний в небольших интеллектуальных систе¬ мах, которые могут разрабатываться студентами во время курсового проектирования по предмету «Интеллектуальные информационные системы». Опускаем все, что связано с освоением и применением го¬ товых промышленных оболочек ЭС, а также задачи, которые могут быть решены с использованием языка PROLOG. Такие приложения требуют знакомства со специальной информацией о соответствующих программных продуктах, которая широко представлена в литературе по программированию и использованию готовых программных средств. Студенты старших курсов высших учебных заведений, вла¬ деющие программированием, могут самостоятельно разрабатывать оболочки небольших ЭС логического и продукционного типа, а также писать компьютерные игры. Разработка игр пользуется большой попу¬ лярностью, так как позволяет увидеть и оценить результаты своего труда, причем подобные задачи не требуют обширных знаний пред¬ метной области, без которых невозможно проектировать ЭС. Набор знаний, используемых в играх, четко ограничен и обычно хорошо из¬ вестен разработчику компьютерной реализации. Опыт показывает, что помимо написания игр для одного участни¬ ка («пятнашки», головоломки, прохождение лабиринтов и т.п.) вполне посильной и интересной задачей является написание игр со многими участниками, в частности карточных и позиционных игр, в которых кроме компьютерного игрока участвует человек. 11.4.1. Оболочка экспертной системы продукционного типа Разрабатывать оболочки небольших ЭС можно практически на любом языке процедурного или объектно-ориентированного програм¬ мирования, а также на языках логического типа, наиболее известным представителем которых является PROLOG. В последнем случае про¬ граммист освобождается от реализации механизма логического выво¬ да, который является частью PROLOG-систем. В его задачи входят поиск, структурирование и представление знаний средствами логики предикатов, создание БЗ и написание программы, управляющей про¬ цессом обработки знаний. При разработке оболочек ЭС продукционного типа на процедур¬ ных языках программирования кроме создания БЗ необходимо реали¬ зовать механизм прямого или обратного логического вывода на основе 156
правила Modus Ponendo Ponens и организацию интерфейса с пользова¬ телем. В базе знаний должны храниться список фактов в виде тексто¬ вых знаний и набор правил, показывающих связи между фактами в рассматриваемой предметной области. В разработанной системе реализована стратегия прямого логиче¬ ского вывода, в процессе которого осуществляется горизонтальный поиск фактов на заданной в виде И-ИЛИ-графа структуре знаний предметной области. При этом предусмотрено создание специального файла, в котором хранятся вопросы, задаваемые пользователю в про¬ цессе решения задач диагностики. Система диагностики реализована на языке T urboPascal 7.0 и работа¬ ет под управлением MS DOS. В данной версии системы не предусмотрено формирование файла вопросов, пользователь просто указывает на нали¬ чие или отсутствие предъявляемого симптома. Система предоставляет пользователю объяснение полученных результатов, показывая наборы фактов, на основании которых получены те или иные заключения. Программная реализация процедур поиска и обработки знаний не вызывает принципиальных трудностей. В простейшем случае БЗ пред¬ ставляет собой два файла, в одном из которых хранятся текстовые описания фактов, используемых в антецедентах и консеквентах пра¬ вил, а в другом — правила, устанавливающие взаимосвязи фактов. Пользователи подобных систем должны подготовить конкретную ин¬ формацию и создать необходимые файлы БЗ. При этом порядок записи правил может оказывать влияние на порядок вопросов, которые ЭС будет задавать пользователю. Поэтому целесообразно построить И-ИЛИ-граф, отражающий взаимосвязи фактов, и с его помощью оп¬ ределить первичные факты (симптомы), которые встречаются только в антецедентах правил, вторичные, присутствующие в условных частях одних правил и в заключениях других, и диагнозы — факты, являю¬ щиеся окончательными заключениями. Совершая обход И-ИЛИ-графа в направлении от первичных фактов к заключениям, ЭС задает пользо¬ вателю вопросы, на основании полученных ответов формирует содер¬ жимое рабочей памяти и делает соответствующие выводы. Для разрешения конфликтов в разработанных системах использу¬ ется алгоритм LEX, а также другие эвристические способы. Примене¬ ние программ подобного типа приносит пользу в процессах извлече¬ ния знаний и в экспериментальных исследованиях возможностей их представления средствами продукционной модели. При выборе адек¬ ватной модели представления знаний в создаваемых ИИС часто возни¬ кает необходимость рассмотрения альтернативных вариантов пред¬ ставления, при этом использование простых в обращении инструмен¬ тальных программных средств позволяет с минимальными затратами осуществить экспериментальную проверку продукционной модели. 157
11.4.2. Программирование карточной игры со многими участниками Карточные игры отличаются большим разнообразием правил и обычно включают более двух участников. Это делает их сложнее мно¬ гих позиционных игр и требует построения правил принятия решений, которые могут изменяться в течение игры. То обстоятельство, что пра¬ вила принятия решений в играх являются эмпирическими, могут отли¬ чаться у разных игроков и меняться по ходу игры, делает увлекатель¬ ным процесс разработки подобных программ. При разработке компью¬ терных игр практически не удается обойтись без отладочных экспери¬ ментов. Несмотря на то что разработчики хорошо знакомы с играми, которые они программируют, первоначально сформулированные ими правила принятия решений или оценочные функции, как правило, не позволяют компьютерному игроку играть на уровне человека. Следует отметить, что большинство разработчиков игр считает делом чести довести квалификацию своего компьютерного игрока хотя бы до соб¬ ственного уровня. Для этого в процессе тестирования и доводки экспе¬ риментально подбираются структура и параметры оценочных функ¬ ций, вырабатываются оригинальные стратегии и формулируются раз¬ личные наборы правил. В качестве примера разработки рассмотрим старинную русскую карточную игру в «Подкидного дурачка». Правила этой игры хорошо известны, поэтому не будем их описывать. Так как количество воз¬ можных в игре ситуаций достаточно велико, а возможные действия противников плохо предсказуемы, попытки определить путь достиже¬ ния цели компьютерного игрока в пространстве состояний задачи не имеют смысла. В данном случае желательно выработать принципы оценивания текущей ситуации, позволяющие судить о степени при¬ ближения к конечной цели, которая заключается в том, чтобы первому среди всех игроков остаться без карт на руках. Стремление к миними¬ зации количества карт в процессе игры далеко не всегда обеспечивает конечный успех игрока, поэтому представляется целесообразным вве¬ сти понятие относительного потенциала игрока, который следует под¬ держивать максимально высоким в течение игры. Потенциал можно вычислить по следующей формуле: n Mb = £(Ran k + 9Ki)/n, i=i где Ran k — ранг i-й карты, принимающий значения от 1 до 9 в соот¬ ветствии с достоинством карты; K ~ признак козырной карты, К = I, если i-я карта принадлежит к козырной масти, и K = 0 — в противном случае; n — количество карт на руках. 158
В течение игры ряд событий происходит по нормативным прави¬ лам, т.е. без учета мнения игроков. К таким событиям относятся пер¬ воначальная раздача карт игрокам, взятие новых карт из колоды, а также наступление событий Ходить и Биться. Событие Подкидывать наступает по воле игрока. Активные действия игрока могут быть реа¬ лизованы различными способами. Для выбора способа действия из всех возможных альтернатив необходимо сформулировать правила принятия решений, в которых можно использовать значение относи¬ тельного потенциала Мь. В качестве возможных альтернативных вариантов основных со¬ бытий были приняты следующие: Ходить={ ходить младшей; ходить парными; ходить козырем; ходить неудобной для противника мастью}; Подкидывать={подкидывать; не подкидывать}; Битъся={биться млад¬ шей по масти; биться младшим козырем; биться козырем того же ран¬ га; принять}. Если флаг текущего события сигнализирует о необходимости со¬ вершения хода, то начинается анализ возможных вариантов решений в соответствии со сформированным набором правил. Следует подчерк¬ нуть, что вычисление и сравнение значений относительного потенциа¬ ла выполняются для альтернативных вариантов множества карт, кото¬ рые останутся на руках у игрока после совершения анализируемых действий. Лучшей альтернативой является та, которая обеспечивает максимальное значение относительного потенциала остающихся на руках карт. Таким образом, правило выбора решения A при наступле¬ нии события Ходить можно записать в виде A* = max Mb (A). A е Ходить Решение о подкидывании карт принимается на основе сравнения возможных альтернативных действий с текущим значением потенциа¬ ла игрока. Правило выбора действия в этом случае может учитывать близость финала игры и склонность игрока к риску. При наступлении события Биться альтернативных вариантов бывает меньше, чем при заходе. Решение о принятии карт может оказаться неизбежным, если игрок не имеет на руках карт, которыми можно отбиться. В этом слу¬ чае не требуется вычисление значения потенциала. Кроме того, такое решение может быть принято сознательно в том случае, если игрок способен побить карты противника, но значение потенциала резко снижается и состояние игры не предвещает скорого финала. Формула вычисления относительного потенциала свидетельству¬ ет о невысокой вероятности выбора альтернатив ходить козырем или биться козырем, так как это часто приводит к существенному умень¬ шению потенциала. Поэтому реализация описанной тактики позволяла 159
программе достаточно хорошо играть на начальной стадии, но часто приводила к проигрышу в конце игры, так как компьютерный игрок не хотел расставаться с козырными картами, стремясь сохранить высокий потенциал. Этот факт был обнаружен в процессе тестирования и по¬ служил причиной модификации правил принятия решений таким об¬ разом, чтобы тактика изменялась по ходу игры. В данной версии про¬ граммы основанием для изменения тактики является мера близости к финалу игры. В качестве оценки такой меры можно использовать ко¬ личество карт в колоде или количество вышедших из игры карт. В рас¬ сматриваемой реализации программы сигналом для изменения тактики являлось исчерпание карт в колоде. При наступлении этого события компьютерный игрок начинает принимать решения по другим прави¬ лам, ориентированным на минимизацию количества карт на руках. Программа с изменяющейся тактикой уже не совершает упомянутых выше ошибок. Несмотря на кажущуюся несерьезность, разработка игровых про¬ грамм является хорошим тренингом для будущих и уже состоявшихся специалистов в области разработки интеллектуальных информацион¬ ных систем. Вопросы для самопроверки 1. Чем отличаются знания от данных? Приведите определения знаний. 2. Дайте характеристику основных признаков, по которым клас¬ сифицируются знания (природа знаний, способ приобретения знаний, тип представления знаний). 3. Расскажите о логических способах представления знаний. Ука¬ жите преимущественную область применения логической модели. 4. Проведите формализацию небольшого фрагмента знаний сред¬ ствами логики высказываний (логики предикатов). 5. Охарактеризуйте продукционную модель представления зна¬ ний. Приведите примеры представления знаний правилами. В чем от¬ личия между продукционными системами с прямыми, обратными и двунаправленными выводами? 6. Опишите фреймовую модель представления знаний. Приведите пример фреймового представления. 7. Охарактеризуйте модель представления знаний в виде семан¬ тической сети. Расскажите об основных видах используемых в этой модели отношений. 8. Приведите примеры логического вывода с использованием правил Modus Ponendo Ponens и Цепное заключение. 160
9. Докажите предложенную тавтологию семантическим (синтак¬ сическим) методом. 10. Расскажите о теоремах логики и их использовании в ИИС. Приведите примеры. 11. Опишите возможности применения в логическом выводе опе¬ рации эквивалентности. Приведите примеры тавтологий с эквивалент¬ ностями. 12. Опишите стратегию доказательства с введением допущения. Приведите пример. 13. Рассмотрите пример доказательства путем приведения к про¬ тиворечию. 14. Расскажите о стратегии доказательства методом резолюции. Приведите пример. 15. Опишите функционирование механизма вывода продукцион¬ ной ЭС и охарактеризуйте его составляющие: компоненту вывода и управляющую компоненту. 16. Сформулируйте собственные примеры прямого и обратного вывода в ЭС продукционного типа. 17. Приведите пример представления знаний в виде И-ИЛИ- графа. 18. Опишите и представьте в графическом виде стратегии поиска решений: в глубину, ширину, разбиением на подзадачи, на основе a - p-алгоритма. 19. Расскажите о способах организации логического вывода в ин¬ теллектуальных системах с фреймовым представлением знаний. 20. Разработайте программную реализацию интеллектуальной системы с продукционным представлением знаний и механизмом вы¬ вода на базе правила Modus Ponendo Ponens . 21. Выполните формализацию знаний средствами продукционной модели, которые могут использоваться в интеллектуальной системе для поддержки задач диагностики экономического и финансового со¬ стояния предприятия (других задач). 22. Выполните представление знаний средствами описанных мо¬ делей для известной вам игры. 161
ЗАКЛЮЧЕНИЕ Нечеткое моделирование не является альтернативой различным подходам к моделированию сложных систем и процессов, а прежде всего предоставляет эффективные методы и средства для их изучения в следующих основных сферах применения. В пособии рассмотрены: — основные понятия и определения теории нечетких множеств; — нечеткие высказывания и нечеткие модели систем; — алгоритм нечеткого вывода на основе нечеткой продукционной модели с адаптацией операций над нечеткими множествами; — классы нечетких моделей, доминирующих в рамках нечеткого подхода к анализу и моделированию сложных систем, а также различ¬ ные классы нечетких сетей (и способы их интеграции с искусственны¬ ми нейронными сетями), используемых для построения и анализа этих моделей; — нечеткие продукционные модели, являющиеся наиболее об¬ щим видом нечетких моделей, используемых для описания, анализа и моделирования сложных систем и процессов; — основные компоненты, определяющие создание и применение нечетких продукционных моделей; — получившие наибольшее распространение алгоритмы нечетко¬ го вывода. Представлены нечеткие реляционные модели, а также проиллю¬ стрировано их подобие нечетким продукционным моделям. 162
СПИСОК ЛИТЕРАТУРЫ 1. Борисов, В.В. Нечеткие продукционные модели и сети / В.В. Борисов, A.С. Федулов. - Смоленск : Изд-во ВА ВПВО ВС РФ, 2005. 2. Fuller, R. Neural Fuzzy Systems / R. Fuller. - Publishing House: Abo Aka- demi University, 1995. 3. Cao, Z. Applicability of the some fuzzy implication operations / Z. Cao, A. Kan- del // Fuzzy Sets and Systems. - 1989. - V. 31. - P. 151 - 186. 4. Fukami, S. Some considerations of fuzzy conditional inference / S. Fukami, M. Mizumoto, K. Tanaka // Fuzzy Sets and Systems. - 1980. - V. 4. - P. 243 - 273. 5. Kiszka, ІВ. The influence of some fuzzy implication operators on the accu¬ racy of fuzzy model / ІВ. Kiszka, M.E. Kochanska, D.S. Sliwinska // Fuzzy Sets and Systems. -1985. - V. 15. - P. 111 - 128; 223 - 240. 6. Рутковская, Д. Нейронные сети, генетические алгоритмы и нечеткие системы / Д. Рутковская, М. Пшинъковский, Л. Рутковский. - М. : Горячая линия-Телеком, 2004. 7. Леоненков, А.В. Нечеткое моделирование в среде MATLAB и fuz- zyTECH / А.В. Леоненков. - СПб. : БХВ-Петербург, 2003. 8. Круглое, В.В. Гибридные нейронные сети / В.В. Круглое, В.В. Бори¬ сов. - Смоленск : Русич, 2001. 9. Борисов, А.Н. Принятие решений на основе нечетких моделей: Приме¬ ры использования / А.Н. Борисов, О.А. Крумберг, И.П. Федоров. Рига : Зинат- не, 1990. 10. Круглое, В.В. Искусственные нейронные сети. Теория и практика / B.В. Круглое, В.В. Борисов. - М. : Горячая линия-Телеком, 2001. 11. Mamdani, E.H. Application of fuzzy logic to approximate reasoning using linguistic systems / E.H. Mamdani // Fuzzy Sets and Systems. - 1977. - V. 26. - P. 1182 - 1191. 12. Takagi, Т. Fuzzy identification of systems and its application to modeling and control / Т. Takagi, M. Sugeno // IEEE Transactions on Systems, Man and Cy¬ bernetics. - 1985. - V. 15, № 1. - P. 116 - 132. 13. Esoglue A.O. Fuzzy dynamic programming and its extensions / A.O. Esoglue, R.T. Bellman // Fuzzy Sets and Decis. Anal. / Ed. by H. J. Zimmerman, L.A. Zadeh, B.R. Gains. - North-Holand : Elsevier Science Publishers, 1984. - P. 11 - 28. 14. Foster, D.H. Fuzzy topological groups / D.H. Foster // J. Math. Anal. Appl. - 1979. - V. 67. - P. 549 - 564. 15. Борисов, В.В. Нечеткие оценочные модели сложных систем с учетом согласования неравнозначных целей / В.В. Борисов, А.С. Федулов // Нейроком¬ пьютеры: разработка, применение. -2003. - № 5. - С. 3 - 12. 16. Заде, Л. Понятие лингвистической переменной и его применение к принятию приближенных решений / Л. Заде. - М. : Мир, 1976. 17. Wenstop, F. Deductive verbal models of organizations / Int. J. Man- Machine Studies. - 1976. - № 8. - P. 293 - 311. 18. Силов, В.Б. Принятие решений в нечеткой обстановке / В.Б. Силов. - М. : ИНПРО-РЕС, 1995. 163
19. Борисов, В.В. Обобщенные нечеткие когнитивные карты / В.В. Бори¬ сов, А.С. Федулов // Нейрокомпьютеры: разработка, применение. - 2004. - № 4. - С. 3 - 20. 20. Борисов, В.В. Нечеткий логический вывод в условиях неравнозначности целевых функций / Информационный бюллетень Академии военных наук / В.В. Бо¬ рисов, А.С. Федулов, В.И. Мнев. - Смоленск : Изд-во ВУ ВПВО ВС РФ, 2001. 21. Babuska, R. Fuzzy Modeling for Control / R. Babuska. - Boston, USA : Kluwer Academic Publishers, 1998. 22. Wang, L.X. Generating fuzzy rules by learning from examples / L.X. Wang, J.M. Mendel // IEEE Transaction on Systems, Man and Cybernetics. - 1992. - V. 22, N 6. - P. 1414 - 1427. 23. Pedrycz, W. Fuzzy Control and Fuzzy Systems / W. Pedrycz. - New York : John Wiley and Sons, 1993. 24. Дюбуа, Д. Теория возможностей. Приложения к представлению зна¬ ний в информатике / Д. Дюбуа, А. Прад. - М. : Радио и связь, 1990. 25. Zimmermann, H. Latent Connectives in Human Decision Making / H. Zim- mermann , P. Zysno // Fuzzy Sets and Systems. - 1980. - V. 4, N 1. - P. 37 - 51. 26. Kosko, B. Fuzzy systems as universal approxi mators / B. Kosko // In Proc. of the IEEE Int. Conf. on Fuzzy Systems. - San Diego, 1992. - P. 1153 - 1162. 27. Wang, L.X. Fuzzy systems are universal approximators / L.X. Wang // In Proc. of the IEEE Int. Conf. on Fuzzy Systems. - San Diego, 1992. - P. 1163 - 1169. 28. Castro, J.L. Fuzzy logic controllers are universal approximators / J.L. Ca¬ stro // IEEE Transactions on Systems, Man and Cybernetics. Part B: Cybernetics. - 1995. - V. 25. - P. 629 - 635. 29. Ying, H. Sufficient conditions on uniform approximation of multivariate functions by general Takagi-Sugeno fuzzy systems with linear rule consequents / H. Ying // IEEE Transactions on Systems, Man and Cybernetics. Part A. - 1998. - V. 28, N 4. - P. 515 - 520. 30. Zeng, K. A contrarative study on sufficient conditions for Takagi-Sugeno fuzzy systems as universal approximators / K. Zeng, N.-Y. Zhang, W.-L. Xu // IEEE T rans, on Fuzzy Systems. - 2000. - V. 8, N 6. - P. 773 - 780. 31. Круглое, В.В. Сравнение алгоритмов Мамдани и Сугэно в задаче ап¬ проксимации функции / В.В. Круглое // Нейрокомпьютеры: разработка, при¬ менение. - 2003. - № 5. - С. 34 - 38. 32. Bauer, P. Modeling of control functions by fuzzy controllers / P. Bauer, E.P. Klement, A. Leikermoser, В. Moser ; In H. Nguyen, M. Sugeno, R. Tong and R.R. Ya¬ ger, editor // Theoretical Aspects of Fuzzy Control. - NY : Wiley, 1995. - P. 91 - 116. 33. Li, Y.-M. Approximation theory fuzzy systems based upon genuine many¬ valued implications - SISO cases / Y.-M. Li, Z.-K. Shi, Z.-H. Li // Fuzzy Sets and Systems. - 2002. - V. 130. - P. 147 - 157. 34. Li, Y.-M. Approximation theory fuzzy systems based upon genuine many¬ valued implications - MIMO cases / Y.-M. Li, Z.-K. Shi, Z.-H. Li // Fuzzy Sets and Systems. - 2002. - V. 130. - P. 159 - 174. 35. Raju, G.V.S. Hierarchical fuzzy control / G.V.S. Raju, J. Zhou, R.A. Kisn- er // Int. J. Control. - 1991. - V. 54. - P. 1201 - 1216. 164
36. Joo, M.G. Universal approximation by hierarchical fuzzy system with con¬ straints on the fuzzy rule / M .G. Joo, J.S. Lee // Fuzzy Sets and Systems. - 2002. - V. 130. - P. 175 - 188. 37. Stability of a new interpolation method / D. Tikk, P. Baranyi, r.Yam, L.T. Koczy // In Proc. of the IEEE Int. Conf. on Systems, Man and Cybernetics (IEEE SMC'99). - Tokyo, Japan, 1999. - V. 3. - P. 7 - 9. 38. Setness, M. Fuzzy relational classifier trained by fuzzy clustering / M. Set- ness, R. Babuska // IEEE Transactions on Systems, Man and Cybernetics. Part B : Cybernetics. - 1999. - V. 29, N. 5. - P. 619 - 625. 39. Branco, P.J.C. A fuzzy relational identification algorithm and its applica¬ tion to predict the behavior of a motor drive system / P.J.C. Branco, J.A. Dente // Fuzzy Sets and Systems. - 2000. - V. 109. - P. 343 - 354. 40. Study on the solution of fuzzy relation equation with interval values / H. Fukumum, K. Kamiya, H. Miyagi, K. Yamashita // In Proc. of Int. Tech. Conf. on Circuits / Systems, Computers and Communications (ITC-CSCC'97). - Okinawa, Japan , 1997. - V. 1. - P. 495 - 498. 41. Советский энциклопедический словарь. - 4-е изд., испр. и доп. - М., 1980. 42. Моисеев, Н.Н. Алгоритмы развития / Н.Н. Моисеев. - М., 1987. 43. Гумеров, Ш.А. Развитие и организация / Ш.А. Гумеров // Системные концепции развития. - М., 1985. 44. Миротин, Л.Б. Системный анализ в логистике / Л.Б. Миротин, И.Э. Таш- быев. - М. : Экзамен, 2002. 45. Ерохина, Е.А. Теория экономического развития: системно-синергети¬ ческий подход / Е.А. Ерохина. - М., 1999. 46. Перегудов, Ф.И. Введение в системный анализ / Ф.И. Перегудов, Ф.П. Та¬ расенко. - М. : Высш. шк., 1989. 47. Николаев, В.И. Системотехника: методы и приложения / В.И. Николаев, В.М. Брук. - М. : Машиностроение, 1985. 48. Садовский, В.Н. Смена парадигм системного мышления // Общеметодо¬ логические проблемы системных исследований / В.Н. Садовский. - М., 1999. 49. Прангишвили, И.В. Системный подход и общесистемные закономер¬ ности / И.В. Прангишвили. - М. : СИНТЕГ, 2000. 50. Автоматизированные информационные технологии в экономике / М.И. Семенов, И. Т. Трубшин, В.И. Лойко, Т.П. Барановская. - М. : Финансы и статистика, 2001. 51. Растригин, Л. А. Адаптация сложных систем / Л. А. Растригин. - Рига : Зинатне, 1981. 52. Жариков, О.К. Системный подход к управлению / О.К. Жариков, В.И. Королевская, С.Н. Хохлов ; под ред. В. А. Персианова. - М. : ЮНИТИ- ДАНА, 2001. 53. Теория систем и методы системного анализа в управлении и связи / В.Н. Волкова, В. А. Воронков, А. А. Денисов и др. - М. : Радио и связь, 1983. 54. Уемов, А.И. Системный подход и общая теория систем / А.И. Уемов. - М. : Мысль, 1978. 165
55. Кухтенко, А.И. Об аксиоматическом построении математической теории систем / А.И. Кухтенко // Кибернетика и вычислительная техника. В. 31. - Киев : Наук. думка, 1976. - С. 3 - 25. 56. Компьютерная поддержка сложных организационно-технических сис¬ тем / В.В. Борисов, И.А. Бычков, А.В. Дементьев и др. - М. : Горячая линия- Телеком, 2002. 57. Pedrycz, W. Relevancy of fuzzy models / W. Pedrycz // Information Sci ences. - 1990. - V. 52. - P. 285 - 302. 58. Yager, R.R. Essentials of Fuzzy Modeling and Control / R.R. Yager, D.P. Fi- lev. - New York : John Wiley, 1994. 59. Buchanan, B.G. Rule-Based Expert Systems. Readings (MA) / B.G. Bu¬ chanan, E.H. Shortliffe. - USA : Addison-Wesley, 1984. 60. Patterson, D.W. Introduction to Artificial Intelligence and Expert Systems. Englewood Cliffs (NJ) / D.W. Patterson. - USA : Prentice Hall, 1990. 61. Леоненков, А.В. Нечеткое моделирование в среде MATLAB и fuz- zyTECH / А.В. Леоненков. - СПб. : БЧВ-Петербург, 2003. 62. Non-Standard Logics for Automated Reasoning. Academic Press / P. Smets, E.E. Mamdani, D. Dubois, H. Prade (Eds.). - London, 1988. 63. Ljung, L. System Identification, Theory for the User / L. Ljung. - New Jersey : Prentice-Hall, 1987. 64. Kosko, B. Fuzzy systems as universal approximators / B. Kosko // IEEE Trans. Computers. - 1994. - V. 43. - P. 1329 - 1333. 65. Wang, L.-X. Adaptive fuzzy systems and control, design and stability analysis / L.-X. Wang. - New Jersey : Prentice Hall, 1994. 66. Zeng, X.J. Approximation theory of fuzzy systems - MIMO case / X.J. Zeng, M.G. Singh // IEEE Trans. Fuzzy Systems. - 1995. - V. 3, N 2. - P. 219 - 235. 67. Sugeno, M. Successive identification of a fuzzy model and its applications to prediction of a complex system / M. Sugeno, K. Tanaka // Fuzzy Sets and Sys¬ tems. - 1991. - V. 42. - P. 315 - 334. 68. Higashi, M. Identification of fuzzy relation systems / M. Higashi, G.J. Klir // IEEE T ransacti ons on Systems, Man, and Cyberneti cs - 1984. - V. 14. - P. 349 - 355. 69. Pedrycz, W. An identification algorithm in fuzzy relational systems / W. Pe- drycz // Fuzzy Sets and Systems. - 1984. - V. 13. - P. 153 - 167. 70. Babuska, R. Fuzzy Systems, Modeling and Identification / R. Babuska. - New Jersey : Prentice Hall, 2003. 166
СОДЕРЖАНИЕ ВВЕДЕНИЕ 3 1. ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ ТЕОРИИ НЕЧЕТКИХ МНОЖЕСТВ 5 1.1. Расстояние между нечеткими множествами, индексы нечеткости 5 1.2. Оценка нечеткости через энтропию 8 1.3. Принцип обобщения 9 Вопросы для самопроверки 10 2. НЕЧЕТКИЕ ОТНОШЕНИЯ 11 2.1. Определение нечеткого отношения 11 2.1.1. Носитель нечеткого отношения 12 2.2. Операции над нечеткими отношениями 13 2.3. Условные нечеткие подмножества 20 2.4. Нечеткие подмножества, последовательно обусловливающие друг друга 22 Вопросы для самопроверки 23 3. НЕЧЕТКАЯ И ЛИНГВИСТИЧЕСКАЯ ПЕРЕМЕННЫЕ 24 3.1. Понятие нечеткой и лингвистической переменных 24 3.2. Нечеткие числа 25 3.3. Операции над нечеткими числами 26 3.4. Нечеткие числа (L-RD-типа 27 Вопросы для самопроверки 29 4. НЕЧЕТКИЕ ВЫСКАЗЫВАНИЯ И НЕЧЕТКИЕ МОДЕЛИ СИСТЕМ 30 4.1. Высказывания на множестве значений фиксированной лингвистической переменной 30 4.2. Правила преобразований нечетких высказываний 31 4.3. Способы определения нечеткой импликации 32 4.4. Логико-лингвистическое описание систем, нечеткие модели .. 36 4.5. Модель управления паровым котлом 37 4.6. Полнота и непротиворечивость правил управления 40 Вопросы для самопроверки 40 5. АЛГОРИТМ НЕЧЕТКОГО ВЫВОДА НА ОСНОВЕ НЕЧЕТКОЙ ПРОДУКЦИОННОЙ МОДЕЛИ С АДАПТАЦИЕЙ ОПЕРАЦИЙ НАД НЕЧЕТКИМИ МНОЖЕСТВАМИ 41 Вопросы для самопроверки 51 6. НЕЧЕТКИЕ РЕЛЯЦИОННЫЕ МОДЕЛИ 52 6.1. Особенности нечетких реляционных моделей 52 6.2. Реляционное представление нечеткого вывода с использованием отдельных правил 53 167
6.3. Реляционное представление нечеткого вывода с использованием базы правил 56 6.4. Подобие нечетких реляционных и продукционных моделей 57 Вопросы для самопроверки 58 7. ПОНЯТИЕ СИСТЕМЫ. КЛАССИФИКАЦИЯ И ХАРАКТЕРИСТИКА СИСТЕМ НЕЧЕТКИХ МОДЕЛЕЙ 59 7.1. Понятие и определения системы 59 7.2. Классификация систем 60 Вопросы для самопроверки 63 8. КЛАССИФИКАЦИЯ МОДЕЛЕЙ СИСТЕМ 64 Вопросы для самопроверки 69 9. ОБЛАСТИ ПРИМЕНЕНИЯ И КЛАССИФИКАЦИЯ НЕЧЕТКИХ МОДЕЛЕЙ 70 9.1. Области применения нечеткого моделирования 70 9.2. Классификация нечетких моделей 74 9.3. Интеграция нечетких и нейронных сетей 75 Вопросы для самопроверки 76 10. НЕЧЕТКИЕ ПРОДУКЦИОННЫЕ МОДЕЛИ 77 10.1. Компоненты нечетких продукционных моделей 77 10.2. Способы нечеткого вывода 78 10.3. Создание базы нечетких продукционных правил 84 10.4. Введение нечеткости 102 10.5. Агрегирование степени истинности предпосылок правил 103 10.6. Активизация заключений правил 105 10.7. Аккумулирование активизированных заключений правил107 10.8. Приведение к четкости 108 10.9. Параметрическая оптимизация конечной базы нечетких правил 113 Вопросы для самопроверки 114 11. ТРАДИЦИОННЫЕ СПОСОБЫ ПРЕДСТАВЛЕНИЯ И ОБРА¬ БОТКИ ЗНАНИЙ В ИНТЕЛЛЕКТУАЛЬНЫХ СИСТЕМАХ.... 116 11.1. Отличия знаний от данных 116 11.2. Типичные модели представления знаний 119 11.3. Традиционные способы обработки знаний 133 11.4. Примеры разработки интеллектуальных систем с применением типичных моделей представления знаний 156 Вопросы для самопроверки 160 ЗАКЛЮЧЕНИЕ 162 СПИСОК ЛИТЕРАТУРЫ 163 168
Учебное электронное издание ГРОМОВ Юрий Юрьевич, ИВАНОВА Ольга Геннадьевна, СЕРЕГИН Михаил Юрьевич, ДИДРИХ Валерий Евгеньевич, МАРТЕМЬЯНОВ Юрий Федорович, МИНИН Юрий Викторович ПРЕДСТАВЛЕНИЕ ЗНАНИЙ В ИНФОРМАЦИОННЫХ СИСТЕМАХ Учебное пособие Редактор Е.С. Кузнецова Инженер по компьютерному макетированию И.В. Евсеева Подписано в печать 23.05.2012. Формат 60x84/16. 9,76 усл. печ. л. Заказ № 295 Издательско-полиграфический центр ФГБОУ ВПО «ТГТУ» 392000, г. Тамбов, ул. Советская, д. 106, к. 14