Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Лекция 3
2. СИСТЕМЫ УПРАВЛЕНИЯ С НЕЧЕТКОЙ ЛОГИКОЙ
2.1. Краткая историческая справка
Поразительным свойством человеческого интеллекта является способ-ность принимать правильные решения в обстановке неполной и нечеткой информации. Построение моделей приближенных рассуждений человека и использование их в системах управления представляет сегодня одну из важнейших проблем кибернетики.
Значительное продвижение в этом направлении сделано 40 с лишним лет тому назад профессором Калифорнийского университета (Беркли) Лотфи А. Заде (Lotfi A. Zadeh). Его работа "Fuzzy Sets", появившаяся в 1965 году в журнале Information and Control, № 8, заложила основы новой математической теории нечёткой логики.
Лотфи А. Заде своими научными работами:
▪ расширил классическое канторовское понятие множества, допустив, что характеристическая функция (функция принадлежности элемента множеству) может принимать любые значения в интервале [0; 1], а не только значения 0 либо 1. Такие множества были названы им нечеткими (fuzzy);
▪ определил ряд операций над нечеткими множествами и предложил обобщение известных методов логического вывода;
▪ ввёл понятие лингвистической переменной, допустив, что в качестве ее значений (термов) выступают нечеткие множества,
▪ создал одну из базисных основ аппарата для описания процессов интеллек-туальной деятельности, включая нечеткость и неопределенность выражений;
▪ вместе со своими последователями в дальнейшем заложил прочный фундамент новой теории (нечёткой логики) и создал предпосылки для внедрения методов нечеткого управления в инженерную практику.
Уже к 1990 году по этой проблематике было опубликовано свыше 10000 работ, а число исследователей превысило 10000, причем в США, Европе и СССР по 200300 человек, около 1000 в Японии, около 3000 в Индии и около 5000 исследователей в Китае.
В последние два десятилетия началось широкое использование новых методов, и систем нечёткой логики (СНЛ) в промышленности и других сферах.
Первые применения нечетких систем управления состоялись в Европе, но наиболее интенсивно внедряются такие системы в Японии. Япония держит неоспоримую пальму первенства по числу патентов и внедрений СНЛ. Их в Японии предложено на порядок больше, чем во всех остальных странах вместе взятых.
СНЛ наиболее эффективны в сложных трудно формализуемых и плохо структурированных процессах, которые могут управляться квалифицированными операторами без использования специфических знаний, лежащих в основе динамики функционирования этих процессов.
Использование нечеткого управления рекомендуется:
Использование нечеткого управления не рекомендуется, если...
Примеры практического применения нечеткой логики:
Нечеткие системы позволяют повысить качество продукции при уменьшении ресурсов и энергозатрат и обеспечивают более высокую устойчивость к воздей-ствию мешающих факторов по сравнению с традиционными системами автоматического управления.
Принципы нечёткой логики позволяют расширить сферу приложения систем автоматизации за пределы применимости классической теории.
Точка зрения Л.Заде:
"Я считаю, что излишнее стремление к точности стало оказывать действие, сводящее на нет теорию управления и теорию систем, так как оно приводит к тому, что исследования в этой области сосредоточиваются на тех и только тех проблемах, которые поддаются точному решению. В результате многие классы важных проблем, в которых данные, цели и ограничения являются слишком сложными или плохо определенными для того, чтобы допустить точный математический анализ, оставались и остаются в стороне по той причине, что они не поддаются математической трактовке. Для того чтобы сказать что-либо существенное для проблем подобного рода, мы должны отказаться от наших требований точности и допустить результаты, которые являются несколько размытыми или неопределенными".
Практические приложения нечетких систем привели к созданию новых архитектур компьютеров для нечетких вычислений, элементной базы для нечетких компьютеров и контроллеров, инженерных методов расчета и разработки нечетких систем управления.
2.2. Основные идеи нечёткой логики
Основная идея, используемая в СНЛ, заключается во введении «опыта эксперта» (человека-оператора; лица, принимающего решение (ЛПР)) в разработку схемы, управляющей некоторым динамическим процессом, либо экспертом (например, врачом, ставящим диагноз обследуемому объекту больному; мастером по ремонту бытовой техники, выполняющим ремонт телевизора, стиральной машины и других подобных бытовых приборов и машин).
По утверждению Лотфи Заде, с ростом сложности системы постепенно падает способность человека делать точные и в то же время значащие утверждения относительно ее поведения, пока не будет достигнут порог, за которым точность и значимость выводов становятся взаимоисключающими характеристиками. В СНЛ сложные отношения между входом и выходом сложных динамических процессов описываются набором правил нечеткой логики (IF-THEN правил), подразумевающих использование этих правил в приложении к лингвистическим переменным вместо усложненной динамической модели.
Применение лингвистических переменных, правил и законов нечеткой логики, а также приближенных рассуждений позволяет вносить опыт эксперта в разрабатываемую схему управления или диагностики.
В данном разделе курса будут рассмотрены не только основы нечёткой логики, но и архитектура и основные характеристики систем управления с нечеткой логикой.
2.2. Лингвистические переменные и их использование
Лингвистической называется переменная, значением которой являются нечеткие подмножества, выраженные в форме слов или предложений на естественном или искусственном языке.
Формально лингвистическая переменная задается набором {X, T(X), G, M}, где X название этой переменной; Т(Х) терм-множество переменной X, т.е. множество ее значений; G синтаксическое правило, порождающее названия значений переменной X (и позволяющее формировать новые термы); М семантическое правило, которое ставит в соответствие каждому значению лингвистической переменной ее смысл. Синтаксическое правило G часто базируется на использовании нечетких связок и модификаторов типа: «и», «или», «очень», «слегка», «не» и т. п.
В отличие от классической теории множеств, оперирующей понятием принад-лежности и непринадлежности элемента множеству, теория нечетких множеств допускает различную степень принадлежности к ним, определяемую функцией принадлежности элемента, значения которой изменяются в интервале [0,1].
Таким образом, смысл лингвистического значения X характеризуется некоторой функцией принадлежности µ: X > [0,1], которая каждому элементу х X ставит в соответствие число из интервала [0,1], причем для каждого из термов этой переменной X во всем его интервале.
Процедура преобразования значений базовой переменной в нечеткую (лингвистическую) переменную, характеризующуюся функцией принадлеж-ности, называется фаззификацией.
Пример. В случае управления мобильным роботом для уклонения его от препятствий можно ввести две лингвистические переменные: <дистанция> (расстояние до препятствия (помехи) и <направление> (угол между продольной осью робота и направлением на помеху). Рассмотрим лингвистическую переменную <дистанция>. Значениями ее можно определить термы <далеко>, <средняя> (<недалеко>), <близко> и <очень близко>.
Для физической реализации лингвистической переменной необходимо определить точные физические значения термов этой переменной, т.е. задать интервалы значений X, которые мы будем относить к каждому терму.
Например, переменная <дистанция> может принимать любое значение из диапазона от нуля до бесконечности, а интервалы её термов и функции принадлежности могут быть приняты, например, согласно рис. 2.1.
Рис. 2.1. Лингвистическая переменная и ее функция принадлежности
Согласно положениям теории нечетких множеств, в таком случае каждому значению расстояния из указанного диапазона может быть поставлено в соответствие некоторое число от нуля до единицы, которое определяет степень принадлежности данного физического расстояния (допустим 40 см) к тому или иному терму лингвистической переменной «дистанция».
Степень принадлежности определяется указанной выше функцией принадлежности М(d), где d расстояние до помехи. В нашем случае расстоя-нию 40 см можно задать степень принадлежности к терму <очень близко>, равную 0,7 , а к терму <близко> 0,3.
Конкретное определение функции принадлежности может проходить с использованием знаний эксперта или человеком, который хорошо разобрался с описываемой лингвистической переменной для рассматриваемой системы.
Переменной <направление>, которая может принимать значения в диапазоне от 0 до 360 градусов, зададим термы <левое>, <прямо> и <правое>.
Теперь необходимо задать выходные переменные. В рассматриваемом примере достаточно одной, которая назовём <рулевой угол>. Она может содержать термы: <резко влево>, <влево>, <прямо>, <вправо>, <резко вправо>.
Связь между входом и выходом может описываться в виде совокупности логических выражений, а в относительно простых случаях может отображаться в виде таблицы (таблицы нечетких правил). В нашем случае таковой может быть, например, таблица, представленная на рис. 2.2.
Рис. 15.2. Таблица нечетких правил
Каждая запись в данной таблице соответствует своему нечеткому правилу, например:
Если <ДИСТАНЦИЯ БЛИЗКО> и <НАПРАВЛЕНИЕ ПРАВОЕ>, тогда <РУЛЕВОЙ УГОЛ РЕЗКО ВЛЕВО>.
Таким образом, мобильный робот с нечеткой логикой будет работать по следующему принципу:
▪ данные с сенсоров о расстоянии до помехи и направлении на нее должны быть фаззифицированы,
▪ обработаны согласно табличным правилам,
▪ дефаззифицированые и полученные данные в виде управляющих сигналов поступают на приводы робота.
Применение традиционной нечеткой логики в современных системах ограниченно следующими факторами:
1) добавление входных переменных увеличивает сложность логических выражений экспоненциально;
2) как следствие предыдущего пункта, увеличивается база правил, что приводит к трудной её разработке и восприятию (база правил набирается вручную).
2.3. Операции над нечёткими множествами
Рассмотрим основные операции, которые можно выполнять над нечеткими множествами при организации нечеткого вывода.
Можно рассматривать различные операции над нечеткими множествами по аналогии с четкими множествами. Наиболее распространенными являются отношения вложения, дополнительного нечеткого множества (дополнения), пересечения и объединения нечетких множеств, которые записываются в следующем виде:
; (2.1)
; (2.2)
; (2.3)
. (2.4)
Графически с помощью «колоколообразной» функции принадлежности эти отношения представлены на рис. 2.3.
Если обозначить через R(x) совокупность всех нечетких множеств в X, то система {R(x), , , , } образует булеву алгебру. При этом выполняются законы идемпотентности, коммутативности, ассоциативности, двойного отрицания и законы де Моргана.
|
Рис. 2.3. Основные операции над нечеткими множествами
На рис. 2.3: а отношение вложения (АВ); б дополнительное нечеткое множество (); в пересечение нечетких множеств (AВ); г объединение нечетких множеств (АВ).
Пусть имеются нечеткие подмножества (термы) А, В, С в множестве X. Тогда для них будут справедливы следующие соотношения, представленные в табл. 2.1.
Таблица 2.1
Операции над нечеткими множествами и их свойства
Операции над нечеткими множествами |
Свойства операций |
АВ = ВА |
Коммутативность |
(AB)С = A(BC) |
Ассоциативность |
AA = A |
Идемпотентность |
A(BC) = (AB)(AC) |
Дистрибутивность |
(A) = (A) |
Двойное отрицание |
(AB) = АB |
Теоремы де Моргана для нечетких множеств |
Но закон комплементарности для этих множеств не выполняется, т. е. в случае нечеткого множества имеет место выполнение следующего соотношения:
(2.5)
а не равенств соответственно нулю или Х (рис. 2.4).
Рисунок 2.4. Невыполнение закона комплементарности
2.4. Основная структура и принцип работы системы нечёткой логики
Типовая структура CHЛ, представленная на рис. 2.5, состоит из четырех главных компонентов:
1) входной преобразователь четкой переменной в нечеткую (другое название блок фаззификации, от слова fuzzy нечеткий),
2) база правил нечеткой логики,
3) блок нечеткого логического вывода,
4) выходной преобразователь из нечеткой переменной в четкую (блок фаззификации).
Рисунок 2.5. Типовая структура СНЛ
Если выходной сигнал блока дефаззификации не является управляющим сигналом для объекта, то СНЛ будет являться системой принятия решения на базе нечеткой логики.
Блок фаззификации осуществляет преобразование измеренных реальных данных (например, скорости, температуры, давления и т.д.) в подходящие для этого значения лингвистических переменных.
Нечеткая база правил содержит опытные данные о процессе управления и знания экспертов в данной области. Блок вывода, являющийся ядром СНЛ, моделирует процедуру принятия решения человеком. Организация вывода основана на проведении нечетких рассуждений в целях достижения необходимой стратегии управления.
Блок дефаззификации применяется для выработки четкого решения или управляющего воздействия в ответ на результаты, полученные в блоке вывода. Более детально работа этих компонентов описывается в следующих разделах.
Таким образом, в процессе функционирования СНЛ вычисляются значения управляющих переменных (или переменных воздействия), прикладываемых к объекту управления для достижения желаемой цели управления, на основе данных, получаемых при наблюдении или измерении переменных состояния управляемого процесса,
Следовательно, правильный выбор переменных состояния управляемого процесса, а также управляющих переменных объекта управления очень важен для характеристики работы СНЛ и оказывает основное влияние на её эффективность.
Опыт эксперта и инженерные знания играют очень большую роль на этапе выбора переменных состояния и управляющих переменных. Обычно входными сигналами для СНЛ являются состояние объекта, ошибка управляемой переменной, производная по ошибке, интеграл от ошибки и т. п. Следуя правилам задания лингвистических переменных, входной вектор X и вектор выходного состояния Y, который содержит возможные состояния (или управляющие сигналы) объекта управления, могут быть определены соответственно как:
; (2.6)
, (2.7)
где входные лингвистические переменные, образующие нечеткое множество пространство входов ,
уi выходные лингвистические переменные, образующие нечеткое множество пространство выходов .
Из (2.6) и (2.7) следует, что входная лингвистическая переменная в предметной области Ui характеризуется термами и функциями принадлежности , где множе-ство термов для , т. е. множество имен значений лингвистической переменной , связанных с каждым из её значений.
Например, если означает скорость, то может означать {«очень медленно», «медленно», «средне», «быстро» и т. д.}.
Аналогично, выходная лингвистическая переменная связана с множеством и .
Размер (или мощность) множества термов определяет число нечетких разбиений входного пространства на подмножества в соответствии с выбранной степенью детализации описания объекта управления. На рис. 2.6,а изображены три нечетких подмножества на интервале [-1, +1]. Вариант семи нечетких пересекающихся подмножеств представлен на рис. 2.6,б.
Рисунок 2.6 Графическое представление нечеткой декомпозиции:
а грубая нечеткая декомпозиция с тремя нечеткими подмножествами: N отрица-тельный, Z ноль, Р положительный; б более детальная нечеткая декомпозиция с семью компонентами: NB отрицательный большой, NM отрицательный средний, NS отрицательный маленький, ZE ноль, PS положительный маленький, РМ положительный средний, РВ положительный большой.
Количество разбиений входного нечеткого множества при решении опреде-ленной задачи управления определяет максимальное число правил нечеткой логики. Правильный выбор нечеткой декомпозиции входного и выходного пространств, а также правильный выбор функций принадлежности играют основную роль в процессе достижения успешного результата при проектировании СНЛ.
К сожалению, эти задачи не являются детерминированными и не имеют универсального решения. Обычно для поиска оптимальной нечеткой декомпозиции входного и выходного пространства используется эвристический метод проб и ошибок, при этом выбор входных и выходных функций принадлежности основан на субъективных критериях.
Фаззификация. Блок фаззификации выполняет функцию преобразования четких значений входных переменных в нечеткие. Такое преобразование фактически является своего рода нормированием, необходимым для перевода измеренных данных в субъективные оценки. Следовательно, оно может быть определено как отображение наблюдаемых значений входных переменных в соответствующие нечеткие.
В реальных СНЛ наблюдаемые данные обычно являются четкими (хотя они могут быть зашумлены). Естественный и простой метод входного преобразования заключается в том, чтобы преобразовать четкое значение в четкий синглетон (singleton) A. Это означает, что функция принадлежности будет равна 1 в точке и нулю во всех остальных точках.
В нечеткой логике используется иной способ. Всякое конкретное значение в момент времени t отображается на нечеткое множество со значением , на нечеткое множество со значением и т. д.
База правил нечеткой логики. Правила нечеткой логики представляются набором нечетких «IF-THEN» конструкций, в которых предпосылки и заключения подразумевают использование лингвистических переменных. Этот набор управляю-щих правил нечеткой логики (или нечетких управляющих утверждений) характеризует связь входа системы с её выходом. Общая форма представления правил нечеткой логики для случая СНЛ с множеством входов и одним выходом (MISO «multi-input-single-output») такова:
Ri : IF х is Ai,...,AND у is Вi THEN z = Ci, i = , |
(2.8) |
где х, ..., у и z лингвистические переменные, представляющие переменные состояния некоторого управляемого процесса и управляющие переменные, соответствено;
Ai,..,Bi и Сi лингвистические значения переменных х,...,у и z в предметных областях U,...,V и W соответственно. Вариант другой формы представления правил нечеткой логики подразумевает, что заключение представляется как функция переменных состояния управляемого процесса х,...,у, т.е.
Ri : IF х is Ai,...,AND у is Вi THEN z = , i = , |
(2.9) |
где функция переменных х,...,у состояния управляемого процесса.
Нечеткие правила в уравнениях (2.8) и (2.9) вычисляют состояние процесса (ошибку определения (или отклонения от желаемого) состояния, интегральную ошибку состояния и т. д.) в момент времени t и затем рассчитывают и принимают решение об управляющих воздействиях, реализуемых в виде функции переменных состояния процесса (х,...,у).
Необходимо отметить, что в обоих видах правил нечеткой логики входные переменные имеют лингвистические значения.
Блок вывода. Блок вывода представляет собой ядро СНЛ, используемое для моделирования приближенных рассуждений и процесса принятия решений человеком в сложных ситуациях. Нечеткие выводы, нечеткие или приближенные рассуждения это наиболее важные моменты при использовании средств нечеткой логики в управлении сложными объектами. Для организации нечетких выводов необходимо определить понятие отношения.
Предположим, что знание эксперта А В отражает нечеткое причинное отношение предпосылки и заключения, которое называется нечетким отношением R: R = AB.
Почти все реально работающие прикладные системы, использующие промежуточные нечеткие оценки, это системы, основанные на нечетких продукционных правилах. При выполнении нечетких выводов используются нечеткие отношения R, заданные между одной областью (множество X) и другой областью (множество Y) в виде нечетного подмножества прямого произведения X Y, определяемого по следующей формуле:
, |
(2.10) |
где X = {х1,х2,...,хn] область посылок;
Y = {у1,у2,...,уm) область заключений;
функция принадлежности нечеткому отношению R:
[0,1], а знак означает совокупность (объединение) множеств.
Рисунок 2.7. Иллюстрация получения итогового результата нечеткого вывода
по Ларсену
Дефаззификация. Под дефаззификацией понимается процедура преобразования нечетких величин, получаемых в результате нечеткого вывода, в четкие. Эта процедура является необходимой в тех случаях, где требуется интерпретация нечетких выводов конкретными четкими величинами, т. е. когда на основе функции принадлежности возникает потребность определить для каждого Z числовые значения.
В настоящее время отсутствует систематическая процедура выбора стратегии дефаззификации. На практике часто используют два наиболее общих метода: метод центра тяжести (ЦТ центроидный), метод максимума (ММ).
Для дискретных пространств в центроидном методе формула для вычисления четкого значения выходной переменной представляется в следующем виде:
в общем случае . |
(2.11) |
Стратегия дефаззификации в методе максимума (ММ) предусматривает подсчет всех тех z, чьи функции принадлежности достигли максимального значения. В этом случае (для дискретного варианта) получим
, |
(2.12) |
где выходная переменная, для которой функция принадлежности достигла максимума; m число таких величин.
Из этих двух наиболее часто используемых стратегий дефаззификации, стратегия ММ дает лучшие результаты для переходного режима, а ЦТ в установившемся режиме из-за меньшей среднеквадратической ошибки.
2.5. Пример использования системы с нечёткой логикой
Рассмотрим основные моменты нечеткого вывода по Мамдани.
Пусть дана система управления нечеткой логики с двумя правилами нечеткого управления:
Правило 1: IF x is A1 AND у is В1 THEN z is С1;
Правило 2: IF x is A2 AND у is В2 THEN z is C2.
Предположим, что величины х0 и у0, считываемые датчиком, являются четкими входными величинами для лингвистических переменных х и у и что заданы следующие функции принадлежности для нечетких подмножеств А1 , А2, В1, В2, С1, С2 этих переменных:
Предположим, что в момент времени t1 были считаны значения датчиков х0(t1)=4 и y0(t1)=8. Проиллюстрируем, как при этом будет вычисляться величина выходного сигнала.
Вначале находим -срезы для первого и второго правила на основе заданных функций принадлежности и с учетом значений х0 к у0. С этой целью вычисляем величины функций принадлежности в заданных точках для первого и второго правил:
(x0 = 4) = 2/3 и (y0 = 8) = 1;
(x0 = 4) = 1/3 и (y0 = 8) = 2/3.
Затем в соответствии с правилом вывода по Мамдани (выбор минимального значения функций принадлежности) определяем:
= min((x0), (y0)) = min(2/3, l) = 2/3;
= min((x0), (y0)) = min(1/3, 2/3) = 1/3;
Результат применения вычисленных значений и к консеквентам правила 1 (для С1) и правила 2 (для С2) показан на рисунке 2.8.
Окончательный результат получается путем объединения полученных функций принадлежности с использованием оператора экстремума (с учетом стратегии вывода по Мамдани). Результирующая функция принадлежности представлена на рисунке 2.8.
Рисунок 2.8. Иллюстрация нечеткого вывода по Мамдани
в рассматриваемом примере
Для вычисления искомой выходной величины z проводим дефаззификацию нечеткой величины . По методу центра тяжести получаем
.
При использовании метода максимума подсчитаем число значений z, при которых было достигнуто максимальное значение функций принадлежности . Их три 3, 4 и 5 (со значением функции принадлежности 2/3). Таким образом,
PAGE 15