Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Основы нечеткого моделирования в среде Matlab. Учебное пособие
.pdf
31
1.4. Содержание отчета
1. Титульный лист.
2. Цель работы.
3. Постановка задачи.
4. Результаты каждого этапа выполнения работы.
5. Выводы по каждому пункту заданий и общий вы-
вод по всей работе.
Контрольные вопросы
1. Что такое нечеткое множество и каково его отли-
чие от обычного (четкого) множества?
2. Что такое функции принадлежности?
3. Перечислите основные типы функций принадлеж-
ности нечетких множеств в среде Matlab?
4. В чем особенности метода построения функций
принадлежности на основе статистической обработки мнений группы экспертов?
5. В чем особенности метода построения функций
принадлежности на основе парных сравнений, выполняемых одним экспертом?
6. Что называется мерой несогласованности парных
сравнений экспертов?
7. Какими свойствами обладает матрица парных
сравнений при согласованных мнениях экспертов?

32
2. ЛАБОРАТОРНАЯ РАБОТА №2
Тема: Изучение возможностей нечеткого моделиро-
вания в среде Matlab.
Цель работы: Получить начальные сведения о среде
нечеткого моделирования Matlab Fuzzy Logic Toolbox и навыки работы с ней.
Содержание работы:
1. Изучение пакета Fuzzy Logic Toolbox.
2. Изучение методики разработки нечетких моделей в
среде Matlab.
3. Изучение методов анализа нечетких моделей с
применением графических средств пакета Fuzzy Logic
Toolbox.
2.1. Основные теоретические сведения
Для реализации процесса нечеткого моделирования в
среде Matlab предназначен специальный пакет расширения
Fuzzy Logic Toolbox. В рамках пакета Fuzzy Logic Toolbox
можно выполнять действия по разработке и использованию нечетких моделей в одном из следующих режимов:
в интерактивном режиме с помощью графических
средств редактирования и визуализации всех компонентов
систем нечеткого вывода;
в режиме команд с помощью ввода имен соответст-
вующих функций с необходимыми аргументами непосредственно в окно команд системы Matlab.
При выполнении лабораторной работы будут использоваться графические средства, входящие в пакет Fuzzy
Logic Toolbox.

33
Для разработки системы нечеткого вывода в интерактивном режиме используются следующие графические
средства пакета Fuzzy Logic Toolbox:
редактор систем нечеткого вывода FIS,
редактор функций принадлежности системы нечет-
кого вывода Membership Function Editor,
редактор правил системы нечеткого вывода Rule
Editor,
программа просмотра правил системы нечеткого
вывода Rule Viewer,
программа просмотра поверхности системы нечет-
кого вывода Surface Viewer.
Редактор FIS обладает графическим интерфейсом и
позволяет вызывать все другие редакторы и программы
просмотра систем нечеткого вывода.
В верхней части рабочего интерфейса редактора FIS
изображается диаграмма, представляющая в визуальной
форме входы и выходы системы нечеткого вывода, в центре которых находится так называемый процессор нечетких правил.
Редактор FIS имеет главное меню, которое позволяет
вызывать для работы графические средства. Операции
главного меню редактора FIS подробно описаны в приложении.
Каждая модель в среде Matlab представляется в форме отдельного проекта.
В проектах могут быть использованы различные типы функций принадлежности термов лингвистических переменных (11 встроенных типов ФП были рассмотрены
ранее в п. 1.1).
Каждый из типов функции принадлежности может
иметь одну из форм, приведенных ниже:
- кусочно-линейная форма (L-shape), которая пред-
полагает представление функции принадлежности в форме

