VariableSettings

Tunable parameter settings of fuzzy variables

Description

A VariableSettings object contains tunable parameter settings for either an input or output variable of a fuzzy inference system. Using this object, you can specify the tunability settings for the membership functions of the corresponding variable.

Creation

Create a VariableSettings object using the getTunableSettings function. The first and second outputs of getTunableSettings contain VariableSettings objects for input and output variables, respectively.

Properties

expand all

This property is read-only.

Name of fuzzy inference system, specified as a string.

This property is read-only.

Type of variable, specified as either "input" or "output" for input and output variables, respectively.

This property is read-only.

Name of variable, specified as a string.

Membership function settings, specified as one of the following:

Object Functions

setTunableSet specified parameter settings as tunable or nontunable

Examples

collapse all

Create two fuzzy inference systems, and define the connection between the two.

fis1 = mamfis('Name','fis1','NumInputs',2,'NumOutputs',1);
fis2 = sugfis('Name','fis2','NumInputs',2,'NumOutputs',1);
con = ["fis1/output1" "fis2/input1"];

Create a tree of fuzzy inference systems.

tree = fistree([fis1 fis2],con);

Obtain the tunable settings of input and output variables of the fuzzy inference system.

[in,out] = getTunableSettings(tree)
in=4×1 object
  4x1 VariableSettings array with properties:

    Type
    VariableName
    MembershipFunctions
    FISName

out=2×1 object
  2x1 VariableSettings array with properties:

    Type
    VariableName
    MembershipFunctions
    FISName

You can use dot notation to specify the tunable settings of input and output variables.

For the first membership function of input 1, set the first and third parameters to tunable.

in(1).MembershipFunctions(1).Parameters.Free = [1 0 1];

For the first membership function of input 2, set the minimum parameter range to 0.

in(2).MembershipFunctions(1).Parameters.Minimum = 0;

For the first membership function of output 2, set the maximum parameter range to 1.

out(2).MembershipFunctions(1).Parameters.Maximum = 1;
Introduced in R2019a