Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Майорова Семенова_верстка.doc
Скачиваний:
6
Добавлен:
01.07.2025
Размер:
10 Мб
Скачать
☆

Порядок выполнения работы

  1. Ознакомиться со всеми пунктами методических указаний.

  2. Запустить файл Level.mdl, представляющий собой модель системы из пяти баков.

  3. Необходимо смоделировать систему при условиях, отображенных в табл. 4.1., согласно варианту.

Таблица 4.1

Условия работы системы

№ варианта

Time1

Time2

Time3

L1_plus

L1_min

L2_plus

L2_min

1

90

40

20

0.94

0.2

0.98

0.12

2

50

30

40

0.94

0.3

0.98

0.23

3

30

10

10

0.94

0.2

0.98

0.12

4

25

25

15

0.94

0.3

0.98

0.23

5

45

80

30

0.94

0.2

0.98

0.12

6

50

50

45

0.96

0.35

0.95

0.23

7

70

10

25

0.96

0.2

0.95

0.12

8

10

90

30

0.96

0.3

0.95

0.23

9

85

15

10

0.96

0.25

0.95

0.12

10

80

10

20

0.96

0.3

0.95

0.23

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

  2. Разработать SF-диаграмму, описывающую работу контроллера, управляющего открытием и закрытием кранов по следующему алгоритму.

  3. Установите параметры моделирования.

  4. Запустите модель и проанализируйте полученные результаты.

  5. Покажите преподавателю результаты работы.

Содержание отчета

  1. Номер, название и цель работы.

  2. Задание на выполнение лабораторной работы, согласно варианту.

  3. Модель системы и отлаженная SF-диаграмма.

  4. Результаты отладки модели.

  5. Диаграмма изменения уровней в баках, полученная в результате моделирования.

  6. Выводы по выполненной работе.

  7. Ответы на контрольные вопросы.

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

  1. Для каких целей предназначена программа Stateflow?

  2. Из каких компонентов состоит Stateflow?

  3. Дайте определение понятию «состояние объекта»?

  4. Назовите существующие типы состояний?

  5. Что отображают «переходы» от одного объекта к другому?

  6. Назовите существующие типы событий?

  7. Какова общая структура «состояния»?

  8. В чем отличие логических ошибок от синтаксических при отладке SF-диаграмм?

  9. Назовите средства отладки SF-диаграмм?

  10. Какие должны быть заданы условия срабатывания, чтобы работа модели, задаваемая картой поведения, не началась и окончилась «в одно мгновение»?

  11. Поясните временные диаграммы, полученные в результате работы динамической модели?

  12. Что представляет собой интерактивное вмешательство в работу модели?

  13. Опишите алгоритм работы системы.

Лабораторная работа № 5

МОДЕЛИРОВАНИЕ РАБОТЫ САР НА ОСНОВЕ АДАПТИВНОЙ СИСТЕМЫ НЕЙРОНЕЧЕТКОГО ВЫВОДА ANFIS В СРЕДЕ MATLAB

Цель работы:

  • изучить основные понятия гибридных сетей и средства их разработки, предоставляемые системой MATLAB;

  • освоить процесс построения и использования нейросетевых моделей и реализовать гибридную сеть в форме так называемой адаптивной системы нейронечеткого вывода ANFIS.

Средства разработки гибридных сетей

в пакете Fuzzy Logic Toolbox

Гибридная сеть – это многослойная нейронная сеть специальной структуры без обратных связей, в которой используются обычные (не нечеткие) сигналы, веса и функции активации, а выполнение операции суммирования основано на применение фиксированной Т-формы, или некоторой другой непрерывной операции. При этом значения входов, выходов и весов гибридной нейронной сети представляют собой вещественные числа из отрезка [0, 1] .

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

