Модификация алгоритмов управления, использующих правила нечеткого условного вывода

УДК 658.562.3

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

В. Г. Чернов,

доктор экон. наук, профессор

Владимирский государственный университет

им. Александра Григорьевича и Николая Григорьевича Столетовых

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

Ключевые слова — нечеткое множество, функция принадлежности, правила нечеткого условного вывода.

Введение

Нечеткое управление различного рода техническими объектами в настоящее время получило достаточно широкое распространение, прежде всего, в тех приложениях, где применение методов классической теории автоматического управления осложнено трудностью создания адекватных математических описаний. Разработанные нечеткие контроллеры в ряде случаев обеспечивают качество управления, не уступающее классическим регуляторам [1-5].

Основные алгоритмы нечеткого управления

Среди известных алгоритмов нечеткого управления наиболее распространены алгоритмы Мам-дани, Сукамото, Ларсена, которые основаны на правилах нечеткого условного вывода (ПНВ), образующих базу знаний нечеткого контроллера.

Независимо от вида алгоритма все они содержат следующие этапы:

1) фаззификацию, когда устанавливается соответствие между числовыми значениями входных переменных и определенными для них лингвистическими значениями;

2) поиск в базе знаний нечеткого контроллера подходящего правила или правил нечеткого управления;

3) обработку ПНВ, которая включает в себя свертку условий в условной части правил и формирование нечеткого вывода (вычисление им-

пликации). Если при формировании управления предполагается использование нескольких правил, то формируется интегральный вывод;

4) дефаззификацию — преобразование нечеткого вывода в числовое значение для формирования управляющего воздействия.

Этапы 1, 2, 4 выполняются во всех алгоритмах аналогично, а различие между ними заключается лишь в формировании нечеткого вывода.

Поскольку именно третий этап является предметом рассмотрения настоящей работы, то остановимся на нем более подробно, взяв за основу алгоритм Мамдани. Отметим, что алгоритмы Сука-мото и Ларсена отличаются от алгоритма Мамда-ни только в части формирования управляющего воздействия.

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

Lx = {Л;, i = 1, ..., Щ, Ly = {В, ] = 1, ..., М}, которым соответствуют нечеткие множества с функциями принадлежности цА_ (х), цв, (у), х е их, у е и у, где их, иу — универсальные множества.

Положим для простоты N = 4, М = 3 (рис. 1). Нечеткий вывод представлен лингвистическими значениями Lг = {Ск, £ = 1, ..., К}, (К = 3).

Пусть управление осуществляется по правилам:

Р1: если <х = Л2> и <у = В2>, то <2 = С2>;

Р2: если <х = Лз> и <у = Вз>, то <2 = С3>.

Согласно алгоритму Мамдани (аналогично для Сукамото и Ларсена), сначала выполняется свертка условий в левой части правил и вычисляются соответствующие функции принадлежности:

Ц1 = ц а2 (х) п ц в2 (у);

^2 = Ца3 (х) п Цв3 (у).

А3 ' ' г в3

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

На рисунке

а1 = Ц а2 (Х) п Цв2 (Уt) =

