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

книги / Статистические и интеллектуальные методы прогнозирования

..pdf
Скачиваний:
6
Добавлен:
12.11.2023
Размер:
8.94 Mб
Скачать

Рис. 6.33. Графическое окно FIS-редактора в MATLAB

Рис. 6.34. Графическое окно блока задания функции принадлежности

141

Задание базы правил осуществляется в Untitled (Mamdani) путем активации (двойной щелчок мышью). В результате данных действий откроется окно блока (рис. 6.35).

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

Правила создаются в меню Edit подменю Rules путем набора соответствующих комбинаций термов-подусловий, логических связок в поле Connection, выбора заключений (подзаключений) в поле Then и фиксации набранного правила коман-

дой Addrule.

После набора базы правил можно увидеть графическое обозначение базы правил командой View rules… меню View (рис. 6.36).

Для запуска системы нечеткого вывода достаточно ввести в поле Input указываются значения входных переменных, для которых выполняется логический вывод. Значение вы-

142

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

Рис. 6.36. Визуализация базы правил нечеткого вывода

Для наглядности можно представить поверхность «входывыход». Для этого используется команда View surface меню View

(рис. 6.37).

ПРИМЕР 6.7. Проектирование системы нечеткого вывода для примера 6.6.

1.Задание лингвистических переменных «температура» (T), скорость изменения температуры (deltaT), режимы работы кондиционера (R) и их функций принадлежности (рис. 6.38–6.40).

2.Создание правил вывода. База правил создана в соответствии с табл. 6.5. Окно создания базы правил представлено на рис. 6.41.

Визуализация базы правил и расчет значения выходной переменной представлены на рис. 6.42.

143

Рис. 6.37. Поверхности «входы-выход» в окне Surface Viewer

Рис. 6.38. Задание лингвистической переменной «температура»

144

Рис. 6.39. Задание лингвистической переменной «скорость изменения температура»

Рис. 6.40. Задание лингвистической переменной «режимы работы кондиционера»

145

Рис. 6.41. Задание базы правил

Рис. 6.42. Визуализация базы правил нечеткого вывода при входных данных: температура 22 °С; скорость изменения температуры +0.2 °С/мин

146

По модели Мамдани, реализованной в MATLAB, выходной сигнал равен –0.77. При расчете вручную –0.70. Погрешность «ручных вычислений» связана: во-первых, с приблизительным (графическим) определением значений функций принадлежности по рисункам, приближенными расчетами центра тяжести и с выбранными в MATLAB S-образными и Z-образными функциями принадлежности для «конечных» термов лингвистических переменных вместо кусочно-линейных.

Поверхность «входы-выход» представлена на рис. 6.43.

Рис. 6.43. Поверхность «входы-выход» в окне Surface Viewer

147

6.6.ПРИМЕНЕНИЕ МОДЕЛЕЙ НЕЧЕТКОЙ ЛОГИКИ

ВЗАДАЧАХ ПРОГНОЗИРОВАНИЯ

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

использование системы логического вывода,

построение нечеткого временного ряда.

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

Достоинством такой модели являются разработанные алгоритмы нечеткого вывода, многие из которых реализованы программно (подразд. 6.5). Недостатком является «закрытость» модели, модель «черный ящик», в которой отсутствует в явном виде функциональная зависимость (характер оператора f), а в случае линейной регрессионной модели не представлены численно параметры регрессии ai (3.2). Кроме того, необходимо решить проблему фаззификации входных и выходных переменных. В данном случае можно порекомендовать не увлекаться количеством терм для каждой переменной, а ограничиться 3–5. Нечеткость следует вводить по характеру (скорости изменения) переменных, сопоставив термы «низкая», «постоянная», «высокая». Для настройки таких моделей можно использовать ANFIS-редактор, который позволяет автоматизировать процедуру создания системы нечеткого вывода. Подробно о нейронечетких моделях прогнозирования говорится в главе 7.

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

148

ми данными y f (X ) . При этом возможны следящие нечеткие

регрессионные модели: классическая нечеткая модель; нечеткие регрессионные модели.

При реализации нечеткой регрессионной модели возможны варианты [35–37]:

y a0 a1x1 a2x2

an xn ;

(6.53)

y a0 a1 x1 a2 x2

an xn ;

(6.54)

(x1, x2, , xn ) y .

(6.55)

В модели (6.53) нечеткими переменными являются как выходная переменная, так и коэффициенты линейной регрессии.

Методика построения нечеткой регрессионной модели (6.53) показана на примере y f (x1,x2 ):

1. Определяется множество термов для выходной переменной y yн , yср, yв , где ун – низкое значение выходной

переменной у, уср – среднее значение, ув – высокое значение. Следует отметить, что данное множество определяется для каждого значения выходной переменной. Пусть количество наблюдений будет n.

2.Параметры модели ai принимаются за нечеткие числа.

3.Функции принадлежности представлены треугольным видом (рис. 6.44).

4.Для каждого элемента множества термов выходной переменной y уравнение регрессии (6.53) примет вид

yн c0 d0 (c1 d1)x1 (c2 d2 )x2;

 

yср c0 c1x1 с2x2;

(6.57)

yв c0 d0 (c1 d1)x1 (c2 d2 )x2.

 

149

((aаi))

 

 

i

 

 

1

 

 

 

сi

ai

 

di

 

Рис. 6.44. График функции принадлежности

для параметров ai

с центром сi

и шириной di

5.Уравнение(6.57)переписываетсяввидеотклоненийот yср : yн c0 c1x1 c2x2 d0 d1x1 d2x2 ;

yср c0 c1x1 с2x2;

(6.58)

yв c0 c1x1 c2x2 d0 d1x1 d2x2 .

6. Уравнение отклонения для каждого значения y имеет вид

d j d0 d1x1j d2x2 j .

(6.59)

7. Сумма отклонений для каждого значения выходной переменной y должна быть минимизирована:

n

n

 

d d0

(d1x1j d2x2 j ) min .

(6.60)

j 1

j 1

 

8. Кроме того, для каждого значения выходной переменной имеются ограничения:

 

(c1x1j c2x2 j ) (1 ) d0

(d1x1j d2x2 j ) ,

y j c0

 

 

(6.61)

y j c0

(c1x1j c2x2 j ) (1 ) d0 (d1x1j d2x2 j ) .

 

 

 

150

Соседние файлы в папке книги