close

Вход

Забыли?

вход по аккаунту

?

lab8 (5)

код для вставкиСкачать
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ, МОЛОДЕЖИ И СПОРТА УКРАИНЫ
ВОСТОЧНОУКРАИНСКИЙ НАЦИОНАЛЬНЫЙ УНИВЕРСИТЕТ
ИМ. В. ДАЛЯ
КАФЕДРА "СИСТЕМНАЯ ИНЖЕНЕРИЯ"
"Теория систем"
Лабораторная работа №8
Тема: "Проектирование и использование систем нечеткого вывода. Нечеткая модель управления контейнерным краном"
Выполнил: студент: Московченко С.В.
группа: КТ-792
Проверил: Лехциер О. Л.
Луганск 2013
Цель занятия: освоить методику проектирования системы нечеткого вывода на основе разработки и использования баз знаний продукционных правил с использованием алгоритмов Мамдани и Сугено.
1. Проектирование и использование системы нечеткого вывода.
С помощью Fuzzy Logic Toolbox изобразить поверхность функции на множестве .
Проектирование системы нечеткого вывода (СНВ) следует производить на основе графического изображения указанной зависимости. Для этого выполним следующие команды:
%%Построение графика функции y=(x1^2-8)*cos(x2)
%% в области x1 є [0,4] и x2 є [0,4].
n=15;
x1=0:4/(n-1):4;
x2=0:4/(n-1):4;
y=zeros(n,n);
for j=1:n
y(j,:)=(x1.^2-8)*cos(x2(j));
end
surf(x1,x2,y)
xlabel('x1')
ylabel('x2')
zlabel('y')
title('Target');
В результате выполнения этой программы получаем графическое изображение, которое приведено на рис. 1.1. Проектирование СНВ состоит из следующих шагов:
Шаг 1. Загрузить основной fis-редактор (редактор нечеткого вывода) введением в командной строке слова fuzzy. Шаг 2. Ввести новую входную переменную. Для этого выбрать пункт Add Input в меню Edit.
Шаг 3. Переименовать первую входную переменную. Для этого следует нажать ЛКМ на блоке Input1, ввести новое обозначение х1 в поле редактирования имени текущей переменной и нажать <Enter>.
Шаг 4. Переименовать вторую входную переменную. Для этого нажать ЛКМ (левую кнопку мыши) на блоке input2, ввести новое обозначение x2 в поле редактирования имени текущей переменной и нажать <Enter>.
Шаг 5. Переименовать исходную переменную. Для этого нажать ЛКМ на блоке output1, ввести новое обозначение y в поле редактирования имени текущей переменной и нажать <Enter>.
Шаг 6. Задать имя системе. Для этого в меню File выбрать в подменю Export to disk и ввести имя файла, например, first.
Рис. 1.1. Изображение поверхности зависимости
Шаг 7. Перейти в редактор функций принадлежности. Для этого сделать двойное нажатие ЛКМ на блоке x1.
Шаг 8. Задать диапазон изменения переменного x1. Для этого ввести [0 4] в поле Range и нажать <Enter>.
Шаг 9. Задать функции принадлежности переменной x1. Для лингвистической оценки этой переменной будем использовать 3 терма с треугольными функциями принадлежности. Если в окне нет еще функций принадлежности, тогда в меню Edit следует выбрать команду Add MFs.. В результате появится диалоговое окно выбора типа и количества функций принадлежности. По умолчанию эти 3 терма имеют треугольную функцию принадлежности. Поэтому просто нужно нажать <Enter>. Шаг 10. Задать наименование термов переменной x1. Для этого нажать ЛКМ на графике первой функции принадлежности (см. рис. 1.2). Потом вводим наименование терма, например, L (Низкий), в поле Name и нажимаем <Enter>. Потом нажать ЛКМ на графике второй функции принадлежности и вводим наименование терма, например, A (Средний), в поле Name и нажимаем <Enter>. Еще раз нажать ЛКМ по графику третьей функции принадлежности и введем наименование терма, например, H (Высокий), в поле Name и нажимаем <Enter>. В результате получаем графическое окно, которое изображено на рис. 1.2.
Params L = [-1.6 0 1.6], A = [0.4 2 3.6], H = [2.4 4 5.6]
Рис. 1.2. Функция принадлежности переменной Рис. 1.3. Функция принадлежности переменной Шаг 11. Зададим функции принадлежности переменной x2. Для лингвистической оценки этой переменной будем использовать 5 термов с гаусовскими функциями принадлежности. Для этого активизируем переменную x2 с помощью нажатия ЛКМ на блоке x2. Зададим диапазон изменений x2. Для этого напечатаем [0 4] в поле Range (см. рис. 1.3) и нажмем <Enter>. Потом в меню Edit выберем команду Add MFs... В диалоговом окне, которое появится, выберем тип функции принадлежности gaussmf в поле MF type и 5 термов в поле Number of MFs. После чего нажимаем <Enter>. Шаг 12. По аналогии с шагом 10 зададим следующие наименования термов переменной x2: L (Низкий), LA (Ниже среднего), A (Средний), HA (Выше среднего), H (Высокий). В результате получаем графическое окно, которое изображено на рис. 1.3.
Params L = [0.4247 0], LA = [0.4247 1], A = [0.4247 2], HA = [0.4247 3], H = [0.4247 4]
Шаг 13. Зададим функции принадлежности переменной y. Для лингвистической оценки этой переменной будем использовать 5 термов с треугольными функциями принадлежности. Для этого активируем переменную y с помощью нажатия ЛКМ на блоке y. Зададим диапазон изменений переменной y. Для этого введем - [10 10] в поле Range (см. рис. 1.4) и нажмем <Enter>. Потом в меню Edit выберем команду Add MFs... В диалоговом окне, которое появится, выберем 5 термов в поле Number of MFs. После чего нажимаем <Enter>. Шаг 14. По аналогии с шагом 10 зададим следующие наименования термов переменной y: L (Низкий), LA (Ниже среднего) A (средний), HA (Выше среднего), H (Высокий). В результате получаем графическое окно, которое представлено на рис. 1.4.
Рис. 1.4. Функции принадлежности переменной у
Params L = [-15 -10 -5], LA = [-10 -5 0], A = [-5 0 5], HA = [0 5 10], H = [5 10 15]
Шаг 15. Перейдем в редактор базы знаний RuleEditor. Для этого изберем в меню Edit команду Rules или в меню View команду Edit rules...
Шаг 16. На основе визуального наблюдения за графиком, который изображен на рис. 8.1, сформируем следующие десять правил:
1. Если x1=Низкий иx2=Низкий, тогда y=Низкий; 2. Если x1=Низкий и x2=Высокий, тогда y=Средний; 3. Если x1=Низкий и x2=Выше среднего, тогда y=Высокий; 4. Если x1=Высокий и x2=Низкий, тогда y=Выше среднего; 5. Если x1=Высокий и x2=Высокий, тогда y=Низкий; 6. Если x1=Средний и x2=Средний, тогда y=Средний; 7. Если x1=Средний и x2=Выше среднего, тогда y=Выше среднего; 8. Если x1=Низкий и x2=Ниже среднего, тогда y=Ниже среднего;
9. Если x1=Средний и x2=Выше среднего, тогда y=Средний. Рис. 1.5. Окно правил
Для введения правила необходимо выбрать в меню соответствующую комбинацию термов и нажать кнопку Add rule. На рис. 1.5 изображено окно редактора базы знаний после введения всех 9 правил. Число в скобках в конце каждого правила представляет собой весовые коэффициенты соответствующего правила. Нужно обратить внимание на параметр Weight, который указывает вес нечеткой уверенности в правиле. Его можно задавать в диапазоне . В данном случае по условию Weight=0,75.
Шаг 17. Сохраним построенную систему. Для этого в меню File в подменю Export выберем команду To disk.
На рис. 8.6 приведено окно визуализаций нечеткого логического вывода. Это окно активируется командой View rules.. меню View. В поле Input указываются значения входных переменных, для которых выполняется логический вывод. Т.е., по алгоритму Мамдани вычисляется значение выходной переменной.
Рис. 1.6. Визуализация нечеткого вивода
Рис. 1.7. Поверхность системы "входы-выход"
2. Метод проектирования и использования систем по алгоритму Сугено
Моделирование заданной поверхности будем реализовывать с помощью следующих правил базы знаний : 1. Если х1 и х2 низкие, тогда 2. Если х1 низкое, тогда 3. Если х1 низкое и х2 выше среднего, тогда 4. Если х1 и х2 высокие, тогда 5. Если х2 низкое, тогда 6. Если х1 высокое, тогда 7. Если х2 высокое, тогда 8. Если х1 низкое и х2 высокое, тогда 9. Если х1 среднее и х2 среднее, тогда Рис. 1.8. Функции принадлежности переменной Рис. 1.9. Нечеткая база знаний для системы типа Сугено
Рис. 1.10 Визуализация нечеткого логического вывода
для системы типа Сугено
Рис. 1.11. Поверхность "вход-выход" для системы алгоритма Сугено
3. Проектирование системы управления контейнерным краном Сугено.
Описание системы.
Подъёмный кран (рис. 8.13) предназначен для подъёма и перемещения грузов при проведении строительных, монтажных, ремонтных, погрузочно - разгрузочных и других работ. Кран представляет собой грузоподъёмную машину циклического действия.
Рабочий цикл крана состоит из трёх этапов:
1. захват груза; 2. рабочий ход (перемещение груза, разгрузка); 3. холостой ход (возврат грузоподъёмного механизма в исходное положение). Рис. 1.12. Термы переменной "расстояние" Рис. 1.13. Термы переменной "угол" Рис. 1.14. Термы переменной "мощность" Рис. 1.15. Вводим правила для нечеткой системы управления
Рис. 1.16. Визуализация нечеткого логического вывода для системы Мамдани
Рис. 1.17. Поверхность отклика нечеткой системы
Вывод: в ходе выполнения данной лабораторной работы мы освоили методику проектирования системы нечеткого вывода на основе разработки и использования баз знаний продукционных правил с использованием алгоритмов Мамдани и Сугено.
Документ
Категория
Рефераты
Просмотров
30
Размер файла
1 268 Кб
Теги
lab8
1/--страниц
Пожаловаться на содержимое документа