ОВИ_ЛР_2012
.pdfФункция принадлежности:
(а, b, f0 g0) = [a, b, (НЕ f0) ИЛИ g0] = = S[1 - (а, f0), n(b, g0)],
где а и b – любые два базовых значения объектных переменных A и В,
соответственно f0 А и g0 В, (а, f0) и n(b, g0) - частичные функции принадлежности А и В.
9.2.2.3. Сопоставление состояния процесса и правил нечеткого
контроллера
Рассмотрим процесс с выходной переменной А, управляющей переменной В и правилом, связывающим нечеткие значения f0 сущности А и g0 сущности В (табл. 9.2).
Таблица 9.2 – Хорактеристики управляемого процесса
Значение |
Входная |
Управляющая |
|
переменна А |
переменная В |
||
|
|||
Базовое значение |
{a} |
{b} |
|
Нечеткое значение |
{f} |
{g} |
|
Функция принодлежности |
μ(a, f) |
n(b, g) |
|
Выбранное нечеткое значение |
f0 {f} |
b0 {g} |
|
Представляющие четкие значения |
α (t) {a} |
β {b} |
|
Правило |
ЕСЛИ f0 ТО b0 |
Не существует |
В любое время t четкое значение α(t) выходной переменной А сопоставляется с нечетким значением f0, т.е. с функцией принадлежности
(α, f0), и в любое время t и для любого четкого значения b управляющей переменной В пара (α, b) сопоставляется с правилом f0 g0 = (НЕ f0) ИЛИ g0 с принадлежностью
(α, b, f0 g0) = S[1 – (α, f0), n(b, g0)].
171
Согласно условию необходимо рассмотреть конъюнкцию нечеткого значения и правила, а именно
f0 И [f0 g0] = f0 И [(НЕ f0) ИЛИ g0].
В любое время t и для всякого четкого значения b от множества В пара (α, b) принадлежит новому нечеткому множеству с принадлежностью
(α, b, f0 И [(НЕ f0) ИЛИ g0] = T{ (α, f0), S[1 – (α, f0), n(b, g0)]}.
Для фиксированного времени t и фиксированного значения α(t)
указанная функция зависит от b.
9.2.2.4. Выбор четкого значения управляющей переменной
Для любого фиксированного t = t0 четкое значение b = β(t0).
Управляющая переменная В выбирается так, чтобы значение принадлежности пары [α(t0), b], т. е. значение выражения
(b) = f0 И [(НЕ f0) ИЛИ g0] = T{ (α, f0), S[1 – (α, f0), n(b, g0)]}
было максимально для b = β(t) = bmax.
Рассмотрим использование функции р(b) в ситуации, когда выход процесса соответствует условной части правила.
Допустим, что выходная переменная имеет необходимое значение с высокой достоверностью. Это означает, что ≈ 1, и следовательно, (b) ≈
≈ Т{1, S[0, п(b, g0)]} = T{1, n(b, g0)]) = п(b, g0). Согласно закону управления значение b должно быть выбрано так, чтобы принадлежность n(b, g0) была максимальной.
Рассмотрим ситуацию, в которой выход процесса более или менее соответствует правилу.
172
Допустим, что значения выходных переменных процесса более или менее приемлемы (µ 0,5), тогда
S[1 – , n(b, g0)] max[1 – , n(b, g0)] 0,5
и, следовательно
(b) = Т{ , S[1 – , n(b, g0)]} min { , S[1 – , n(b, g0)]} .
Чем меньше значение , тем ниже степень принадлежности (b)
для любого b, поэтому выбор b в меньшей мере обоснован, следовательно,
правило определения управляющей переменной только более или менее приемлемо.
Рассмотрим ситуацию – выход процесса неудовлетворителен
( ≈ 0).
Функция (b) ≈ Т{0, S[1, п(b, g0)]} = Т{0, 1} = 0 независимо от b, и
выбор b не подходит для любого значения. Согласно ежедневному опыту правила, условия которых не удовлетворяются, не используют.
9.2.3. Комбинирование условий
Правила с комбинированием условий подобны следующим
ЕСЛИ давление, низкое ИЛИ давление, среднее ТО вентиль, открыт.
или
ЕСЛИ температура, холодно И влажность, сыро ТО нагреватель,
максимальный.
обрабатываются аналогично. Не имеет значения, комбинируются ли условия, ссылающиеся на одну или более выходных переменных. Во всех
173
случаях для четких выходных значений α1(t), ..., αN(t) во время t
определяется степень µ(α1(t), …, αN(t), f0) к комбинированному нечеткому значению f0. Далее вычисления проводятся следующим образом:
определяется функция ρ(b) = Т{µ(α1(t), …, αN(t), f0), п(b, g)} и находится оптимальное значение b.
9.2.4. Накопление результатов и дефазификация
9.2.4.1. Агрегация результатов нескольких правил
Рассмотрим множество правил вождения автомобиля.
Пример 9.3. Агрегация результатов правил.
ЕСЛИ до препятствия, близко ТО скорость, медленно.
ЕСЛИ время, мало ТО скорость, быстро.
ЕСЛИ дата, конец недели ТО скорость, быстро.
ЕСЛИ топливо, пусто ТО скорость, стоп.
ЕСЛИ средства, мало ТО скорость, экономия.
Все правила содержат выходную переменную "скорость" с нечеткими
значениями "стоп", "медленно", "экономия" и "быстро".
Выполнение правил может привести к несогласованным или противоречивым заключениям, зависящим от того, какие условия работали в определенной ситуации. Если, например, время и деньги малы одновременно, должен ли автомобиль ехать "быстро" и "экономно"? Если используется несколько правил одновременно, необходимо решить, какое
из них выполняется. Операция ИЛИ в этом контексте означает
"исключительное ИЛИ".
Правило с условием f0 и заключением g0 эквивалентно нечеткому
значению (f0 |
И g0). В любое время t и при определенном b четкое выходное |
||
значение |
процесса |
получается из |
функций принадлежности |
174
ρ(b) = Т{µ(α1(t), …, αN(t), f0), п(b, g)} для f0 И g0. Приведем несколько правил, которые выполняются вместе и эквивалентны комбинации нечетких значений:
(f1 И g1) ИЛИ (f2 И g2) ИЛИ ... ИЛИ (fN И gN)
с функциями принадлежности ρ(b) = S{ρ1(b), ρ2(b), .... ρN(b)} где
ρ1(b) = Т{µ(α1(t), …, αN(t), f0), п(b, g1)} ρ2(b) = Т{µ(α1(t), …, αN(t), f0), п(b, g2)}
…………………………………………
ρN(b) = Т{µ(α1(t), …, αN(t), f0), п(b, gN)}
В рассмотренном выше выражении ρ(b) = S{ρ1(b), ρ2(b), .... ρN(b)} в
любое фиксированное время t функция b отличается от оптимального значения b = β.
9.2.4.2. Дефазификация
Далее рассмотрим, как получить четкое оптимальное значение β управляющей переменной b. Эта процедура называется дефазификацией и является последним шагом каждого управляющего цикла в нечеткой системе. В общем случае переменная b = β имеет частичную функцию принадлежности
ρ(b) = S{ρ1(b), ρ2(b), .... ρN(b)} = S{Т [µ(α1(t), п(b, g1)], Т [µ(α2(t), п(b, g2)], …,
Т[µ(αN(t), п(b, gN)]}
Для дефазификации нечеткого результата на практике используют три метода, которые рассмотрим ниже.
175
Метод максимальной высоты. Применяется, если функция ρ(b) имеет определенный абсолютный максимум как некоторое значение b = bmах, при котором ρ(bmах) > ρ(b) для всех b. Преимущество метода заключается в простоте применения, а недостаток состоит в том, что функция ρ(b) не рассматривается во всей области определения, а только в максимальных позициях, что может привести к неприемлемым результатам.
Метод среднего максимума. Если функция ρ(b) имеет несколько относительных максимумов, то можно взять взвешенное среднее.
Учитывая общую форму выражения ρ(b), этот метод лучше предыдущего.
Он также применим, если ρ(b) постоянна на определенных интервалах b
(что часто случается на практике), так как можно взять центры каждого такого интервала как «относительные локальные максимумы» и усреднить затем эти значения.
Метод центра гравитации. Графическое представление функции ρ(b)
в декартовых координатах – это кривая, которая вместе с осью абсцисс X,
верхней и нижней границами b ограничивает плоскую область. Абсцисса β центра гравитации такой фигуры берется как желаемый оптимум
d |
d |
M b (b) db , |
F (b) db , |
c |
c |
bopt=M/F.
Если ρ(b) определяется только для дискретных значений b (так называемые синглетоны), то вычисление центра гравитации модифицируется следующим образом:
M bn (bn ) db , |
F (bn ) db , |
n |
n |
bopt=M/F.
176
9.3. Нечеткие системы управления динамическими процессами
9.3.1. Моделирование качания шара по качели
Ввод команды slbb в окне Command Window пакета MATLAB
приводит к появлению в окне Simulink структурной схемы нечеткой системы управления (рис. 9.1). Задачей управления в данном случае является поддержание такого состояния перекатывающего на качелях шара, при которых он не мог бы с них скатиться.
Запуск моделирования приводит к появлению анимационной картинки (рис. 9.2) иллюстрирующей, как представленная система,
вырабатывая управляющие воздействия, "подталкивающие" то левую, то правую половину качелей, не дает шарику скатиться с них. Точка толчка отображается вершиной треугольника, перемещаемого вдоль коромысла качелей.
Рис. 9.1. Структурная схема нечеткой системы управления
177
Рис. 9.2. Динамическая система "шар на качели"
При желании пользователь может просмотреть основные сигналы системы (рис. 9.3).
Рис. 9.3. Основные сигналы системы
178
Двойной щелчок мышью на блоке диаграммы модели позволяет вывести окно с параметрами соответствующего блока. Так, на рис. 9.4
показано такое окно для блока нечеткой логики. Нетрудно заметить, что он характеризуется единственным параметром – именем файла, задающим структуру блока.
Рис. 9.4. Окно блока нечеткой логики
Список Target Position (рис. 9.2) позволяет выбрать одно из четырех видов воздействий:
Sinusoid Wave – синусоидальная волна;
Square Wave – прямоугольная волна;
Saw Wave – треугольная волна;
Mouse-Driver – воздействие, задаваемое мышью.
Опция Show Trails, позволяющая накапливать изменения положения шара, коромысла качелей и точки воздействия на них. Благодаря этому можно получить более четкое представление о динамике работы анализируемой системы (рис. 9.5).
179
Рис. 9.5. Иллюстрация управляемого объекта в режиме накопления
9.3.2. Моделирование отскоков шара от качелей
Похожий на описанный выше пример с названием juggler имитирует более сложное движение шара (рис. 9.6). Здесь шар отскакивает от коромысла качелей, которые перемещаются в точку падения шара. При этом исходное положение коромысла меняется таким образом, чтобы шар при возможности отскакивал вертикально вверх. Выброс шара за пределы области перемещения качелей исключается – учетом отскоков от левой или правой стенок.
В этом примере особенно ценной является возможность моделирования в двух режимах отскока шарика от коромысла качелей – с
использованием нечеткой логики и обычной жесткой логики. Последний случай представлен на рис. 9.7. Нетрудно заметить, что в этом случае вообще не удается добиться отскока шарика строго вертикально вверх – действует правило "угол отражения равен углу падения".
180
