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

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

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РОССИЙСКОЙ ФЕДЕРАЦИИ
Федеральное государственное
автономное образовательное учреждение
высшего образования
«Южный федеральный университет»
В.В. СОЛОВЬЕВ
В.В. ШАДРИНА Е.А. ШЕСТОВА
ОСНОВЫ НЕЧЕТКОГО МОДЕЛИРОВАНИЯ
В СРЕДЕ MATLAB
Учебное пособие
Ростов-на-Дону
Издательство Южного федерального университета
2015
2
УДК 519.876.2
РЕЦЕНЗЕНТЫ:
доктор технических наук, профессор, заведующий
кафедрой САПР ИКТИБ ЮФУ Курейчик В.В.
доктор технических наук, профессор, заведующий
кафедрой информатики Таганрогского института имени А.П. Чехова (филиал) РГЭУ (РИНХ) Ромм Я.Е.
Соловьев В.В., Шадрина В.В., Шестова Е.А. Осно-
вы нечеткого моделирования в среде Matlab: учебное по­собие. Ростов-на-Дону: Изд-во ЮФУ, 2015. ─ 99 с.
В пособии рассматриваются основы нечеткого моде-
лирования в среде Matlab. Задания для выполнения лабо­раторных работ сопровождаются подробно рассмотренны­ми примерами с многочисленными иллюстрациями. Также в пособии имеется ряд задач для самостоятельного реше­ния, позволяющих студентам более подробно изучить про­цесс построения нечетких моделей систем. Пособие пред­назначено для студентов, обучающихся по направлениям подготовки бакалавриата 15.03.04, 17.03.01 и 27.03.04. Ма­териалы пособия могут быть полезны также для специали­стов, работающих в области нечеткого моделирования в среде Matlab.
Табл. 13. Ил. 46. Библиогр.: 10 назв.
ЮФУ, 2015 Соловьев В.В., 2015 Шадрина В.В., 2015 Шестова Е.А., 2015
3
ОГЛАВЛЕНИЕ
ВВЕДЕНИЕ…………………………………………………..4
1. ЛАБОРАТОРНАЯ РАБОТА №1…………………………6
1.1. Функции принадлежности…..……………………..6
1.2. Методы построения функций принадлежности по экспертным данным………………………………..17
1.2.1. Метод построения функций принадлежности на основе статистической обработки мнений группы экспертов.……………………………...…...18
1.2.2. Метод построения функций принадлежности на основе парных сравнений, выполняемых одним экспертом…………………………...……………….22
1.3. Варианты заданий на выполнение лабораторной работы…………………………………………………..26
1.4. Содержание отчета………………………………..31
2. ЛАБОРАТОРНАЯ РАБОТА №2………………………..32
2.1. Основные теоретические сведения………………32
2.2. Пример разработки модели в среде Matlab……...37
2.2.1. Постановка задачи…………………………...37
2.2.2. Построение модели управления
кондиционером………………………………………41
2.2.3. Разработка модели регулирования
температуры в среде Matlab……………………....46
2.3. Задания на выполнение…………………………...60
2.4. Содержание отчета………………………………..90
ЗАКЛЮЧЕНИЕ……………………………………………..92 БИБЛИОГРАФИЧЕСКИЙ СПИСОК……………………..93 ПРИЛОЖЕНИЕ……………………………………………..94
4
ВВЕДЕНИЕ
В настоящее время технологии на базе нечеткой ло-
гики завоевывают все больше сторонников среди разра­ботчиков систем управления.
Нечеткое моделирование оказывается особенно по-
лезным, когда в описании технических систем и бизнес­процессов присутствует неопределенность, которая за­трудняет или даже исключает применение точных количе­ственных методов и подходов.
Простота и дешевизна разработки систем управления
с использованием нечеткой логики заставляю проектиров­щиков все чаще прибегать к этой технологии.
Нередко в области управления сложными техниче-
скими системами нечеткое моделирование позволяет по­лучать более адекватные результаты по сравнению с ре­зультатами, которые основываются на использовании тра­диционных аналитических моделей и алгоритмов управле­ния.
Впервые нечеткая логика была применена в автомо-
билестроении. В 1991 г. компания Nissan впервые приме­нила компоненты нечеткой логики в системе управления пятискоростной автоматической коробкой переключения передач (АКПП), годом позже аналогичная система появи­лась на автомобилях Honda. Диапазон применения нечет­ких методов с каждым годом расширяется, охватывая та­кие области, как проектирование промышленных роботов, бытовых электроприборов, управление движением поездов метро, автоматическое распознавание речи и изображений и т.д. [1-4].
Актуальность технологии нечеткого моделирования обусловлена тем, что нечеткая логика, которая служит ос­новой для реализации методов нечеткого управления, бо-
5
лее естественно описывает характер человеческого мыш­ления, чем традиционные формально-логические системы.
В настоящее время существует множество программ­ных продуктов, которые ориентированы на решение задач нечеткого моделирования, но наибольшую популярность завоевала система Matlab.
В связи с этим в настоящем учебном издании рас­смотрен подход к разработке моделей систем и процессов нечеткого моделирования в среде Matlab.
6
1. ЛАБОРАТОРНАЯ РАБОТА №1
Тема: Исследование методов построения функций принадлежности нечетких множеств в среде Matlab.
Цель работы: Изучить виды функций принадлежно­сти и возможности их реализации в среде MatLab. Изучить метод построения функций принадлежности на основе ста­тистической обработки мнений экспертов и метод парных сравнений.
Содержание работы:
1. Изучение типов функций принадлежности и по-
строение их в среде Matlab.
2. Изучение способа построения функций принад-
лежности на основе метода статистической обработки мнений группы экспертов.
3. Изучение способа построения функций принад-
лежности на основе метода парных сравнений, выполняе­мых одним экспертом.
1.1. Функции принадлежности
Инструментарий нечеткой логики в составе пакета Matlab содержит 11 встроенных типов функций принад­лежности (ФП), формируемых на основе кусочно­линейных функций, распределения Гаусса, сигмоидной кривой, квадратических и кубических полиномиальных кривых [5]. К наиболее простым ФП можно отнести тре­угольную и трапециевидную.
В аналитическом виде треугольная ФП может быть задана следующим образом (рис. 1.1):
.cx,
,cxb,
bc
xc
,bxa,
ab
ax
,ax,
)c,b,a,x(f
0
0
0 1 2 3 4 5 6 7 8 9 10
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Рис. 1.1. Треугольная функция принадлежности
Для описания треугольной ФП в среде MatLab ис­пользуется оператор trimf (triangle membership function). В параметрическом виде она представляет собой набор трех точек, образующих треугольник:
y = trimf(x, [a b c]), (1.2)
где вектор x базовое множество, на котором определяет­ся ФП. Величины a и c задают основание треугольника, b его вершину.
Ниже приведен фрагмент программы использования ФП trimf на языке пакета Matlab.
x=0: 0.1: 10; %Задается базовое множество y=trimf(x,[3 6 9]); %Определяется треугольная ФП plot(x,y); %Выводится график функции
7
(1.1)
8
.dx,
,dxc,
cd
xd
,cxb,
,bxa,
ab
ax
,ax,
)d,c,b,a,x(f
0
1
0
0 1 2 3 4 5 6 7 8 9 10
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
xlabel('trimf(x,P),P=[3 6 9]'); %Подписывается график
%под осью абсцисс
В аналитическом виде трапециевидная ФП может быть задана следующим образом (рис. 1.2):
(1.3)
Рис. 1.2. Трапециевидная функция принадлежности
Для описания трапециевидной ФП в среде MatLab используется оператор trapmf (trapezoid membership func­tion). В параметрическом виде она представляет собой на­бор четырех точек, образующих трапецию:
y = trapmf(x, [a b c d]), (1.4)
9
2
2
2
)cx(
e)c,,x(f
0 1 2 3 4 5 6 7 8 9 10
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
где вектор x базовое множество, на котором определяет­ся ФП; a и d параметры, определяющие точки вершин нижнего основания трапеции; b и c параметры, опреде-
ляющие точки вершин верхнего основание трапеции.
Одно из основных достоинств треугольных и трапе­циевидных ФП простота их реализации в вычислитель­ных машинах и микроконтроллерах.
Также получили распространение ФП Гаусса.
В аналитическом виде симметричная функция Гаусса может быть задана следующим образом (рис. 1.3):
. (1.5)
Симметричная функция Гаусса зависит от двух пара­метров  и c.
строить ФП двух видов: простую ФП Гаусса, с помощью оператора gaussmf
Рис. 1.3. Простая ФП Гаусса
На основе функции распределения Гаусса можно по-
y = gaussmf(x, [, c]) (1.6)
10
21
cc
0 1 2 3 4 5 6 7 8 9 10
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
и двухстороннюю, с помощью оператора gauss2mf, обра­зованную с помощью различных функций распределения Гаусса.
Ниже приведен фрагмент программы использования ФП gaussmf на языке пакета Matlab.
x=0: 0.1: 10; %Задается базовое множество y=gaussmf(x,[2 5]); %Определяется простая ФП Гаусса plot(x,y); %Выводится график функции
Выражение
y = gauss2mf(x, [
, c1,
1
, c2]) (1.7)
2
представляет собой комбинацию двух различных функций распределения Гаусса. Первая определяется параметрами
и c1 и задает форму левой стороны ФП, а вторая (пара-
1
метры
и c2) правой стороны ФП. Если
2
, то в
этом случае функция gauss2mf достигает своего макси­мального значения на уровне 1. Иначе максимальное
значение функции меньше 1 (рис. 1.4).
Рис. 1.4. Двухсторонняя ФП Гаусса
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]