34
ii
i {1,2..m}
i {1,2..m}
B=(1-λ)* min {μ(a )}+λ* max {μ(a )}
треугольной, трапециевидной функции или их некоторой
комбинации.
- S-образная форма (S-shape), которая предполагает
представление функции принадлежности в форме некоторой S-образной, Z-образной или П-образной кривой.
В проектах могут быть использованы различные методы агрегирования, композиции, аккумуляции и дефаззификации полученных результатов нечеткого вывода [8, 9].
Для агрегирования подусловий правил нечетких продукций можно использовать один из следующих вариантов:
- min-max – для логического нечеткого «И» исполь-
зуется операция минимума (логическая конъюнкция нечетких высказываний). Результат операции определяется
по формуле
T(AB)=min(T(A), T(B)), (2.1)
где Т – степень истинности операции логического нечеткого «И»; A, В – нечеткие множества.
Для логического нечеткого «ИЛИ» используется
операция максимума (логическая дизъюнкция нечетких
высказываний). Истинность результата определяется по
формуле
T(AB)=max(T(A), T(B)). (2.2)
Для логического отрицания «НЕ» используется операция разности. Истинность результата определяется по
формуле
T(A)=1-T(A). (2.3)
Результат агрегирования подусловий определится по
формуле
где – компенсационный параметр, [0, 1]; – функции
принадлежности.
- min-avg – для логического нечеткого «И» использу-
ется операция минимума (2.1), для логического нечеткого
, (2.4)

35
m
i
i
i {1,2..m}
i=1
μ(a )
B=(1-λ)* min {μ(a )}+λ*
m
mm
1-γγ
ii
i=1 i=1
B=( μ(a )) *(1- (1-μ(a )))
«ИЛИ» – арифметическое среднее, для логического отрицания «НЕ» – операция разности (1.3). Результат агрегирования подусловий определится по формуле
, (2.5)
где m – количество функций принадлежности.
- gamma – для агрегирования подусловий правил не-
четких продукций используется следующая формула:
, (2.6)
где – количественный параметр компенсации, задаваемый разработчиком из некоторых эвристических сообра-
жений [0, 1].
Для композиции заключений правил нечетких продукций может использоваться один из следующих вариантов задания весовых коэффициентов правил:
стандартный, при котором значение весового коэффициента (weight) для каждого правила предполагается
неизменным и равным 1;
определяемый пользователем, при котором значение весового коэффициента (weight) для каждого правила
можно изменять в пределах интервала [0, 1].
Для аккумуляции заключений правил нечетких продукций может использоваться один из следующих методов:
обычный метод (max), при котором результат нечеткого вывода в блоке правил нечетких продукций определяется как объединение нечетких множеств по формуле (1.2);
метод граничной суммы (bsum), при котором результат нечеткого вывода в блоке правил нечетких продукций определяется как объединение нечетких множеств:
T(AB)=min(T(A) + T(B), 1). (2.7)

В проектах могут быть использованы следующие ме-
max
min
max
min
x*μ(x)dx
y=
μ(x)dx
y
max
min y
μ(x)dx= μ(x)dx
тоды дефазификации выходных переменных:
стандартный метод (Center-of-Maximum ─ СоМ)
метод центра площади (Сеntrе-оf-Аrеа – СоА).
Итоговое количественное значение y определяется из формулы
метод среднего максимума (Mean-of-Maximum –
МоМ). Итоговое количественное значение y определяется
как арифметическое среднее между левым (2.10) и правым
(2.11) модальными значениями, при этом в качестве модального значения (моды) нечеткого множества рассматривается максимальное значение ее функции принадлежности (1.12).
метод гиперцентра максимума (НуреrCenter-of-
Maximum – HyperCoM). С использованием этого метода
учитываются положительные и отрицательные результаты
нечетких выводов и в соответствии с этим формируется
некоторое оптимальное значение для выходных переменных.
36
; (2.8)
; (2.9)
y = min(xm), (2.10)
y = max(xm), (2.11)
xm = argmax{(x)} , х[а, b]. (2.12)

37
Кондиционер
Датчики
Температура
Скорость изменения
температуры
ПОМЕЩЕНИЕ
Нечеткий
контроллер
Угол положения
регулятора
температуры
2.2. Пример разработки модели в среде Matlab
2.2.1. Постановка задачи
Рассмотрим порядок построения модели в среде
Matlab Fuzzy Logic Toolbox на примере задачи управления
кондиционером [10]. Задача состоит в том, чтобы разработать модель регулятора кондиционера для поддержания
температуры в помещении. На рис. 2.1 представлена
структура системы управления кондиционером.
Рис. 2.1. Структура системы управления кондиционером
духа и скорости ее изменения поступает на вход нечеткого
контроллера. Опыт использования бытовых кондиционеров показывает, что процесс охлаждения или нагревания
воздуха в помещении обладает некоторой инерционно-
Информация с датчиков о текущей температуре воз-

