Нечеткие системы управления. Операции с нечеткими множествами

Сейчас, когда мы уже знаем, что такое нечеткие множества, попытаемся определить базовые операции (действия) над нечеткими множествами. Аналогично действиям с обычными множествами нам потребуется определить пересечение, объединение и отрицание нечетких множеств.

Пусть A нечеткое множество (интервал) «в районе 5 - 8» и B нечеткое множество (число) «около 4», как показано на рисунке.

Следующий пример иллюстрирует нечеткое множество «в районе 5 - 8» И (AND) «около 4» (синяя линия).

Нечеткое множество «в районе 5 - 8» ИЛИ (OR) «около 4» показано на следующем рисунке (снова синяя линия).

Следующий рисунок иллюстрирует операцию отрицания. Синяя линия - это ОТРИЦАНИЕ нечеткого множества A.

Нечеткое управление

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

Пример: Перевернутый маятник

Проблема состоит в балансировке вертикальной мачты, подвижно закрепленной нижним концом на тележке, которая может двигаться только в двух направлениях - влево или вправо. Разумное существо (человек), произведя серию экспериментов более или менее быстро овладевает искусством поддерживать равновесие мачты достаточно долгое время. Однако для традиционных систем автоматического управления такая постановка задачи является достаточно нетривиальной. Особенно когда отсутствует строгое математическое описание (математическая модель) объекта управления.

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

Этап 1. Фаззификация (переход от четких значений переменных к нечетким). Выполняется человеком - разработчиком контроллера в процессе его создания.

Мы должны определить (субъективно) что такое высокая скорость, низкая скорость и т.п. для тележки. Это делается описанием функции принадлежности для нечетких множеств:

    отрицательная высокая, neg.high (голубой)

    отрицательная низкая, neg.low (зеленый)

    нулевая, zero (красный)

    положительная низкая, pos.low (синий)

    положительная высокая, pos.high (розовый)

Тоже самое делается для угла между тележкой и мачтой маятника и для угловой скорости изменения этого угла.

Этап 2. Формулирование правил зависимости нечеткого значения управляющего воздействия от нечетких значений переменных состояния системы. Выполняется человеком - разработчиком контроллера в процессе его создания.

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

Положим, например, что мачта находится справа (угол равен нулю) и не двигается (угловая скорость - ноль). Очевидно, что это желаемое положение, и ничего предпринимать не надо (скорость равна нулю).

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

Итак, получаем два правила, которые более формально представляются в следующей форме:

Если угол равен нулю И угловая скорость равна нулю, тогда скорость должна быть равна нулю.

Если угол равен нулю И угловая скорость положительная низкая, тогда скорость должна быть положительной низкой.

Сведем все полученные правила в таблицу:

Какой должна быть скорость тележки?

Угол наклона шеста

Угловая скорость шеста

где ОВ - Отрицательное Высокое (большое) значение, ОН - Отрицательное Низкое (малое) значение, 0 - нуль и т.д.

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

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

Реальное значение угла:

Реальное значение угловой скорости:

Применим правило

Если угол равен нулю И угловая скорость равна нулю, тогда скорость равна нулю

к реальным значениям переменных.

Здесь представлена лингвистическая переменная "угол", отображаемая нечетким множеством "ноль" и реальный угол наклона маятника.

Проследим получение результата с помощью нечеткого вывода.

1. Если угол равен нулю И угловая скорость равна нулю тогда скорость равна нулю

Получаем, что реальное значение угла принадлежит нечеткому множеству "ноль" со степенью 0.75.

2. Если угол равен нулю И угловая скорость равна нулю тогда скорость равна нулю

Здесь представлена лингвистическая переменная "угловая скорость", отображаемая нечетким множеством "ноль" и реальная угловая скорость.

3. Если угол равен нулю И угловая скорость равна нулю тогда скорость равна нулю

Реальное значение угла принадлежит нечеткому множеству "ноль" со степенью 0.75.

Реальное значение угловой скорости принадлежит нечеткому множеству "ноль" со степенью 0.4.

4. Если угол равен нулю И угловая скорость равна нулю тогда скорость равна нулю

Так как две части условий правила объединяются по И, то вычисляем min (0.75, 0.4) = 0.4 и уменьшаем нечеткое множество "ноль" для переменной "скорость" до этого уровня (в соответствии с рассматриваемым правилом).

Только четыре правила приводят к результату. Объединим их в одно решение.

Таким образом результатом правила

Если угол равен нулю И угловая скорость равна нулю тогда скорость равна нулю

является:

Результатом правила

Если угол равен нулю И угловая скорость отрицательная низкая тогда скорость - отрицательная низкая

является:

Результатом правила

Если угол положительный малый И угловая скорость равна нулю тогда скорость - положительная низкая является:

