Научный журнал
Фундаментальные исследования
ISSN 1812-7339
"Перечень" ВАК
ИФ РИНЦ = 1,441

МЕТОДИКА ОПТИМИЗАЦИИ НЕЧЕТКОГО РЕГУЛЯТОРА С ПОМОЩЬЮ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ

Мунасыпов Р.А. 1 Ахмеров К.А. 1, 1
1 ФГБОУ ВПО «Уфимский государственный авиационный технический университет»
Представлена методика оптимизации нечеткого регулятора, выполняемая с применением генетических алгоритмов. Данная методика в качестве целевой функции предполагает использование различных критериев качества переходного процесса или их комбинации. В качестве варьируемых параметров используются термы входных и выходных лингвистических переменных регулятора. В статье описан алгоритм преобразования варьируемых нечетких переменных в числовые значения, обрабатываемые генетическим алгоритмом. Было создано программное обеспечение в среде Matlab, реализующее данную методику оптимизации. Приведен пример оптимизации нечеткого регулятора с использованием разработанного программного обеспечения. Проведено сравнение исходного регулятора с оптимизированным. Полученный результат подтверждает работоспособность методики и показывает значительное улучшение характеристик переходного процесса системы с оптимизированным нечетким регулятором по сравнению с системой, в которой применяется исходный нечеткий регулятор.
нечеткий регулятор
генетические алгоритмы
оптимизация регулятора
1. Васильев В.И., Ильясов Б.Г. Интеллектуальные системы управления. Теория и практика: учебное пособие. – М.: Радиотехника, 2009. – 392 с.
2. Гостев В.И. Проектирование нечетких регуляторов для систем автоматического управления – СПб.: БХВ-Петербург, 2011. – 416 с.
3. Жданов А.А. Автономный искусственный интеллект. – М.: Бином. Лаборатория знаний, 2009. – 359 с.
4. Колесникова А.А. Современная прикладная теория управления. Ч III. Новые классы регуляторов технических систем. – М., – Таганрог: Изд-во ТРТУ, 2006. – 608 с.
5. Панченко Т.В. Генетические алгоритмы: учебно-методическое пособие / под ред. Ю.Ю. Тарасевича. – Астрахань: Издательский дом «Астраханский университет», 2007. – 87 с.

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

Данная методика предполагает выполнение следующих основных этапов:

1) синтез исходного регулятора;

2) настройка параметров генетического алгоритма;

3) выбор целевой функции;

4) оптимизация регулятора.

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

Этап 2 предполагает настройку параметров генетического алгоритма. То, какие параметры необходимо настроить, сказано ниже.

Этап 3 предполагает выбор целевой функции. Предлагаемая методика позволяет выбирать любую характеристику переходного процесса (или их комбинацию) в качестве целевой функции [4].

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

Рассмотрим подробнее работу генетического алгоритма. В каждом конкретном случае в качестве целевой функции можно использовать как некоторые числовые показатели переходного процесса, такие как время регулирования или величина перерегулирования, так и интегральные показатели качества – площадь между графиком переходного процесса и единичным графиком, площадь между графиком переходного процесса и желаемым графиком [3].

В качестве варьируемых параметров используются входные и выходные лингвистические переменные нечеткого регулятора. Методика предполагает в процессе работы генетического алгоритма изменение термов лингвистических переменных (рис. 1).

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

Методика накладывает следующие ограничения на диапазон изменения величин a и b:

1) a – от 0 до верхней границы диапазона;

2) b – от 0 до верхней границы диапазона;

3) b > = a.

Рассмотрим подробнее предлагаемую методику на примере настройки нечеткого регулятора для модели системы, изображенной на рис. 2.

Была разработана программа в среде Matlab, производящая настройку параметров нечеткого регулятора на основе выбранных пользователем характеристик работы генетического алгоритма. На рис. 3 показана экранная форма этой программы.

pic_7.tif

Рис. 1. Варьируемая лингвистическая переменная

pic_8.tif

Рис. 2. Модель системы в среде Matlab, на примере которой рассматривается настройка нечеткого регулятора

pic_9.tif

Рис. 3. Экранная форма программы настройки нечеткого регулятора в среде Matlab

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

1) количество хромосом в популяции;

2) количество генов в хромосоме;

3) количество битов в одном гене;

4) вероятность скрещивания;

5) вероятность мутации;

6) целевая функция.

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

а) время регулирования;

б) перерегулирование;

в) время регулирования и перерегулирование одновременно (при этом имеется возможность указать веса обоих критериев);

