MATLAB.Exponenta
MATLAB и Simulink на русском
Технологии разработки и отладки
		сложных технических систем

Проектирование систем управления\Fuzzy Logic Toolbox

С.Д.Штовба "Введение в теорию нечетких множеств и нечеткую логику"

В оглавление \ К предыдущему разделу

Drydemo

В этом разделе описывается демонстрационная программа drydemo, иллюстрирующая применение технологии ANFIS для идентификации нелинейных динамических систем на примере процесса нагрева воздуха в фене. Результаты нечеткой идентификации сравнивается с линейной ARX моделью процесса нагрева воздуха. Для выполнения демонстрационной программы необходим пакет System Identification Toolbox. При выполнении демонстрационной программы drydemo на экран выводится 10 слайдов.

На первом слайде выводится аннотация программы drydemo и схема процесса нагрева воздуха (рис. 9.51). Для запуска демонстрации необходимо нажать кнопку Start>>.


Рисунок 9.51 - Схема процесса нагрева воздуха

На втором слайде указано, что данные для ANFIS- и ARX-идентификаци получены с помощью лабораторного устройства для изучения процессов с обратной связью  -"Feedback's Process Trainer PT 326" по методике из книги профессора Lennart Ljung "System Identification, Theory for the User", Prentice-Hall, 1987 ( глава 17). Устройство функционирует подобно фену для сушки волос: воздух нагнетается во внутрь и проходит через нагревательный элемент, расположенный на входе устройства. Температура воздуха измеряется на выходе устройства термопарой. На рис. 9.53 приведена выборка данных для идентификации зависимости между u(k) - напряжением на нагревательном элементе - проволочном резисторе и y(k) - температурой воздуха на выходе.


Рисунок 9.53 - Временные диаграммы температуры воздуха (y) и напряжения на резисторе (u)

На третьем слайде описано, что 1000 пар данных "вход-выход" собраны с временем стробирования 0.08 с. Напряжение на резисторе u(k) выбиралось случайно из двух значений 3.41 В и 6.41 В. Вероятность смены уровня напряжения на каждом временном отсчёте была равной 0.2. Графики напряжения на резисторе и температуры воздуха на выходе устройства для первых 100 временных отсчётов показаны на рис. 9.53. Полная выборка данных "вход-выход" приведена в System Identification Toolbox.

На четвертом слайде описывается обычный процесс построения ARX-модели, т.е. поиск линейной зависимости вида:

y(k)+a1*y(k-1)+...+am*y(k-m)=b1*u(k-d)+...+bn*u(k-d-n+1),

где ai (i = 1,…,m) и bj (j = 1,…,n) -линейные параметры, определяемые методом наименьших квадратов. Структура ARX-модели однозначно задается тремя числами [m, n, d]. Для нахождения ARX-модели фена экспериментальные данные разделены на две выборки: обучающую (k= 1,…,300) и тестирующую (k = 301,…,600). Для нахождения наилучшей структуры модели был произведен полный перебор комбинаций [m, n, d], при котором значения параметров изменялись от 1 до 10 независимо друг от друга. Наилучшая ARX-модель получена при таких значениях структурных параметров: [m, n, d] = [5, 10, 2]. Эта модель обеспечивает следующее значения корня квадратного из средней квадратической ошибки (RMSE): на обучающей выборке - 0.1122; на тестирующей выборке - 0.0749. Рис. 9.53 иллюстрирует результаты прогнозирования температуры воздуха наилучшей ARX-моделью. На этом рисунке сплошной синей линией показаны экспериментальные данные, а зеленными точками - модельные результаты. В командном окне выводится время нахождения оптимальной ARX-модели на Вашем компьютере.


Рисунок 9.54 - Сравнение экспериментальных данных с результатами ARX-моделирования на обучающей (вверху) и тестирующей (внизу) выборках

На пятом слайде подчеркивается, что ARX -модель является линейной; ее основной преимущество заключается в высокой скорости структурной и параметрической идентификации. Как видно из графиков на рис. 9.54 точность прогнозирования высокая. Однако, если бы нелинейная модель обеспечила лучшую точность, то мы могли остановить свой выбор на ней. В частности, мы будем использовать нейро-фаззи моделирование ( ANFIS ) чтобы удостоверится, можно ли обеспечить более высокую точность идентификации на основе нечеткого логического вывода.