Результатом правила

Если угол положительный малый И угловая скорость отрицательная низкая тогда скорость равна нулю

является:

Объединение этих четырех результатов дает общее решение:

Таким образом, решением контроллера нечеткой логики является нечеткое множество (для скорости). Далее необходимо выбрать одно значение для представления конечного выходного значения. Существует несколько эвристических методов (методов дефаззификации ), один из которых, например, предполагает выбирать в качестве конечного значения центр тяжести нечеткого множества:

Вся данная процедура получения решения называется контроллером Мамдани (Mamdani controller).

Приложения нечеткой логики

рекомендуется :

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

    для нелинейных процессов высоких порядков

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

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

    приемлемый результат может быть получен с помощью общей теории управления

    уже существует формализованная и адекватная математическая модель

    проблема неразрешима.

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

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

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

(см. скан)

Рис. 3.35. Примеры структурирования нечеткого вывода.

(см. скан)

Рис. 3.35. Продолжение

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

Как показано на рис. 3.36, параметр с правил управления меняется непрерывно от и пропорционально изменению параметра оборудования а от к Таким образом, нечеткое адаптивное управление - это метод управления, в котором осуществляется адаптация параметра правил управления на основе формулы (3.27) в соответствии с состоянием оборудования. В общем случае в качестве параметра правила управления используется параметр функции принадлежности. Следовательно, используется одно и то же правило управления, но для одной и той же нечеткой переменной

Рис. 3.36. Нечеткая адаптивная операция.

определяются две функции принадлежности в соответствии с состояниями

Выше был рассмотрен случай с одним параметром оборудования. Объясним это на конкретном примере. Характеристики оборудования часто меняются в зависимости от рабочего состояния. Например, часто при нагрузках 50 и 100% коэффициент усиления процесса и время простоя существенно различаются. В этом случае состояние нагрузки принимается за параметр оборудования. Кроме того, если по разным причинам состояние оборудования меняется, целесообразно с помощью нечеткого вывода, использующего эти причины в качестве входных значений, оценить параметр, характеризующий состояние оборудования. Сопоставляя этот параметр в пропорции с , по функции принадлежности правила управления для нагрузок 50 и 100% можно определить с использованием формулы (3.27) функцию принадлежности для произвольного состояния нагрузки. То, что при этом будет адаптироваться: функция принадлежности предпосылки или функция принадлежности заключения зависит от характеристик оборудования. Если, например, в зависимости от нагрузки меняются постоянная времени и время запаздывания, то адаптируется функция принадлежности предпосылки, а в случае изменения коэффициента усиления процесса - функция принадлежности заключения. Аналогичным методом по нагрузкам 50 и 100% можно осуществить согласованное управление при нескольких различных целях управления. В этом случае близость к некоторому состоянию выражается параметром со и адаптируется соответствующая целевая функция принадлежности.

