Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОРГЭВМ(21-35).docx
Скачиваний:
13
Добавлен:
22.09.2019
Размер:
1.04 Mб
Скачать

Операции с нечеткими множествами

Сейчас, когда мы уже знаем, что такое нечеткие множества, попытаемся определить базовые операции (действия) над нечеткими множествами. Аналогично действиям с обычными множествами нам потребуется определить пересечениеобъединение и отрицаниенечетких множеств. В своей самой первой работе по нечетким множествам Л. А. Задэ предложил оператор минимума  для пересеченияи оператор максимума для объединения двух нечетких множеств. Легко видеть, что эти операторы совпадают с обычными (четкими) объединением и пересечением, только рассматриваются степени принадлежности 0 и 1.      

Чтобы пояснить это, приведем несколько примеров. Пусть  нечеткий интервал от 5 до 8 и B нечеткое число около 4, как показано на рисунке.

 

Следующий пример иллюстрирует нечеткое множество между 5 и 8 И  (AND)  около 4 (синяя линия).

Нечеткое множество между 5 и 8 ИЛИ  (OR)  около 4 показано на следующем рисунке (снова синяя линия).

Следующий рисунок иллюстрирует операцию отрицания. Синяя линия - это ОТРИЦАНИЕ нечеткого множества A.

Нечеткое управление

Контроллеры нечеткой логики - наиболее важное приложение теории нечетких множеств. Их функционирование немного отличается от работы обычных контроллеров; для описания системы используются знания экспертов вместо дифференциальных уравнений. Эти знания могут быть выражены естесственным образом с помощью лингвистических переменных, которые описываются нечеткими множествами.

Пример: Перевернутый маятник

Проблема состоит в балансировке вертикальной мачты, подвижно закрепленной нижним концом на тележке, которая может двигаться только в двух направлениях - влево или вправо.

Во-первых, мы должны определить (субъективно) что такое высокая скорость, низкая  скорость и т.п. для тележки. Это делается описанием функции принадлежности для нечетких множеств.

  • отрицательная высокая, neg.high (голубой)

  • отрицательная низкая, neg.low (зеленый)

  • нулевая, zero (красный)

  • положительная низкая, pos.low (синий)

  • положительная высокая, pos.high (розовый)

Тоже самое делается для угла между тележкой и мачтой маятника и для угловой скорости изменения этого угла

 

Пожалуйста заметьте, что для упрощения предполагается, что начальное положение мачты около центра справа, так что угол более чем, скажем, 45 градусов в любом направлении по определению никогда не возникнет.

На следующей странице определим некоторые правила,  которые желательно применить в данной ситуации.

Сейчас определим несколько правил, которые определяют что делать в данной ситуации.

Положим, например, что мачта находится справа (угол равен нулю) и не двигается (угловая скорость - ноль). Очевидно, что это желаемое положение, и ничего предпринимать не надо (скорость равна нулю).

Рассмотрим другой случай: мачта находится справа, как и прежде, но движется с низкой скоростью в положительном  направлении. Естественно необходимо компенсировать движение мачты, передвигая тележку в том же направлении с низкой  скоростью.

Итак, получаем два правила, которые более формально представляются в следующей форме:

  • Если угол равен нулю И угловая скорость равна нулю, тогда скорость должна быть равна нулю.

  • Если угол равен нулю И угловая скорость положительная низкая, тогда скорость должна быть положительной низкой.

Сведем все полученные правила в таблицу:

             |            угол

             |

    скорость |  ОВ    ОН    0     ПН    ПВ  

  -----------+------------------------------

        ОВ   |              ОВ

  угл.  ОН   |              ОН    0

  скор. 0    |  ОВ    ОН    0     ПН    ПВ

        ПН   |        0     ПН

        ПВ   |              НВ

где  ОВ - Отрицательное Высокое (большое) значение, ОН - Отрицательное Низкое (малое) значение, 0 - нуль и т.д.   

Для дальнейших расчетов определим численные значения для угла и угловой скорости. Рассмотрим следующую ситуацию:

Реальное значение угла:

Реальное значение угловой скорости:

Применим правило

Если угол равен нулю И угловая скорость равна нулю, тогда скорость равна нулю

к реальным значениям переменных.

Здесь представлена лингвистическая переменная "угол", отображаемая нечетким множеством "ноль" и реальный угол наклона маятника.

Проследим получение результата с помощью нечеткого вывода.

1. Если угол равен нулю И угловая скорость равна нулю тогда скорость равна нулю

Получаем, что реальное значение угла принадлежит нечеткому множеству "ноль" со степенью 0.75.

2. Если угол равен нулю И угловая скорость равна нулю тогда скорость равна нулю

Реальное значение угла принадлежит нечеткому множеству "ноль" со степенью 0.75.

Здесь представлена лингвистическая переменная "угловая скорость", отображаемая нечетким множеством "ноль" и реальная угловая скорость.

3. Если угол равен нулю И угловая скорость равна нулю тогда скорость равна нулю   

Реальное значение угла принадлежит нечеткому множеству "ноль" со степенью 0.75.

Реальное значение угловой скорости принадлежит нечеткому множеству "ноль" со степенью 0.4.

4. Если угол равен нулю И угловая скорость равна нулю тогда скорость равна нулю

Так как две части условий правила объединяются по И, то вычисляем min (0.75, 0.4) = 0.4 и уменьшаем нечеткое множество "ноль" для переменной  "скорость" до этого уровня (в соответствии с рассматриваемым правилом).

Только четыре правила приводят к результату. Объединим их в одно решение.

Таким образом результатом правила

Если угол равен нулю И угловая скорость равна нулю тогда скорость равна нулю

является:

Результатом правила

Если угол равен нулю И угловая скорость отрицательная низкая тогда скорость - отрицательная низкая

является: 

Результатом правила

Если угол положительный малый И угловая скорость равна нулю тогда скорость - положительная низкая

является:

Результатом правила

Если угол положительный малый И угловая скорость отрицательная низкая тогда скорость равна нулю

является:

Объединение этих четырех результатов дает общее решение:

Таким образом, решением контроллера нечеткой логики является нечеткое множество (для скорости). Далее необходимо выбрать одно значение для представления конечного выходного значения. Существует несколько эвристических методов (методов дефаззификации), один из которых, например, предполагает выбирать в качестве конечного значения центр тяжести нечеткого множества:

Вся данная процедура получения решения называется контроллером Мамдани  (Mamdani controller).