Проектирование нечеткой системы управления. Проектирование нечетких систем. Интеллектуальные информационные системы

Рассмотрены вопросы проектирования нечетких систем в пакете Fuzzy Logic Toolbox вычислительной среды MATLAB Даны необходимые сведения в области теории нечетких множеств и нечеткой логики. Приведен теоретический материал по проектированию нечетких систем. Изложены теория нечеткой идентификации, методы нечеткой кластеризации и их применение для экстракции нечетких правил, а также метод принятия решений в нечетких условиях на основе слияния целей и ограничений. Рассмотрены авторские расширения пакета для проектирования нечетких классификаторов, построения иерархических нечетких систем, обучения нечетких баз знаний типа Мамдани, а также для логического вывода при нечетких исходных данных. Книга может использоваться как учебное пособие к университетским курсам по интеллектуальным системам, искусственному интеллекту, теории принятия решений и методам идентификации.
Для проектировщиков систем, будет полезна научным сотрудникам, аспирантам и студентам старших курсов, интересующимся применением теории нечетких множеств в управлении, идентификации, обработке сигналов, а также разработчикам интеллектуальных систем поддержки принятия решений в медицине, биологии, социологии, экономике, политике, спорте и в других областях.

Предисловие

Глава 1. Краткий курс теории нечетких множеств
1.1. Исторический экскурс
1.2. Нечеткие множества
1.2.1. Основные термины и определения
1.2.2. Свойства нечетких множеств
1.2.3. Операции над нечеткими множествами
1.2.4. Функции принадлежности
1.3. Нечеткая арифметика
1.4. Нечеткие отношения
1.5. Нечеткая логика
1.5.1. Лингвистические переменные
1.5.2. Нечеткая истинность
1.5.3. Нечеткие логические операции
1.6. Нечеткий логический вывод
1.6.1. Логический вывод
1.6.2. Основы нечеткого логического вывода
1.6.3. Нечеткие базы знаний
1.6.4. Композиционное правило нечеткого вывода Заде
1.6.5. Нечеткий логический вывод Мамдани
1.6.6. Нечеткий логический вывод Сугено
1.6.7. Нечеткий логический вывод по синглтонной базе знаний
1.6.8. Нечеткий логический вывод для задач классификации
1.6.9. Иерархические системы нечеткого логического вывода
1.6.10. Нейро-нечеткие сети

Глава 2. Теория проектирование нечетких систем
2.1. Идентификация нелинейных зависимостей нечеткими базами знаний
2.1.1. Настройка нечеткой базы знаний Мамдани
2.1.2. Настройка нечеткой базы знаний Сугено
2.1.3. Настройка нечеткой базы знаний для задач классификации
2.2. Нечеткая кластеризация
2.2.1. Введение в кластеризацию
2.2.2. Кластеризация алгоритмами с-средних
2.2.2.1. Четкая кластеризация алгоритмом с-средних
2.2.2.2. Базовый алгоритм нечетких с-средних
2.2.2.3. Обобщения алгоритма нечетких с-средних
2.2.3. Кластеризация горным алгоритмом
2.2.4. Синтез нечетких правил по результатам кластеризации
2.3. Принятие решений в нечетких условиях по схеме Беллмана-Заде
2.3.1. Нечеткие цели, ограничения и решения
2.3.2. Нечеткий многокритериальный анализ вариантов
2.3.3. Нечеткий многокритериальный анализ бренд-проектов
2.3.4. «Что - если». Анализ вариантов

Глава 3. Пакет Fuzzy Logic Toolbox
3.1. Структура и возможности пакета
3.2. Быстрый старт
3.2.1. Разработка нечеткой системы типа Мамдани
3.2.2. Разработка нечеткой системы типа Сугено на основе экспертных знаний
3.2.3. Экстракция из данных нечеткой системы Сугено с помощью ANFIS-редактора
3.2.4. Экстракция нечеткой системы в режиме командной строки
3.3. GUI-модули
3.3.1. Fuzzy Inference System Editor
3.3.1.1. Меню File
3.3.1.2. Меню Edit
3.3.1.3. Меню View
3.3.1.4. Меню And method, Or method, Implication и Aggregation
3.3.1.5. Меню Defuzzification
3.3.2. Membership Function Editor
3.3.3. Rule Editor
3.3.3.1. Меню Edit
3.3.3.2. Меню Options
3.3.4. ANFIS Editor
3.3.4.1. Меню Edit
3.3.4.2. Область визуализации
3.3.4.2. Область свойств ANFIS
3.3.4.3. Область загрузки данных
3.3.4.4. Область генерирования исходной системы нечеткого вывода
3.3.4.5. Области обучения, тестирования и вывода текущей информации
3.3.5. Rule Viewer
3.3.6. Surface Viewer
3.3.6.1. Меню Options
3.3.6.2. Меню координатных осей
3.3.6.3. Поля ввода информации
3.3.7. Findcluster
3.3.7.1. Область визуализации
3.3.7.2. Область загрузки данных
3.3.7.3. Область кластеризации
3.4. Демо-примеры
3.4.1. Запуск основных демо-примеров
3.4.2. Предсказание топливной эффективности автомобиля
3.4.3. Нелинейное шумоподавление
3.4.4. Предсказание временного ряда
3.4.5. Прогнозирование количества автомобильных поездок
3.4.6. Идентификация процесса нагрева воздуха в фене
3.4.7. Жонглирование теннисным шариком
3.4.8. Удержание шарика на коромысле
3.4.9. Парковка грузовика
3.4.10. Регулятор воды в баке
3.4.11. Управление душем
3.4.12. Удержание перевернутого маятника на тележке
3.4.13. Управление рукой робота-манипулятора
3.4.14. Кластеризация алгоритмом нечетких с-средних
3.4.15. Кластеризация ирисов
3.4.16. Методы дефаззификации
3.4.17. Галерея функций принадлежности
3.4.18. Калькулятор чаевых
3.5. Справочник функций пакета Fuzzy Logic Toolbox
3.6. Структуры данных
3.6.1. Структура данных системы нечеткого вывода
3.6.2. Структура файла системы нечеткого вывода
3.6.3. Структуры данных для ANFIS-обучения и кластеризации
3.7. Взаимодействие с другими пакетами
3.7.1. Блоки для пакета Simulink
3.7.2. Си-код машины нечеткого логического вывода

