Дисциплина “Системы автоматизации”

advertisement
Институт цветных металлов и материаловедения СФУ
Кафедра автоматизации производственных процессов
ЦМ
Дисциплина “Интегрированные системы
проектирования и управления ”
Красноярск 2009 г.
Лабораторная работа № 4
”Изучение пакета Fuzzy Logic Toolbox системы MATLAB 7 и
его применения для проектирования
систем нечеткого (фаззи) регулирования”
ЦЕЛЬ РАБОТЫ
1. Изучить основы нечеткой или фаззи-логики.
2. Изучить пакет Fuzzy Logic (Фаззи-логика) системы MATLAB 7.
3. Исследовать сравнительные характеристики СУ с обычными и фаззи-регуляторами в
среде системы MATLAB 7.
МЕТОДИКА ВЫПОЛНЕНИЯ РАБОТЫ
1. Открыть рабочее окно программы MATLAB 7.
2. Изучая теоретические сведения о пакете Fuzzy Logic, при необходимости вводить в рабочем окне команды, приводимые в описании пакета и выделенные желтым цветом.
3. Закончив изучение теоретических сведений о пакете Fuzzy Logic, выполнить задание
по моделированию СУ.
Теоретические сведения
В последние годы в автоматике, компьютерной технике, теории принятия решений, системах искусственного интеллекта используются модели и методы, основанные на теории
нечетких множеств (ТНМ). Она возникла на стыке математической теории множеств и математической логики в середине 70-х годов. Ее первые основы были сформулированы в 1965
году американским математиком Л. Заде статье «Fuzzy Sets», название которой переводится
на русский язык как «нечеткие множества». Слово «fuzzy” имеет несколько значений («неопределенный», «неясный», «смутный», «нечеткий»), из которых наибольшее распространение в русском языке получил перевод «нечеткий». В зарубежной технической литературе это
слово вошло в употребление без перевода, в первоначальном, латинском написании «fuzzy».
У нас в стране используется наряду с понятием «нечеткий» слово «фаззи».
После появления публикации Л. Заде многие ученые стали интересоваться возможными
приложениями ТНМ к практическим задачам. Благодаря дальнейшим разработкам и публикациям Л. Заде, Е. Мамдани, М. Сугено, выявился целый спектр возможностей применения ТНМ для задач принятия решений и управления, в которых объект и условия его функционирования недостаточно изучены, модель объекта и цель управления слабо формализованы. Постепенно сформировалась совокупность методов и приемов использования ТНМ,
которую называют фаззи-технологией или фаззи-методологией. Оказалось, что она эффективна для управления не только cлa6o структурированными объектами, но и хорошо изученными, имеющими строгое математическое описание.
Одновременно развивались новые направления науки, в которых так же, как и в фаззи-
технологии, использовались знания, опыт и интуиция специалистов в данной области. К
этим направлениям относятся экспертные системы, ситуационное управление, искусственные нейронные сети, системы искусственного интеллекта, системы, базирующиеся на знаниях (в англ. - knowlеndge-based sуstems ).
К настоящему времени фаззи-технология превратилась в мощное, весьма практичное
средство синтеза систем управления. Фаззи-системы и фаззи-контроллеры применяются сегодня как для управления сложными технологическими процессами, так и для автоматизации простых бытовых приборов. В системе «MATLAB» имеется пакет программ по фаззилогике.
Фаззи-методология в прикладных задачах автоматизации и управления служит средством достижения компромисса между двумя подходами к решению этих задач. Известно,
что специалисты по автоматизации предпочитают математические модели и методы решения задач управления, а технологи, глубже чувствующие сложность автоматизируемого объекта, настороженно, а иногда и скептически относились к внешне красивым постановкам и
решениям задач управления, которые потом, при реализации, оказывались не такими эффектными и эффективными. Поэтому технологи больше доверяли своему опыту и интуиции,
чем строгим математическим подходам.
В философском смысле, ТНМ может рассматриваться как средство достижения консенсуса между сторонниками абсолютного детерминизма, признающими только однозначные
связи и суждения (типа «да», «нет»), и сторонниками индетерминизма, ориентирующимися
на стохастичность связей и выводов (типа «может быть»).
1. Общие сведения о фаззи-регулировании
Традиционный подход к постановке и решению задач управления и регулирования основывается на предположениях, что модель объекта управления (ОУ) известна и задана в
виде передаточных функций его отдельных каналов или в форме системы дифференциальных уравнений, связывающих его входные и выходные переменные, и что при известной
цели управления алгоритм функционирования управляющего устройства (УУ) однозначно
предопределяется этой моделью и целью управления. Причем, решается данная задача синтеза алгоритма УУ с помощью строгих аналитических методов математики.
Однако в реальной практике автоматизации сложных технологических процессов и
производств редко удается построить достаточно точную математическую модель ОУ и
применить строгую однозначную процедуру синтеза алгоритма управления. Поэтому большинство функционирующих в промышленности автоматических и автоматизированных систем управления создано с использованием не только методов теории управления, но и опыта и интуиции специалистов по автоматизации, эвристических знаний технологов.
Принцип функционирования и методология построения системы фаззи-регулирования
показаны на схеме на рис 1.
База
правил
xз
н