В пакете Fuzzy Logic Toolbox гибридные сети реализованы в форме так называемой адаптивной системы нейронечеткого вывода ANFIS. Гибридная сеть ANFIS представляет собой нейронную сеть с единственным выходом и несколькими входами, которые представляют собой нечеткие ЛП. Термы входных ЛП описываются стандартными для системы MATLAB функциями принадлежности, а термы выходной переменной представляются линейной или постоянной функциями принадлежности.

Кроме того, гибридная сеть ANFIS представляет собой систему нечеткого вывода FIS типа Сугено 0-го или 1-го порядка, в которой каждое правило нечетких продукций имеет постоянный вес, равный единице. Гибридные сети ANFIS можно настраивать и редактировать аналогично системам нечеткого вывода FIS, используя все средства пакета Fuzzy Logic Toolbox. В пакете Fuzzy Logic Toolbox гибридные сети реализованы в форме адаптивных систем нейронечеткого вывода ANFIS. При этом разработка и исследование гибридных сетей может осуществляться: в интерактивном режиме с помощью специального графического редактора адаптивных сетей – редактора ANFIS; в режиме командной строки с помощью ввода имен соответствующих функций непосредственно в окно команд системы MATLAB.

Редактор ANFIS позволяет создавать или загружать конкретную модель адаптивной системы нейронечеткого вывода, выполнять ее обучение, визуализировать ее структуру, изменять и настраивать ее параметры, использовать настроенную сеть для получения результатов нечеткого вывода. Графический интерфейс ANFIS вызывается функцией anfisedit в режиме командной строки (рис. 5.1).

Главное меню редактора ANFIS предназначено для работы с предварительно созданной системой нечеткого вывода. Основную часть графического интерфейса занимает окно визуализации данных, расположенное ниже главного меню. Это окно не содержит никаких данных для вновь создаваемой гибридной сети.

Для создания гибридной сети необходимо загрузить данные. Для этого предназначена кнопка Load Data в левой нижней части графического окна. При этом данные могут быть загружены:

  • из внешнего файла (disk);

  • из рабочей области (worksp.).

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

В данной лабораторной работе предлагается использовать нечеткие алгоритмы управления для САР. При создании САР звено регулятора заменяется блоком нечетких высказываний. Рассмотрим в качестве примера САУ, представленную на рис. 5.2.

Р и с. 5.2. Структурная схема САУ

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

Для сохранения данных в виде матриц соответствующего формата можно использовать блоки сохранения То File и То Workspace (рис. 5.3). Блоки получателей информации содержит библиотека Sinks. На каждом такте моделирования формируется колонка, содержащая время такта и входные данные. Блок То File записывает полученную матрицу в файл с указанным именем.

Р и с. 5.3. Окно параметров блока То File

В этом окне задается имя файла, максимальное число строк, разрядность в десятичных долях времени в тактах эталонное время (чтобы зафиксировать состояние системы при t=0, это время по умолчанию задается равным -1). Блок То Workspace записывает указанную матрицу (но без строки отсчетов времени) в рабочее пространство.

Полученные данные можно просматривать и редактировать с помощью графического интерфейса редактора Array Editor (рис. 5.4). Здесь помимо уже описанных параметров задается формат записи: структура Structure, структура со временем Structure with time и массив Array.

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

Р и с. 5.4. Графический интерфейс редактора Array Editor

Исходные данные представляют собой обычную числовую матрицу размерности т(п+1), в которой количество строк т соответствует объ­ему выборки, первые п столбцов – значениям входных переменных модели, а последний столбец – значению выходной переменной. При этом отдельные значения матрицы отделяются друг от друга пробелами, а каждая строка матрицы завершается «переводом каретки» (клавиша Enter) (рис. 5.5).

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

Загружаемые данные могут иметь следующий тип:

  • обучающие данные (Training) – обязательные данные, используемые для построения гибридной сети;

  • тестовые данные (Testing) – данные, применяемые для тестирования построенной гибридной сети с целью проверки качества функционирования построенной гибридной сети;

  • проверочные данные (Checking) – данные, используемые для проверки построенной гибридной сети с целью выяснения факта переобучения гибридной сети;

  • демонстрационные данные (Demo) – позволяют загрузить один из демонстрационных примеров гибридной сети.