г) площадь между графиком переходного процесса системы и «единичным» графиком (то есть графиком, у которого каждому значению переменной времени t соответствует выходное значение y = 1);

д) площадь между графиком переходного процесса системы и желаемым графиком (при этом программа позволяет указать желаемую форму переходного процесса аналогично тому, как это сделано в NCD-блоке в программе Matlab);

7) максимальное число итераций естественного отбора.

Оптимизируемый в рассматриваемом примере регулятор содержит две входных (e – ошибка управления, de – скорость изменения ошибки управления) и одну выходную переменную (y). Соответственно, генотип состоит из 6-ти частей: a1, b1, a2, b2, a3, b3. Границы изменения переменных: e – [0; 1,5], de – [0; 2], y – [0; 1,5].

Примем желаемую точность ∆ = 1 %. При этом согласно формуле получим число битов, кодирующих каждый ген na1 = nb1 = na2 = nb2 = na3 = nb3 = 10.

munasyn01.wmf (1)

где n – число битов в гене; xmax – верхняя граница изменения кодируемого параметра; xmin – нижняя граница изменения кодируемого параметра; ∆ – требуемая точность.

Для создания начальной популяции возьмем случайные значения варьируемых параметров a и b. В ходе своей работы данная программа преобразует значения этих параметров в генотип, а также выполняет обратную операцию – преобразование генотипа в фенотип – согласно формулам (2) и (3) соответственно.

munasyn02.wmf (2)

где d – десятичное представление кодируемого параметра; xmax – верхняя граница изменения кодируемого параметра; xmin – нижняя граница изменения кодируемого параметра; n – число битов в гене.

munasyn03.wmf (3)

где d – десятичное представление декодируемого параметра; xmax – верхняя граница изменения кодируемого параметра; xmin – нижняя граница изменения кодируемого параметра; n – число битов в гене.

Например, следующие значения параметров: a1 = 0,6; b1 = 1,2; a2 = 0,9; b2 = 1,8; a3 = 0,7; b3 = 1,4 будут зашифрованы в следующей хромосоме:

[[0, 1, 1, 0, 0, 1, 1, 0, 0, 1];

[1, 1, 0, 0, 1, 1, 0, 0, 1, 0];

[0, 1, 1, 1, 0, 0, 1, 1, 0, 0];

[1, 1, 1, 0, 0, 1, 1, 0, 0, 1];

[0, 1, 1, 1, 0, 1, 1, 1, 0, 1];

[1, 1, 1, 0, 1, 1, 1, 0, 1, 1, ]].

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

pic_10.tif

а

pic_11.tif

 

б

pic_12.tif

 

pic_13.tif

в г

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

pic_14.tif

 

а

pic_15.tif

 

б

pic_16.tif

 

pic_17.tif

в г

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

В качестве метода естественного отбора разработанная программа использует метод «колеса рулетки». Вероятность скрещивания для данного примера установим равную 80 %, вероятность мутации – 1 %.

Параметры исходного нечеткого регулятора представлены на рис. 4.

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

Результат отработки единичного воздействия, подаваемого на 0-й секунде на вход системы с исходным регулятором, показан на рис. 6, а. Время регулирования переходного процесса в системе с исходным регулятором составило 1,6 с, перерегулирование – 15 %. После оптимизации нечеткого регулятора время регулирования системы составило 0,75 с, перерегулирование составило 3 % (рис. 6, б)

Таким образом, предлагаемая методика позволяет существенно улучшить параметры системы за счет изменения параметров лингвистических переменных нечеткого регулятора. В приведенном примере время регулирования сократилось на 53 %, перерегулирование уменьшилось на 80 %.

pic_18.tif

а

pic_19.tif

б

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

Рецензенты:

Гвоздев В.Е., д.т.н., профессор, заведующий кафедрой технической кибернетики, Уфимский государственный авиационный технический университет, г. Уфа;

Куликов Г.Г., д.т.н., профессор, заведующий кафедрой автоматизированных систем управления, Уфимский государственный авиационный технический университет, г. Уфа.

Работа поступила в редакцию 10.04.2015.


Библиографическая ссылка

Мунасыпов Р.А., Ахмеров К.А., Ахмеров К.А. МЕТОДИКА ОПТИМИЗАЦИИ НЕЧЕТКОГО РЕГУЛЯТОРА С ПОМОЩЬЮ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ // Фундаментальные исследования. – 2015. – № 2-15. – С. 3275-3280;
URL: http://www.fundamental-research.ru/ru/article/view?id=37767 (дата обращения: 13.06.2021).

Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1.074