БН
–
yн
БФ
БНВ
y
БДФ
БДН
ОУ
x
Fuzzy-регулятор
Рис. 1. Функциональная структура системы фаззи-регулирования
Вся исходная информация о стратегии управления хранится в базе правил (в англ.- rulebase) в виде правил условного логического вывода «ЕСЛИ…, ТО » (в aнгл. – «IF...,
THEN…»), которые формулируются на основе тщательного изучения объекта и задачи
управления, путем анкетного опроса специалистов-технологов, хорошо знающих объект
управления.
Центральным звеном фаззи-регулятора является блок нечёткого вывода (БНВ), или блок
принятия решений (в англ. - decision making), в котором на основе нечеткой информации о
сигнале ошибки регулирования  делается вывод о соответствующем нечётком множестве
значений управляющего воздействия у. В блоке БНВ реализуется так называемая инференцпроцедура (о ней и других понятиях подробней будет сказано в параграфах 2-4), в процессе
которой агрегируются (объединяются) выводы отдельных правил об управляющем воздействии. Результатом агрегирования являются «усеченные» нечёткие множества управляющих воздействий.
В блоке нормирования (БН) измеренный четкий (в англ. – crisp) сигнал ошибки регулирования  умножением на масштабный коэффициент k .н.< 1 приводится к ограниченному
интервалу (например, [-1,+1]). Блок фаззификации (БФ) определяет значение функции принадлежности (параграф 2), соответствующее нормированному значению н.
Блоки дефаззификации (БДФ) и денормирования (БДН) выполняют обратные процедуры: по нескольким «усеченным» функциям принадлежности вычисляется четкое значение
нормированного управляющего воздействия ун и соответствующее ему ненормированное
значение у = ун / kу..н. (kу..н < 1) .
2. Элементы теории нечетких множеств
В математике обычное понятие «множество» определяют как совокупность элементов,
обладающих некоторым общим свойством. При этом заранее, аксиоматически, предполагают, что любой элемент либо принадлежит, либо не принадлежит данному множеству, а факт
принадлежности или непринадлежности элемента x к множеству Х характеризуют с помощью функции (х), которая принимает соответственно значения 1 (принадлежит) или 0 (не
принадлежит). Однако во многих реальных задачах прикладных исследований и в повседневной практике такой жесткий, двузначный принцип классификации элементов недостаточно гибок для математического описания сложных явлений и процессов, не оправдан для
формализации нестрогих понятий и высказываний, используемых в естественном языке.
Например, такие лингвистические понятия, как «близко», «чуть больше», или лингвистические сообщения «температура в помещении нормальная», «в помещении прохладно», используемые в житейской и технологической практике, не могут быть описаны и проанализированы с помощью классических понятий теории множеств и математической логики.
Для того, чтобы адекватно представить приблизительное (словесное) описание свойств
предметов и явлений на языке теории множеств, Л. Заде ввел понятие лингвистической переменной, значениями которой являются слова или фразы естественного языка. Например,
если фактическая переменная - температура x в жилом помещении (рис.2, а) - характеризуется бытовыми понятиями «нормальная» (в диапазоне 19-21оС), «прохладно» (17-19 °С) и
т.д., то совокупность этих 5 значений «холодно», «прохладно», «нормально» и т. д. рассматривается как лингвистическая переменная хl. При этом совокупность значений (названий!)
лингвистической переменной xl образует так называемое терм-множество, а исходная переменная x называется базовой.
Переход от абсолютных значений базовой переменной x к соответствующим значениям
лингвистической переменной (см. рис. 2, 6) необязательно линеен (в обычном понимании) и
что различным термам могут соответствовать разные диапазоны базовой переменной.
Ограничение на значения базовой переменной x, которое каждому ее значению ставит в
соответствие число из интервала [0, 1], называется функцией принадлежности ФП (в англ.
membership function) и обозначается (х). На рис. 2, в в качестве примера показаны ФП l(х),
определяющие терм «нормальная температура в помещении». Линия 1 соответствует функции принадлежности, представленной в виде кривой Гаусса,
(1)
μ( x , m , σ )  exp  ( x  m ) 2 2σ 2 ,