На шестом слайде написано, что первым шагом, который необходим для идентификации с помощью ANFIS -технологии является выбор входных переменных нечеткой модели. Для сокращения времени идентификации предположим, что на выходную переменную y(k) могут оказать влияние 10 кандидатов в входные переменные: y(k-1), y(k-2), y(k-3), y(k-4), u(k-1), u(k-2), u(k-3), u(k-4), u(k-5) и u(k-6). Для выбора входных переменных модели будем использовать эвристический подход, основанный на так называемом последовательном поиске вперед (sequential forward search). При таком поиске на каждом шаге в модель добавляется одна входная переменная, обеспечивающая минимальное значение среднеквадратической ошибки. Указанная поисковая процедура реализована функцией seqsrch. Результаты поиска показаны в новом графическом окне (рис. 9.55). На этом рисунке маркеры в виде красных окружностей соответствуют значениям ошибки на обучающей выборки, а в виде зеленных звездочек - значениям ошибки на тестирующей выборки В качестве входов модели выбраны 3 переменных y(k-1), u(k-3) и u(k-4). В этом случае значения RMSE равны 0.0609 и 0.0604 на обучающей и тестирующей выборках соответственно. В командном окне выводится протокол селекции входных переменных с указанием времени поиска.


Рисунок 9.55 - Селекция входных переменных нейро-нечеткой модели методом последовательного поиска вперед

На седьмом слайде указано, что для селекции входов модели можно использовать полный перебор всех комбинаций переменных-кандидатов . Однако, полный перебор вариантов с помощью функции exhsrch занимает продолжительное время. Например, если надо выбрать 3 входных переменных из 10 возможных, то необходимо синтезировать C(10, 3) = 120 нейро-нечетких моделей-кандидатов.

На восьмом слайде написано, что, как известно из теории идентификации динамических систем , входными переменными модели не могут быть элементы только одного из двух следующих множеств: Y = {y(k-1), y(k-2), y(k-3), y(k-4)} и U = {u(k-1), u(k-2), u(k-3), u(k-4), u(k-5), u(k-6)}. Разумным путем угадывания хорошего набора входов нейро-нечеткой модели будет выбор двух элементов из множества Y и одного из множества U. В этом случае общее количество ANFIS-моделей -кандитатов будет C(4,2)*6=36, что намного меньше, чем при полном переборе. Протокол работы описанного метода селекции входов выводиться в командном окне. Результаты поиска показаны в новом графическом окне (рис. 9.56). В качестве входов модели выбраны 3 переменных y(k-1), y (k-2) и u(k-3). В этом случае значения RMSE равны 0.0474 и 0.0485 на обучающей и тестирующей выборках соответственно. Точность моделирования в этом случае существенно выше, чем при идентификации с помощью линейных ARX-моделей и ANFIS-технологии с селекцией входов методом последовательного поиска вперед.


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

На девятом слайде показаны результаты ANFIS моделирования температуры воздуха для обучающей и тестирующей выборок (рис. 9.57). Очевидно, что точность моделирования значительно выше чем для ARX -метода (см. рис. 9.54).


Рисунок 9.57 - Сравнение экспериментальных данных с результатами >ANFIS-моделирования на обучающей (вверху) и тестирующей (внизу) выборках

На десятом слайде сравниваются рассмотренные методы идентификации (табл. 9.1). ARX-идентификация самая быстрая, но и точность моделирования значительно хуже, чем для наиболее медленного ANFIS-подхода с селекцией методом ограниченного перебора. Следовательно, для задач, где главным критерием является время идентификации, правильным будет выбор ARX-модели. Для задач, где точность идентификации играет ключевую роль, использование ANFIS -технологии, специально разработанной для нелинейного моделирования, будет оправданным.

Таблица 9.1 - Сравнение методов идентификации процесса нагрева воздуха

Метод идентификации

ARX

ANFIS c селекцией методом последовательного поиска вперед

ANFIS c селекцией методом ограниченного перебора

Количество входов модели

14

3

3

RMSE на обучающей выборке

0,1122

0,0609

0,0474

RMSE на тестирующей выборке

0,0749

0,0604

0,0485

Количество линейных параметров модели

15

32

32

Количество нелинейных параметров модели

0

18

18

Время идентификации на компьютере PentiumPro 200 МГц, 64 МБ

1,6 сек

10,3 сек

21,5 сек

В оглавление \ К предыдущему разделу


Поиск по сайту:

Система Orphus

Яндекс.Метрика