УДК 512.8, 681.55
О. В. Герман, доцент (БГТУ); А. Р. Самко, аспирант (БГУИР);
Ю. О. Герман, преподаватель (БНТУ)
СИСТЕМА ВЫВОДА ДЛЯ НЕЧЕТКОЙ ЛОГИКИ НА ОСНОВЕ МНОГОЗНАЧНЫХ ИСЧИСЛЕНИЙ Я. ЛУКАСЕВИЧА
В статье представлен подход к реализации машины вывода в нечеткой логике. Данный подход использует многозначные логики Лукасевича как основу для построения нечетких выводов с требуемой точностью аппроксимации. Обычно степень аппроксимации определяется достоверностью выводов на уровне 90-95%, что соответствует 10-значной (20-значной) логике Лукасевича. Предложенный подход преодолевает недостатки известных систем нечеткого вывода Mamdani, Tsukamoto, Sugeno и других из-за ограниченности представления правил в указанных системах. Результаты могут быть использованы в системах диагностики и принятия решений, автоматизированном управлении, проектировании, исследовании операций и т. п.
The paper presents an approach to realize logic inference machine in fuzzy logic. It uses the Lukasiewicz multi-valued logics as a ground for building fuzzy inferences with the required degree of approximation. Usually, the degree of approximation is defined by the accuracy level of 90-95% which corresponds to 10-valued (20-valued) Lukasiewicz logics. The approach overcomes some drawbacks of the known inference systems, for example of Mamdani, Tsukamoto, Sugeno and the others because of the narrow specificity of the formulas representations in the mentioned systems. The results may be utilized in the diagnosis and decision making systems, automatized control systems, design, operation research etc.
Введение. Область применения нечеткой логики достаточно широка и включает: нелинейный контроль за процессами, принятие решений в условиях риска и неопределенности, распознавание образов, финансовый анализ, построение заключений в экспертных системах и пр. Проблема нечеткого логического вывода является одной из центральных в создании нечетких систем и сталкивается с главной трудностью - отсутствием универсального подхода к реализации вывода.
Известен тезис Р. Сушко [1], по которому для каждого неклассического исчисления можно построить эквивалентное классическое исчисление для булевских переменных. Имеются веские основания считать данный тезис справедливым. С этих позиций построена и данная работа. Исходная концепция состоит в том, что нечеткую логику можно с достаточной степенью точности аппроксимировать многозначной логикой Я. Лукасевича, например, для п = 10-20 (где п - число значений истинности). Для многозначной логики Лукасевича мы строим в этой работе эквивалентное двузначное исчисление.
Отметим, что в нечеткой логике принцип резолюций Робинсона применим лишь ограниченно. В самом деле [2, 3] пусть даны родительские дизъюнкты:
Если а ^ р, то ц(а) < ц(Р),
(2)
где ц(ф) - значение нечеткой меры формулы ф.
Однако если для (1) взять ц(^) = 0,4, ц(^) = 0,3, ц(£2) = 0,2, то принцип (2) будет нарушен при использовании правил
ц(а v Р) = max (ц(а), ц(Р)),
а ) = 1 - ц(а), ц(а & Р) = min (ц(а), ц(Р)),
(3)
для формулы Ц & £>2 ^ М. В самом деле ц (Д &£>2) = 0,4, ц (М) = 0,3.
В известных системах нечеткого вывода Mamdani, Т8икашо1о, 8^епо [4] это ограничение преодолено, однако приведенные системы используют правила вида
Если х(цх) &у(Цу) &.. .& г(цг), то ^(ц^). (4)
Ограниченность указанных подходов в том, что:
1) они не рассматривают нечеткую меру самого правила (продукции)
Если...То...(ц - ?),
полагая, что эта продукция истинна (ц = 1).
2) они не рассматривают формулы произвольного вида, например
D1 = R vZj, D2 = R v Z2.
(1)
х(цх) v у (Цу) [ц = 0,4],
(5)
Резольвентой (1) является М = Ь1 V Ь2. Согласно принятым постулатам [3], для любой неклассической логики имеет место аксиома:
и не показывают, как перейти от (5) к виду (4). Вместе с тем именно такой переход и является проблематичным. Например, в [5] дается такое определение
О. В. Герман, А. Р. Самко, Ю. О. Герман
191
Ц(а ^ в) = 1 при Ц(а) < Ц(в),
(6)
Ц(а ^ в) = 0 в противном случае. При этом формула
а V в
не может быть просто заменена на
а ^в,
так как оценки (3) и (6) не совпадают в общем случае.
Итак, в нечеткой логике имеются открытые проблемы, связанные с построением исчисления выводов. Данная работа в какой-то мере служит продвижением по пути решения этих проблем. Ее исходные посылки сформулированы в [6].
Реализация вывода в 3-значном исчислении Лукасевича. Пусть а, в - формулы. Тогда а ^ в означает, что в любой интерпретации I (наборе значений истинности для переменных в формулах а, в) имеет место уа!(а) < уа/(в). Обозначим а[ц„] формулу, которая допускает только такие интерпретации I, в которых уа!1(а) > ц*. Можно рассматривать Ца как значение неопределенности формулы а.
Определение. Формула в[це] выводима из формул а[Ца], ..., а[Ца], если и только если любая интерпретация, допускаемая одновременно а[Ца], ..., а[Ца], допускается также формулой в[це].
Для интерпретации формулы 3-значного исчисления Лукасевича введем векторную логику с формулами, аргументы которых представляют векторы, причем каждая переменная вектора представляет булевскую переменную, булевскую формулу или константу (0, 1). Обозначим векторные формулы V и ю как V = V2), ю = (юь ю2) и определим следующие отношения:
V = 1 -О- (VI = 1, V2 = 1),
V = 0 — (V! = 0, V2 = 0),
V = 0,5 — (V] = 1, V2 = 0),
-V = ( -^2, -^1),
V & ю = (VI & юь V2 & ю2),
V v ю = (VI v юь V2 vю2),
V ^ ю = V; ^ юг, V 7 = 1,2, ..., V[а] — 11V12 V... VЦ, уа1 (1т) > а, (т = 1, 2,..., t).
Рассмотрим в качестве пояснения следующий пример. Необходимо доказать или опровергнуть утверждение, что из формул а v в [Ц = 1], — а v в [ц > 0,5] можно вывести в [Ц > 0,5].
Перепишем а v в в векторной форме как показано ниже:
(аь а2) v (в 1 & в2) = (а: v въ а2 v в2) = (1, 1).
Поскольку мера этой формулы равна 1, то можно записать
а! v в1, а2 v в2.
Вторая формула — а v в [Ц > 0,5] переписывается следующим образом:
(— а2, — а0 v (вь в2) = (— а2 v вь — а1 v в2) =
= (1, 0) v (1, 1),
откуда получаем — а2 v вь что дает исходную систему посылок в виде
— а2 v вь
а1 v вь
а1 v вь (7)
а1 v — а2, в1 v — в2.
Необходимо показать, что из (7) следует формула в = (в1, в2) [Ц > 0,5] (т. е. (1, 0) v (1, 1) или просто в1). Это можно сделать с помощью стандартной резолюционной стратегии (в ходе вычислений получаем, что в1 действительно следует из (7)).
Представленный выше подход может быть относительно легко обобщен для случая к-знач-ной логики с к > 3. Для начала рассмотрим варианты с к = 4 и к = 5.
При к = 4 будем использовать следующее векторное представление:
V = V2, Vз )
с операцией отрицания в форме
— V = ( — V1, —V3, —V2 ) и значениями истинности
V = 0 — (0, 0, 0),
V = 1 — (0, 1, 0),
V = 2 — (1, 1, 0),
V = 3 — (1, 1, 1). При к = 5 имеем:
V = 0^1, V2, Vз, V4 ),
— V = ( — V2, — V1, — V4, — V3),
V = 0 — (0, 0, 0, 0),
V = 1 — (0, 0, 1, 0),
V = 2 — (0, 1, 1, 0),
V = 3 — (1, 1, 1, 0),
V = 4 — (1, 1, 1, 1).
Общий случай может быть представлен в таком виде:
V = V2, Vз, ..., Vn ),
V = 0 — (0, 0, 0, ..., 0, 0),
V = 1 — (0, 0, 0, ..., 1, 0),
V = 2 — (0, 0, 0, ..., 1, 1, 0),
V = п - 1 — (1, 1, 1, ..., 1, 0),
V = п — (1, 1, 1, ..., 1, 1)
с операцией отрицания — V, удовлетворяющей соотношению
уа/( — V) = п - уа/^) + 1
и
— V = ( — Vn_2, -., — Vз, — V2, — Vl, — Vn, — Vn_l).
Корректность операций & и v в общем случае устанавливается непосредственно. Так же легко определяются формулы, устанавливающие только допустимые наборы. Эти формулы таковы:
VI ^ V; + 1 (7 = 1, 2, ..., п - 2),
Vn = 1 ^ V, = 1.
Они указывают, что единицы в векторном представлении могут располагаться только последовательно одна за другой. Рассмотренный здесь общий подход дает ключ к построению машины логического вывода в нечеткой логике посредством аппроксимации нечетких значений значениями многозначной логики, достаточными для практических приложений.
Реализация нечеткого вывода. Нечеткий логический вывод имеет достаточно широкое применение при решении практических задач, во всяком случае более широкое, нежели многозначный. Поэтому построение машины нечеткого логического вывода является важной теоретико-прикладной задачей. В свете изложенных выше результатов машину нечеткого вывода можно строить сравнительно просто.
Пусть требуется реализовать вывод в системе формул с заданной точностью аппроксимации 0 < А < 1. Найдем наименьшее значение п > А-1 и будем использовать ^значную логику Лукасевича. Для практических расчетов вполне достаточно использовать А = 0,05 и аппроксимацию вывода на основе 20-значной логики Лу-касевича. С учетом итоговых замечаний предыдущего параграфа сложность представления таких формул не становится критическим фактором и вполне приемлема для расчетов. Открытым остается вопрос о достаточности для построения правильных выводов в нечеткой логике некоторой фиксированной ^значной логики Я. Лукасевича. Имеем следующий результат:
Если формула ф выводима в и-значной логике Лукасевича, то она не обязательно выводима в (и + 1)-значной. Если формула ф не выводима в и-значной логике Лукасевича, то она не выводима и в (и + 1)-значной логике.
Таким образом, повышение мерности (знач-ности) логики Лукасевича увеличивает только степень достоверности вывода.
Обоснование представленного утверждения можно получить из следующих простых соображений. Пусть формула ф выводима в и-значной логике Лукасевича из формул а1, а2, ..., ar. Это значит, что она удовлетворяет данному выше определению выводимости. Однако вполне может оказаться, что в (и + 1)-значной логике Лукасевича найдется интерпретация I, в которой а1, а2, ..., аг истинны, а значение формулы ф попадет в область с меньшим значением истинности, что сделает ф не выводимой. Иначе говоря, в логике с меньшим числом значений истинности заключения носят более грубый характер, однако в практических расчетах вполне можно удовлетвориться заданным уровнем точности.
Заключение. Представленный подход дает общую теоретическую платформу реализации нечетких выводов, преодолевая отмеченные во введении недостатки существующих систем нечеткого вывода. Он прямо указывает, что теоретические положения бесконечно-значных логик можно вывести из конечно-мерных логик с помощью предельного перехода, обеспечив точность аппроксимации в пределах 90-95% выбором 10-значной (20-значной) логики Лукасевича.
Литература
1. Карпенко, А. С. Логики Лукасевича и простые числа / А. С. Карпенко. - М.: Наука, 2000. - 320 с.
2. Дюбуа, Д. Теория возможностей / Д. Дюбуа, А. Прад. - М.: Радио и связь, 1990. - 288 с.
3. Нечеткие множества и теория возможностей / под ред. Р. Ягера. - М.: Радио и связь, 1986. - 406 с.
4. Рогозин, О. В. Метод нечеткого вывода решения в задаче подбора программного обеспечения / О. В. Рогозин // Приборы, методы и технологии. - 2009. - № 3. -С. 43-49.ИИЦ
5. Orlowska, E. Mechanical reasoning in fuzzy logics / E. Orlowska, S. Wierzchon. - Warsaw: Polish Academy of Sciences, 1984. - 25 s.
6. Герман, О. В. Экспертные системы: учеб.-метод. пособие / О. В. Герман. - Минск: БГУИР, 2008. - 91 с.
Поступила в редакцию 31.03.2010