Main Content

MembershipFunctionSettings

Tunable parameter settings for fuzzy membership functions

Description

A MembershipFunctionSettings object contains tunable parameter settings for a type-1 membership function. Using this object, you can specify the tunability settings for the parameters of the corresponding membership function.

For more information on the tunable settings of a type-2 membership function, see MembershipFunctionSettingsType2.

Creation

Create MembershipFunctionSettings objects using the getTunableSettings function with a mamfis, sugfis, or fistree object. The first and second outputs of getTunableSettings contain VariableSettings objects for input and output variables, respectively. If a VariableSettings object corresponds to a variable with type-1 membership functions, then its MembershipFunctions property contains MembershipFunctionSettings objects.

Properties

expand all

Membership function parameter tunable settings, specified as a NumericParameters object.

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