Глава 4. Расширение пакета Fuzzy Logic Toolbox
4.1. Настройка нечетких моделей Мамдани средствами Optimization Toolbox
4.2. Экстракция нечетких моделей Мамдани через нечеткую кластеризацию
4.3. Проектирование нечетких классификаторов
4.4. Нечеткий вывод при нечетких исходных данных
4.5. Проектирование иерархических нечетких систем
4.5.1. Первый способ
4.5.2. Второй способ

Заключение
Литература
Приложение. Интернет-ресурсы по нечетким системам

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Лабораторная работа 2

по дисциплине

ИНТЕЛЛЕКТУАЛЬНЫЕ ИНФОРМАЦИОННЫЕ СИСТЕМЫ

РАЗДЕЛ - « НЕЧЕТКИЕ МНОЖЕСТВА И НЕЧЕТКАЯ ЛОГИКА »

ПРОЕКТИРОВ А НИЕ СИСТЕМ НЕЧЕТКОГО УПРАВЛЕНИЯ

РАБОТА C ОБОЛОЧКОЙ ПРОЕКТИРОВАНИЯ НЕЧЕТКИХ СИСТЕМ CU BICALC

1 Нечеткое управление. Нечеткие и лингвистические переменные

2 Логико-лингвистическое описание систем. Нечеткие модели

3 Модель управления паровым котлом

4 Нечеткие системы

5 Конструктор нечетких систем CubiCalc

6 Знакомство с системой CubiCalc на примере модели управления грузовиком TRACKXY

Задание 1

Задание 2

Задание 3

1 НЕЧЕТКОЕ УПРАВЛЕНИЕ. НЕЧЕТК ИЕ И ЛИНГВИСТИЧЕСКИЕ ПЕРЕМЕННЫЕ

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

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

Нечеткая переменная характеризуется тройкой <, X , >, где - наименование переменной, X - универсальное множество, - нечеткое множество на X, описывающее ограничения на значения нечеткой переменной.

Лингвистической переменной называется набор < ,T,X,G,M>, где - наименование лингвистической переменной; Т - множество ее значений (терм-множество), представляющих собой наименования нечетких переменных, областью определения каждой из которых является множество X. Множество T называется базовым терм-множеством лингвистической переменной; G - синтаксическая процедура, позволяющая оперировать элементами терм-множества T, в частности, генерировать новые термы (значения). М - семантическая процедура, позволяющая превратить каждое новое значение лингвистической переменной, образуемое процедурой G, в нечеткую переменную, т.е. сформировать соответствующее нечеткое множество.

Замечание. Чтобы избежать большого количества символов

Символ используют как для названия самой переменной, так и для всех ее значений;

Пользуются одним и тем же символом для обозначения нечеткого множества и его названия, например терм «молодой », являющийся значением лингвистической переменной = «возраст », одновременно есть и нечеткое множество М («молодой »).

Пример: Пусть эксперт определяет толщину выпускаемого изделия с помощью понятий «малая толщина », «средняя толщина » и «большая толщина », при этом минимальная толщина равна 10 мм, а максимальная - 80 мм. Формализация такого описания может быть проведена с помощью следующей лингвистической переменной < , T, X, G, M >, где - толщина изделия; T - {«малая толщина », «средняя толщина », «большая толщина »}; X - ; G - процедура образования новых термов с помощью связок «и », «или » и модификаторов типа «очень », «не », «слегка » и др.

Например: «малая или средняя толщина », « очень малая толщина » и др.; М - процедура задания на X = нечетких подмножеств А 1 = «малая толщина », А 2 = « средняя толщина », А 3 = «большая толщина », а также нечетких множеств для термов из G(T) в соответствии с правилами трансляции нечетких связок и модификаторов «и », «или », «не », «очень », «слегка » и др. операции над нечеткими множествами вида: А В, АВ, А 2 , А 0,5 и др. Функции принадлежности нечетких множеств: « малая толщина » = А 1 , «средняя толщина » = А 2 , « большая толщина » = А 3 на рис. 1.

Рисунок 1 - Функции принадлежности значений лингвистической переменной «Толщина»

Функция принадлежности нечеткого множества «малая или средняя толщина » представлена на рис. 2.

Рисунок 2 - Функция принадлежности понятия «Малая или средняя толщина»

2 ЛОГИКО-ЛИНГВИСТИЧЕСКОЕ О ПИСАНИЕ СИСТЕМ. НЕЧЕТКИЕ МОДЕЛИ

Логико-лингвистические методы описания систем основаны на том, что поведение исследуемой системы описывается на естественном (или близком к естественному) языке в терминах лингвистических переменных.

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

L 1:если < A 1 > то < B 1 >,

L 2: если < A 2 > то < B 2 >,

L k : если < A k > то < B k >,

где < A i >, i = 1,2,..,k - составные нечеткие высказывания, определенные на значениях входных лингвистических переменных, а < B i >, i = 1,2,..,k - высказывания, определенные на значениях выходных лингвистических переменных. Рассмотрим пример решения задачи нечеткого логического управления: построение модели управления паровым котлом.

3 МОДЕЛЬ УПРАВЛЕНИЯ ПАРОВЫМ КОТЛОМ

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

Цель управления: поддержание заданного давления в котле (зависит от подачи тепла) и заданной скорости двигателя (зависит от открытия дросселя). В соответствии с этим, схема системы управления двигателем выглядит следующим образом:

Рассмотрим одну часть задачи - управление давлением.

Входные лингвистические переменные :

РЕ - отклонение давления (разность между текущим и заданным значениями);

СРЕ - скорость изменения отклонения давления.

Выходная лингвистическая переменная:

НС - изменение количества тепла.

Значения лингвистических переменных:

NB - отрицательное большое;

NM - отрицательное среднее;

NS - отрицательное малое;

NO - отрицательное близкое к нулю;

ZO - близкое к нулю;

PO - положительное близкое к нулю;

PS - положительное малое;

PM - положительное среднее;

PB - положительное большое.