где m = 20оС,   1 оС.
Линия 2 соответствует наиболее часто используемой на практике треугольной форме
ФП. На рис.2, г представлены пять функций треугольной и трапецеидальной формы, образующие терм-множество названий лингвистических значений переменной хl -«температура в
помещении», т.е. индекс l в данном случае принимает значения «холодно», «прохладно» и
т.д.
Рис.2. К понятиям "лингвистическая переменная" (а, б) и "функция принадлежности" (в, г)
Обычно на практике вместо абсолютных значений базовой переменной используют ее
нормированные значения хн, (см. рис.2, г). При этом достаточно удобной оказывается система из семи ФП (рис. 3.а), которая охватывает следующие универсальные лингвистические
значения (англ.): negative big (NB), negative medium (NM), negative small (NS), zero (ZR), positive
small (PS), positive medium (PM), positive big (PВ). На рис. 3, б показана система из девяти ФП
ошибки регулирования , заданных на интервале [-1, 1]. Здесь, в отличие oт рис. 3, а, добавлены еще два лингвистических значения- negаtive zero (NZ) и positive zero (РZ), a интервалы
для отдельных ФП приняты неодинаковыми.
Для управляющего воздействия у ФП иногда могут иметь вполне однозначный характер, как показано на рис. 3, б (жирные линии).
Определим понятие «нечеткое множество» (НМ).
Нечеткое множество, или фаззи-множество (в англ. - fuzzy set) А, - совокупность всех
пар вида (х, А(х)) , которая образована из значений базовой переменной хХ и из функций
принадлежности А(х), устанавливающих связь между этими значениями и числами в интервале [0, 1], т.е.
A  ( x ,  A , ( x )) x  X 
(2)
Для приведенного выше примера с тепловым режимом в помещении (см. рис. 2, г) существуют пять фаззи-множеств, характеризуемых функциями l(х): ж(х) – «жарко», т(х) –
«тепло» и т.д.
a
NB
l(н)
NM
NS
ZR PS
1.0
PM
PB
0.5
-3
-2
-1
0
1
2
хн
3
б
l ( н)
NM
NB
NS
l ( y н)
NZ
ZR PZ PS
PM
PB
0.75
1.0 y н, н
1
-1.0
-0.75 -0.5 -0.25 0 0.25
0.5
Рис. 3. Унифицированные системы функции принадлежности для нормированных
значений переменной состояния (а), ошибки регулирования (б, тонкие линии)
и управляющего воздействия (б, вертикальные линии)
Множество А состоит из элементов, каждый из которых характеризуется парой значений
(хi, i(х)). Такую элементарную составляющую нечеткого множества называют синглтоном
(в англ. - singleton). Пример синглтона – дискретные значения функций l(у) на рис. 3, б.
Любое нечеткое множество А можно рассматривать как объединение синглтонов, которое в общем случае - для бесконечно большого количества элементов - обозначают так:
A   μ A ( x )/x .
(3)
X
Если фаззи-множество А состоит из конечного числа элементов, то вместо условного обозначения в виде интеграла (3) используют сумму
n
A  μ A ( x1 )/( x1 )  μ A ( x 2 )/( x 2 )  ...  μ A ( x n )/( x n )   μ A ( x i )/( x i ) .
(4)
i 1
Здесь, как и в выражении (3), знак дроби не означает деление, а суммирование (или интегрирование) соответствует принятой в теории множеств операции объединения, т.е.
n
A   ( x i , μ A , ( x i )) .
(5)
i 1
Процедура введения терм-множеств А, их функций принадлежности А(х) и установления конкретного значения А(х*), соответствующего измеренному значению х*, называется
фаззификацией.
Для фаззи-множеств применимы все свойства и oперации, используемые для обычных
множеств. Так, фаззи-множества А и В равны друг другу, если равны их ФП А и В, т. е.
(6)
А = В, если А (х) = B(х), хХ.
Фаззи-множество А включает в себя фаззи-множество В, т. е.
(7)
В  А, если B(х)  А(х),
хХ .
Фаззи-объединением двух нечетких множеств А и В, заданных на общем базовом множестве Х , называют наименьшее нечеткое множество С, которое содержит одновременно как
А, так и В и имеет вид
С:= А В {(х, АВ(х))хХ},
(8)
где
С(х) = АВ(х) = max{А(х), В(х)}
(9)
Символы := и
означают «равно по определению». Фаззи- пересечением двух нечетких множеств А и В , заданных на общем базовом множестве Х называют наибольшее нечеткое множество С, которое содержится одновременно и в А и в В и имеет вид
(10)
С:= А В {(х, АВ(х)) хХ},
где
(11)
С(х)= АВ(х) = min{А(х), В(х)}
Фаззи-дополнением нечеткого множества А, заданного на базовом множестве Х, называют нечеткое множество вида
(12)
А
{(х, А(х)},
где
(13)
А(х) = 1- А(х).
Понятия объединения и пересечения, введенные для случая двух исходных множеств А и
В, могут быть распространены и на случай нескольких исходных множеств.
На рис. 4 показано ФП производных фаззи-множеств (8), (10), (12) из ФП А, В, с треугольной формы, характеризующих три исходных множества А, В и С на интервале [-2,+2].
а
б
l(х)
В
l(х)
1 А С
В
1 А С
А  B  C
-2
-1
0
1
2 х
А  B  C
j(х)
в
1.0
-2
-1
0
0
1
2 х
А
 А
0.5
-2
-1
1
2
х
Рис. 4. Основные операции над нечеткими множествами
3. Основные понятия фаззи-логики
При построении нечетких алгоритмов управления используются различные высказывания - повествовательные предложения естественного или формализованного языка, которые
могут быть истинными или ложными. Фаззи-логика изучает логические операции над вы-
сказываниями, в которых фигурируют лингвистические переменные и нечеткие множества.
Причем, логические операции в фаззи-логике, как и в обычной алгебре логики, служат для
получения из нескольких простых, исходных, высказываний одного, более сложного высказывания. Но если в алгебре логики (булевой алгебре) истинность или ложность того или
иного высказывания принято обозначать числами 1 (истинность) и 0 (ложность), то в фаззилогике каждое высказывание (исходное или образованное с помощью логической операции)
характеризуется истинностными значениями во всем интервале [0,1].
В табл. 1 приведены истинностные значения 0 или 1, которые характеризуют исходные
высказывания А и В и высказывания, образованные с помощью известных логических операций алгебры: отрицания, конъюнкции, дизъюнкции, импликации и эквиваленции. Поясним, что используемая в дальнейшем операция импликации соответствует высказыванию «
если А, то В». При этом высказывание А называется посылкой высказывания А  В, а Вего заключением.
Операции алгебры логики (см. табл.1) применимы и к нечетким высказываниям, используемым в фаззи-логике, ecли каждое высказывание, например А, характеризовать
функцией истинности (ФИ)- (А), аналогичной в определенном смысле функции принадлежности.
Таблица 1
Логические операции над высказываниями
Исходные
высказывания
А
1
1
0
0
В
1
0
1
0
Отрицание
(«НЕ»)
А
0
0
1
1
В
0
1
0
1
Конъюнкция
(«И»)
Дизъюнкция
(«ИЛИ»)
Импликация
Эквиваленция
АВ
1
1
1
0
АВ
1
1
1
0
АВ
1
0
1
1
АВ
1
0
0
1
Тогда могут быть введены следующие аналоги обычных логических операций:
фаззи-логическое отрицание
(А) = 1 – (А),
фаззи-логическая дизъюнкция
(А  В) = max{(А), (В)},
фаззи-логическая конъюнкция
(А  В) = min{(А), (В)},
фаззи-логическая импликация
(А  В) = min{1, 1 + (В) – (А)}.
(14)
(15)
(16)
(17)
Нетрудно убедиться, что фаззи-логические операции (14) - (17) при частных значениях
ФИ (А) и (В), равных 1 и 0, полностью подчиняются правилам алгебры логики, приведенным в табл. 1.
Обратите внимание, что фаззи-логическим операциям «ИЛИ», «И» также, как и объединению и пересечению фаззи-множеств (см. формулы (9) и (11)), соответствуют процедуры
максимизации и минимизации функций истинности исходных высказываний или функций
принадлежности исходных множеств.
Из формул (14)-(17) можно сделать следующие выводы относительно истинности различных высказываний (логических операций):
- степень истинности отрицания какого- либо высказывания (операции "НЕ") равна
степени ложности исходного высказывания;
- степень истинности дизъюнкции двух высказываний (операции "ИЛИ") совпадает со
степенью истинности более истинного высказывания;
- степень истинности конъюнкции двух высказываний (операции "И") совпадает со
степенью истинности менее истинного высказывания;
- степень истинности импликации (высказывания "ЕСЛИ … ,ТО ") тем больше, чем
меньше степень истинности посылки и чем больше степень истинности заключения; если у
заключения степень истинности больше, чем у посылки, то степень истинности импликации
равна единице.
Заметим, что вместо операций бинарной логики «ИЛИ», «И», приведённых в табл. 1, и
операций фаззи-логики (15), (16) можно применять их арифметические аналоги:
(А  В) = (А) + (В) – (А)(В),
(18)
(А  В) = (А) (В),
(19)
где (.) - функции истинности, принимающие только значения 1 или 0, или же функции принадлежности, принимающие любые значения в интервале [0,1].
На рис. 5 показаны две схемы, иллюстрирующие аналогию между операциями «ИЛИ»,
«И» бинарной логики (булевой алгебры) и операциями (15) и (16) фаззи- логики.
а
И
А
B
1
1
0
t
0
t
ИЛИ
б
MIN
А
B
1
1
0
t
0
t
MAX
А
B
C
1
1
1
0
0
0
1
1
1
0
0
1
1
0
0
А
B
C
1
1
1
0
0
0
1
1
1
0
1
1
1
1
0
А
B
C
0
0.5
1.0
0
0
0.5
0
0
1.0
0.5 1.0
0
1.0
0.5
0
А
B
C
0
0.5
1.0
0.5
0
0
0
0.5
1.0
1.0
0
0.5
1.0
1.0
1.0
C
1
0
t
C
1
0
t
C
1
0
t
C
1
0
t
Рис. 5. Аналогия между операциями в бинарной (а) и фаззи-логике (б)
Рассмотрим пример использования фаззи-логики для формализации нечеткого высказывания: «Инженеры, обладающие знаниями технологии И экономики производства, имеют
хорошие профессиональные перспективы в области инновации ИЛИ менеджмента». Пусть
отдельные части этого высказывания характеризуются следующими значениями:
А: инженеры обладают знаниями технологии - (А) = 0,8;
В: инженеры обладают знаниями экономики - (В) = 0,6;
С: имеются хорошие перспективы для инновационной деятельности - (С) = 0,4;
D: имеются хорошие перспективы для работы менеджером - (С) = 0,3.
Полное высказывание можно представить в виде импликации:
А  В  С  D,
у которой функция истинности, согласно формулам (16), (15) и (17), равна
(20)
(А  В  С  D) = min{1,(1 + (С  D) – (А  В)} =
= min{l,(1 + max{(С), (D)}- min (А), (В)})} =
(21)
= min{l,(l + mах{0,4; 0 3} – min{0,8; 0,6})} =
= min{1, (1 + 04 - 0,6)} = 0,8.
Из приведенного примера и формулы ( 17 ) вытекает следующее общее свойство:
если
(А  В) = 1,
(22)
(А)  (В),
(23)
т. е. истинностное значение импликации (логического вывода) равно единице, если истинностное значение посылки не больше истинностного значения заключения.
4. Применение ТНМ и фаззи-логики в задачах управления
При использовании фаззи-технологии для синтеза систем управления алгоритм функционирования управляющего устройства УУ, а иногда и объекта управления ОУ, представляют как совокупность нечетких правил, которая в общем случае имеет следующий вид:
{ЕСЛИ... [посылка 1], TO... [заключение 1} ИЛИ
{ЕСЛИ... [посылка 2], ТО... [заключение 2]} ИЛИ
{ЕСЛИ... [посылка j], ТО... [заключение j]} ИЛИ
…………………………………………………………….
…………………………………………………………….
{ЕСЛИ… [посылка n], ТО…[заключение n]},
(24)
причем часть «ЕСЛИ» представляет собой обычно высказывание о нечетком (лингвистическом) значении входных переменных УУ переменныx состояния хi(t) объекта или ошибки
регулирования i(t), а часть «ТО»- высказывание о соответствующем значении управляющего воздействия уi(t). Часто каждая посылка содержит высказывания относительно двух и
более входных переменных. соединенные союзом «И» либо союзом «ИЛИ» Например:
ЕСЛИ ошибка регулирования (t) положительно малая (РS) И производная ошибки (t)
положительно большая (РВ), ТО управляющее воздействие yj(t) отрицательно среднее (NM).
Составные части посылок каждого j-гo правила, соединенные между собой союзами
«И», «ИЛИ» и характеризуемые функциями принадлежности j (хi), образуют фази- множество j-й посылки, общая ФП которого определяется с помощью формул (15) и (16) соответственно для союза «ИЛИ» и союза «И».
Для нахождения ФП j"(х,уi ). характеризующей конкретное j-е правило нечеткого
условного логического вывода (в aнгл. Conditional Rules Inference, сокращенно CRI), предложено несколько формул, среди которых наибольшее распространение получило правило
импликации Мамдани:
j"(х,уj ) = min{j(х), l(уj )},
(25)
где j"(х,уj ) - ФП, характеризующая j-е правило и заданная на прямом (декартовом) произведении множеств Х  У;
l(уj ) - ФП, характеризующая l-е лингвистическое значение управляющего воздействия
y в j-м правиле;
х - вектор входных переменных УУ.
Формула (25) получена, исходя из гипотезы, что следствие каждого правила имеет истинное значение, не меньшее, чем соответствующая предпосылка.
Формулу совместной ФП (25), соответствующей конкретному правилу «ЕСЛИ…, ТО… »,
называют оператором импликации.
При фиксированных значениях х* выбору минимальных значений j (x*) и l(уj ), задан-
ных на прямом произведении Х  У, соответствует ограничение (усечение) графиков l(уj )
сверху на уровне j (x*) < 1.
Результирующая функция принадлежности p (y) , которая характеризует всю совокупность j-х правил, соединенных между собой союзом «ИЛИ», определяется в соответствии с
формулой (15) как максимум среди всех функций (25) при заданных х*, т.е.
p(x*,y) = p(y) = max{j"(х, уj )}, j = 1, … ,n.
(26)
Процедура объединения всех правил называется инференц-процедурой (в англ. - composition of rules). В случае совместного применения формул (25) и (26) она называется максиминной инференц-процедурой. Часто используется также инференц-процедура по методу
произведения, которая будет проиллюстрирована ниже на конкретном примере
Заключительная процедура синтеза УУ по фаззи-технологии - дефаззификация сводится
к определению точного значения управляющего воздействия у. Она выполняется чаще всего
по методу центра площади, согласно которому для непрерывной функции p(y) искомое
значение управляющего воздействия определяется как абсцисса центра тяжести площади
фигуры, образованной этой функцией и осью у:
y*   y μ р * ( y ) dy
 μ р * ( y ) dy .
(27)
В фаззи-технологии известны формы записи правил (24), у которых в части «ТО» указывается не лингвистическое значение управляющего воздействия (например, у = РВ), а его
конкретное, четкое значение (например, у = у*). Так, по методологии Сугено и Тагаки j-е
правило логического вывода записывается в следующей форме:
ЕСЛИ х1 = Аj1 И ….. И хк = Аjk, ТО уj = cj0 + cj1 +…+ cjk,
(28)
где A j1 … Аjk -фаззи-множества типа NB. NM и т.д.;
cj0, cj1,…,cjk- постоянные (четкие) значения управляющего воздействия, заданные в виде
синглтонов, т.е. в виде пар (уj, (уj ) = 1).
Форма записи (28) называется моделью Сугено нулевого порядка.
Иногда применяют модель Сугено первого порядка:
ЕСЛИ х1 = Аj1 И ….. И хк = Аjk, ТО уj = cj0 + cj1х1 +…+ cjkхk .
(29)
Объединение составных частей посылок в (28) и (29) осуществляется так же, как и в методе Мамдани, с помощью процедур максимизации (15) и минимизации (16) соответствующих ФП. Агрегирование всех n j-x правил, соединенных между собой союзом ИЛИ, происходит тоже аналогично - по формуле (15). Но процедура импликации и инференц-процедура,
выполняемые в методе Мамдани по формулам (25) и (26), здесь в явном виде отсутствуют.
Максимальные и минимальные значения ФП j (x), характеризующие посылки правил,
умножаются на соответствующие синглтоны управляющего воздействия.
Результирующее значение управляющего воздействия, соответствующее всем n правилам, по Сугено определяется формулой
n
y   μ j yj
j1
n
μj
.
(30)
j1
Таким образом, сложная процедура дефаззификации в чистом виде (например, по формуле (27)) в методе Сугено–Такаги отсутствует.
Проиллюстрируем процедуры фаззификации, фаззи-импликации и дефаззификации на
конкретном примере, в котором входные переменные - ошибка регулирования  и ее первая
производная по времени 2 1 - характеризуются упрощенными функциями принадлежности (рис. 6), а некоторый алгоритм нечеткого управления представлен следующими четырьмя правилами:
Правило 1: ЕСЛИ
Правило 2: ЕСЛИ
Правило 3: ЕСЛИ
Правило 4: ЕСЛИ
1 = NB
1 = NB
1 = ZR
1 = ZR
И
2 = PВ,
И
2 = ZR,
И
2 = РВ,
ИЛИ 2 = ZR,
TO у = РВ
TO y = ZR
ТО y = PB
TO у = ZR
a
l (2)
l (1)
NB
ZR
PB
1
1
0.7
0.6
(31)
б
NB
ZR
PB
0.4
0.3
–1
 1*
0
1
1
–1
0 2*
1
2
Рис. 6. Функции принадлежности ошибки регулирования 1 (а) и её производной 2 (б)
Пусть входные переменные имеют конкретные значения:
1 = 1* = –0,35 и 2 = 2 = + 0,20.
Тогда согласно формулам (11) и (16) посылки «ЕСЛИ» первых трех правил (31), содержащие внутри себя союз «И», дают следующие значения функций принадлежности соответствующих фаззи-пересечений (логических конъюнкций):
1(1*,2) = min{NB(1*), PB(2)} = min{0,7;0,4} = 0,4;
2(1*,2) = min{NB(1*), ZR (2)} = min{0,7;0,6} = 0,6;
3(1*,2) = min{ZR(1*), PB(2)} = min{0,3;0,4} = 0,3.
(32)
Посылка в правиле 4 содержит союз «ИЛИ», и поэтому согласно формулам (9) и (15)
функция принадлежности фаззи-объединения (логической дизъюнкции) дает значение:
4(1*,2) = max{ZR(1*), ZR(2)} = max{0,3;0,6}=0,6.
(33)
Теперь можно в соответствии с композиционным правилом Мамдани (25) определить результирующие функции принадлежности, характеризующие импликации (31):
1п = min{1(1,2) = min{1(1,2), PB(y)};
2п = min{2(1,2) = min{2(1,2), ZR(y)};
3п = min{3(1,2) = min{3(1,2), PB(y)};
4п = min{4(1,2) = min{1(1,2), ZR(y)},.
(34)
где l(y) - функции принадлежности, характеризующие фаззи-множества управляющих воздействий у (pиc.7, а).
a
б
l (y), j (y)
l (y), j (y)
n
n
NB
1
ZR
PB
2 n (y),
4 n(y)
0.6
0.6
0
1
4 n(y)
y
3 n (y)
–1
в
0
1
y
г
p* (y), l (y)
l (y), j n(y)
NB
1
PB
1 n (y)
0.4
0.3
3 n (y)
–1
ZR
2 n (y),
1 n (y)
0.4
0.3
NB
1
ZR
PB
p*(y)
0.6
NB
1
ZR
p*(y)
0.6
0.4
PB
0.4
–1
0
y*
1
y
–1
0
y*
1
y
Рис. 7. Результирующие функции принадлежности отдельных (а, 6)
и объединенных (в, г) импликаций нечеткого алгоритма регулирования (31)
Так как в рассматриваемом примере функции j(1,2) принимают конкретные значения,
меньшие единицы, то операциям минимизации (34) соответствуют "усеченные" исходные
функции принадлежности (см. жирные линии на рис. 7, а). На рис. 7 , б жирными линиями
показаны функции принадлежности и для тех же четырех правил (34), но полученные по
упомянутому выше методу произведения ординаты функций 1-4, описывающих импликации (34) в целом, равны произведению числовых значении функций (32) и (33), характеризующих истинное значение предпосылок этих правил (часть «ЕСЛИ») и ординат функции
l(y), характеризующих истинное значение следствий (часть ТО).
Выполняя для рассматриваемого примера последнюю процедуру фаззификации (инференц-процедуру) - фаззи-объединение функции 1-4 по формуле (26), получаем результирующие функции принадлежности p(y) (рис.7, в, г), соответствующие объединяемым функциям на рис.7, а и б. На рис.7, в и г показаны также результирующие значения у* управляющею воздействия у, найденные выполнением процедуры дефаззификации по методу центра тяжести площади по формуле (27).

0,7
1
–1
0
1

1*
MIN
1

1
1
–1
*
MIN
0,6
0
1
–1
0,4
2*
y
1

1

2
–1
1
*
0,3
–1
0
1
y*

1*
MAX
y
1
1

1
MIN
0,6
–1
0
1
–1
1
y
0,4
2*
Рис. 8. Пример схемной реализации фази-регулятора
На рис. 8 приведена общая схема фаззи-регулятора, реализующего все рассмотренные в
данном примере процедуры.
5. Примеры систем фаззи-регулирования
Система регулирования уровня жидкости в резервуаре с самовыравниванием (рис. 9).
З
ФР
hз
Р
ε1 = Δ h
–
ε2 = dh/dt
y
kз
p
qп
ОУ
p
Δq
qp
1
– Sp
h
kи h
Рис. 9. Структура системы фаззи-регулирования уровня жидкости
ОУ представлен идеальным интегрирующим звеном, которое охвачено нелинейной отрицательной обратной связью, соответствующей закону истечения жидкости из резервуара.
Резервуар характеризуется коэффициентом 1/S , где S - площадь поверхности жидкости, м2.
Подача жидкости в резервуар qn регулируется с помощью задвижки (3), степень открытия
которой  пропорциональна qn.
В качестве управляющего воздействия у рассматривается скорость перемещения задвижки, т.е. у(t) = d((t))/dt .
Если имеется возможность измерения скорости изменения уровня, то один из простейших алгоритмов управления может быть представлен в виде следующих пяти нечетких правил (рис. 10):
1. ЕСЛИ уровень нормальный ( 1 = ZR) , TO положение задвижки не изменять (у
= ZR)
ИЛИ
2. ЕСЛИ уровень низкий ( 1 = РВ), ТО задвижку открывать быстро ( у = РВ) ИЛИ
3. ЕСЛИ уровень высокий ( 1 = NB), TO задвижку закрывать быстро ( у = NB) ИЛИ
4. ЕСЛИ уровень нормальный ( 1 = ZR) И он увеличивается ( 2 = РВ), ТО задвижку
закрывать медленно ( у = NM)
ИЛИ
5. ЕСЛИ уровень нормальный ( 1 = ZR) И он уменьшается (  2 = NB), ТО задвижку
открывать медленно ( у = РМ)
а
l (1)
NB
ZR
PB
1
0,5
0
-1
-0.5
0
0.5
1
1, м
б
l (2)
NB
ZR
PB
1
0,5
0
-0,1
-0,05
0
0,05
0,1
2, м/с
в
l ( у )
NB NM
-1
-0.5
ZR
0
PM
0.5
PB
1
у
Рис. 10. Функции принадлежности для отклонения уровня 1 = h3 - h (а),
скорости его изменения 2 = dh/dt (б) и скорости перемещения задвижки у (в)
(35)
Соответствующие правилам (35) процедуры фаззификации и импликации проиллюстрированы на рис. 11 для конкретных значений 1 * и 2*. ФП управляющего воздействия
определены по методу произведения (см. заштрихованные треугольники). Результирующее
значение управляющего воздействия у* вычислено по формуле (27) как средневзвешенное
значение для двух заштрихованных треугольников. На рис. 12 показано пространство
управления, соответствующее правилам (35) выбранным ФП (см. рис.10) и принципу дефаззификации (27).
ZR
ZR
1.
PB
PB
2.
NB
NB
3.
NM
ZR
4.
MIN
“И”
ZR
PM
5.
“И”
–1
0
1
*1 = Δh* = – 0,25 м
MIN
–0,1
0
0,1
*2 = (dh /dt )* = 0,5 м/c
–1
0
1
у* = – 0,15 град/с
Рис. 11. Схема функционирования фаззи-регулятора
Система управления положением тележки мостового крана. Объектом управления является
механическая система, состоящая (рис. 13) из тележки с массой mт, груза с массой mг и привода. Данная колебательная система описывается уравнением состояния
x( t ) = A x( t ) + B y( t )
(36)
Xв ( t ) = C x( t )
(37)
и уравнением выхода
где x( t ) - 4-мерный вектор состояния с компонентами: x1( t ) перемещение тележки, м; x2(t) =
x1( t ) скорость ее перемещения, м/с; x3( t ) - угол отклонения груза, рад;
x4( t ) = x3(t) - угловая скорость груза, рад/с; у( t ) = uд( t ) - управляющее воздействие - напряжение двигателя тележки, В; хв( t ) = х1( t ) - выходная (измеряемая) переменная;
0

0
A
0

0
0
1 
0

b 
 0
0
2

; B
;C ;



 0
0
1

 
 
0
 0
b4 
1 0
0 a 23
0 0
0 a 43
а23 = m1g/mт ; а43 = - (mт + mг)g/mтL; b2 = kп/mт; b4 = - kп/mтL;
(38)
(39)
kп - передаточный коэффициент привода, Н/В. Общая цель управления объектом заключается в быстром и точном позиционировании тележки при минимальных колебательных движениях тележки и груза.
Рис. 12. Пространство управления фаззи-регулятора уровня жидкости
В качестве основной входной переменной регулятора (рис. 14) рассматривается отклонение положения тележки от заданного  = хвз- хв, а в качестве управляющего воздействия напряжение uд, подаваемое на электропривод тележки. Причем, эти две переменные рассматриваются в дискретные моменты времени t = 1 t, 2 t; … , k t; … .
x1
y
mт
L
mг
x3
Рис. 13. Тележка мостового крана как ОУ
Для того, чтобы избежать больших колебаний и динамических перегрузок, в качестве
выходной переменной регулятора принимается падение напряжения uд(k) = y(k), соответ-
ствующее интервалу дискретности t , а в качестве второй входной переменной регулятора
значение напряжения на предыдущем шаге, т. е. u(k - l).
Для обеих входных переменных фаззи-регулятора (k) и u(k - 1), нормированных на интервале [1, +l], можно применить унифицированные треугольные и трапециевидные ФП,
показанные на рис. 7, б, а для выходной uд(k) – ФП в форме синглтонов.
Всю совокупность правил управления тележкой, сформулированных на основе знаний о
динамике данного объекта, требованиях к его поведению, и выражающих определенную логику целенаправленных действий, можно представить в виде так называемой таблицы
лингвистических правил (табл. 2).
Таблица 2
Лингвистические правила управления тележкой
Входные
переменные
регулятора
Управляющее напряжение U, В
Отклонение положения
1 , м
NB
NM
NS
NZ
ZR
PZ
PS
PM
PB
NB
ZR
NZ
NS
NM
NB
NB
NB
NB
NB
NM
PZ
ZR
NZ
NS
NM
NB
NB
NB
NB
NS
PS
PZ
ZR
NZ
NS
NM
NB
NB
NB
NZ
PM
PS
PZ
ZR
NZ
NS
NM
NB
NB
ZR
PB
PM
PS
PZ
ZR
NZ
NS
NM
NB
PZ
PB
PB
PM
PS
PZ
ZR
NZ
NS
NM
PS
PB
PB
PB
PM
PS
PZ
ZR
NZ
NS
PM
PB
PB
PB
PB
PM
PS
PZ
ZR
NZ
PB
PB
PB
PB
PB
PB
PM
PS
PZ
ZR
При составлении подобных таблиц, т. е. при лингвистическом синтезе регулятора, предпочтительно, чтобы лингвистические значения управляющею воздействия, располагаемые
в соседних по вертикали и горизонтали клетках, соответствовали их “естественному” порядку в принятом терм-множестве (см. рис. 3). Тогда переходные процессы, возникающие в
системе при переключении управляющего воздействия с одною значения на другое, будут
наиболее плавными. Из этих же соображений стремятся ФП для входных переменных регулятора выбирать так, чтобы они перекрывались, а сумма ординат двух соседних ФП при
определенном хн была равна единице.
ε(k)
xвз(k)
ФР
Δ y(k)
x(k + 1)
y(k)
–
x(k )
B
I·z
ОУ
A
-1
xв(k)
C
+
y(k - 1)
z -1
Рис. 14. Структура системы фаззи-регулирования положения тележки
На основе рассмотренной простейшей системы фаззи-регулирования с одной выходной
переменной (перемещение тележки) могут быть синтезированы и более сложные системы - с
двумя выходными координатами (перемещение тележки и угол отклонения груза). Причем,
эти системы могут быть построены как по принципу последовательного (подчиненного) регулирования, так и с двумя параллельными контурами.
«Пропорционально–интегральный» фаззи-регулятор. Широко используемый в промышленной автоматике линейный непрерывный ПИ- регулятор


1 е
y ( t )  k p ε ( t ) 
ε
(
τ
)
d
τ

Tи 0


(40)
можно заменить достаточно близким но стратегии и логике управления фаззи-регулятором,
если в качестве его выходной переменной рассматривать приращение управляющего воздействия у. Действительно, закон регулирования (40) можно представить в следующей
дифференциальной форме:
 dε( t ) 1

dy / dt  k p 
 ε ( t )
Tи
 dt

(41)
y(k) = y(k) – y(k - 1) = kp [ (k) + (t/Tи) (k)].
(42)
или в разностной форме
Таким образом, для входных переменных (k) и (k) и выходной y(k) может быть синтезирован фаззи-регулятор, реализующий нелинейный закон
y(k) = F[(k), (k)]
(43)
и эквивалентный в определённом смысле ПИ-регулятору (40). Лингвистические правила
такого ПИ-подобного фаззи-регулятора приведены в табл. 3.
Таблица 3
Лингвистические правила ПИ-подобного фаззи-регулятора

NB
NM
NS
ZR
PS
PM
PB

NB
NM
NS
ZR
PS
PM
PB
NB
NB
NB
NB
NM
NS
ZR
NB
NB
NB
NM
NS
ZR
PS
NB
NB
NM
NS
NB
NM
NS
ZR
PS
PM
NM
NS
ZR
PS
PM
PB
PB
NS
ZR
PS
PM
PB
PB
PB
ZR
PS
PM
PB
PB
PB
PB
ZR
PS
PM
PB
Порядок синтеза систем фаззи-регулирования
1. Предварительное изучение объекта регулирования на основе технологического опыта
его эксплуатации и его традиционной модели; выбор измеряемых выходных переменных х и
управляющих воздействий у; установление их пределов измерения, выбор масштабных коэффициентов и нормирование всех переменных в определённом безразмерном диапазоне
(например, [-1, 1]).
2. Введение лингвистических переменных хl и уl , выбор числа, формы и положения ФП
на нормированном интервале.
3. Формулирование логических правил регулирования на основе интервью и анкетирования экспертов (операторов-технологов, инженеров-конструкторов объекта); в случае
необходимости корректировка выбранных в п. 2 терм-множеств; анализ и проверка правил
на полноту, непротиворечивость и избыточность; составление соответствующих таблиц
лингвистических правил.
4. Выбор правила импликации, инференц-процедуры и метода дефаззификации.
5. Программирование правил, процедур агрегирования посылок отдельных правил и
всех правил между собой с использованием пакета «Fuzzy Logic».
6. Имитационное моделирование и испытание синтезированной стратегии управления в
разомкнутом виде и в соединении с моделью объекта (чёткой или нечёткой); оценка работо-
способности, устойчивости и качества системы фаззи-регулирования.
В ТНМ ещё много «белых пятен» и нестрогих положений, а при использовании её в прикладных задачах не строгость ее методологии еще больше возрастает.
Остаются почти не исследованными и не разработанными традиционные вопросы аналитической оценки устойчивости и качества систем фаззи-регулирования. Пока для этих
сложных нелинейных динамических систем моделирование остаётся единственным способом исследования.
5. MATLAB и системы фаззи-регулирования
Широкому распространению фаззи-систем управления в немалой степени способствует
программная система MATLAB, в составе которой имеется пакет программ по фаззи-логике.
Fuzzy Logic Toolbox позволяет создавать и редактировать фаззи-системы управления с
нечеткой логикой, называемые в терминах программной системы MATLAB – Fuzzy Inference System или FIS. Эти системы можно создавать, используя как графические инструменты, так и команды рабочего окна MATLAB.
Fuzzy Logic Toolbox также позволяет управлять созданными программами и непосредственно без Simulink. Это осуществляется с помощью автономного Fuzzy Inference Engine,
который работает с нечеткими системами, сохранёнными в MATLAB. Можно также настраивать Fuzzy Logic Toolbox, используя его для совместной работы с другими пакетами типа
Control System (Системы управления), Neural Network (Нейросети) или Optimization Toolbox
(Оптимизация).
5.1. Общие сведения о Fuzzy Logic Toolbox
Одна из целей пакета Fuzzy Logic Toolbox состоит в облегчении понимания и создания
фаззи-систем управления. Фаззи-систему можно создавать, используя командную строку
главного окна MATLAB. Однако намного проще сделать это графически с помощью инструментов графического интерфейса пользователя (GUI или ГИП), имеющихся в Fuzzy
Logic Toolbox. Имеются пять инструментов GUI для создания, редактирования и наблюдения фаззи-систем в среде Fuzzy Logic Toolbox (рис. 15). Это Fuzzy Inference System Editor или
FIS Editor – Редактор фаззи-инференционной системы, Membership Function Editor - Редактор функций принадлежности, Rule Editor - Редактор правил, Rule Viewer - Просмотр правил и Surface Viewer - Просмотр поверхности (пространства управления). Эти инструменты
GUI динамически связаны между собой: используя один из них в FIS и производя изменения,
можно затем увидеть их действия в других инструментах GUI. В дополнение к этим пяти инструментам Fuzzy Logic Toolbox включает в себя графический редактор GUI ANFIS, который используется для создания и анализа Sugeno-типа адаптивных нейросистем с нечеткой
логикой – adaptive neuro-FIS (ANFIS).
FIS редактор решает проблемы верхнего уровня системы: сколько входных и выходных переменных и каковы их имена?
Fuzzy Logic Toolbox не имеет ограничений по числу входов фаззи-системы – все зависит
от доступной памяти компьютера.
Рис. 15. Структура фаззи-инференционной системы - FIS
Membership Function Editor используется для того, чтобы определить виды всех функций принадлежности, связанных с каждой переменной.
Rule Editor используется для редактирования списка правил, который определяет
функционирование фаззи-системы.
Rule Viewer и Surface Viewer используются только для просмотра результатов, но не редактирования фаззи-системы. Rule Viewer показывает диаграмму функционирования. Используя его в качестве диагностического средства, можно увидеть, например, какие правила
активны, или как индивидуальные функции принадлежности влияют на результаты. Surface Viewer используется для показа зависимости выхода от одного или двух из входов системы, то есть показывается диаграмма поверхности пространства управления системы. Все
пять инструментов GUI могут взаимодействовать и обмениваться информацией между собой. Любой из них может считывать и сохранять данные в рабочем пространстве MATLAB
и на жестком диске компьютера.
5.2. Построение систем с использованием Fuzzy Logic Toolbox
Рассмотрим порядок создания фаззи-системы на примере системы регулирования
уровня жидкости, описанной выше. Построение системы начинают с определения количества входов и выходов в редакторе свойств фаззи-системы – FIS Editor. Для его вызова необходимо в рабочем окне MATLAB ввести команду fuzzy с указанием редактируемой (созданной ранее) FIS регулирования уровня - tank , т.е. fuzzy tank.
Окно редактора FIS Editor показано на рис. 16. На этой диаграмме указываются
названия всех входов (input) и выходов (output). Для данной системы это – отклонение
уровня (level), скорость изменения уровня (rate), скорость перемещения задвижки (valve).
Ниже диаграммы - название системы (tank) и типа используемого вывода (mamdani или
sugeno). Еще ниже указаны методы фаззи-процедур:
операции “И” (AND) – произведения (product –prod);
операции “ИЛИ”(OR) – вероятностного ИЛИ (probabilistic or – probor);
импликации (prod);
аггрегации (max);
дефаззификации (centroid).
Рис. 16. Окно редактора свойств фаззи-системы регулирования уровня жидкости
Fuzzy Logic Toolbox поддерживает два встроенных метода AND – min (minimum) и prod
(product); два встроенных метода OR – max (maximum) и probor – probabilistic or, определяемого формулой алгебраического суммирования вероятностей probor(a,b) = a + b – ab).
Для объединения или агрегации всех правил Fuzzy Logic Toolbox использует три встроенных метода: max (maximum), probor (probabilistic or) и sum (просто сумма всех выходов
установленных правил).
Для дефаззификации Fuzzy Logic Toolbox использует пять встроенных методов: centroid
(координата – абсцисса – центра тяжести фигуры под кривой), bisector (координата – абсцисса – делящая площадь фигуры под кривой пополам), mom (mean of the maximum – середина
интервала максимальных значений ), lom (largest of maximum – верхняя граница интервала
максимальных значений) и som (smallest of maximum – нижняя граница интервала максимальных значений). Для иллюстрации на рис. 17 приведены различные результаты дефаззификации, проведенной по перечисленным методам. Значения выходной величины у на
нижнем графике рис. 17 составляют для рассмотренных методов дефаззификации 2, 3.3, 3.7,
5, 8 для методов дефаззификации som, centroid, bisector, mom и lom, соответственно.
Наиболее часто используемым методом дефаззификации является метод centroid, который определяет абсциссу центра тяжести плоской фигуры под кривой.
При необходимости можно применять и другие методы, заданные самим пользователем.
Кнопка помощи Help вызывает окно помощи MATLAB. В нем дается описание FIS Editor и работы с ним.
Для задания функций принадлежности переменных FIS используется редактор Membership Function Editor, который вызывается пунктом Edit membership functions меню View
или двойным щелчком по одному из входов или выходов диаграммы FIS.
В этом редакторе щелчком мыши по блоку в левой части выбирается переменная и ее функции принадлежности появляются на графике в правой верхней части окна редактора. При
этом в левой нижней части отражаются имя (Name) Level, тип (Type) Input, границы изменения (Range) [-1 1] и отображения (Display Range) [-1 1] активизированной переменной.
μ
у
μ
у
Рис. 17. Методы дефаззификации
Из меню Edit командой Add MFs можно добавить новую функцию принадлежности.
Щелчком мыши по графику функции принадлежности можно ее активизировать, затем в
правой нижней части окна задать ее имя и выбрать тип из ниспадающего списка встроенных функций. Этот список достаточно большой и графики, показывающие их вид, приведены на рис. 19.
Рис. 18. Окно редактора Membership Function Editor
trampf
1.0
gbelimf
trimf
gaussmf
gauss2mf
smf
0.5
0
zmf
psigmf
dsigmf
pimf
sigmf
1.0
0.5
0
Рис. 19. Виды функций принадлежности – Membership Function
После выбора типа функции принадлежности можно изменить график этой функции,
сжав или растянув ее. Для этого надо щелкнуть по ее графику, взять мышью выделенные
прямоугольники на графике и перемещать их в нужном направлении. Возможно задание
численных значений параметров, описывающих данную функцию принадлежности, в строке Param. Кнопка помощи Help вызывает окно помощи MATLAB. В нем дано описание редактора Membership Functions Editor и работы с ним.
После определения всех переменных и задания типа и вида функций принадлежности
переходят к созданию правил в редакторе Rule Editor (рис. 20). Для этого в меню View нужно
выбрать пункт Edit Rules.
Редактор Rule Editor использует графический интерфейс, основанный на описаниях переменных входов и выхода. Rule Editor позволяет строить правила без особых усилий, просто и быстро, выбирая по одному параметру переменной входов и выхода и щёлкая мышкой
на них. Правило формируется выбором опций в левой нижней части окна редактора, где
приведены все наличные входные и выходные переменные с указанием всех их возможных
значений, по типу: IF [переменная is значение] AND/OR [переменная is значение] , THEN
[переменная is значение]. Для формирования отрицания значений используется опция NOT.
Для добавления нового правила управления используется кнопка Add rule в нижней части
панели окна, для удаления правила – кнопка Delete rule.
Рис. 20. Редактор Rule Editor
При формировании правила в Rule Editor можно не учитывать какую-либо переменную. Созданные правила можно изменять, не удаляя их. Для этого необходимо выбрать правило, которое нужно изменить, и выделить мышкой те параметры переменных, которые
Рис. 21. Просмотрщик Rule Viewer
надо установить. После всех проведённых операций нажать Change rule. Зайдя в пункт Language меню Options, можно менять языки (английский, немецкий и французский). Кроме
этого, в Rule Editor предусмотрена возможность изменения формы записи правил в пункте
Format меню Options.
По окончанию создания правил фаззи-управления можно просмотреть зависимость
выходной величины от значений входных параметров системы. Для этого в меню View надо
выбрать пункт View rules. В просмотрщике Rule Viewer (рис. 21) под каждой входной и выходной переменной показаны в виде графиков её параметры и результат вычислений.
Удобство Rule Viewer заключается в том, что как при грубом, так и при точном изменении
параметров входов можно сразу увидеть изменение выходной величины.
Рис. 21. Просмотрщик Surface Viewer
Для изменения первых нужно указать мышкой на нужный график и щёлкнуть в любом
месте. Красная линия указания значения входных параметров переместится вслед за мышкой. Можно задавать значения входных параметров более точно, указывая их в строке Input
в левой нижней части панели .
Просмотрщик Rule Viewer позволяет наблюдать очень большое количество переменных, а не только три (как в нашем случае). Для этого предназначены четыре клавиши, при
нажатии которых экран диаграммы переместится в нужную сторону соответственно.
Например, при нажатии Left (влево) экран будет передвигаться влево, а при нажатии Down
(вниз) - вниз..
Выбрав пункт View Surface в меню View, можно посмотреть трехмерную зависимость
выхода от входа – пространство управления фаззи-системы. Просмотрщик Surface Viewer,
как и Rule Viewer, предназначен для выведения большого количества зависимостей выхода
от входа. На этой диаграмме можно увидеть зависимость выхода и от четырёх входов или
зависимость различного выхода от разных входов.
На графике, изменив числа в строках X grid и Y grid, можно менять количество поперечных и продольных линий. В пункте Plot меню Options можно изменить сам график для
лучшего его восприятия. В этом же меню Options в пункте Color Map можно так же поменять цвета поверхности управления.
Практическое задание
1. Откройте рабочее окно программы MATLAB 7 и наберите команду sltank.
2. В открывшемся окне модели Simulink фаззи-система регулирования уровня жидкости в
резервуаре установите в блоке const переключателя Switch значение 1 . Этим самым Вы
включите в контур регулирования блок PID Controller (на самом деле ПД-регулятор, так
как коэффициент интегральной составляющей равен нулю).
3. Командой Start меню Simulation запустите симуляцию работы модели. Посмотрите на вид
переходного процесса в системе на экране блока Comparison (Сравнение).
4. После остановки симуляции установите в блоке const переключателя Switch значение –1.
Этим самым Вы включите в контур управления фаззи-регулятор (блок Fuzzy Logic Controller).
5. Командой Start меню Simulation запустите симуляцию работы модели. Посмотрите на вид
переходного процесса в системе на экране блока Comparison (Сравнение).
6. После остановки симуляции изучите структуру субмоделей системы управления.
7. Для изучения дополнительных возможностей фаззи-управления наберите в рабочем окне
MATLAB команду demo. В появившемся окне выберите последовательно пункты Toolboxes,
Fuzzy Logic, затем демонстрационные модели Cart and pole (sim), Backing truck (sim).
Контрольные вопросы
1. Какие основные операции и процедуры осуществляются и системе фаззи-регулирования? Какова функциональная структура системы фаззи-регулирования?
2. Нарисуйте график ФП l (х) = ехр(-4| х –m | ) , соответствующей терму “анормальная
температура человеческого тела” m = 36,6 °C . Выберите значение масштабного коэффициента k н , обеспечивающее нормирование диапазона 35–39 °С в интервале [-1,+1].
3. Каким операциям булевой алгебры соответствуют процедуры фаззи-объединения и
фаззи-пересечения нечетких множеств?
4. С помощью каких процедур находят ФП фаззи-обьединения и фаззи-пересечения, если
известны ФП исходных множеств?
5. Убедитесь с помощью арифметических аналогов логических операций «ИЛИ», «И» (см.
формулы (18) и (19)), что эти операции эквивалентны процедурам максимизации и минимизации соответствующих функций истинности.
6. Пользуясь тремя универсальными значениями NB , ZR, PB для входных переменных
«уровень», «скорость изменения уровня» и для управляющего воздействия («положение задвижки»), составьте таблицу лингвистических правил управления задвижкой, через которую поступает жидкость в резервуар с самовыравниванием.
7. Проиллюстрируйте на двух произвольных графиках  (ε) и  (y) правило импликации
Мамдани при фиксированном значение ε*.
8. С помощью каких процедур определяют ФП для сложных посылок, которые состоят из
нескольких простых, соединенных союзами «ИЛИ», «И»?
9. С помощью какой процедуры находят результирующую ФП, соответствующую совокупности j-x правил, соединенных союзом «ИЛИ»?
10. Как по графику р (у) можно найти значение управляющего воздействия у* ?
11. Почему при использовании метода Сугено нет процедуры дефаззификации ?
12. Каковы основные этапы синтеза системы фаззи-регулирования?
13. Состав Fuzzy Logic Toolbox.
14. Порядок создания систем фаззи-регулирования в Fuzzy Logic Toolbox.
15. Методы дефаззификации, встроенные в Fuzzy Logic Toolbox.
16. Виды функций принадлежности, встроенные в Fuzzy Logic Toolbox.
Литература
1. Лукас В.А. Введение в Fuzzy-регулирование. – Екатеринбург: Изд-во УТГГА, 1997. – 36 с.
2. Стальский В.В., Проскуряков Р.М. Нечеткая логика и ее применение в автоматическом регулировании. - СПб.: СПГИ, 1998. – 94 с.
3. Fuzzy Logic Toolbox. For Use with MATLAB: User’s Guide. - Natick: The MathWorks, Inc., 1998. 235 p.
Download