Нечеткая система представляет собой интеллектуальную систему, задачами которой являются те же, что и у типовой системы, включая возможности, описанные выше. Нечеткая система, как интеллектуальная, имеет широкие возможности и диапазон результатов измерений, по сравнению с типовой системой. Значимый вклад в это направление внес Л. Заде. Его работа «Fuzzy Sets» явилась толчком к развитию новейшей математической теории. Заде расширил классическое понятие множества, допустив, что характеристическая функция (функция принадлежности элемента множеству) может принимать любые значения в интервале (0, 1), а не только лишь значения 0 или 1. Такие множества были названы им нечеткими (fuzzy). Заде определил также ряд операций над нечеткими множествами и предложил обобщение узнаваемых способов логического вывода. Введя понятие лингвистической переменной и допустив, что в качестве ее значений (термов) выступают нечеткие множества, Заде предложил аппарат для описания действий интеллектуальной деятельности, включая нечеткость и неопределенность выражений. Это позволило создать фундамент теории нечетких множеств и нечеткой логики, а также предпосылки для внедрения способов нечеткого управления в инженерную практику. Смещение центра исследований нечетких систем в сторону практических приложений привело к постановке целого ряда направлений таковых, как новейшие архитектуры вычислительных машин для нечетких вычислений, элементная база нечетких ЭВМ и контроллеров, инструментальные средства разработки, инженерные способы расчета и разработки нечетких систем управления и многое другое. Математическая теория нечетких множеств дозволяет обрисовать нечеткие понятия и познания, оперировать этими познаниями и делать нечеткие выводы. Нечеткое управление оказывается в особенности полезным, когда исследуемые процессы являются очень сложными для анализа при помощи общепринятых способов, либо когда доступные источники инфы интерпретируются неточно, либо неопределенно. Нечеткая логика, предоставляющая действенные средства отображения неопределенностей и некорректностей настоящего мира, и на которой основано нечеткое управление, ближе к людскому мышлению и естественным языкам, чем традиционные логические системы. Нечеткое управление (Fuzzy Control, Fuzzy-управление) в настоящее время является одной из перспективнейших интеллектуальных технологий, позволяющих создавать качественные системы управления. Среди обстоятельств распространение Fuzzy-управления традиционно выделяют следующие: 1. Особенные свойства систем управления с нечеткой логикой, а именно малая чувствительность к изменению характеристик объекта управления. 2. Синтез систем управления с нечеткой логикой а процессе применения современных средств аппаратной и программной поддержки часто проще, чем обычных. Существуют и нетехнические предпосылки популярности нечетких систем: 1. Нечеткая логика – разработка, появившаяся относительно недавно, ее применение без усилий дозволяет добиться «патентной чистоты» проектируемых изделий. 2. Существует определенная «мода» на нечеткие системы. Как и у всех систем управления, у систем с нечеткой логикой существует область, в которой их применение является более желаемым. В качестве таковых областей традиционно выделяют следующие: 1. Системы регулирования, для которых модель объекта управления определена только отменно. 2. Надстройка над традиционными системами регулирования (к примеру, над ПИД-регуляторами) для придания им адаптивных параметров. 3. Воспроизведение действий человека-оператора. 4. Системы организационного управления верхнего уровня. Общей предпосылкой для внедрения нечетких систем управления является, с одной стороны, наличие неопределенности, связанной как с отсутствием информации, так и сложностью системы и невыполнимостью либо нецелесообразностью ее описания традиционными способами и, с иной стороны, наличие об объекте нужных управляющих действий, возмущений и т.п. Традиционные способы управления отлично зарекомендовали себя при относительно низкой трудности объекта управления и наличии довольно полной информации о нем. Нейросетевые системы управления можно целенаправлено использовать при отсутствии информации, либо высочайшей трудности объекта управления. Промежуточное положение между данными технологиями занимают нечеткие системы. Главным признаком классификации нечетких систем управления является место нахождения блоков нечеткого логического вывода в системе управления: или нечеткая система сама формирует управляющие сигналы, или сигналы с нечеткой системы управляют параметрами традиционной системы управления (к примеру, ПИД-контроллером). К крайним также относятся системы с нечеткими комплексными моделями (или плавный, или скачкообразный). Систему управления с нечеткой логикой можно поделить на следующие группы: неадаптивные и адаптивные. В неадаптивных база знаний подстраивается в процессе работы в зависимости от складывающейся в процессе управления ситуации.


Три наиболее известных подхода к построению нечетких адаптивных систем управления – это инверсное управление, предикатное управление (управление с предсказанием), схема управления с обратной связью и идентификатором

Недостатками нечетких систем являются:

отсутствие стандартной методики конструирования нечетких систем;

невозможность математического анализа нечетких систем существующими методами;

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

Главным же недостатком продукционных систем остается то, что для их функционирования требуется наличие полной информации о системе.

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

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

Фаззификация (переход к нечеткости)

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

Рассмотрим этот этап подробнее. Прежде всего, введем понятие «лингвистической переменной» и «функции принадлежности».

Лингвистические переменные

В нечеткой логике значения любой величины представляются не числами, а словами естественного языка и называются ТЕРМАМИ. Так, значением лингвистической переменной ДИСТАНЦИЯ являются термы ДАЛЕКО, БЛИЗКО и т. д.

В заключение дадим два совета, которые помогут в определении числа термов:

1) исходите из стоящей перед вами задачи и необходимой точности описания, помните, что для большинства приложений вполне достаточно трех термов в переменной;

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

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

Дефаззификация (устранение нечеткости)

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

Результат нечеткого вывода, конечно же, будет нечетким. В примере с краном команда для электромотора крана будет представлена термом СРЕДНЯЯ (мощность), но для исполнительного устройства это ровно ничего не значит.

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

Процесс обработки неч.правил вывода в управл.сист.состоит из 4 этапов:

1) вычисление степени истинности левых частей правил, определение степени принадлежности входных значений нечетким подмножествам, указ. В левой части правил вывода;

2) модификация нечетких подмножеств, указ.в правой части правил вывода после то-в соответствии со значением истинности, получ.на первом этапе.

3) Объединение (суперпозиция)модифицированных подмножеств

4) Сколяризация результата, переход от нечет.подмножеств к сколяр.значениям.

Нечеткие контроллеры (Fuzzy controllers) позволяют реализовывать стратегии управления близкие человеку и представляют собой эффективную альтернативу (или дополнение) классическим системам управления.

Примечание . Будем использовать два термина для перевода «Fuzzy controllers»: нечеткие контроллеры либо нечеткие регуляторы (если речь идет о нечетком ПИД- регуляторе).