Управляющие правила (15 правил), связывающие лингвистические значения входных и выходных переменных, имеют вид: «Если отклонение давления = А i и, если скорость отклонения давления = В i , то изменение количества подаваемого тепла равно С i », где А i , В i ,С i - перечисленные выше лингвистические значения.

Полный набор правил задавался таблицей:

Отклонение давления РЕ

Скорость изменения отклонения давления СРЕ

Изменение количества подаваемого тепла НС

4 НЕЧЕТКИЕ СИСТЕМЫ

система нечеткий управление

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

Нечеткие правила, обычно имеют продукционную форму, а их вид зависит от типа модели.

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

R 1: ЕСЛИ есть A 11 И есть A 21 И … И есть A n 1 ТО y есть B 1 (1) где - входные лингвистические переменные, y - выходная лингвистическая переменная, а A ij , B i - нечеткие переменные, определяющие их значения.

В нечетких моделях Мамдани как на входе, так и на выходе мы имеем информацию, задаваемую значениями лингвистических переменных.

Пример правила в нечеткой модели Мамдани:

ЕСЛИ влажность ВЫСОКАЯ и температура СРЕДНЯЯ ТО установить угол поворота клапана МАЛЕНЬКИМ.

Общая схема нечетких систем Мамдани представлена ниже

Когда на входы нечеткой системы поступают конкретные значения параметров, модель осуществляет нечеткий вывод и формирует непосредственное значение на выходе модели. Пример нечеткого вывода в максиминных моделях Мамдани с дефаззификацией по методу центра тяжести представлен на рисунке 1. Нечеткий вывод на каждом из правил R i нечеткой модели здесь осуществляется следующим образом:

Вычисляем степень принадлежности

Находим

Рисунок 1 - Пример вывода на нечеткой модели Мамдани

Находим нечеткое множество

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

5 КОНСТРУКТОР НЕЧЕТКИХ СИСТЕМ CUBICALC

Система CubiCalc является интерактивной оболочкой для проектирования моделей систем нечеткого управления, основанных на нечетких продукционных правилах.

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

Нечеткие продукционные правила в системе CubiCalc имеют следующий вид (1).

Примером такого правила может служить следующее

ЕСЛИ давление в резервуаре маленькое И температура воды большая, И рост давления маленький, И рост температуры небольшой ТО немного повернуть регулятор потока воды.

В данном правиле

Давление,

Температура,

Рост давления,

Рост температуры,

Угол поворота регулятора потока воды - есть лингвистические переменные, принимающие соответственно следующие значения в виде нечетких переменных - маленькое, большая, маленький, небольшой, немного.

6 ЗНАКОМСТВО С СИСТЕМОЙ CUBICALC НА ПРИМЕРЕ МОДЕЛИ УПРАВЛЕНИЯ ГРУЗОВИКОМ TRACKXY

1. Запустить систему CubiCalc и познакомиться с основными функциями меню данной системы.

2. Загрузить демонстрационную программу TRUCKXY -модель системы управления грузовиком для въезда его в узкие ворота.

3. В режиме пошагового исполнения (клавиша (F8)) поработать с данной моделью, запустив ее несколько раз, исследовав траекторию движения грузовика (окно Track Yard), активацию нечетких правил (окно X vs Y activation), результат нечеткого вывода в виде угла нечеткого множества угла поворота руля (окно Theta Resultant) (рис. 2). Несколько траекторий движения грузовика внести в отчет по лабораторной работе.

Формально модель работы данной системы задается в разделе PROJECT меню и включает в себя следующие основные разделы.

1. Меню Variables - конструктор входных, выходных лингвистических и временных переменных модели.

2. Меню Adjectives - конструктор лингвистических переменных модели, позволяющий формировать их значения - нечеткие переменные.

3. Меню Values - исследование текущих значений определенных в модели переменных.

4. Меню Rules - конструктор нечетких продукционных правил модели вида (1), согласно которым происходит функционирование системы.

5. Меню Initialization - раздел инициализации значений переменных модели.

6. Меню Preprocessing (предобработка) - раздел действий, выполняемых перед каждым циклом отработки нечетких правил.

7. Меню Postprocessing (постобработка) - раздел действий, выполняемых после каждого цикла отработки нечетких правил.

8. Меню Simulation (моделирование) - раздел действий, определяющих функционирование нечеткой модели (изменение значений переменных моделей по результатам нечеткого вывода).

9. Plots - графики, отображающие работу модели.

Вернемся к модели управления грузовиком. Работа данной модели основана на следующих интуитивных соображениях эксперта -

Расстояние грузовика до ворот по Y описывается с помощью двух категорий - БОЛЬШОЕ и МАЛЕНЬКОЕ.

Если расстояние БОЛЬШОЕ, то поступаем по обычным правилам модели (в модели они заданы), если МАЛЕНЬКОЕ, то стараемся отогнать грузовик от нижней границы и выгнать на середину площадки.

В модели управления грузовиком кроме расстояния до ворот Y вводятся, также следующие переменные -

Эти переменные

Значения лингвистической переменной Phi (ориентация грузовика ):

VL0 - Намного левее от нулевого угла.

L0 - Левее от нулевого угла

M0 - Более-менее нулевой угол.

R0 - Правее от нулевого угла.

VR0 - Намного правее от нулевого угла.

VL90 - Намного левее 90 градусов

L90 - Левее 90 градусов

M90 - Более менее 90 градусов

R90 - Правее 90 градусов

VR90 - Намного правее 90 градусов

VL180 - Намного левее 180 градусов

L180 - Левее 180 градусов

M180 - Более-менее 180 градусов

R180 - Правее 180 градусов

VR180 - Намного правее 180 градусов

Phi 45 (ориентация грузовика по отношению к 45 градусов ):

VL45 - Намного правее 45 градусов

L45 - Левее 45 градусов

M45 - Более - менее 45 градусов

R45 - Правее 45 градусов

VR45 - Намного правее 45 градусов

Значения лингвистической переменной Phi 135 (ориентация грузовика по отношению к 135 градусам):

VL135 - Намного левее 135 градусов

L135 - Левее 135 градусов

M135 - Более-менее 135 градусов

R135 - Правее 135 градусов

