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