УДК 51-74
ПЕРСПЕКТИВЫ ПРИМЕНЕНИЯ НЕЧЕТКОЙ ЛОГИКИ
О. О. Шалдаев, С. В. Лукичева
Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
E-mail: [email protected]
Рассматривается спектр использования нечетких множеств и нечеткой логики в нечетких приложениях и статистике.
Ключевые слова: нечеткая логика, нечеткие множества, лингвистическая переменная.
PROSPECTS OF APPLICATION OF FUZZY LOGIC O. O. Shaldayev, S. V. Lukicheva
Rehetnev Siberian State Aerospace Uneversity 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation E-mail: [email protected]
The range of use of indistinct sets and fuzzy logic in indistinct appendices and statistics is considered.
Keywords: fuzzy logic, indistinct sets, linguistic variable.
Теория нечетких множеств и нечеткой логики широко используется в транспортной промышленности, в сфере финансов, принятия управленческих решений и во многих других сферах.
Характеристикой нечеткого множества (НМ) выступает функция принадлежности (Membership Function), обозначим через М^е(х)-степень принадлежности к нечеткому множеству С, представляющей собой обобщение понятия характеристической функции обычного множества. Тогда нечетким множеством С называется множество упорядоченных пар вида С = {MFc(x)/x}, MFc(x)e[0,1]. Значение MFc(x) = 0 означает отсутствие принадлежности к множеству, 1-полную принадлежность.
Для нечетких множеств, как и для обычных, определены основные логические операции. Самыми основными, необходимыми для операции расчетов, являются пересечение и объединение.
Пересечение двух Н. М. (нечеткое «И»): AnB: MFAB(x) = min(MFA(x), MFB(x)).
Объединение двух Н. М. (нечеткое «ИЛИ»): AuB: MFAB(x) = max(MFA(x), MFBВ(х)).
В теории нечетких множеств разработан общий подход к выполнению операторов пересечения, объединения и дополнения, реализованный в так называемых треугольных нормах и котормах (t-нормы и ^котормы). Для описания нечетких множеств вводятся понятия нечеткой и лингвистической переменных.
Нечеткая переменная описывается набором (NXA), где N - это название переменной, Х -универсальное множество (область рассуждений), А - нечетное множество на Х. Значениями лингвистической переменной могут быть нечеткие переменные, т. е. лингвистическая переменная находится на более высоком уровне, чем нечеткая переменная. Каждая лингвистическая переменная состоит из: названия; множества своих значений, которое также называется базовым терм-множеством Т; универсального множества Х; синтаксического правила G; семантического правила P.
Существует свыше десятка типовых форм кривых задания функций принадлежности. Наибольшее распространение получили: треугольная, трапецеидальная и гауссова функции принад-
Актуальные проблемы авиации и космонавтики - 2017. Том 2
лежности. Треугольная форма принадлежности определяется тройкой чисел (а, Ь, с), и ее значение в точке х вычисляется согласно выражению:
Ь - с
Ы¥ (х) =
1 -1 -
Ь - а х - с
а < х < Ь, Ь < х < с,
с - Ь
0, в остальных случаях.
При (Ь - а) = (с - Ь) имеем случай симметричной треугольной функции принадлежности, которая может быть однозначно задана двумя параметрами из тройки (а, Ь, с). Аналогично для задания трапецеидальной функции принадлежности необходима четверка чисел (а, Ь, с, $):
Ь - х
Ы¥ (х) =
1 --
Ь - а 1, Ь < х < с,
а < х < Ь,
1 -
х - с
с < х < й,
ё - с
0, в остальных случаях.
Функция принадлежности гауссова типа: ЫЕ (х) = ехр
х - с
, где параметр с обозна-
чает центр нечеткого множества, а параметр а отвечает за крутизну функции.
Основой для проведения операции нечеткого логического вывода является база правил, содержащая нечеткие высказывания в форме «Если-то» [1] и функции принадлежности для соответствующих лингвистических термов. При этом должны соблюдаться следующие условия.
1. Существует хотя бы одно правило для каждого лингвистического терма выходной переменной.
2. Для любого терма входной переменной имеется хотя бы одно правило, в котором этот терм используется в качестве предпосылки (левая часть правила).
Пусть в базе правил имеется т правил вида:
Я\: ЕСЛИ х1 это Ац ... И ... х„ это А1„ , ТО у это Б\, Я,: ЕСЛИ х1 это Ац ... И ... х„ это Ап,
ТО у это Б,; Ят: ЕСЛИ х1 это Ац ... И ... хп это Ат„, ТО у это Бт,
где хк, к = 1...п - входные переменные; у - выходная переменная; Л^ - заданные нечеткие множества с функциями принадлежности. Результат нечеткого вывода - четкое значение переменной у на основе заданных четких значений х^, к = 1...п. В общем случае механизм логического вывода включает такие этапы как: введение нечеткости (фазификация), нечеткий вывод, композиция и приведение к четкости, или дефазификация.
Система нечеткого логического вывода
Рассмотрим подробнее нечеткий вывод на примере механизма Мамдани (Матёаш) [2], наиболее распространенный способ логического вывода в нечетких системах. Включающий в себя следующую последовательность действий.
1. Процедура фазификации: определяются степени истинности, т. е. значения функций принадлежности для левых частей каждого правила (предпосылок). Для базы правил с т правилами обозначим степени истинности как А^х^, I = 1..^, k = 1...п.
2. Нечеткий вывод. Сначала определяются уровни 'отсечения' для левой части каждого из правил: Alfa, = min (Ajk(xk)).
3. Далее находится 'усеченные' функции принадлежности: B, (y) = min (alfa,, Bj(y)). Композиция, или объединение полученных усеченных функций, для чего используется максимальная композиция нечетких множеств: MF(y) = max (B¡ (y)).
4. Дефазификация существует несколько методов дефазификации. Например, метод среднего центра, или центроидный метод: MF(y) = max (B, (y)). Рассматривается его геометрический смысл.
Классические нечеткие системы обладают тем недостатком, что для формулирования правил и функций принадлежности необходимо привлекать экспертов той или иной предметной области, что не всегда удается обеспечить. Адаптивные нечеткие системы (adaptive fuzzy systems) решают эту проблему. В таких системах подбор параметров нечеткой системы производится процессе обучения на экспериментальных данных. Алгоритмы обучения адаптивных нечетких систем относительно трудоемки и сложны по сравнению с алгоритмами обучения нейронных сетей, и, как правило, состоят из двух стадий:
1. Генерация лингвистических правил.
2. Корректировка функций принадлежности. Первая задача относится к задаче переборного типа, вторая - к оптимизации в непрерывных пространствах. При этом возникает определенное противоречие: для генерации нечетких правил необходимы функции принадлежности, а для проведения нечеткого вывода - правила. Кроме того, при автоматической генерации нечетких правил необходимо обеспечить их полноту и непротиворечивость.
Рассмотрим задачи нечетких запросов к базам данных.
Нечеткие запросы к базам данных (fuzzy queries) - перспективное направление в современных системах обработки информации. Данный инструмент дает возможность формулировать запросы на естественном языке, например: 'Вывести список недорогих предложений о съеме жилья близко к центру города', что невозможно при использовании стандартного механизма запросов. Для этой цели разработана нечеткая реляционная алгебра и специальные расширения языков SQL для нечетких запросов. Большая часть исследований в этой области принадлежит западноевропейским ученым Д. Дюбуа и Г. Праде [3].
Широкие перспективы реализации нечеткой логики особенно характерны в области нечеткого управления сложными техническими системами.
Библиографические ссылки
1. Круглов В. В., Дли М. И. Интеллектуальные информационные системы: компьютерная поддержка систем нечеткой логики и нечеткого вывода. М. : Физматлит, 2002.
2. Заде Л. Понятие лингвистической переменной и его применение к принятию приближенных решений. М. : Мир, 1976.
3. Cordon O., Herrera F., A General study on genetic fuzzy systems // Genetic Algorithms in engineering and computer science. 1995. P. 33-57.
© Шалдаев О. О., Лукичева C. B., 2017