VR135 - Намного правее 135 градусов

X (горизонтальная позиция ):

LG_LEFT - Намного левее от центра

LEFT - Левее центра

LG_LCTR - Близко к центру слева

LCTR - Очень близко к центру слева

CENTER - Более-менее в центре

RCTR - Очень близко к центру справа

LG_RCTR - Близко к центру справа

RIGHT - Правее центра

LG_RIGHT - Намного правее справа от центра

Значение лингвистической переменной Theta (Поворот руля ):

NB - Намного против часовой стрелки

NM - Средне против часовой стрелки

NS - Немного против часовой стрелки

ZE - Нулевой поворот

PS - Немного по часовой стрелке

PM - Средне по часовой стрелке

PB - Намного по часовой стрелке

3. Вызвать пункт меню Project -> Variables, изучить все линвистические переменные модели TRACKXY, изучить их семантику и ответить на следующие вопросы (ответы на них внести в отчет):

3.1. Сколько переменных, и какие присутствуют в разработанной модели?

3.2. Какие типы переменных поддерживает система CubiCalc?

3.3. Какие переменные в модели TRACKXY являются входными, какие выходными, какие временными?

3.4. Что понимается в модели CubiCalc под понятием «Повернуть руль намного против часовой стрелки»? «Находиться очень близко к центру слева»? Внесите их в отчет и дайте естественно языковую интерпретацию их значениям.

3.5. Для каждой их нечетких переменных модели проинтерпретировать два произвольных их значения (их функции принадлежности). Внести их в отчет и проинтерпретировать семантику.

4. Войти в раздел Project -> Rules и изучить правила, по которым функционирует модель TRUCKXY. Ответить на следующие вопросы:

4.1. Сколько правил включает нечеткая модель системы?

4.2. Переведите на естественный язык 10 любых правил данной системы и внесите их естественно-языковую интерпретацию в отчет по лабораторной работе.

5. Изучите действия, которые выполняются на фазе инициализации системы?

6. Во вкладке Simulation изучите действия, по которым моделируется поведение системы на каждой итерации.

7. Во вкладке Plots изучите графики, которые отражают результаты работы системы. Какие типы графиков доступны для создания?

8. Запустить модель на выполнение и посмотреть результаты работы модели.

9. Попытаться изменить функционирование модели - например, увеличьте скорость автомобиля, измените значения лингвистических переменных (например, переопределите ряд значений лингвистической переменной X). После этого заново запустить модель и изучить, насколько корректно она функционирует, будет ли грузовик въезжать в ворота в данном случае. Показать результаты модифицированной модели преподавателю.

ЗАДАНИЕ 1

Задача: имеется некая техническая система, на вход которой подается информация с двух датчиков - датчика температуры (пределы изменения 0 - 100 С) и давления (пределы изменения 100 - 1000 МПа).

Назначение системы - управление вентилем подачи пара согласно следующему набору правил.

Вентиль может быть повернут влево или вправо максимум на 90 градусов (влево - отрицательный угол, то есть пределы изменения угла поворота: [-90, 90])

Набор правил.

1. Если температура маленькая и давление маленькое, то повернуть вентиль очень сильно влево.

2. Если температура маленькая и давление среднее, то повернуть вентиль сильно влево.

3. Если температура маленькая и давление большое, то повернуть вентиль немного влево.

4. Если температура средняя и давление маленькое, то повернуть вентиль немного влево.

5. Если температура средняя и давление среднее, то повернуть вентиль в нейтральное положение.

6. Если температура средняя и давление большое, то повернуть вентиль немного вправо.

7. Если температура большая и давление малое, то повернуть вентиль немного вправо.

8. Если температура большая и давление среднее, то повернуть вентиль сильно вправо.

9. Если температура большая и давление большое, то повернуть вентиль очень сильно вправо.

Модель изменения температуры и давления (simulation) после выполнения каждого цикла имеет следующий вид:

Температура = температура - угол поворота вентиля / 4 + uniform () * 10-uniform() * 10 + Давление / 100.

Давление = давление - угол поворота вентиля / 4 + uniform () * 10-uniform() * 10 + Темпаратура / 10.

В 5 случаях из 100 после выполнения каждого цикла давление поднимается на 25 МПа.

Перед первым запуском , проинициализировать данные переменные следующим образом:

Температура = 50

Давление = 600

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

Поработать с созданной моделью. Что Вы можете сказать по поводу ее устойчивости? Добиться устойчивой работы модели (без выходов параметры за предельные для них границы) в течение длительного времени.

ЗАДАНИЕ 2

В системе CubiCalc возможно задание правил не в альтернативной форме, а в нормализованной. В данном случае указывать селектор SYNTAX_ALTERNATE в блоке правил не нужно.

При формировании нечетких правил в нормализованной форме, их форма записи является более расширенной, чем в альтернативной. В нормализованной форме правила функционирования модели нечеткой системы записываются следующим образом: (Вес правила) IF Условие THEN заключение

В условии перечисляются перечень условий вида Лингвистическая переменная Is значение , объединенные связками И (AND), ИЛИ (OR), НЕ (NOT). Вместо AND может использоваться знак &, вместо OR знак |, вместо NOT знак!.

Вес правила определяет степень его универсальности (достоверности).

К значениям переменных в условиях могут применяться модификаторы ОЧЕНЬ (VERY) и немного (SOMEWHAT).

Пример правила - (0.7) IF X is Large AND (Y is Small OR U is Negative) THEN Z is Large естественно-языковая интерпретация которого выглядит следующим образом: «С достоверностью 0.7, если X является большим и (Y малое или U отрицательное), то Z является большим». Где X, Y,U - лингвистические переменные, а большое, маленькое, отрицательное - их значения.

ЗАДАНИЕ 3

Задание: входами технической системы является информация с трех датчиков - яркость света (1-1000 Лк), температура воды (0-60), давление (100-1000 МПа). Назначение системы - управление углом поворота вентиля [-90; 90] согласно следующему набору правил.

Набор прави.

1. (Вес 1) ЕСЛИ освещенность малая И температура малая И давление малое ТО повернуть вентиль сильно влево.

2. (Вес 0.8) ЕСЛИ освещенность малая И температура малая И давление среднее ТО повернуть вентиль сильно влево.

