Главная Обратная связь Поможем написать вашу работу!

Дисциплины:

Архитектура (936)
Биология (6393)
География (744)
История (25)
Компьютеры (1497)
Кулинария (2184)
Культура (3938)
Литература (5778)
Математика (5918)
Медицина (9278)
Механика (2776)
Образование (13883)
Политика (26404)
Правоведение (321)
Психология (56518)
Религия (1833)
Социология (23400)
Спорт (2350)
Строительство (17942)
Технология (5741)
Транспорт (14634)
Физика (1043)
Философия (440)
Финансы (17336)
Химия (4931)
Экология (6055)
Экономика (9200)
Электроника (7621)






Синтез системы нечеткого логического вывода в среде Matlab



 

Порядок выполнения работы по построению нечеткой БЗ средствами Fuzzy Logic Toolbox представлен на примере принятия решений по выбору конфигурации системного блока персонального компьютера.

1. Редактор FIS может быть открыт с помощью ввода функции fuzzy в окне команд (рис. 3.1). Эта функция позволяет редактировать такие свойства СНЛВ, как: число входных и выходных переменных, тип системы нечеткого вывода, метод дефаззификации и т.д.

 

Рис. 3.1. Запуск FIS-редактора

В результате появляется интерактивное графическое окно (рис.3.2)

Рис. 3.2. Графический интерфейс редактора FIS

Главное окно FIS-редактора содержит 8 меню, а именно три общесистемных меню – File, Edit, View, и пять меню для выбора параметров нечеткого логического вывода – And Method, Or Method, Implication, Aggregation и Defuzzification. Назначения команд в указанных меню представлены в приложении 1.

2. Для решения поставленной задачи нечеткого моделирования использована СНЛВ типа Сугэно. Параметры модели: логические операции (prod – для нечеткого логического «И», probor – для нечеткого логического «ИЛИ»), метод импликации (min), метод агрегации (max) и метод дефаззификации (wtaver) (рис.3.3).

В рассматриваемом примере в редакторе FIS определяем 5 входных переменных: summa (количество финансовых средств), chastota_proc (частота процессора), OZU (объем оперативного запоминающего устройства), HD (объем жесткого диска), video_card (объем видеопамяти видеокарты) и 1 выходную переменную versiya (конфигурация системного блока). Описание переменных приведено в табл. 3.3, 3.4.

Таблица 3.3 Описание входных переменных

Наименование Диапазон изменения Термы Тип функций принадлежности
summa 0..30 low (низкая) average (средняя) high (высокая) трапеция
chastota_proc 0..5 low (низкая) average (средняя) high (высокая) трапеция
OZU 0..8 low (низкая) below average (ниже среднего) average (средняя) above average (выше среднего) high (высокая) гауссова
HD 0..6000 low (низкая) average (средняя) high (высокая) трапеция
video_card 0..4 low (низкая) average (средняя) high (высокая) треугольная

Таблица 3.4 Описание выходных переменных



Наименование Диапазон изменения Термы Значение
versiya 0..1 budget (бюджетная) standard (стандартная) game (игровая) prof (профессиональная) 0.3   0.7

Графический интерфейс редактора FIS после определения входных и выходных переменных, а также задания параметров СНЛВ представлен на рис. 3.3.

 

Рис. 3.3. Графический интерфейс редактора FIS после определения входных и выходных переменных

3. Далее следует определить функции принадлежности термов для каждой из 5 входных и выходной переменных рассматриваемой СНЛВ при помощи редактора функций принадлежности. Редактор может быть открыт при помощи команды Edit ... Membership Function. Функции принадлежности добавляются в рабочую область при помощи команды Edit ... Add MFs. В интерактивном графическом окне необходимо задать количество термов (number of mfs) и тип функций принадлежности (mf type). Кроме того, в редакторе необходимо указать диапазон изменения переменной (свойство Range), имя переменной (свойство Name), параметры функции принадлежности (свойство Params).

Графический интерфейс редактора функций принадлежности на примере входной переменной «Объем оперативного запоминающего устройства» изображен на рис. 3.4.



 