Структура нечеткого ПИД - регулятора (Fuzzy PID Controller) показана на рис. 2.18.

Рис. 2.18. Структура нечеткого ПИД – регулятора

Примечание . На рис. 2.18 используются следующие обозначения:

Вектор состояния объекта управления (ОУ) (a plant), - желаемое состояние ОУ (цель управления), называемое также как «задающий сигнал» (a reference signal ); - ошибка управления (control error ), вычисляемая как , где - скорость ошибки управления, - интегральная ошибка, - сила управления, где , где - универсумы для ошибки управления, ее производной и интегральной части, а также силы управления, соответственно.

Отношение «вход/выход» для ПИД-регулятора выражается следующим образом:

,

где называются коэффициентами усиления ПИД-регулятора и (пропорциональный, интегральный и производный коэффициенты). Выбирая различные значения , очевидно, получаем различное поведение ОУ.

Таким образом, функционирования ОУ существенным образом зависит от выбранных параметров ПИД-регулятора. Поэтому, для разработчиков системы управления становится весьма актуальной проблема эффективного способа выбора этих параметров для того, чтобы обеспечить лучшее качество управления.

Как определить эффективный способ выбора параметров управления ?

В случае классического метода управления, коэффициенты усиления ПИД-регулятора являются константами, т.е. постоянными величинами.

Чтобы усилить возможности традиционных (классических) ПИД-регуляторов, прежде всего, введем переменные коэффициенты усиления ПИД-регулятора:

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

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

где “ ” – композиционный оператор (смотри формулу 2.2), - нечеткие множества, заданные на соответствующих универсумах, и есть совокупность нечетких отношений (нечетких правил), содержащихся в базе знаний нечеткого ПИД-регулятора.

Примечание . В дальнейшем будем использовать сокращенное название нечеткого ПИД-регулятора как НР.

Установив один раз нечеткие правила, с помощью нечеткого вывода мы можем реализовывать стратегии управления. Ядром нечеткого ПИД-регулятора является система нечеткого вывода Сугено.

Входные переменные для нечеткого вывода: ошибка управления, ее производная и интеграл.

Выходные переменные нечеткого вывода: параметры.

БЗ НР состоит из следующих нечетких правил.

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

Полная база выглядит следующим образом:

ЕСЛИ И И есть ,ТО

ЕСЛИ И И есть , ТО

ЕСЛИ И И есть , ТО

ЕСЛИ И И есть , ТО

ЕСЛИ И И есть ТО ,

где , и – функции принадлежности для описания значений , , и , соответственно. , и - реальные числа, удовлетворяющие условию:

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

, , ,

Примечание . В НР регуляторах могут использоваться более простые правила в случае, если вместо ПИД управления использовать П-управление (только параметр, ), или ПД (), или ПИ () управление.

2.2.7 Пример применения нечеткой логики: управление автомобилем на основе нечеткой логики

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

Таблица 2.1

Стратегии управления автомобилем

Правило 1. ЕСЛИ расстояние между машинами короткое и машина едет с медленной скоростью , ТО не меняй скорость движения (ускорение нулевое). (Rule 1: IF distance between cars is short AND speed is slow maintain the speed )).
Правило 2. ЕСЛИ расстояние между машинами маленькое и машина едет с большой скоростью, ТО тормози (ускорение отрицательное). (Rule 2: IF distance between cars is short AND speed is fast , THEN step on the brake (reduce the speed )).
Правило 3. ЕСЛИ расстояние между машинами большое и машина едет медленно, ТО жми на педаль газа (ускорение положительное). (Rule 3: IF distance between cars is long AND speed is slow , THEN step on the gas pedal (increase the speed )).
Правило 4. ЕСЛИ расстояние между машинами большое и машина едет с большой скоростью , ТО не меняй скорость движения (ускорение нулевое). (Rule 4: IF distance between cars is long AND speed is fast , THEN hold the gas pedal steady (maintain the speed )).

Для формализации вышеприведенных правил введем следующие лингвистические переменные: «расстояние », «скорость » и «ускорение » (“distance”, “speed”, and “acceleration). Опишем значения малое» («short»), «большое» («long»), «медленно» («slow»), «тормози» («step on brake») и так далее соответствующими нечеткими множествами, как показано на рис. 2.19.

Примечание . Функции принадлежности должны быть определены в соответствии с рассматриваемой ситуацией. Так, например, скорость 70 км/час может быть большой на улице города и маленькой на скоростной трассе.

Обозначим через - «расстояние», через - «скорость» и - «ускорение». Соответствующие универсумы определим следующим образом:

[m]

Рис. 2.19. Функции принадлежности для введенных лингвистических переменных



Справочники