3. (Вес 0.6) ЕСЛИ освещенность малая И температура малая И давление большое ТО повернуть вентиль достаточно влево.

4. (Вес 1) ЕСЛИ освещенность малая И температура средняя И давление малое ТО повернуть вентиль сильно влево.

5. (Вес 0.3) ЕСЛИ освещенность малая И температура средняя И давление среднее ТО повернуть вентиль в нейтральное положение.

6. (Вес 0.9) ЕСЛИ освещенность малая И температура средняя И давление большое ТО повернуть вентиль достаточно вправо.

7. (Вес 0.8) ЕСЛИ освещенность малая И температура большая И давление малое ТО повернуть вентиль достаточно вправо.

8. (Вес 1) ЕСЛИ освещенность малая И температура большая И давление среднее ТО повернуть вентиль сильно вправо.

9. (Вес 1) ЕСЛИ освещенность малая И температура немного (SOMEWHAT) большая И давление немного (SOMEWHAT) большое ТО повернуть вентиль сильно вправо.

10. (Вес 1) ЕСЛИ освещенность большая И (Температура очень (VERY) малая ИЛИ давление ОЧЕНЬ (VERY) малое) ТО повернуть вентиль сильно влево.

11. (Вес 0.6) ЕСЛИ освещенность большая И температура средняя И давление среднее ТО повернуть вентиль в нейтральное положение.

12. (Вес 0.8) ЕСЛИ температура большая И давление большое ТО повернуть вентиль достаточно вправо.

Таким образом, техническая система имеет 3 входных лингвистических переменных:

1. Яркость со значениями:

Большая.

2. Температура со значениями

Средняя;

Большая.

3. Давление со значениями

Среднее;

Высокое

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

Сильно влево;

Достаточно влево;

Нейтральное положение;

Достаточно вправо;

Сильно вправо.

Остальные значения лингвистических переменных образуются от элементов базового терм-множества с помощью модификаторов ОЧЕНЬ (VERY), НЕМНОГО (SOMEWHAT), НЕ (NOT)

Модель изменения яркости, температуры и давления (simulation) после выполнения каждого цикла имеет следующий вид:

Температура = температура - угол поворота вентиля / 4 + uniform () * 10-uniform() * 10 + Давление / 200 + Яркость / 200.

Давление = давление - угол поворота вентиля / 4 + uniform () * 10-uniform() * 10 + Темпаратура / 10.

В 5 случаях из 100 после выполнения каждого цикла температура поднимается вверх на 5 градусов.

В 5 случаях из 100 после выполнения каждого цикла давление поднимается на 5 МПа.

Яркость = Яркость + uniform ()-uniform (); ЕСЛИ Яркость > 999 ТО Яркость = 999; ЕСЛИ Яркость < 1 ТО Яркость = 1;

Где uniform () - случайное число от 0 до 1.

Перед первым запуском , проинициализировать данные переменные следующим образом: Температура = 50, Давление = 600, Яркость = 500. Создать модель в системе CubiCalc, функционирующую по выше описанным законам и отображающую диаграмму срабатывания правил, графики изменения значений переменных давления и температуры с течением времени. Исследовать работу модели и сделать выводу по устойчивости ее работы. Добиться того, чтобы модель работала устойчиво с течением длительного времени.

Размещено на Allbest.ru

Подобные документы

    Основные этапы систем нечеткого вывода. Правила нечетких продукций, используемые в них. Нечеткие лингвистические высказывания. Определение алгоритмов Цукамото, Ларсена, Сугено. Реализации нечеткого вывода Мамдани на примере работы уличного светофора.

    курсовая работа , добавлен 14.07.2012

    Исследование методов автоматического проектирования нечетких систем управления (НСУ). Методы автоматической настройки семантики лингвистических переменных. Искусственные нейронные сети, генетические алгоритмы. Коэволюционный алгоритм для формирования НСУ.

    дипломная работа , добавлен 02.06.2011

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

    диссертация , добавлен 30.01.2014

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

    курсовая работа , добавлен 16.02.2015

    Общие понятия и классификация локальных систем управления. Математические модели объекта управления ЛСУ. Методы линеаризации нелинейных уравнений объектов управления. Порядок синтеза ЛСУ. Переходные процессы с помощью импульсных переходных функций.

    курс лекций , добавлен 09.03.2012

    Основные цели и задачи построения систем распознавания. Построение математической модели системы распознавания образов на примере алгоритма идентификации объектов военной техники в автоматизированных телекоммуникационных комплексах систем управления.

    дипломная работа , добавлен 30.11.2012

    Методы проектирования систем автоматического управления: экспериментальный и аналитический. Моделирование замкнутой системы управления. Системы в динамике: слежение, стабилизация, алгоритм фильтрации. Математические модели систем, воздействий, реакция.

    контрольная работа , добавлен 05.08.2010

    Теория автоматического управления как наука, предмет и методика ее изучения. Классификация систем автоматического управления по различным признакам, их математические модели. Дифференциальные уравнения систем автоматического управления, их решения.

    контрольная работа , добавлен 06.08.2009

    Область применения систем управления. Разработка математической модели исходной систем автоматического управления (САУ). Синтез корректирующих устройств. Анализ качества исходной и скорректированной САУ. Расчёт параметров корректирующих устройств.

    курсовая работа , добавлен 25.02.2014

    Построение модели объекта управления. Получение модели "вход-состояние-выход". Методика определения параметров регулятора. Схема имитационного моделирования системы и статистического анализа во временной области. Анализ случайных величин и процессов.

Лекция № 6. ПРОЕКТИРОВАНИЕ НЕЧЕТКИХ АЛГОРИТМОВ УПРАВЛЕНИЯ ДИНАМИЧЕСКИМИ ОБЪЕКТАМИ

Общие принципы построения интеллектуальных систем управления на основе нечеткой логики

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

Возможны различные ситуации, в которых могут использоваться нечеткие модели динамических систем:

Когда имеется некоторое лингвистическое описание, которое отражает качественное понимание (представление) процесса и позволяет непосредственно построить множество нечетких логических правил;