= тіп[ца2

Р2 = ЦА3 (Х) П ЦВ3 (Уt) =

= тіп[ца3

где хг, уг — текущие значения входных переменных.

На наш взгляд, в этом решении есть несколько недостатков.

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

Р1: если<х = А2>, то ^ = С2>, а Р2 - Р2:

если <у = Вз>, то ^ = Сз>.

Очевидно, что это — другие правила и вообще другая ситуация управления.

Первое правило в некоторых пределах практически не реагирует на изменение второй входной переменной, пока аі < Рі. В какой-то мере си-

туацию спасает наличие второго правила, но все равно это обстоятельство скажется на качестве управления. Аналогичные соображения можно высказать и в отношении правила Р2 (5). Очевидно, что это же будет иметь место и при большем числе условий в левой части правил управления.

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

если <х = А2> и <у = В2>, то ^ = С2>; если <х = Аз>, то если <у = Вз>, то <z = Сз>;

если <х = Аз> и <у = Вз>, то <z = Сз>; если <Х = ^2>, то если <у = В2>, то ^ = С2>.

Нетрудно показать, что в обеих ситуациях (6), (7) будет принято одно и то же решение. Это известный недостаток алгоритма Мамдани. Следует отметить, что правила вида (6), (7) использовались в работе самого Мамдани [5]. Необходимо также отметить, что в указанных алгоритмах в определенной мере теряется влияние вида функции принадлежности (рис. 2). Особенно это проявляется в алгоритме Сукамото, где итоговое решение вычисляется как взвешенное: = (а^1 +

+ Р2^)/(а1 + Р2).

На рисунке, где показано три варианта функций принадлежности нечетких множеств, представляющих вывод, видно, что для любой симметричной функции принадлежности решение будет одним и тем же, так как значения z1 и z* остаются неизменными независимо от вида функций принадлежности. Можно ожидать, что это отрицательно скажется на качестве управления. Для дополнительного доказательства этого положения рассмотрим ситуацию, когда все нечеткие множества, представляющие переменные ПНВ, определены на одном и том же универсальном множестве. На рис. з, а представлен результат выполнения традиционного алгоритма Мамда-ни, когда операция пересечения заменена операцией тіп над синглтонами, на рис. з, б — если ис-

Рис. 1. Обработка правил нечеткого вывода по алгоритму Мамдани

Рис. 2. Иллюстрация отсутствия влияния вида функции принадлежности на вывод в алгоритме Сукамото

Рис. 3. Нечеткий вывод: а — по традиционному алгоритму Мамдани с использованием синглтонов

пользуются пересечения нечетких множеств. Результат дефаззификации (решение или сигнал управления) для рис. з, а — 4,58, для рис. з, б — з,2. Различия в результатах очевидны и составляют около з0 %. Конечно, это искусственная ситуация, но она нужна только как демонстрация возможных различий.

В замкнутых системах управления эти недостатки в какой-то мере устраняются именно за счет обратной связи, что позволяет строить нечеткие контроллеры. Однако в разомкнутых системах результаты не всегда получаются удовлетворительными. При этом надо отметить, что если для управления используется только одно правило, то указанные недостатки только усугубляются. Кроме того, применение этих алгоритмов в задачах многокритериального альтернативного выбора может дать противоречивые результаты [6].

Вернемся к алгоритму Мамдани. Ограничимся рассмотрением одного правила, например Р1, результат обработки которого запишем следующим образом:

Цг = Цс2 (г) П [ца2 (х) П цв2 (У)].

Нетрудно показать, что это соотношение может быть представлено в виде

Цг = [Цс2

Соотношение (9) указывает на то, что нет необходимости выполнять свертку критериев в условной части ПНВ. Импликацию можно вычислять для каждого критерия, а свертку выполнять над частными импликациями. Таким образом можно

обеспечить участие каждого критерия в формировании нечеткого управления. Конечно, пока остается нерешенной проблема вычисления пересечений множеств, стоящих в квадратных скобках соотношения (9).

Кроме простых правил вида (1) могут использоваться более сложные:

если <х = А> и <у = В>, то если ^ = С> и ^ = D>, то <р = Н>;

Согласно алгоритму Мамдани, для правила (10) может быть записано соотношение

Ц1 = [

которое можно переписать и так:

Ц1 = ЦАП[(ЦС ПцЯ)П0%ПцЯ)] ПцВП[(цСПцЯ)П0%ПцЯ)]’

т. е. все опять сводится к вычислению частных импликаций.

Правило (11) можно записать следующим образом [7]:

[(АПВ)  С]П[(АПВ)  D].

Учитывая доказанные соотношения (6), (7), получим

[(А П В)  С] П [(А П В)  D] =

= [(А П С) П (В П С)] П [(А и В) П D] =

= [(А П С) П (В П С)] П [(А П D) и (В П D)],

что также подтверждает возможность отказа от свертки критериев в условной части правил вида (10) и (11).

Кроме этого, следует рассмотреть еще одну ситуацию, которая может возникнуть при обработке ПНВ (рис. 4).

Пусть имеется правило: если <х = Л> и <у = В > и <2 = С>, то <й- = Б>, при этом все нечеткие мно-

Синглтоны

Рис. 4. Иллюстрация возможности возникновения пустого множества при свертке условий в ПНВ

жества в условной части правила определены на одном и том же универсальном множестве.

На рисунке нетрудно видеть, что попытка построить свертку условий на основе операции пересечения приведет к получению пустого множества. Поэтому в известных алгоритмах операция пересечения опять же заменяется на операцию тіп, выполняемую не над нечеткими множествами, а над синглтонами. Результатом этой операции будет значение а^ Недостатки этого подхода мы уже обсуждали ранее. Переход на вычисление частных импликаций позволяет предложить следующее решение. Построим из элементов условной части ПНВ группы, включающие все возможные комбинации нечетких множеств, дающие непустые пересечения (см. рис. 4) (АПС) Ф 0, (BПC) Ф 0, и вычислим частные импликации для этих групп (AПC)ПD, (BПC)ПD.

При обработке ПНВ кроме импликации Мам-дани часто используется импликация Лукасеви-ча [8], которая, например, для правила Р1 запишется в виде

т1 = 1П (1 —ЦА П ЦВ + ЦС ) = 1П (цА П ЦВ + ЦС ) =

= 1П

Действуя аналогично, можно доказать справедливость равенств

т1 = 1П (1-Ц А + Цс ) = ЦА + ЦС >

т2 = 1П (1 — ЦВ + ЦС ) = ЦВ + ЦС.

Можно показать, что

т1 и т2 = (ЦА + ЦС ) и (ЦВ + ЦС ) = ЦА и ЦВ + ЦС,

т. е. объединение импликаций Лукасевича, вычисленных отдельно для нечетких множеств А и В, совпадает с импликацией, вычисленной по соотношению (11), что также указывает на то, что в случае применения импликации Лукасевича нет необходимости выполнять свертку критериев в условной части ПНВ.

Импликация Заде для простого правила «если А, то В» вычисляется по формуле тах[тіп(ЦА, Цв), 1 - Ца]. Для правила Р1 (1) импликация Заде будет вычисляться по формуле тах[тт(ЦАПВ, Цс),

1 - Цапд]. Запишем эту формулу несколько иначе:

тах[тіп(Ц апв ’ Ц С )>1-Ц апв ] =

= [(Ца П ЦВ ) П ЦС] и (1 - ЦАПВ ) = [(ЦА П ЦВ ) П ЦС ] и

иЦАПВ = [(ЦА П ЦВ ) П ЦС] и ЦА П ЦВ =

= [(ЦА П Цс) п (ЦВ П Цс)] П (Ца иЦв) =

= (ЦА и ЦВ ) и [(ЦА П Цс) П (ЦВ П Цс] =

= ЦА и [(ЦА П Цс) П (ЦВ П ЦС )] и Цв и [(ЦА П ПЦс)П (Цв ПЦс)].

И, наконец, для классической нечеткой импликации для правила Р1тах[1 - Цлпв, Цc] при ЦЛпв - ЦС получим

тах[1 — ц апв , Цс ] =

=[(1-цА п цВ) и Цс] = [ца п цВ и Цс] =

= ца и цВ и Цс = (ца и Цс ) и (цВ и Цс))-

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

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

Вернемся к одному из правил вида (1), например:

Р1: если <х = Л1> и <у = В1>, то <2 = С1>.

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

Ц1 = [Цс1

Поскольку нечеткие множестваА^, В^, С1 принадлежат различным универсальным множествам, то вычисление соответствующих пересечений в соотношении (14) по определению невозможно. Известно использование цилиндрических продолжений [7] для вычисления конъюнктивных форм, но для управления техническими объектами оно достаточно сложное.

В работе [6] была предложена новая операция над нечеткими множествами, которая первоначально была названа геометрической проекцией нечетких множеств. Это название было признано неудачным из-за близости по названию с операцией проекции нечетких множеств, поэтому было предложено новое название «тень нечетких множеств» Sh(A, В). Определим эту операцию следующим образом.

Тень нечеткого множества Л на нечеткое множество Б должна удовлетворять следующим условиям:

1) Sh(Л, Б) — нечеткое множество;

2) Sh(А, А) = А;

3) Sh( A, B) = 0, если хотя бы одно из множеств Л или Б пустое или множества Л и Б ортогональны.