Рис. 3.4. Графический интерфейс редактора функций принадлежности для входной переменной «OZU»

4. Далее зададим правила для разрабатываемой СНЛВ (рис.3.5). Команда Edit ... Rules… открывает редактор базы знаний. Поскольку в рабочем окне отображаются не все переменные нечеткой модели, для управления режимом отображения переменных правил следует воспользоваться специальными кнопками >> и <<, расположенными в нижней правой части редактора правил.

Редактор правил позволяет добавлять новое правило (Add rule), удалять правила (Delete rule) и производить редактирование уже существующих правил (Change rule). При формировании базы правил необходимо учитывать коэффициент уверенности каждого правила, который изменяется от 0 до 1 (свойство Weight).

Рис. 3.5. Графический интерфейс редактора правил после задания базы правил системы нечеткого вывода

5. Теперь можно выполнить анализ построенной СНЛВ для рассматриваемой задачи выбора конфигурации системного блока. Анализ системы выполняется при помощи программы просмотра правил, загрузка которой выполняется командой View ... Rules. Программа предоставляет возможность получать значения выходных переменных в зависимости от значений входных переменных. Ввести значения входных переменных можно с помощью их записи в поле Input. Полученное значение выходной переменной при этом отображается непосредственно после ее имени. Так, для частного случая, когда значение входной переменной количество финансовых средств равно 15; частота процессора – 2,5; объем оперативного запоминающего устройства – 4; объем жесткого диска – 3000; объем видеопамяти видеокарты – 2. Процедура нечеткого вывода, выполненная системой Matlab для разработанной нечеткой модели, выдает в результате значение выходной переменной «Конфигурация системного блока», равное 0,3, что соответствует стандартной конфигурации (рис.3.6).



Рис. 3.6. Графический интерфейс программы просмотра правил после выполнения процедуры нечеткого вывода

6. Для общего анализа разработанной нечеткой модели также может оказаться полезной визуализация соответствующей поверхности нечеткого вывода, реализуемая в программе просмотра поверхности СНЛВ. Загрузка программы выполняется командой View ... Surface. Полученная поверхность позволяет проанализировать зависимость значений выходной переменной от отдельных входных переменных. Комбинации входных переменных задаются в соответствие с их размещением на осях системы координат.

 

Рисунок 3.7 – Визуализация поверхности нечеткого вывода рассматриваемой модели для входных переменных «частота процессора» и «ОЗУ»

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

Задание на лабораторную работу, требования к содержанию отчета

 

1. Изучить методику разработки нечетких БЗ ЭС с использованием среды визуального моделирования Matlab.

2. Загрузить нечеткий редактор FIS Matlab.

 

3. Провести анализ данных предметной области, указанной преподавателем или выбранной самостоятельно:

· определить входные и выходную переменные;

· определить тип системы нечеткого вывода;

· определить параметры модели: логические операции, метод импликации, метод агрегации и метод дефаззификации;

· задать функции принадлежности для каждой из рассматриваемых переменных и интервал их изменения;

· задать правила для разрабатываемой СНЛВ;

· выполнить анализ разработанной системы нечеткого вывода.

4. Построить нечеткую базу знаний, работа которой отражала бы процесс принятия решений экспертом.

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

Контрольные вопросы

 

1. В чем преимущества подхода, основанного на нечетких знаниях?

2. Каковы функции нечеткого редактора FIS?

3. Что такое функция принадлежности? Какие существуют виды функций принадлежности?

4. Какие типы СНЛВ поддерживает Matlab?

5. Какое преимущество предоставляет в инженерии знаний теория нечетких множеств?

6. По какой формуле вычисляется в нечеткой логике функция принадлежности конъюнкции двух нечетких переменных?

7. Как определяется нечеткое множество С в множестве элементов Х?

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

 


ЛАБОРАТОРНАЯ РАБОТА № 4


Просмотров 1009

Эта страница нарушает авторские права




allrefrs.ru - 2021 год. Все права принадлежат их авторам!