Имеются известные уравнения, которые (хотя бы грубо) описывают поведение управляемого процесса, но параметры этих уравнений не могут быть точно идентифицированы;

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

С помощью входных/выходных данных оцениваются нечеткие логические правила поведения системы.

Первые результаты практического применения алгоритмов нечеткой логики к управлению реальными техническими объектами были опубликованы в 1974 г. в работах профессора Лондонского Королевского колледжа Э.Х. Мамдани, посвященных проблеме регулирования парогенератора для электростанции. В этих работах была предложена ставшая сегодня классической структурная схема системы нечеткого управления (рис. 3.1).

Под нечетким управлением (Fuzzy Control) в данном, случае понимается стратегия управления, основанная на эмпирически приобретенных знаниях относительно функционирования объекта (процесса), представленных в лингвистической форме в виде некоторой совокупности правил.

Рис. 5.1. Структурная схема системы нечеткого управления

На рис. 3.1 ДФ - динамический фильтр, выделяющий, помимо сигналов ошибок управления x 1 =r 1 -y 1 и х 3 =r 2 -у 2 , производные от этих сигналов и ;

РНЛ - регулятор на основе нечеткой логики ("нечеткий регулятор”, включающий в себя базу знаний (конкретнее - базу правил) и механизм логического вывода;

соответственно векторы задающих воздействий (уставок), входов и выходов РНЛ, а также выходов объекта управления (т.е. парогенератора); т - операция транспонирования вектора.

В качестве входов и выходов РНЛ выступают:

Отклонение давления в паровом котле (y 1) по отношению к и требуемому (номинальному) значению (r 1);

Скорость изменения Р Е;

Отклонение скорости изменения давления (у 2) по отношению к его заданному значению (r 2);

Скорость изменения SE;

u 1 =H c – изменение степени подогрева пара;

U 2 =: Тс - изменение положения дросселя.

Мамдани предложил рассматривать эти величины как лингвистические переменные, каждая из которых может принимать одно из следующих значений из множества

L= {NB,NM,NS,NO,PO,PS,PM,PB}.

Здесь 1-я буква в обозначении указывает знак числовой переменной и соответствует английскому слову Negative ("отрицательное") или Positive ("положительное"), 2-я буква говорит об абсолютном значении переменной: Big ("большое"), Middle ("среднее"), Small ("малое") или О ("близкое к нулю"). Например, символ NS означает "отрицательное малое".

В процессе работы ИСУ в каждый момент времени используется один из двух нечетких алгоритмов: по первому из них осуществляется регулирование давления в котле путем изменения подогрева пара Н c , по второму поддерживается требуемая скорость изменения давления с помощью изменения положения регулирующего дросселя Т с. Каждый из алгоритмов состоит из ряда правил – высказываний, записанных на естественном языке, типа:

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

"Если скорость изменения давления чуть ниже нормы и в то же время эта скорость резко растет, то следует изменить положение дросселя на положительную, достаточно малую, величину".

Используя введенные выше обозначения, можно переписать эти правила в следующем виде:

"ЕСЛИ (P E =NB И C PE =HE (NB ИЛИ NM), ТО Н С =РВ";

"ЕСЛИ (S E =NO И C SE =PB), TO T C =PS".

Реализация предложенных алгоритмов нечеткого управления при этом принципиально отличается от классических ("жестких") алгоритмов, построенных на основе концепции обратной связи (Feed-back Control) и, по существу, просто воспроизводящих некоторую заданную функциональную зависимость или дифференциальное уравнение.

Нечеткий регулятор берет на себя те функции, которые обычно выполняются опытным и умелым обслуживающим персоналом. Эти функции связаны с качественной оценкой поведения системы, анализом текущей меняющейся ситуации и выбором наиболее подходящего для данной ситуации способа управления объектом. Данная концепция управления получила название опережающего (или упреждающего) управления (Feed-Forward Control).

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

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

Как видно из данной схемы, формирование управляющих воздействий u 1 ,u 2 ,...,u m включает в себя следующие этапы:

а) получение отклонений управляемых координат и скоростей их изменения – х 1 ,x 2 ,...,х n ;

б) "фаззификация" этих данных, т.е. преобразование полученных значений к нечеткому виду, в форме лингвистических переменных;

в) определение нечетких (качественных) значений выходных переменных u 1 ,u 2 ,...,u m (в виде функций их принадлежности соответствующим нечетким подмножествам) на основе заранее формулированных правил логического вывода, записанных в базе правил;

г) "дефаззификация", т.е. вычисление реальных числовых значений выходов u 1 ,u 2 ,...,u m , используемых для управления объектом.

Рис. 3.2. Блок-схема нечеткого регулятора

Помимо представленного на рис. 3.1 варианта "чистого" использования нечеткого управления, существуют и другие варианты построения ИСУ с нечеткими регуляторами. Так, в классической теории регулирования широкое распространение получило использование ПИД - регулятора, выходной сигнал которого вычисляется по формуле

(3.1)

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

Возможное использование нечеткого регулятора (НР) для автоматической настройки (адаптации) указанных параметров ПИД - регулятора показано на рис. 3.3,а. Другие варианты применения HP – формирование уставок обычных регуляторов (рис. 3.3,6); подключение параллельно ПИД - регулятору (рис. 3.3, в); управление с предварительной оценкой характеристик сигналов (ОХС), получаемых с датчиков, на основе интерпретации их значимости, выделения обобщенных показателей качества и т. п. с последующей обработкой с помощью алгоритмов нечеткой логики (рис. 3.3,г).

Рис. 3.3. Структуры ИСУ с нечеткими регуляторами

В качестве предпосылок к применению нечетких регуляторов обычно называются:

Большое число входных параметров, подлежащих анализу (оценке);

Большое число управляющих воздействий (многомерность);

Сильные возмущения;

Нелинейности;

Неточности математических моделей программы регулирования;

Возможность использования технических знаний "know - how".

Подводя итог сказанному, отметим еще раз те области применения, в которых использование нечетких регуляторов оказывается более эффективным по сравнению с традиционными алгоритмами управления. Это:

1) приложения, которые пока были не связаны с автоматизацией, требующие применения "know - how", например, пивоварение (где можно воспользоваться знаниями экспертов с целью повышения качества продукции), подъемные краны (для повышения производительности рабочего персонала) и т. п.;

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

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

