fisvar

Нечеткая переменная

Описание

Использовать fisvar объекты для представления входа и выходных переменных в системе нечеткого вывода (FIS). Для получения дополнительной информации о создании систем нечеткого вывода см. mamfis, sugfis, mamfistype2, и sugfistype2.

Создание

Описание

пример

var = fisvar создает нечеткую переменную с именем по умолчанию, областью значений по умолчанию и без функций принадлежности. Чтобы изменить свойства переменной, используйте запись через точку.

пример

var = fisvar(range) устанавливает Range свойство.

пример

var = fisvar('Name',name) устанавливает Name свойство.

var = fisvar(range,'Name',name) устанавливает оба Range и Name свойства.

Свойства

расширить все

Имя переменной, заданное как строковый или символьный вектор.

Переменная область значений, заданная как двухэлементный вектор элемента, где первый элемент меньше, чем второй элемент. Первый элемент задает нижнюю границу области значений, а второй элемент задает верхнюю границу области значений.

Функции принадлежности, заданные как вектор fismf или fismftype2 объекты. Чтобы добавить функции принадлежности к нечеткой переменной:

  • Используйте addMF функция.

  • Создайте вектор из fismf Объекты и присвоение его в MembershipFunctions.

  • Создайте вектор из fismftype2 Объекты и присвоение его в MembershipFunctions.

Вы можете изменить свойства функций принадлежности с помощью записи через точку.

Функции объекта

addMFДобавьте функцию принадлежности к нечеткой переменной
removeMFУдалите функцию принадлежности из нечеткой переменной

Примеры

свернуть все

Создайте нечеткую переменную со свойствами по умолчанию.

var = fisvar;

Изменение свойств fisvar объект, используйте запись через точку. Для примера задайте область значений нечеткой переменной, которая будет от -5 на 5.

var.Range = [-5 5];

Создайте нечеткую переменную с входом области значений из -10 на 10.

var = fisvar([-10 10]);

Создайте нечеткую переменную с именем "speed".

var = fisvar("Name","speed");

Создайте нечеткую переменную с заданной областью.

var = fisvar([0 1]);

Добавьте функцию принадлежности к переменной, задав трапециевидную функцию принадлежности и установите параметры функции принадлежности.

var = addMF(var,"trapmf",[-0.5 0 0.2 0.4]);

Можно также задать имя членства при добавлении его к нечеткой переменной. Например, добавьте функцию принадлежности, называемую "large".

var = addMF(var,"trapmf",[0.6 0.8 1 1.5],'Name',"large");

Просмотрите функции членства.

var.MembershipFunctions
ans = 
  1x2 fismf array with properties:

    Type
    Parameters
    Name

  Details:
          Name        Type               Parameters         
         _______    ________    ____________________________

    1    "mf1"      "trapmf"    -0.5       0     0.2     0.4
    2    "large"    "trapmf"     0.6     0.8       1     1.5

Также можно добавить функцию принадлежности по умолчанию к нечеткой переменной и задать ее параметры с помощью записи через точку.

var = fisvar([0 1]);
var = addMF(var);
var.MembershipFunctions(1).Type = "trapmf";
var.MembershipFunctions(1).Parameters = [-0.5 0 0.2 0.4];

Создайте нечеткую переменную с заданной областью. По умолчанию эта переменная не имеет функций принадлежности.

var = fisvar([0 9]);

Чтобы добавить функцию принадлежности типа 2 к переменной, не имеющей функций членства, задайте LowerLag или LowerScale значение функции членства. Для примера задайте более низкое значение шкалы.

var = addMF(var,"trimf",[0 3 6],'LowerScale',1);

Если переменная содержит функцию членства типа 2, можно добавить дополнительные функции членства типа 2, не задавая один из этих параметров.

var = addMF(var,"trimf",[3 6 9]);

Просмотрите функции членства.

var.MembershipFunctions
ans = 
  1x2 fismftype2 array with properties:

    Type
    UpperParameters
    LowerScale
    LowerLag
    Name

  Details:
         Name      Type      Upper Parameters    Lower Scale    Lower Lag 
         _____    _______    ________________    ___________    __________

    1    "mf1"    "trimf"      0    3    6            1         0.2    0.2
    2    "mf2"    "trimf"      3    6    9            1         0.2    0.2

Введенный в R2018b