Р и с. 5.5. Обучающие данные для демонстрации

возможностей обучения гибридной сети ANFIS

Для редактирования данных может быть использован любой текстовый редактор. После загрузки обучающих данных, в рабочем окне редактора ANFIS будет отражена их структура (рис. 5.6.).

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

после загрузки файла с обучающими данными

Исходный график можно дополнить проверочными данными.

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

Структура уже созданной ранее FIS может быть загружена:

  • с диска (Load from disk);

  • из рабочей области (Load from worksp.).

При нажатии на кнопку Generate FIS вызывается диалоговое окно с указанием числа и типа функций принадлежности (ФП) для отдельных термов входных переменных и выходной переменной (рис. 5.7).

Р и с. 5.7. Диалоговое окно для задания количества и типа функций принадлежности

При этом можно выбрать любой тип ФП из реализованных в системе MATLAB. После генерации структуры гибридной сети можно вывести на экран ее структуру, нажав кнопку Structure в правой части графического окна. Структура сгенерированной системы нечеткого вывода выводится в новом диалоговом окне и тривиальна по своему виду (рис. 5.8).

Р и с. 5.8. Структура сгенерированной системы нечеткого вывода с одной входной переменной с 250 термами, 250 правилами

Перед обучением гибридной сети следует, используя группу опций в правой нижней части рабочего окна, задать параметры обучения:

  • выбрать метод обучения гибридной сети – обратного распространения (backpropa) или гибридный (hybrid), представляющий собой комбинацию метода наименьших квадратов и метода убывания обратного градиента;

  • установить уровень ошибки обучения (Error Tolerance) – по умолчанию равен нулю (изменять его не рекомендуется);

  • задать количество циклов обучения (Epochs).

Для обучения сети следует нажать кнопку Train Now. При этом процесс обучения отображается в окне визуализации в виде графика зависимости ошибки обучения от циклов обучения (рис. 5.9). Дальнейшая настройка параметров построенной и обученной гибридной сети может быть выполнена с помощью стандартных средств пакета Fuzzy Logic Toolbox.

Р и с. 5.9. График зависимости ошибки обучения

от количества циклов обучения системы

Функция Fuzblock вызывает систему Simulink, в которой содержатся три специальных блока (рис. 5.10):

  • контроллер нечеткой логики (Fuzzy Logic Controller);

  • контроллер нечеткой логики с окном просмотра правил (Fuzzy Logic Controller with Rule Viewer);

  • блок функций принадлежности MF.

При этом созданная FIS должна быть сохранена во внеш-нем файле с расширением .fis, а затем загружена в редактор систем нечеткого вывода FIS (рис. 5.11). Вызов графических средств FIS возможен непосредст-венно из главного меню редактора ANFIS.

Р и с. 5.10. Графический интерфейс блоков

нечеткой логики системы Simulink

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

для системы нечеткого вывода

После всех выполненных операций рабочее пространство системы MATLAB содержит входные, выходные данные и модель FIS (АС2) (рис. 5.12).

Р и с. 5.12. Браузер просмотра ресурсов

рабочей области Workspace

После того как система нечеткого вывода создана, дополним структурную схему САР блоком Fuzzy Logic Controller, исключив из схемы регулятор и блоки получателей информации То File.

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

Р и с. 5.13. Структурная схема системы

нечеткого регулирования в среде Simulink

Результаты моделирования (рис. 5.14) показывают, что нечеткая САР не уступает по качеству регулирования САР, реализуемой известным способом. К преимуществам нечеткого регулирования систем следует отнести, что при наличии современных систем программирования ПЛК со встроенными библиотеками нечеткого управления, имеющих хороший графический интерфейс, очень легко и наглядно представляется и корректируется вид функций принадлежности и НВ. Следовательно, упрощается построение и на-стройка САР.

Р и с. 5.14. График переходного процесса нечеткой САР