Постановка задачи. Спроектировать нечеткую систему управления, имеющую статическую передаточную характеристику следующего вида:

Вариант 1. y = sin(x), x  [-,].

Вариант 2. y = cos(x), x  .

Вариант 3. y = (2) -1/2 exp(-x 2 /2), x  [-3,3].

Вариант 4. y = (2/)arctg(x), x  [-,].

Вариант 5. y = (1/)arcctg(x), x  [-,].

Вариант 6. y = th(x) = (e x -e -x)/ (e x +e -x), x  [-,].

Вариант 7. y = e -x sin(x), x  [-,].

Вариант 8. y = e -x cos(x), x  .

Подготовка к лабораторной работе.

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

    По полученной кусочно-линейной аппроксимирующей зависимости формируются функции принадлежности для входной и выходной переменных нечеткой системы.

    Входным и выходным лингвистическим переменным и их термам присваиваются имена и аббревиатуры.

    Формируется база правил аппроксимации.

Порядок выполнения работы:

    Загрузить fuzzyTECH MP Explorer.

    Для создания нового проекта выбрать строку «N ew» пункта главного меню «F ile». На вопрос программы «Generate system?» ответить утвердительно. В появившемся диалоговом окне «Generate system» задать следующие параметры нечеткой системы:

    число входных лингвистических переменных в поле ввода «I nput LVs:» (в данной работе 1);

    число выходных лингвистических переменных в поле ввода «O utput LVs:» (в данной работе 1);

    число термов на входную лингвистическую переменную в поле ввода «Input t erms/LV:» (по результатам домашней подготовки);

    число термов на выходную лингвистическую переменную в поле ввода «Output te rms/LV:» (по результатам домашней подготовки);

    число блоков правил в поле ввода «R ule blocks:» (в данной работе 1 блок правил).

Зафиксировать результаты ввода нажатием кнопки «ОК». В результате в окне «Project Editor» формируется условное графическое изображение проектируемой нечеткой системы, а в окне лингвистических переменных «LV» список с предопределенными системными именами для входных и выходных переменных: in1, out1. На условном графическом изображении прямоугольник слева со схематическим рисунком функций принадлежности и именем «in1» представляет входную переменную, прямоугольник справа с рисунком дефазификации и именем «out1» отображает выходную переменную. В центре находится блок правил.

3. Для изменения имени лингвистической переменной и ввода ее термов необходимо выделить переменную из списка в окне «LV» (щелчком левой клавиши мышки на имени переменной) и нажать правую клавишу мышки для вызова всплывающего контекстного меню. В контекстном меню выбрать строку «A ttributes ...». В появившемся окне «Rename Variable» можно поменять имя переменной в поле «N ame:» и нажать на клавишу «Edit ...» для ввода термов для этой переменной.

В появившемся окне все термы в списке «T erm» также имеют предопределенные имена, которые можно поменять похожим образом: выделить из списка требуемый терм и вызвать из контекстного меню строку «A ttributes ...». Новое имя терма вводится в поле «T erm Name». Здесь же можно поменять форму нечеткого множества терма (группа радиопереключателей «S hape») и положение терма в списке (список «P osition»).

Перед определением функций принадлежности необходимо задать область определения лингвистической переменной. Для этого с помощью двойного щелчка левой кнопкой мыши на строке «Base_Variable» перейти в окно «Base Variable». Минимальное («Min :») и максимальное («M ax:») значение диапазона («Range») задаются в полях колонки «Shell Values». В этом окне можно также поменять подпись под графиком функций принадлежности в поле «B ase Variable Name».

Определение функции принадлежности может происходить двумя способами:

    определить, какая из опорных точек функции принадлежности (прямоугольники на графике), имеющей тот же цвет, что и имя терма, отмечена «галочкой» внутри. Задать координаты этой опорной точки в полях ввода «x », «y »;

    выделить опорную точку щелчком левой клавиши мышки. Нажать левую клавишу и, не отпуская, переместить прямоугольник опорной точки в требуемое место графика и там освободить клавишу.

4. После ввода всех лингвистических переменных и их термов необходимо создать базу правил нечеткой системы. Для этого следует дважды щелкнуть левой клавишей мышки на блоке правил условного графического изображения нечеткой системы. В результате откроется окно редактора правил «Spreadsheet Rule Editor», в котором перечислены все возможные комбинации правил. Необходимо отметить последовательно все правила, которые не нужны для работы системы, щелчками левой клавиши мышки на номерах соответствующих правил и удалить их разом нажатием клавиши «Del» с последующим утвердительным ответом на запрос системы о необходимости удаления. После этого закрыть окно редактора правил.

    Открыть двойным щелчком мышки на прямоугольнике входной переменной условного графического изображения окно интерфейсных опций «Interface Options» и проверить, что установлен радиопереключатель «Fast Computation of MBF» группы «INPUT Fuzzification:» и в списке интерфейсных переменных «I nterface Variable:» указана правильная входная переменная. Аналогичным образом открыть то же окно для выходной переменной и проверить установку метода дефазификации «CoM» (Center of Maximum) и корректность выходной переменной в списке интерфейсных переменных.

    Для получения передаточной характеристики нечеткой системы сформировать входное воздействие, линейно изменяющееся во всем допустимом диапазоне значений. Для этого выбрать строку «P attern Generator» пункта главного меню «D ebug». В появившемся окне «Pattern Generator» задать начальное значение в поле ввода «F rom:», конечное в поле ввода «То:» и шаг изменения в поле «S tep:». Для формирования файла входного воздействия нажать на кнопку «G enerate ...». Указать имя файла воздействия в окне сохранения файла «Generate Pattern To ...» и сохранить его нажатием кнопки «ОК». Закрыть окно «Pattern Generator» кнопкой «Close».

    Вызвать функцию «F ile Recorder» из меню «D ebug». В окне «Read File Control Information From ...» указать в поле «Filen ame» имя файла со сформированным входным воздействием и нажать на кнопку «ОК». В результате откроются окна «Debug: File Recorder» и «File Control».

    Сформировать окно для построения графика передаточной характеристики. Для этого вызвать функцию «Time P lot ...» из меню «A nalyzer». Задать конфигурацию графического вывода в окне «Time Plot Configuration» следующим образом:

    в списке «L Vs:» выделить щелчком левой клавиши мыши выходную переменную;

    переместить эту переменную в окно «P lot Items:» нажатием на кнопку «> >»;

    завершить ввод конфигурации нажатием кнопки «ОК».

