exponenta event banner

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