Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Основы нечеткого моделирования в среде Matlab. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
41
Символиче-
ское обозна-
чение
Англоязыч­ная нотация
Русскоязычная
нотация
NB
Negative Big
Отрицательное большое
NM
Negative Mid­dle
Отрицательное среднее
NS
Negative Small
Отрицательное малое
При этом температура воздуха измеряется в градусах Цельсия, скорость изменения температуры воздуха в градусах Цельсия в минуту, а угол поворота в угловых градусах. В последнем случае поворот регулятора вправо
означает включение режима «тепло» и положительное на­правление отсчета, а поворот влево включение режима «холод» и отрицательное направление отсчета.
1.2.2. Построение модели управления кондиционером
Для формирования базы правил систем нечеткого вывода необходимо предварительно определить входные и выходные лингвистические переменные (ЛП).
Определим входную ЛП Р1 «Температура воздуха в помещении», терм-множество которой имеет вид
T(Р1)={Р11,Р12,Р13,Р14,Р15}, где: Р11 «Очень низкая темпе­ратура»; Р12 «Низкая температура», Р13 «Нормальная температура»; Р
«Высокая температура», Р15 «Очень
14
высокая температура». Диапазон изменения температуры воздуха примем от 0 до 40С.
Для удобства записи применяют специальные сокра­щения для наименования отдельных термов входных и вы­ходных лингвистических переменных в системах нечетко­го вывода (табл. 2.1).
Таблица 2.1
Общепринятые сокращения для значений основных
термов лингвистических переменных
42
Символиче-
ское обозна-
чение
Англоязыч­ная нотация
Русскоязычная
нотация
ZN
Zero Negative
Отрицательное, близкое к нулю
Z
Zero
Нуль, близкое к нулю
ZP
Zero Positive
Положительное, близкое к нулю
PS
Positive Small
Положительное малое
РМ
Positive Middle
Положительное среднее
РВ
Positive Big
Положительное большое
0
1
0
10
20
30
40
NB NS Z PS PB
Окончание табл. 2.1
Тогда в символьном виде лингвистическая перемен­ная «Температура воздуха в помещении» примет вид
Р1 = {NB, NS, Z, PS, PB}.
Графическое представление функций принадлежно­сти ЛП «Температура воздуха в помещении» на базовом множестве Х1={0...40} показано на рис. 2.3.
Рис. 2.3. Функции принадлежности
ЛП «Температура воздуха в помещении»
43
0
1
TºC
в мин
NS Z PS
0 1 2
3-1-2
-3
-4
4
Определим входную ЛП Р2 «Скорость изменения температуры воздуха», терм-множество которой имеет
вид T(Р2)=(Р21,Р22,Р23), где Р21 «Отрицательная»; Р22 «Равна нулю»; Р23 «Положительная» или в симво-
лическом виде:
Р2={NS, Z, PS}.
Диапазон изменения скорости температуры примем от 4 до +4С.
Графическое представление функций принадлежно­стей ЛП «Скорость изменения температуры воздуха» на базовом множестве Х2={-4...4} приведено на рис. 2.4.
Рис. 2.4. Функции принадлежности
ЛП «Скорость изменения температуры воздуха»
Определим выходную ЛП Р3 «Угол поворота руко- ятки регулятора», терм-множество которой имеет вид
T(Р3)={Р31,Р32,Р33,Р34, Р35,Р36,Р37}, где Р31 «Очень боль­шой угол влево», Р32 «Большой угол влево», Р33 «Небольшой угол влево», Р34 «Выключить конди­ционер», Р35 «Небольшой угол вправо», Р36 «Большой угол вправо», Р37 «Очень большой угол вправо». Или в
44
0
1
NB
NS
Z PS
PB
NM
PM
0
-90º
-45º 45º
90º
символическом виде Р3={NB, NM, NS, Z, PS, РМ, РВ}, где
NB отрицательное большое, NM отрицательное сред­нее, NS отрицательное малое, Z близкое к нулю, PS положительное малое, РМ положительное среднее, PB
положительное большое. Диапазон изменения угла пово­рота рукоятки регулятора примем от 90 до +90.
Графическое представление функций принадлежно­сти ЛП «Угол поворота регулятора» на базовом множест­ве Х3={-90...90}, приведено на рис. 2.5.
Рис. 2.5. Функции принадлежности
ЛП «Угол поворота регулятора»
В соответствии с определенными выше входными и выходными лингвистическими переменными и заданными в п. 2.2.1 эвристическими правилами, сформируем нечет­кую базу правил (табл. 2.2).
R1: если Р1 есть РВ и Р2 есть РS, тогда Р3 есть NB;
R2: если Р1 есть РВ и Р2 есть NS, тогда Р3 есть NS;
R3: если Р1 есть РS и Р2 есть РS, тогда Р3 есть NM;
R4: если Р1 есть РS и Р2 есть NS, тогда Р3 есть Z;
R5: если Р1 есть NВ и Р2 есть NS, тогда Р3 есть PB;
45
№
Температура
воздуха
Скорость из-
менения
Угол поворота
1
PB
PS
NB 2 PB
NS
NS 3 PB
Z
NM 4 PS
PS
NM 5 PS
NS
Z 6 PS
Z
NS 7 NB
PS
PM 8 NB
NS
PS 9 NB
Z
PM
10
NS
PS
PM
11
NS
NS
Z
12
NS
Z
PS
13 Z PS
NS
14 Z NS
PS
15 Z Z
Z
R6: если Р1 есть NВ и Р2 есть РS, тогда Р3 есть PS;
R7: если Р1 есть NS и Р2 есть NS, тогда Р3 есть PM;
R8: если Р1 есть NS и Р2 есть РS, тогда Р3 есть Z;
R9: если Р1 есть РВ и Р2 есть Z, тогда Р3 есть NM;
R10: если Р1есть РS и Р2 есть Z, тогда Р3есть NS;
R11: если Р1 есть NB и Р2есть Z, тогда Р3есть PM;
R12: если Р1 есть NS и Р2 есть Z, тогда Р3есть PS;
R13: если Р1 есть Z и Р2есть PS, тогда Р3есть NS;
R14: если Р1есть Z и Р2есть NS, тогда Р3есть PS;
R15: если Р1 есть Z и Р2 есть Z, тогда Р3 есть Z.
Таблица 2.2
Таблица соответствия нечетких
параметров для управления кондиционером
46
2.2.3. Разработка модели регулирования температуры в среде MatLab
Рассмотрим процесс построения модели в среде
Matlab. Нечеткое моделирование в среде Matlab осуществ­ляется с использованием пакета Fuzzy Logic Toolbox, в ко­тором реализованы функции нечеткой логики и нечеткого вывода.
Процесс разработки системы нечеткого вывода в ин-
терактивном режиме состоит в выполнении следующей последовательности действий.
Этап 1. На первом этапе необходимо вызвать редак-
тор систем нечеткого вывода FIS, для этого в окне команд необходимо набрать имя функции fuzzy. После выполне­ния команды fuzzy на экране появится графический интер­фейс редактора FIS с именем системы нечеткого вывода Untitled и типом системы нечеткого вывода, предложенно­го по умолчанию (Мамдани) (рис. 2.6).
Рис. 2.6. Вид редактора FIS
47
Этап 2. Добавим в разрабатываемую систему FIS еще
одну входную переменную. Для этого следует выполнить команду меню Edit>Add Variable...>Input. В результате выполнения этой команды на диаграмме системы нечетко­го вывода появится новый прямоугольник с именем второй входной переменной input 2.
Этап 3. Для того чтобы изменить имена входных и
выходных переменных, предложенные системой по умол­чанию, необходимо выполнить щелчок по прямоугольнику с именем соответствующей переменной на диаграмме. По­сле этого необходимо ввести новое имя переменной в поле Name, расположенное в правой нижней части редактора (рис. 2.7).
Рис. 2.7. Вид редактора FIS после
изменения имен переменных
48
Этап 4. Для изменения имени системы нечеткого вы-
вода, предложенного по умолчанию, сохраним создавае­мую структуру FIS во внешнем файле с именем cond.fis (File>Export>To Disk). Оставим без изменения предложен- ные параметры, предложенные системой Matlab по умол­чанию:
метод нечеткого логического «И» (And method) 
значение "min",
- метод нечеткого логического «ИЛИ» (Or method)
значение "max",
метод импликации (Implication)  значение "min",метод агрегирования (Aggregation)  значение
"mах",
метод дефаззификации (Defuzzification) значение
"centroid".
Этап 5. Определим термы и их функции принадлеж-
ности для входных и выходных переменных системы не­четкого вывода.
Для изменения термов лингвистических переменных
необходимо вызвать редактор функций принадлежности. Для этого можно воспользоваться командой меню Ed- it>Membership Functions или выполнить двойной щелчок на значке прямоугольника с именем соответствующей лин­гвистической переменной.
Редактор функций принадлежности имеет главное меню, которое позволяет пользователю вызывать графиче­ские средства работы с системой нечеткого вывода. Функ­ции главного меню приведены в табл. 2.3.
Пункт
меню
Операции
Назначение
File
(файл)
New FIS
позволяет выбрать тип задаваемой новой системы нечеткого вывода:
 Mamdani  типа Мамдани;  Sugeno  типа Сугено