После этого откроется окно для графика передаточной характеристики «Time Plot - 1». Разместить окна «Time Plot - 1» и «File Control» на экране так, чтобы они не перекрывали друг друга. Окно «Debug: File Recorder» при этом может быть перекрыто этими окнами.

    Получить график передаточной характеристики, используя окно «File Control». Для управления процессом используются кнопки поля «Control», похожие на клавиши плейера, расположенные в следующем порядке слева направо:

    переход к первой точке входного воздействия;

    автоматическая перемотка назад к первой точке;

    пошаговая перемотка назад к первой точке;

  • пошаговая перемотка вперед к последней точке;

    автоматическая перемотка вперед к последней точке;

    переход к последней точке входного воздействия.

Для получения графика нажать кнопку автоматической перемотки вперед.

    После зарисовки графика полученной передаточной характеристики закрыть окно «Time Plot - 1», перейти опять к первой точке входного воздействия и перемотать входное воздействие в пошаговом режиме, фиксируя вход («I nputs:») и выход («O utputs:») системы в окне «Debug: File Recorder». Эти данные будут использоваться для оценки точности аппроксимации передаточной характеристики. Закрыть окно «Debug: File Recorder», перейти опять к первой точке входного воздействия и открыть окно с функциями принадлежности выходной переменной, дважды щелкнув левой клавишей мыши на имени переменной в окне «LV». Изучить и зарисовать процесс дефазификации по методу «CoM» в пошаговом режиме.

    Изменить установку метода дефазификации с «CoM» на «МоМ» (Mean of Maximum). Для этого необходимо перейти в окно «Project Editor» либо щелкнув на нем левой клавишей мыши, либо выбрав его из списка окон в меню «W indow» и открыть двойным щелчком мышки на прямоугольнике выходной переменной условного графического изображения окно интерфейсных опций «Interface Options», чтобы установить радиопереключатель «MoM» группы «OUTPUT Defuzzification:». После этого следует повторить вышеописанную процедуру получения передаточной характеристики для нового метода дефазификации.

    Закрыть все открытые окна и завершить работу программы (строка «Ex it» пункта главного меню «F ile»).

Проектирование нечетких систем

Нечеткие системы (независимо от того, являются ли они нечеткими моделями или нечеткими контроллерами) (рис. 6) включают два главных компонента:

· Базу знаний (БЗ), в которой хранятся доступные или приобретенные знания о задаче, требующей решения, в форме нечетких правил;

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

Оба этих компонента должны быть спроектированы так, чтобы построить систему для конкретного приложения:

· БЗ формируют из знаний экспертов или путем обучения с помощью машинных методов;

· Механизм инференции строят путем выбора нечетких операторов для каждого компонента (конъюнкция, импликация, дефаззификация и т.п.).

В ряде случаев операторы также параметризуются и бывают настроены автоматическими методами.

Рис. 7

Проектирование БЗ затрагивает две подзадачи:

1. Определœение базы данных (БД):

· Универсум для переменных;

· Масштабирующие коэффициенты или функции;

· Гранулированность (число лингвистических терм) для каждой переменной;

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

2. Составление базы правил (БП): формулировка базовых правил.

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

Классификация генетических нечетких систем

С точки зрения оптимизации, чтобы найти соответствующую нечеткую систему, нужно ее представить как эквивалентную параметрическую структуру и затем определить значения параметров, обеспечивающих оптимум для конкретной функции приспособленности. По этой причине первый шаг в проектировании ГНЛС решить вопрос о том, какая часть нечеткой системы подлежит оптимизации путем кодирования ее параметров в хромосомы. В этом разделœе мы представим классификацию ГНЛС, соответствующую различным частям нечеткой системы, кодируемым с помощью генетической модели.

Обычно методы проектирования ГНЛС разделяют на два процесса, настройка (ᴛ.ᴇ. адаптация) и обучение . При этом будем исходить из факта͵ существует или нет исходная БЗ, включая БД и БП. Тогда в рамках ГНЛС мы вводим следующее делœение.

· Генетическая настройка. В случае если существует БЗ, мы применяем процесс генетической настройки для улучшения свойств нечеткой системы, но не изменяем БП. Т.е. мы настраиваем параметры НЛС с целью улучшения ее свойств, сохраняя неизменной БП.

· Генетическое обучение. Вторая возможность обучать компоненты БП, к которым можно отнести адаптацию механизма инференции. Т.е. мы затрагиваем обучение компонентов БП, наряду с другими компонентами НЛС.

1) Генетическая настройка базы данных. Осуществляется путем определœения предварительно вида и параметров масштабирующих функций входа и выхода, а также функций принадлежности, и затем настройки этих параметров и тем самым изменения формы масштабирующих функций и функций принадлежности с помощью ГА (рис. 8).

2) Генетическое обучение базы правил . Генетическое обучение БП предполагает предопределœенное множество функций принадлежности в БД, к которым правила обращается посредством лингвистических терм.

Когда рассматривается задача обучения базы правил, открывается широкий диапазон возможностей. Имеется три главных подхода: питтсбургский, мичиганский и итеративный методы обучения. Питтсбургский и мичиганский подходы являются наиболее распространенными методами для обучения правил, разработанные в области ГА. Первый из них характеризуется представлением всœего набора (совокупности) правил как генетического кода (хромосомы), «хромосома=набор правил», сохраняя неизменной популяцию кандидатов на роль правил и, используя селœекцию, и генетические операторы для создания новых поколений наборов правил. Мичиганский подход рассматривает другую модель, в которой члены популяции являются отдельными правилами, «хромосома=правило» и набор правил представляется всœей популяцией. В третьем случае, итеративном методе с помощью хромосом кодируют отдельные правила, и новое правило настраивается и добавляется в набор правил, итеративным способом.