38
Блок
фаззификации
Блок
логического
вывода
База
правил
Блок
дефаззифи-
кации
Входные
сигналы
Выходные
сигналы
стью. А именно, после включения режима «холод» происходит нагнетание холодного воздуха, и температура воздуха в помещении постепенно падает. При этом в момент отключения этого режима температура продолжает падать в
течение небольшого, но конечного промежутка времени.
Аналогичная картина наблюдается при включении и отключении режима «тепло». Допустим, что включение режима «холод» осуществляется поворотом рукоятки регулятора влево, включение режима «тепло» осуществляется
поворотом рукоятки регулятора вправо относительно некоторой средней точки, в которой кондиционер выключен.
Чтобы учесть эту особенность процесса управления
кондиционером и исключить дополнительные затраты,
связанные с частым включением и выключением указанных режимов, необходимо рассматривать в качестве входного параметра не только температуру воздуха в помещении, но и скорость ее изменения.
Структура нечеткого контроллера приведена на
рис. 2.2.
Рис. 2.2. Структура нечеткого контроллера
Выходные сигналы с объекта управления (обычно
токи или напряжения) переводятся в значения лингвистических переменных в блоке фаззафикации (БФ). В блоке
логического решения (БЛР) реализуются процедуры не-

39
четкого вывода на множестве продукционных правил, составляющих базу правил (БП) системы управления. Сформированные выходные лингвистические значения переводятся в точные величины в блоке дефаззификации (БД).
Выходом контроллера является требуемый угол поворота
регулятора температуры.
Эмпирические знания о процессе управления кондиционером могут быть представлены в форме эвристических правил, которые применяются в случае ручного регулирования температуры воздуха в помещении с кондиционером:
1. Если температура воздуха в помещении очень теп-
лая и скорость изменения температуры положительная, то
следует включить режим «холод», повернув регулятор
кондиционера на очень большой угол влево.
2. Если температура воздуха в помещении очень теп-
лая и скорость изменения температуры отрицательная, то
следует включить режим «холод», повернув регулятор
кондиционера на небольшой угол влево.
3. Если температура воздуха в помещении теплая и
скорость изменения температуры положительная, то следует включить режим «холод», повернув регулятор кондиционера на большой угол влево.
4. Если температура воздуха в помещении теплая и
скорость изменения температуры отрицательная, то кондиционер следует выключить.
5. Если температура воздуха в помещении очень хо-
лодная и скорость изменения температуры отрицательная,
то следует включить режим «тепло», повернув регулятор
кондиционера на очень большой угол вправо.
6. Если температура воздуха в помещении очень хо-
лодная и скорость изменения температуры положительная,
то следует включить режим «тепло», повернув регулятор
кондиционера на небольшой угол вправо.

40
7. Если температура воздуха в помещении холодная и
скорость изменения температуры отрицательная, то следует включить режим «тепло», повернув регулятор кондиционера на большой угол вправо.
8. Если температура воздуха в помещении холодная и
скорость изменения температуры положительная, то кондиционер следует выключить.
9. Если температура воздуха в помещении очень теп-
лая и скорость изменения температуры равна нулю, то
следует включить режим «холод», повернув регулятор
кондиционера на большой угол влево.
10. Если температура воздуха в помещении теплая и
скорость изменения температуры равна нулю, то следует
включить режим «холод», повернув регулятор кондиционера на небольшой угол влево.
11. Если температура воздуха в помещении очень хо-
лодная и скорость изменения температуры равна нулю, то
следует включить режим «тепло», повернув регулятор
кондиционера на большой угол вправо.
12. Если температура воздуха в помещении холодная
и скорость изменения температуры равна нулю, то следует
включить режим «тепло», повернув регулятор кондиционера на небольшой угол вправо.
13. Если температура воздуха в помещении в преде-
лах нормы и скорость изменения температуры положительная, то следует включить режим «холод», повернув
регулятор кондиционера на небольшой угол влево.
14. Если температура воздуха в помещении в преде-
лах нормы и скорость изменения температуры отрицательная, то следует включить режим «тепло», повернув регулятор кондиционера на небольшой угол вправо.
15. Если температура воздуха в помещении в преде-
лах нормы и скорость изменения температуры равна нуля,
то кондиционер следует выключить.
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
