Блок реализует процедуру фазификации входной переменной на несколько термов с помощью функций
принадлежности треугольного типа. Предназначен для использования при создании систем
управления на базе нечеткой логики.
По значению входа и заданным параметрам происходит расчет вектора значений функций
принадлежности. Функции принадлежности рассчитываются по следующей схеме:
где:
Yi – значение функции принадлежности i-го терма в выходном векторе;
X – значение входной величины;
ai, bi, ci – параметры функций,
задаваемые пользователем.
Для первой и последней функции принадлежности, возможно два варианта задания вида функции
(определяется свойством S функции на границах):
- S функция - расчет происходит c контролем выхода величины за границу диапазона. Для
вектора из n термов, если входная величина меньше минимума, то Y0 = 1,
если входная величина больше максимума, то Yn = 1 (см. Рисунок 1).
Рисунок 1. Треугольные граничные функции принадлежности
- Обычная треугольная функция. При выходе за границу диапазона значение функции
принадлежности уменьшается (см. Рисунок 2).
Рисунок 2. S-образные граничные функции принадлежности
Порты
- Входной порт – входная величина;
- Выходной порт – вектор значений функции принадлежности, размерностью равный
количеству термов заданных пользователем.
Свойства блока
- Количество термов
N_term– количество термов лингвистической переменной. Минимальное значение -
2.
- Массив значений
a – массив значений a (левые границы треугольных функций) в функциях
принадлежности, размерность должна соответствовать, количеству термов лингвистической
переменной. Данные величины определяют левую границу для термов, значения при которых
функция принадлежности трема равна 0;
- Массив значений
– массив значений b (вершины треугольных функций) в функциях принадлежности,
размерность должна соответствовать, количеству термов лингвистической переменной. Данные
величины определяют для термов, значения при которых функция принадлежности трема равна 1.
Минимальное и максимальное значение определяют минимум и максимум диапазона;
- Массив значенийc – массив значений с (правые
границы треугольных функций) в функциях принадлежности, размерность должна
соответствовать, количеству термов лингвистической переменной. Данные величины определяют
правую границу для термов, значения при которых функция принадлежности трема равна 0;
- S функции на границахs_bound – определяет форму кривой для правой и левой
границы диапазона.
Примечание:
В случае если у
общих свойствах блока свойство
Анимированый (Animated)
установлено в значение
Да, то над блоком во время моделирования отображается
значения вектора выходных величин в виде «графического эквалайзера», где величины функций
принадлежности пропорциональны высоте столбцов (см.
Рисунок 3).
Рисунок 3. Динамическое отображение результата фазификации