Блок реализует процедуру фазификации входной переменной на несколько термов с помощью функций
принадлежности трапециевидного типа. Предназначен для использования при создании систем
управления на базе нечеткой логики.
Функции принадлежности рассчитываются по следующей формуле:
где:
μ(x) – значение функции принадлежности терма в выходном векторе;
x – значение входной величины;
a, b, c, d, deg – параметры функций, задаваемые
пользователем.
По значению входа и заданным параметрам происходит расчет вектора значений функций
принадлежности для термов лингвистической переменной. Функции принадлежности рассчитываются по
следующей схеме:
Для первой и последней функции принадлежности, возможно два варианта задания вида функции
(определяется свойством
S-функции на границах):
- Обычная трапециидальная функция. При выходе за границу диапазона, значение функции
принадлежности равняется нулю (Рисунок 1).
Рисунок 1. Трапецидальные граничные функции принадлежности
- S-функция - расчет происходит c контролем выхода величины за границу диапазона. Для
вектора из n термов, если входная величина меньше минимума, то Y0 = 1,
если входная величина больше максимума, то Yn = 1 (Рисунок 2).
Рисунок 2. S-образные граничные функции принадлежности
- Трапециидальная функция заданная в степенной форме (deg ≠ 1). Для вектора из n
термов, задается собственый степенной коэфициент (Рисунок 3).
Рисунок 3. Функции принадлежности в степенном виде
Выходные порты
- y – вектор значений функции принадлежности, размерностью равный
количеству термов заданных пользователем.
Свойства
- Количество термов – количество термов лингвистической переменной.
- Массив значений a – массив значений a в функциях принадлежности,
размерность должна соответствовать, количеству термов лингвистической переменной. Данные
величины определяют значения левых границ для термов, при которых функция принадлежности
терма равна 0.
- Массив значений b – массив значений b в функциях принадлежности,
размерность должна соответствовать, количеству термов лингвистической переменной. Данные
величины определяют значения левых границ для термов, при которых функция принадлежности
терма равна 1. Минимальное значение вектора определяет минимум диапазона.
- Массив значений c – массив значений с в функциях принадлежности,
размерность должна соответствовать, количеству термов лингвистической переменной. Данные
величины определяют значения правых границ для термов, при которых функция принадлежности
терма равна 1. Mаксимальное значение вектора определяет максимум диапазона.
- Массив значений d – массив значений d в функциях принадлежности,
размерность должна соответствовать, количеству термов лингвистической переменной. Данные
величины определяют значения правых границ для термов, при которых функция принадлежности
терма равна 0.
- Степень – массив значений (степень значения функций) в функциях принадлежности,
размерность должна соответствовать, количеству термов лингвистической переменной. Данные
величины определяют искривление границ термов. Данное значение должно быть
положительным.
- S-функции на границах – определяет форму кривой для правой и левой границы
диапазона.
Параметры
- Вектор результата - вектор, содержащий результаты фазификации переменной по
термам.