Процедуру построения тени нечеткого множества Л на нечеткое множество Б определим следующим образом (рис. 5):

Shj(A, B) = {ср[Ц1 (y), цв (x)]/[y, X = f(y)]}, (15) CG[mb (x)]

где f (y) =---B-----y — проекционная функция;

CG[|a A (y)]

CG[^b (x)], CG[^a (y)] — координаты центров тяжести фигур, ограниченных функциями принадлежности ца (y), Мв (x); Р — функционал, задающий вид преобразований над функциями принадлежности.

Смысл этой операции состоит в том, что в зависимости от взаимного расположения нечетких множеств и, соответственно, угла наклона проекционной прямой изменяется «тень» одного нечеткого множества, накладываемая на другое. Этим будет определяться степень взаимодействия оценок понятий, представляемых нечеткими множествами.

Нечеткое множество Л, которое проецируется на другое нечеткое множество Б, назовем источником тени. Нечеткое множество Б, на которое проецируется тень нечеткого множества Л, назовем приемником тени.

Тени типа min и max будут иметь место, если р = min и р = max соответственно:

Shmin

shmax

Обратная тень

Shp1 (B, A) = {р[цв (х), Ма (У')] / х, У' = f (х)}.

Рис. 5. Геометрическое представление операции «тень нечеткого множества»

Более подробно свойства этой операции рассмотрены в работах [6, 9].

В случае использования этой операции для управления техническими объектами применительно к алгоритмам Мамдани и Сукамото она была несколько видоизменена в части определе-

СG[цB (х)]

ния проекционной функции f(у) =----------------В-у,

Уt

где уг — текущее значение переменной у (рис. 6).

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

если <х = Л> и <у = В> то <2 = С>,

получим ц1 = Shф(А, C)nShф(В, С).

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

И наконец, следует отметить, что предложенный метод обработки импликации свободен от

Рис. 6. Реализация операции Sh(A, В) с учетом результата фаззификации входной переменной (---------------функция принадлежности, по-

лученная после фаззификации переменной у = у(;--------функция принадлежно-

сти нечеткого множества, представляющего 8ЦЛ, В))

Рис. 7. Вывод с использованием операции «тень нечетких множеств» (-------------------результиру-

ющее нечеткое множество)

еще одного недостатка импликации Мамдани, состоящего в том, один и тот же результат получается для различных по логике условных правил. Как уже отмечалось, для правил если <х = А> и <у = В>, то <z = С> и если <х = А>, то если <у = В>, то <z = С>, будет получен один и тот же результат.

Если реализовать эти правила через операцию Sh, то для первого правила получим Shф(B, С)П П Shф(A, С), для второго — Shф[A, Shф(B, С)].

Нетрудно показать, что Shф(B, C)ПShф(A, С) Ф Ф Shф[A, Shф(B, С)].

Рассмотрим возможности и результаты практического применения описанных выше подходов к решению задачи управления техническими объектами. В качестве объекта управления для проведения исследования была выбрана установка для нагрева жидкостей, так как объект данного типа является классическим примером САУ в теории управления, а также идеологически соответствует принципам нечеткого управления (сложная природа процессов и в то же время простая и понятная логика управления объектом) [10]. Упрощенная схема САУ представлена на рис. 8.

Обоснованием этого варианта является наличие, во-первых, стратегий управления, доказавших свою работоспособность, во-вторых, апробированной модели, реализованной в среде Ма1Х.аЬ [11].

Бак с теплой водой разделяется на несколько отсеков, переменный поток холодной воды F2 проходит последовательно отсеки и покидает бак в последнем отсеке. Холодная вода нагревается в теплообменнике, в котором течет по трубам переменный поток горячей воды F1 с температурой 90 °С. Задача состоит в поддержании постоянной температуры воды в одном из отсеков и, по возможности, в сохранении постоянства потока F2 посредством регулирования динамических значений F1 и F2.

В среде Simulink программного комплекса Ма^аЬ построена модель (рис. 9) в соответствии со структурой, представленной в работе [10], где объект управления описывался соотношени-

8еоре2

Рис. 9. Модель САУ

ем Q(s) = а!#!^)^! - а2Н2^^2, где а^ а2 — весовые коэффициенты;

= Ь ехр(-т1з), н2 (з) = к2 еХР(—).

1 Т1в +1 2 Т2в + 1

Исходные данные для создания нечеткого регулятора были взяты из работы [10] с целью сопоставлять получаемые результаты более обоснованно.

Диапазон изменения величин:

— поток горячей воды F1 = 0,5 -г- 42;

— поток холодной воды F2 = 1 -г- 18;

— заданное значение температуры нагрева +45 °С.

Результаты сравнительного моделирования стандартного и модифицированного алгоритмов Мамдани представлены на рис. 10, а, б и в таблице.

Рис. 10. Переходные процессы (а) и временные диаграммы изменения ошибки (б) в системе: 1, 2 — стандартный и модифицированный алгоритмы Мамдани; 3, 4 — стандартный и модифицированный алгоритмы Сукамото

В Результаты сравнительного моделирования стандартных и модифицированных алгоритмов Мамда-ни и Сукамото

Параметр Стандартный алгоритм Модифицированный алгоритм

Мамдани Сукамото Мамдани Сукамото

Время регулирования, с (точность 5 %) 1660 410 810 340

Перерегулирование, % 5,5 0 3,4 0

Интегральная оценка ошибки: стандартный алгоритм Мамдани:

2000

11 = J |<5|а# = 8423(°С #);

0

модифицированный алгоритм:

2000

12 = J = 5912(°С  #);

0

Литература

1. Захаров В. Н., Ульянов С. В. Нечеткие модели интеллектуальных промышленных регуляторов и системы управления // Изв. АН СССР. Техническая кибернетика. 1993. № 4. С. 189-205.

2. Кузьмин В. Б., Травкин С. И. Теория нечетких множеств в задачах управления и принципах устройства нечетких процессоров // Изв. АН СССР. Техническая кибернетика. 1992. № 5. С. 171-197.

3. Асаи К., Вамада Д., Иваи С. и др. Прикладные нечеткие системы: пер. с япон. / под ред. К. Тэрано, К. Асаи, М. Сугэно. — М.: Мир, 1993. — 368 с.

4. Бураков М. В., Коновалов А. С. Синтез нечетких логических регуляторов // Информационно-управ-ляющие системы. 2011. № 1(50). С. 22-27.

5. Mamdani E. H. Application of fuzzy logic to approximate reasoning using linguistic systems // IEEE Trans. Comput. 1977. C-26. Р. 1182-1191.

6. Чернов В. Г. Решение задач многокритериального альтернативного выбора на основе геометрической

стандартный алгоритм Сукамото:

1000

11 = J |<5|а# = 1882(°С  #);

0

модифицированный алгоритм:

1000

12 = J |<5|а# = 1790(°С  #).

0

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

Заключение

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

проекции нечетких множеств // Информационно-управляющие системы. 2007. № 1(26). С. 46-52.

7. Малышев Н. Г., Берштейн Л. С., Боженюк А. В. Нечеткие модели для экспертных систем в САПР. — М.: Энергоатомиздат, 1991. — 136 с.

8. Борисов А. Н., Крумберг О. А., Федоров И. П. Принятие решений на основе нечетких моделей: Примеры использования. — Рига: Зинатне, 1990. — 184 с.

9. Чернов В. Г. Нечеткие деревья решений (нечеткие позиционные игры) // Информационно-управляю-щие системы. 2010. № 5(48). С. 8-14.

10. Kicker W. J. M., Van Nauta Lemke H. R. Application of a fuzzy controller in a warm water plant // Auto-matica. 1976. Vol. 12. P. 301-308.

11. Леоненков А. В. Нечеткое моделирование в среде MATLAB и fuzzyTECH. — СПб.: БХВ-Петербург, 2005. — 736 с.