Import
позволяет загрузить в редактор FIS существующую систему нечеткого вывода одним из следующих спо­собов: From Workspace... из рабочего пространства программы Matlab; FromDisk... из внешнего файла
Export
позволяет сохранить редактируе­мую систему нечеткого вывода од­ним из следующих способов: То Workspace... в рабочем про­странстве программы Matlab; То Disk... во внешнем файле
Print
позволяет распечатать редактируе­мую систему нечеткого вывода
Close
закрывает редактор FIS
Edit
Undo
отменяет выполнение последнего действия
Add MF
позволяет добавить встроенную функцию принадлежности термов для выбранной переменной
Add Custom
MF
позволяет добавить пользователь­скую функцию принадлежности для отдельной переменной
Remove
Current MF
позволяет удалить отдельную функцию принадлежности
49
Таблица 2.3
Главное меню редактора функции принадлежности
50
Пункт
меню
Операции
Назначение
Remove
АН MFs
позволяет удалить все функции принадлежности для отдельной переменной
FIS
Properties
вызывает редактор FIS
Rules
вызывает редактор правил нечет­кого вывода
View
(Вид)
Rules
вызывает программу просмотра правил нечеткого вывода
Surface
вызывает программу просмотра поверхности нечеткого вывода
Окончание табл. 2.3
После вызова редактора функций принадлежности каждой из переменных по умолчанию предлагается три терма с треугольными функциями принадлежности. Для редактирования функций принадлежности вначале необ­ходимо задать диапазон определения значений перемен­ной. Например, для переменной «температура воздуха» для задания диапазона в полях ввода «Range» и «Display Range» необходимо ввести значения [0 40] (рис. 2.8). Для ЛП температуры воздуха количество терм-множеств равно 5, поэтому необходимо добавить еще две функции принад­лежности.
Для добавления функции принадлежности восполь­зуемся командой меню Edit>AddMFs. В появившемся окне (рис. 2.9) установим количество добавляемых функций принадлежности, равным «2». Для удаления терма следует выделить удаляемую функцию принадлежности и нажать клавишу <Delete> на клавиатуре.
Изменим названия термов ЛП. Для изменения имени терма необходимо выделить соответствующий график
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]